Main Content

このページは機械翻訳を使用して翻訳されました。元の英語を参照するには、ここをクリックします。

オプションの設定

patternsearchオプションは、optionspatternsearchの入力引数として渡すことで指定できます。構文は次のとおりです。

[x,fval] = patternsearch(@fitnessfun,nvars, ... 
            A,b,Aeq,beq,lb,ub,nonlcon,options)

問題に現れない制約については、空の括弧 [] を渡します。

関数 optimoptions を使用して options を作成します。

options = optimoptions(@patternsearch)
options = 

  patternsearch options:

   Set properties:
     No options set.

   Default properties:
            AccelerateMesh: 0
       ConstraintTolerance: 1.0000e-06
                   Display: 'final'
         FunctionTolerance: 1.0000e-06
           InitialMeshSize: 1
    MaxFunctionEvaluations: '2000*numberOfVariables'
             MaxIterations: '100*numberOfVariables'
                   MaxTime: Inf
     MeshContractionFactor: 0.5000
       MeshExpansionFactor: 2
             MeshTolerance: 1.0000e-06
                 OutputFcn: []
                   PlotFcn: []
                PollMethod: 'GPSPositiveBasis2N'
        PollOrderAlgorithm: 'consecutive'
                 ScaleMesh: 1
                 SearchFcn: []
             StepTolerance: 1.0000e-06
           UseCompletePoll: 0
         UseCompleteSearch: 0
               UseParallel: 0
             UseVectorized: 0

patternsearch 関数は、options を入力引数として渡さない場合、これらのデフォルト値を使用します。

各オプションの値は、options.MeshExpansionFactor などの options のフィールドに格納されます。options に続けてフィールド名を入力すると、これらの値を表示できます。たとえば、パターン検索のメッシュ拡張係数を表示するには、次のように入力します。

options.MeshExpansionFactor
ans =
    2

デフォルトとは異なるフィールド値を持つ options を作成するには、 optimoptions を使用します。たとえば、メッシュ拡張係数をデフォルト値2ではなく3に変更するには、次のように入力します。

options = optimoptions('patternsearch','MeshExpansionFactor',3);

これにより、MeshExpansionFactor を除くすべての値がデフォルトに設定された options が作成され、MeshExpansionFactor3 に設定されます。

ここで、引数 options を指定して patternsearch を呼び出すと、パターン検索ではメッシュ拡張係数 3 が使用されます。

その後、optionsの別のフィールドを変更する場合、例えばPlotFcn@psplotmeshsizeに設定して各反復でメッシュサイズをプロットする場合は、次の構文でoptimoptionsを呼び出します。

options = optimoptions(options,'PlotFcn',@psplotmeshsize)

これにより、PlotFcn を除く options のすべてのフィールドの現在の値が保持され、PlotFcn@plotmeshsize に変更されます。options 入力引数を省略すると、 optimoptionsMeshExpansionFactor をデフォルト値の 2 にリセットすることに注意してください。

MeshExpansionFactorPlotFcnの両方を1つのコマンドで設定することもできます。

options = optimoptions('patternsearch','MeshExpansionFactor',3,'PlotFcn',@psplotmeshsize)

参考

|

関連するトピック