12.07.2015
•
Views
2 Tutorial[fval,exitflag,output] = runqpbox4precto run the preceding code. After 18 iterations and 50 PCG iterations, thefunctionvaluehasthesamevaluetofivesignificantdigitsfval =-1.0538e+003but the first-order optimality is further reduced.output.firstorderopt =0.0028Note Decreasing TolPcg too much can substantially increase the number ofPCG iterations.Linear Least-Squares with Bound ConstraintsMany situations give rise to sparse linear least-squares problems, often withbounds on the variables. The next problem requires that the variables benonnegative. This problem comes from fitting a function approximation to apiecewise linear spline. Specifically, particles are scattered on the unit square.The function to be approximated is evaluated at these points, and a piecewiselinear spline approximation is constructed under the condition that (linear)coefficients are not negative. There are 2000 equations to fit on 400 variables:load particle % Get C, dlb = zeros(400,1);[x,resnorm,residual,exitflag,output] = ...lsqlin(C,d,[],[],[],[],lb);The default diagonal preconditioning works fairly well:exitflag =3resnorm =22.5794output =iterations: 102-72
Large-Scale Examplesalgorithm: 'large-scale: trust-region reflective Newton'firstorderopt: 2.7870e-005cgiterations: 42message: [1x123 char]For bound constrained problems, the first-order optimality is the infinitynorm of v.*g, wherev is defined as in “Box Constraints” on page 4-10, and gis the gradient.You can improve (decrease) the first-order optimality by using a sparse QRfactorizationineachiteration.Todothis,setPrecondBandWidth to inf.options = optimset('PrecondBandWidth',inf);[x,resnorm,residual,exitflag,output] = ...lsqlin(C,d,[],[],[],[],lb,[],[],options);The number of iterations and the first-order optimality both decrease:exitflag =1resnorm =22.5794output =iterations: 12algorithm: 'large-scale: trust-region reflective Newton'firstorderopt: 5.5907e-015cgiterations: 11message: [1x104 char]Linear Programming with Equalities and InequalitiesThe problem isand you can load the matrices and vectors A, Aeq, b, beq, f, and the lowerbounds lb into the MATLAB workspace with2-73
-
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:
Large-Scale Examples% RUNQPBOX4PREC
-
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 and 404:
fsolveYoucanformulateandsolvethepro
-
Page 405 and 406:
fsolveLimitationsThe function to be
-
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