12.07.2015
•
Views
fsolvedogleg method described in [8]. It is similar in nature to the algorithmimplemented in [7].Alternatively, you can select a Gauss-Newton method [3] withline-search, or a Levenberg-Marquardt method [4], [5], and [6]with line-search. The choice of algorithm is made by setting theNonlEqnAlgorithm option to 'dogleg' (default), 'lm', or'gn'.The default line search algorithm for the Levenberg-Marquardtand Gauss-Newton methods, i.e., the LineSearchType optionset to 'quadcubic', is a safeguarded mixed quadratic and cubicpolynomial interpolation and extrapolation method. A safeguardedcubic polynomial method can be selected by setting LineSearchTypeto 'cubicpoly'. This method generally requires fewer functionevaluations but more gradient evaluations. Thus, if gradients are beingsupplied and can be calculated inexpensively, the cubic polynomial linesearch method is preferable. The algorithms used are described fully inChapter 3, “Standard Algorithms”.DiagnosticsMedium and Large-Scale Optimizationfsolve may converge to a nonzero point and give this message:Optimizer is stuck at a minimum that is not a rootTry again with a new starting guessIn this case, runfsolve again with other starting values.Medium-Scale OptimizationFor the trust region dogleg method, fsolve stops if the step size becomestoo small and it can make no more progress. fsolve gives this message:The optimization algorithm can make no further progress:Trust region radius less than 10*epsIn this case, run fsolve again with other starting values.8-120
fsolveLimitationsThe function to be solved must be continuous. When successful, fsolveonly gives one root. fsolve may converge to a nonzero point, in whichcase, try other starting values.fsolve only handles real variables. When x has complex variables, thevariables must be split into real and imaginary parts.Large-Scale OptimizationThe preconditioner computation used in the preconditioned conjugategradient part of the large-scale method forms JTJ (where J is theJacobian matrix) before computing the preconditioner; therefore, a rowof J with many nonzeros, which results in a nearly dense product JTJ,might lead to a costly solution process for large problems.Medium-Scale OptimizationThe default trust region dogleg method can only be used when thesystem of equations is square, i.e., the number of equations equals thenumber of unknowns. For the Levenberg-Marquardt and Gauss-Newtonmethods, the system of equations need not be square.References[1] Coleman, T.F. and Y. Li, “An Interior, Trust Region Approachfor Nonlinear Minimization Subject to Bounds,” SIAM Journal onOptimization, Vol. 6, pp. 418-445, 1996.[2] Coleman, T.F. and Y. Li, “On the Convergence of Reflective NewtonMethods for Large-Scale Nonlinear Minimization Subject to Bounds,”Mathematical Programming, Vol. 67, Number 2, pp. 189-224, 1994.[3] Dennis, J. E. Jr., “Nonlinear Least-Squares,” State of the Art inNumerical Analysis, ed. D. Jacobs, Academic Press, pp. 269-312.[4] Levenberg, K., “A Method for the Solution of Certain Problems inLeast-Squares,” Quarterly Applied Mathematics 2, pp. 164-168, 1944.[5] Marquardt, D., “An Algorithm for Least-squares Estimation ofNonlinear Parameters,” SIAM Journal Applied Mathematics, Vol. 11,pp. 431-441, 1963.8-121
-
Page 1 and 2:
Optimization Toolbox 3User’s Guid
-
Page 3:
Revision HistoryNovember 1990 First
-
Page 6 and 7:
Acknowledgments
-
Page 8 and 9:
Nonlinear Equations with Finite-Dif
-
Page 10 and 11:
Quadratic Programming (QP) Subprobl
-
Page 12 and 13:
Specifying the Options ............
-
Page 14 and 15:
xivContents
-
Page 16 and 17:
1 Getting StartedWhat Is Optimizati
-
Page 18 and 19:
1 Getting StartedOptimization Examp
-
Page 20 and 21:
1 Getting Started[x, fval] =lsqlin(
-
Page 22 and 23:
2 TutorialLarge-Scale Examples (p.
-
Page 24 and 25:
2 TutorialMinimization (Continued)T
-
Page 26 and 27:
2 TutorialUsing the Optimization Fu
-
Page 28 and 29:
2 TutorialA choice of line search s
-
Page 30 and 31:
2 TutorialThe tutorial uses the fun
-
Page 32 and 33:
2 Tutorialfunction evaluations. See
-
Page 34 and 35:
2 TutorialTo restrict x inEquation2
-
Page 36 and 37:
2 Tutorialceq=[];DCeq = [ ];G conta
-
Page 38 and 39:
2 TutorialEquality Constrained Exam
-
Page 40 and 41:
2 Tutorialfunction y = findzero(b,
-
Page 42 and 43:
2 Tutorial3.7081Sharing Variables U
-
Page 44 and 45:
2 Tutorialcomponents.');end% Evalua
-
Page 46 and 47:
2 TutorialThe example produces the
-
Page 48 and 49:
2 TutorialClosed-Loop ResponseThe p
-
Page 50 and 51:
2 Tutorialfunction [Kp,Ki,Kd] = run
-
Page 52 and 53:
2 TutorialThe resulting closed-loop
-
Page 54 and 55:
2 Tutorialcalling the simulation tw
-
Page 56 and 57:
2 TutorialThe last value shown in t
-
Page 58 and 59:
2 TutorialStep 1: Write an M-file f
-
Page 60 and 61:
2 TutorialLarge-Scale Examples•
-
Page 62 and 63:
2 TutorialNote The following table
-
Page 64 and 65:
2 TutorialLarge-Scale Problem Cover
-
Page 66 and 67:
2 Tutorialoptimset('Display','iter'
-
Page 68 and 69:
2 Tutorialeither) then, in this pro
-
Page 70 and 71:
2 TutorialNonlinear Least-Squares w
-
Page 72:
2 TutorialThe problem is to find x
-
Page 75 and 76:
Large-Scale Examplesto zero (for fm
-
Page 77 and 78:
Large-Scale Examples024681012141618
-
Page 79 and 80:
Large-Scale Examplesfval =270.4790o
-
Page 81 and 82:
Large-Scale Examplesans =1.1885e-01
-
Page 83 and 84:
Large-Scale ExamplesW = Hinfo*Y - V
-
Page 85 and 86:
Large-Scale Exampleswere not the sa
-
Page 87 and 88:
Large-Scale Examplestradeoff is ben
-
Page 89 and 90:
Large-Scale Examplesfunction W = qp
-
Page 91 and 92:
Large-Scale Examples% RUNQPBOX4PREC
-
Page 93 and 94:
Large-Scale Examplesalgorithm: 'lar
-
Page 95 and 96:
Large-Scale Examplescgiterations: 0
-
Page 97 and 98:
Large-Scale Examplesdoes not give a
-
Page 99 and 100:
Default Options SettingsDetermining
-
Page 101 and 102:
Displaying Iterative OutputDisplayi
-
Page 103 and 104:
Displaying Iterative Outputbintprog
-
Page 105 and 106:
Displaying Iterative OutputfsolveTh
-
Page 107 and 108:
Displaying Iterative Outputlsqnonli
-
Page 109 and 110:
Calling an Output Function Iterativ
-
Page 111 and 112:
Calling an Output Function Iterativ
-
Page 113 and 114:
Calling an Output Function Iterativ
-
Page 115 and 116:
Optimizing Anonymous Functions Inst
-
Page 117 and 118:
Optimizing Anonymous Functions Inst
-
Page 119 and 120:
Typical Problems and How to Deal wi
-
Page 121 and 122:
Typical Problems and How to Deal wi
-
Page 123 and 124:
3Standard AlgorithmsStandard Algori
-
Page 125 and 126:
Multiobjective Optimization (p. 3-4
-
Page 127 and 128:
Demos of Medium-Scale MethodsDemos
-
Page 129 and 130:
Unconstrained OptimizationFigure 3-
-
Page 131 and 132:
Unconstrained Optimizationvariables
-
Page 133 and 134:
Quasi-Newton ImplementationQuasi-Ne
-
Page 135 and 136:
Quasi-Newton Implementationvalues o
-
Page 137 and 138:
Quasi-Newton ImplementationMixed Cu
-
Page 139 and 140:
Quasi-Newton ImplementationCase 4.3
-
Page 141 and 142:
Least-Squares OptimizationIn proble
-
Page 143 and 144:
Least-Squares OptimizationLevenberg
-
Page 145 and 146:
Least-Squares OptimizationThe linea
-
Page 147 and 148:
Nonlinear Systems of EquationsNonli
-
Page 149 and 150:
Nonlinear Systems of Equationsand s
-
Page 151 and 152:
Constrained OptimizationConstrained
-
Page 153 and 154:
Constrained OptimizationGiven the p
-
Page 155 and 156:
Constrained OptimizationUpdating th
-
Page 157 and 158:
Constrained Optimizationis updated
-
Page 159 and 160:
Constrained OptimizationInitializat
-
Page 161 and 162:
Constrained OptimizationSimplex Alg
-
Page 163 and 164:
Constrained Optimization3 Updates t
-
Page 165 and 166:
Multiobjective OptimizationMultiobj
-
Page 167 and 168:
Multiobjective OptimizationIn the t
-
Page 169 and 170:
Multiobjective OptimizationThe afor
-
Page 171 and 172:
Multiobjective OptimizationWhat is
-
Page 173 and 174:
Multiobjective Optimization(3-51)wh
-
Page 175 and 176:
Selected BibliographySelected Bibli
-
Page 177 and 178:
Selected Bibliography[24] Han, S.P.
-
Page 179 and 180:
4Large-Scale AlgorithmsLarge-Scale
-
Page 181 and 182:
Trust-Region Methods for Nonlinear
-
Page 183 and 184:
Trust-Region Methods for Nonlinear
-
Page 185 and 186:
Preconditioned Conjugate GradientsP
-
Page 187 and 188:
Linearly Constrained ProblemsLinear
-
Page 189 and 190:
Linearly Constrained ProblemsThe sc
-
Page 191 and 192:
Quadratic ProgrammingQuadratic Prog
-
Page 193 and 194:
Large-Scale Linear ProgrammingLarge
-
Page 195 and 196:
Large-Scale Linear ProgrammingThe a
-
Page 197 and 198:
Large-Scale Linear ProgrammingWhile
-
Page 199 and 200:
Selected Bibliography[11] Zhang, Y.
-
Page 201 and 202:
5Optimization ToolGetting Started w
-
Page 203 and 204:
Getting Started with the Optimizati
-
Page 205 and 206:
Selecting a SolverSelecting a Solve
-
Page 207 and 208:
Defining the ProblemDefining the Pr
-
Page 209 and 210:
Defining the ProblemFunction to Min
-
Page 211 and 212:
Defining the ProblemConstraintsLine
-
Page 213 and 214:
Defining the ProblemM-file, or as a
-
Page 215 and 216:
Defining the ProblemBounds are lowe
-
Page 217 and 218:
Defining the Problemfseminf Problem
-
Page 219 and 220:
Defining the ProblemLinear System o
-
Page 221 and 222:
Defining the ProblemFunction to Min
-
Page 223 and 224:
Defining the ProblemConstraintsBoun
-
Page 225 and 226:
Defining the ProblemFunction to Min
-
Page 227 and 228:
Defining the ProblemConstraintsWith
-
Page 229 and 230:
Running a Problem in the Optimizati
-
Page 231 and 232:
Specifying the Options• Xtoleranc
-
Page 233 and 234:
Specifying the Optionsoption to a d
-
Page 235 and 236:
Specifying the OptionsThe following
-
Page 237 and 238:
Specifying the OptionsMultiobjectiv
-
Page 239 and 240:
Specifying the OptionsPlot Function
-
Page 241 and 242:
Specifying the Options• final —
-
Page 243 and 244:
Importing and Exporting Your WorkIm
-
Page 245 and 246:
Importing and Exporting Your WorkYo
-
Page 247 and 248:
Optimization Tool ExamplesOptimizat
-
Page 249 and 250:
Optimization Tool Examples6 In the
-
Page 251 and 252:
Optimization Tool Examplesmax Line
-
Page 253 and 254:
Optimization Tool ExamplesThe Aeq a
-
Page 255 and 256:
6Argument and OptionsReferenceThis
-
Page 257 and 258:
Function ArgumentsInput Arguments (
-
Page 259 and 260:
Function ArgumentsInput Arguments (
-
Page 261 and 262:
Function ArgumentsOutput Arguments
-
Page 263 and 264:
Optimization OptionsOptimization Op
-
Page 265 and 266:
Optimization OptionsOptimization Op
-
Page 267 and 268:
Optimization OptionsOptimization Op
-
Page 269 and 270:
Optimization OptionsOptimization Op
-
Page 271 and 272:
Optimization Optionsspecifies Outpu
-
Page 273 and 274:
Optimization OptionsoptimValues Fie
-
Page 275 and 276:
Optimization OptionsoptimValues Fie
-
Page 277 and 278:
Optimization OptionsoptimValues Fie
-
Page 279 and 280:
Optimization OptionsStopping an Opt
-
Page 281 and 282:
7Functions — By CategoryMinimizat
-
Page 283 and 284:
Least Squares (Curve Fitting)Least
-
Page 285 and 286:
Functions — AlphabeticalList8
-
Page 287 and 288:
intprogx = bintprog(f,A,b,Aeq,Beq,x
-
Page 289 and 290:
intprogBranchStrategyStrategy the a
-
Page 291 and 292:
intprog• Verifies that no better
-
Page 293 and 294:
intprogExampleTo minimize the funct
-
Page 295 and 296:
colorPurposeSyntaxDescriptionColumn
-
Page 297 and 298:
fgoalattainx = fgoalattain(fun,x0,g
-
Page 299 and 300:
fgoalattainfunThefunctiontobeminimi
-
Page 301 and 302:
fgoalattainfunction [c,ceq,GC,GCeq]
-
Page 303 and 304:
fgoalattainattainfactorexitflaglamb
-
Page 305 and 306:
fgoalattainFunValCheckGoalsExactAch
-
Page 307 and 308:
fgoalattainExamplesConsider a linea
-
Page 309 and 310:
fgoalattainof overattainment is met
-
Page 311 and 312:
fgoalattainLimitationsReferencesThe
-
Page 313 and 314:
fminbndInputArguments“Function Ar
-
Page 315 and 316:
fminbndPlotFcnsPlots various measur
-
Page 317 and 318:
fminbndLimitationsReferencesThe fun
-
Page 319 and 320:
fminconx = fmincon(fun,x0,A,b) star
-
Page 321 and 322:
fminconfunThe function to be minimi
-
Page 323 and 324:
fminconthen the function nonlcon mu
-
Page 325 and 326:
fmincongradhessianlambdaoutputGradi
-
Page 327 and 328:
fminconthe values of these fields i
-
Page 329 and 330:
fminconHessianHessMultIf 'on', fmin
-
Page 331 and 332:
fminconPrecondBandWidth Upper bandw
-
Page 333 and 334:
fminconSince both constraints are l
-
Page 335 and 336:
fmincon• A dense (or fairly dense
-
Page 337 and 338:
fminconReferences[1] Coleman, T.F.
-
Page 339 and 340:
fminimaxx = fminimax(fun,x,A,b,Aeq,
-
Page 341 and 342:
fminimaxfunThe function to be minim
-
Page 343 and 344:
fminimaxIf nonlcon returns a vector
-
Page 345 and 346:
fminimaxlambdamaxfvaloutputStructur
-
Page 347 and 348:
fminimaxMeritFunctionMinAbsMaxOutpu
-
Page 349 and 350:
fminimaxx0 = [0.1; 0.1]; % Make a s
-
Page 351 and 352:
fminimax[3] Han, S.P., “A Globall
-
Page 353 and 354:
fminsearchInputArguments“Function
-
Page 355 and 356:
fminsearchOutputFcnPlotFcnsTolFunSp
-
Page 357 and 358:
fminsearcha = sqrt(2);banana = @(x)
-
Page 359 and 360:
fminuncPurposeEquationFind minimum
-
Page 361 and 362:
fminuncfunThefunctiontobeminimized.
-
Page 363 and 364:
fminuncexitflaggradhessianoutputInt
-
Page 365 and 366:
fminuncLarge-Scale and Medium-Scale
-
Page 367 and 368:
fminuncHessianHessMultIf 'on', fmin
-
Page 369 and 370:
fminuncPrecondBandWidthTolPCGUpper
-
Page 371 and 372:
fminuncx0 = [1,1];[x,fval] = fminun
-
Page 373 and 374:
fminunc“Trust-Region Methods for
-
Page 375 and 376:
fseminfPurposeEquationFind minimum
-
Page 377 and 378:
fseminf“Avoiding Global Variables
-
Page 379 and 380:
fseminfoptions“Options” on page
-
Page 381 and 382:
fseminflambdaoutput5 Magnitude of d
-
Page 383 and 384:
fseminfOutputFcnPlotFcnsRelLineSrch
-
Page 385 and 386:
fseminfSecond, write an M-file, myc
-
Page 387 and 388:
fseminfThe plot command inside 'myc
-
Page 389 and 390:
fseminfThe goal was to minimize the
-
Page 391 and 392:
fsolvePurposeEquationSolve system o
-
Page 393 and 394:
fsolvefunThe nonlinear system of eq
-
Page 395 and 396:
fsolvefuncCountalgorithmcgiteration
-
Page 397 and 398:
fsolvePlotFcnsTolFunPlots various m
-
Page 399 and 400:
fsolveJacobPatternMaxPCGIterPrecond
-
Page 401 and 402:
fsolve[x,fval] = fsolve(@myfun,x0,o
-
Page 403:
fsolveYoucanformulateandsolvethepro
-
Page 407 and 408:
fzeroPurposeSyntaxDescriptionFind r
-
Page 409 and 410:
fzeroDisplayFunValCheckOutputFcnLev
-
Page 411 and 412:
fzerowrite an M-file called f.m.fun
-
Page 413 and 414:
fzmultPurposeSyntaxMultiplication w
-
Page 415 and 416:
linprogPurposeEquationSolve linear
-
Page 417 and 418:
linproglambdaoutput-2 No feasible p
-
Page 419 and 420:
linprogsubject toFirst, enter the c
-
Page 421 and 422:
linprogDiagnosticsLarge-Scale Optim
-
Page 423 and 424:
linprogthe primal objective < -1e+1
-
Page 425 and 426:
lsqcurvefitPurposeEquationSolve non
-
Page 427 and 428:
lsqcurvefitfunThe function you want
-
Page 429 and 430:
lsqcurvefitoutputupperUpper bounds
-
Page 431 and 432:
lsqcurvefitJacobianMaxFunEvalsMaxIt
-
Page 433 and 434:
lsqcurvefitJacobPatternMaxPCGIterSp
-
Page 435 and 436:
lsqcurvefitNote that at the time th
-
Page 437 and 438:
lsqcurvefitof J with many nonzeros,
-
Page 439 and 440:
lsqlinPurposeEquationSolve constrai
-
Page 441 and 442:
lsqlinlambdaoutput3 Change in the r
-
Page 443 and 444:
lsqlinDiagnosticsDisplayMaxIterTypi
-
Page 445 and 446:
lsqlinPrecondBandWidthUpper bandwid
-
Page 447 and 448:
lsqlinNotesFor problems with no con
-
Page 449 and 450:
lsqlinReferences[1] Coleman, T.F. a
-
Page 451 and 452:
lsqnonlinreturn a vector of values
-
Page 453 and 454:
lsqnonlinOutputArguments“Function
-
Page 455 and 456:
lsqnonlinalgorithm. See “Optimiza
-
Page 457 and 458:
lsqnonlinJacobMultFunction handle f
-
Page 459 and 460:
lsqnonlinfor(that is, F should have
-
Page 461 and 462:
lsqnonlinand Requirements on page 2
-
Page 463 and 464:
lsqnonnegPurposeEquationSolve nonne
-
Page 465 and 466:
lsqnonneglambdaoutputVector contain
-
Page 467 and 468:
optimgetPurposeSyntaxDescriptionExa
-
Page 469 and 470:
optimsetIn the following lists, val
-
Page 471 and 472:
optimsetLineSearchType'cubicpoly' |
-
Page 473 and 474:
optimtoolPurposeSyntaxDescriptionTo
-
Page 475 and 476:
quadprogPurposeEquationSolve quadra
-
Page 477 and 478:
quadproglambdaoutput3 Change in the
-
Page 479 and 480:
quadprogLargeScaleUse large-scale a
-
Page 481 and 482:
quadprogTolPCGTermination tolerance
-
Page 483 and 484:
quadprogNotesIn general quadprog lo
-
Page 485 and 486:
quadprogWhen the equality constrain
-
Page 487 and 488:
IndexIndex ε-Constraint method 3-4
-
Page 489 and 490:
Indexinfeasible solution warninglin
-
Page 491 and 492:
Indexdescriptions 6-8possible value