主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

迭代输出

迭代显示的类型

迭代显示为您提供了有关求解器在运行过程中的进度的信息。

迭代显示有两种类型:

  • 全局求解器显示

  • 局部求解器显示

两种类型都会出现在命令行中,取决于全局和局部选项。

通过将 Display 字段中的 problem.options 选项设置为 'iter''iter-detailed'optimoptions 来获得局部求解器迭代显示。有关详细信息,请参阅迭代输出

通过将 GlobalSearchMultiStart 对象中的 Display 属性设置为 'iter' 来获得全局求解器迭代显示。

全局求解器将局部求解器的默认 Display 选项设置为 'off',除非问题结构体具有此选项的值。全局求解器不会覆盖您对局部选项所做的任何设置。

注意

将局部求解器 Display 选项设置为 'off' 以外的任何值都可以产生大量输出。Display 创建的默认 optimoptions(@solver) 选项是 'final'

检查迭代显示的类型

使用 GlobalSearchGlobalSearch 迭代显示运行 运行求解器 中描述的示例:

% Set the random stream to get exactly the same output
% rng(14,'twister')
gs = GlobalSearch('Display','iter');
opts = optimoptions(@fmincon,'Algorithm','interior-point');
sixmin = @(x)(4*x(1)^2 - 2.1*x(1)^4 + x(1)^6/3 ...
    + x(1)*x(2) - 4*x(2)^2 + 4*x(2)^4);
problem = createOptimProblem('fmincon','x0',[-1,2],...
    'objective',sixmin,'lb',[-3,-3],'ub',[3,3],...
    'options',opts);
[xming,fming,flagg,outptg,manyminsg] = run(gs,problem);
 Num Pts                 Best       Current    Threshold        Local        Local                 
Analyzed  F-count        f(x)       Penalty      Penalty         f(x)     exitflag        Procedure
       0       34      -1.032                                  -1.032            1    Initial Point
     200     1275      -1.032                                 -0.2155            1    Stage 1 Local
     300     1377      -1.032         248.7      -0.2137                              Stage 2 Search
     400     1477      -1.032           278        1.134                              Stage 2 Search
     446     1561      -1.032           1.6        2.073      -0.2155            1    Stage 2 Local
     500     1615      -1.032         9.055       0.3214                              Stage 2 Search
     600     1715      -1.032       -0.7299      -0.7686                              Stage 2 Search
     700     1815      -1.032        0.3191      -0.7431                              Stage 2 Search
     800     1915      -1.032         296.4       0.4577                              Stage 2 Search
     900     2015      -1.032         10.68       0.5116                              Stage 2 Search
    1000     2115      -1.032       -0.9207      -0.9254                              Stage 2 Search

GlobalSearch stopped because it analyzed all the trial points.

All 3 local solver runs converged with a positive local solver exit flag.

运行相同示例,但不进行 GlobalSearch 迭代显示,但进行 fmincon 迭代显示:

gs.Display = 'final';
problem.options.Display = 'iter';
[xming,fming,flagg,outptg,manyminsg] = run(gs,problem);
                                            First-order      Norm of
 Iter F-count            f(x)  Feasibility   optimality         step
    0       3   -1.980435e-02    0.000e+00    1.996e+00
    1       9   -6.970985e-02    0.000e+00    3.140e+00    2.533e-01
    2      13   -8.662720e-02    0.000e+00    2.775e+00    1.229e-01
    3      18   -1.176972e-01    0.000e+00    1.629e+00    1.811e-01
    4      21   -2.132377e-01    0.000e+00    2.097e-01    8.636e-02
    5      24   -2.153982e-01    0.000e+00    7.701e-02    1.504e-02
    6      27   -2.154521e-01    0.000e+00    1.547e-02    1.734e-03
    7      30   -2.154637e-01    0.000e+00    1.222e-03    1.039e-03
    8      33   -2.154638e-01    0.000e+00    1.543e-04    8.413e-05
    9      36   -2.154638e-01    0.000e+00    1.543e-06    6.610e-06
   10      39   -2.154638e-01    0.000e+00    1.686e-07    7.751e-08

Local minimum found that satisfies the constraints.

Optimization completed because the objective function is non-decreasing in 
feasible directions, to within the selected value of the function tolerance,
and constraints were satisfied to within the selected value of the constraint tolerance.

                                            First-order      Norm of
 Iter F-count            f(x)  Feasibility   optimality         step
    0       3   -1.980435e-02    0.000e+00    1.996e+00

... MANY ITERATIONS DELETED ...

    8      33   -1.031628e+00    0.000e+00    8.742e-07    2.287e-07

Local minimum found that satisfies the constraints.

Optimization completed because the objective function is non-decreasing in 
feasible directions, to within the selected value of the function tolerance,
and constraints were satisfied to within the selected value of the constraint tolerance.

<stopping criteria details>

GlobalSearch stopped because it analyzed all the trial points.

All 4 local solver runs converged with a positive local solver exit flag.

设置 GlobalSearch 迭代显示以及 fmincon 迭代显示会导致两种显示混合在一起。

有关并行环境中迭代显示的示例,请参阅 并行 MultiStart

另请参阅

主题