メインコンテンツ

新旧のオプション名

R2016a では、多くのオプション名が変更されました。optimset には、レガシ オプション名のみを使用できます。optimoptions には、レガシと現在の両方の名前を使用できます。ただし、optimoptions でレガシ名と値のペアを使ってオプションを設定すると、現在の等価な値が表示されます。たとえば、レガシ オプション TolX は現在のオプション StepTolerance と等価です。

options = optimoptions("fsolve",TolX=1e-4)
options = 

  fsolve options:

   Options used by current Algorithm ('trust-region-dogleg'):
   (Other available algorithms: 'levenberg-marquardt', 'trust-region')

   Set properties:
               StepTolerance: 1.0000e-04

   Default properties:
                   Algorithm: 'trust-region-dogleg'
                     Display: 'final'
    FiniteDifferenceStepSize: 'sqrt(eps)'
        FiniteDifferenceType: 'forward'
           FunctionTolerance: 1.0000e-06
      MaxFunctionEvaluations: '100*numberOfVariables'
               MaxIterations: 400
         OptimalityTolerance: 1.0000e-06
                   OutputFcn: []
                     PlotFcn: []
    SpecifyObjectiveGradient: 0
                    TypicalX: 'ones(numberOfVariables,1)'
                 UseParallel: 0

   Show options not used by current Algorithm ('trust-region-dogleg')

次の表は、同じ情報を示しています。1 つ目の表にはレガシ オプション名のアルファベット順に、2 つ目の表には現在のオプション名のアルファベット順にオプションが列挙されています。各表には、変更された名前または値が異なる名前のみが含まれ、値はレガシと現在で異なる場合のみ表示されます。Global Optimization Toolbox のソルバーの変更については、R2016aのオプション変更 (Global Optimization Toolbox)を参照してください。

オプション名 (レガシの順序)

レガシ名現在の名前レガシ値現在の値
AlwaysHonorConstraintsHonorBounds"bounds", "none"true, false
FinDiffRelStepFiniteDifferenceStepSize  
FinDiffTypeFiniteDifferenceType  
GoalsExactAchieveEqualityGoalCount  
GradConstrSpecifyConstraintGradient"on", "off"true, false
GradObjSpecifyObjectiveGradient"on", "off"true, false
HessianHessianApproximation"user-supplied", "bfgs", "lbfgs", "fin-diff-grads", "on", "off"

"bfgs", "lbfgs", "finite-difference"

HessianFcn または HessianMultiplyFcn が空でない場合は無視される

HessFcnHessianFcn  
HessMultHessianMultiplyFcn  
HessUpdate (fminunc 用に R2022a で変更)HessianApproximation"bfgs", "lbfgs", {"lbfgs",Positive Integer}, "dfp", "steepdesc""bfgs", "lbfgs", {"lbfgs",Positive Integer}
JacobianSpecifyObjectiveGradient  
JacobMultJacobianMultiplyFcn  
MaxFunEvalsMaxFunctionEvaluations  
MaxIterMaxIterations  
MinAbsMaxAbsoluteMaxObjectiveCount  
PlotFcnsPlotFcn  
ScaleProblemScaleProblem"obj-and-constr", "none"true, false
SubproblemAlgorithmSubproblemAlgorithm"cg", "ldl-factorization""cg", "factorization"
TolConConstraintTolerance  
TolFun (使用方法 1)OptimalityTolerance  
TolFun (使用方法 2)FunctionTolerance  
TolGapAbsAbsoluteGapTolerance  
TolGapRelRelativeGapTolerance  
TolXStepTolerance  

オプション名 (現在の順序)

現在の名前レガシ名現在の値レガシ値
AbsoluteGapToleranceTolGapAbs  
AbsoluteMaxObjectiveCountMinAbsMax  
ConstraintToleranceTolCon  
EqualityGoalCountGoalsExactAchieve  
FiniteDifferenceStepSizeFinDiffRelStep  
FiniteDifferenceTypeFinDiffType  
FunctionToleranceTolFun (使用方法 2)  
HessianApproximation (fmincon 用)Hessian

"bfgs", "lbfgs", "finite-difference"

HessianFcn または HessianMultiplyFcn が空でない場合は無視される

"user-supplied", "bfgs", "lbfgs", "fin-diff-grads", "on", "off"
HessianApproximation (fminunc 用)(fminunc 用に R2022a で変更)HessUpdate

"bfgs", "lbfgs", {"lbfgs",Positive Integer}

"bfgs", "lbfgs", {"lbfgs",Positive Integer}, "dfp", "steepdesc"
HessianFcnHessFcn  
HessianMultiplyFcnHessMult  
HonorBoundsAlwaysHonorConstraintstrue, false"bounds", "none"
JacobianMultiplyFcnJacobMult  
MaxFunctionEvaluationsMaxFunEvals  
MaxIterationsMaxIter  
OptimalityToleranceTolFun (使用方法 1)  
PlotFcnPlotFcns  
RelativeGapToleranceTolGapRel  
ScaleProblemScaleProblemtrue, false"obj-and-constr", "none"
SpecifyConstraintGradientGradConstrtrue, false"on", "off"
SpecifyObjectiveGradientGradObj または Jacobiantrue, false"on", "off"
StepToleranceTolX  
SubproblemAlgorithmSubproblemAlgorithm"cg", "factorization""cg", "ldl-factorization"

参考

トピック