exponenta event banner

Итеративное отображение

Введение

Итеративное отображение представляет собой таблицу статистики, описывающую вычисления в каждой итерации решателя. Статистика зависит как от решателя, так и от алгоритма решателя. Таблица появляется в окне команд MATLAB ® при запуске решателей с соответствующими опциями. Дополнительные сведения об итерациях см. в разделе Итерации и подсчеты функций.

Получение итеративного отображения с помощью optimoptions с Display параметр имеет значение 'iter' или 'iter-detailed'. Например:

options = optimoptions(@fminunc,'Display','iter','Algorithm','quasi-newton');
[x fval exitflag output] = fminunc(@sin,0,options);
                                                  First-order 
Iteration  Func-count     f(x)       Step-size     optimality
    0           2              0                           1
    1           4      -0.841471             1          0.54 
    2           8             -1      0.484797      0.000993 
    3          10             -1             1      5.62e-05 
    4          12             -1             1             0 

Local minimum found.

Optimization completed because the size of the gradient is less than
the value of the optimality tolerance.

Итеративный дисплей доступен для всех решателей, кроме:

  • lsqlin 'trust-region-reflective' алгоритм

  • lsqnonneg

  • quadprog 'trust-region-reflective' алгоритм

Общие заголовки

В этой таблице перечислены некоторые общие заголовки итеративного отображения.

ЗаголовокОтображаемая информация

f(x) или Fval

Текущее значение целевой функции; для fsolve, квадрат нормы вектора значения функции

First-order optimality

Измерение оптимальности первого порядка (см. Измерение оптимальности первого порядка)

Func-count или F-count

количество оценок функций; см. Итерации и подсчеты функций

Iteration или Iter

Номер итерации; см. Итерации и подсчеты функций

Norm of step

Размер текущего шага (размер - евклидова норма, или 2-норма). Для 'trust-region' и 'trust-region-reflective' алгоритмы, когда существуют ограничения, Norm of step является нормой D*s. Здесь, s является шагом и D - матрица диагонального масштабирования, описанная в разделе подпроблемы области доверия описания алгоритма.

Специфичные для функций заголовки

Таблицы в этом разделе описывают заголовки итеративного отображения, значение которых зависит от используемой функции оптимизации.

fgoalattain, fmincon, fminimax и fseminf

В этой таблице описываются заголовки, относящиеся к fgoalattain, fmincon, fminimax, и fseminf.

fgoalattain, fmincon, fminimax или fseminf ЗаголовокОтображаемая информация

Attainment factor

Значение коэффициента достижения для fgoalattain

CG-iterations

Количество итераций сопряженного градиента, взятых в текущей итерации (см. Метод предварительно кондиционированного сопряженного градиента)

Directional derivative

Градиент целевой функции вдоль направления поиска

Feasibility

Максимальное нарушение ограничения, где удовлетворенные ограничения неравенства считаются 0

Line search steplength

Мультипликативный коэффициент, масштабирующий направление поиска (см. уравнение 29)

Max constraint

максимальное нарушение всех ограничений, как внутренних, так и предоставленных пользователем; может быть отрицательным, если ни одно ограничение не привязано

Objective value

Значение целевой функции переформуляции нелинейного программирования задачи minimax для fminimax

Procedure

Процедуры обновления Hessian:

  • Infeasible start point

  • Hessian not updated

  • Hessian modified

  • Hessian modified twice

Дополнительные сведения см. в разделе Обновление матрицы Гессена.

Процедуры подпроблемы QP:

  • dependent - Решатель обнаружил и снял зависимые (избыточные) ограничения равенства.

  • Infeasible - Подпроблема QP с линеаризованными ограничениями неосуществима.

  • Overly constrained - Подпроблема QP с линеаризованными ограничениями неосуществима.

  • Unbounded - Подпроблема QP возможна с большой отрицательной кривизной.

  • Ill-posed - Направление поиска подпроблем QP слишком мало.

  • Unreliable - Подпроблема QP, похоже, плохо обусловлена.

Steplength

Мультипликативный коэффициент, масштабирующий направление поиска (см. уравнение 29)

Trust-region radius

Текущий радиус области доверия

fminbnd и fzero

В этой таблице описываются заголовки, относящиеся к fminbnd и fzero.

fminbnd или fzero ЗаголовокОтображаемая информация

Procedure

Процедуры для fminbnd:

  • initial

  • golden (поиск золотого сечения)

  • parabolic (параболическая интерполяция)

Процедуры для fzero:

  • initial (начальная точка)

  • search (поиск интервала, содержащего ноль)

  • bisection

  • interpolation (линейная интерполяция или обратная квадратичная интерполяция)

x

Текущая точка для алгоритма

fminsearch

В этой таблице описываются заголовки, относящиеся к fminsearch.

fminsearch ЗаголовокОтображаемая информация

min f(x)

Минимальное значение функции в текущем симплексе

Procedure

Симплексная процедура на текущей итерации. Процедуры включают в себя:

  • initial simplex

  • expand

  • reflect

  • shrink

  • contract inside

  • contract outside

Дополнительные сведения см. в разделе Алгоритм fminsearch.

fminunc

В этой таблице описываются заголовки, относящиеся к fminunc.

Заголовок fminuncОтображаемая информация

CG-iterations

Количество итераций сопряженного градиента, взятых в текущей итерации (см. Метод предварительно кондиционированного сопряженного градиента)

Line search steplength

Мультипликативный коэффициент, масштабирующий направление поиска (см. уравнение 11)

fminunc 'quasi-newton' алгоритм может выдать skipped update сообщение справа от First-order optimality столбец. Это сообщение означает, что fminunc не обновил свою гессенскую оценку, потому что полученная матрица не была бы положительной определённой. Сообщение обычно указывает, что целевая функция не является гладкой в текущей точке.

fsolve

В этой таблице описываются заголовки, относящиеся к fsolve.

fsolve ЗаголовокОтображаемая информация

Directional derivative

Градиент функции вдоль направления поиска

Lambda

λ k значение, определенное в методе Левенберга-Марквардта

Residual

Остаток (сумма квадратов) функции

Trust-region radius

Текущий радиус области доверия (изменение нормы радиуса области доверия)

intlinprog

В этой таблице описываются заголовки, относящиеся к intlinprog.

Заголовок intlinprogОтображаемая информация

nodes explored

Совокупное количество исследуемых узлов

total time (s)

Время в секундах с intlinprog начатый

num int solution

Найдено целых возможных точек

integer fval

Найдено значение целевой функции наилучшей целочисленной возможной точки. Это значение является верхней границей для конечного значения целевой функции.

relative gap (%)

100 (b a) | b | + 1,

где

  • b - значение целевой функции наилучшей целочисленной возможной точки.

  • a - наилучшая нижняя граница значения целевой функции.

Примечание

Хотя вы указываете RelativeGapTolerance в виде десятичного числа итеративное отображение и output.relativegap сообщите о разрыве в процентах, что в 100 раз больше измеренного относительного разрыва. Если сообщение о выходе относится к относительному промежутку, то это значение является измеренным относительным промежутком, а не процентом.

linprog

В этой таблице описываются заголовки, относящиеся к linprog. Каждый алгоритм имеет свой итеративный дисплей.

Заголовок linprogОтображаемая информация

Primal Infeas A*x-b или Primal Infeas

Основная несходимость, мера нарушений ограничения, которая должна быть равна нулю при решении.

Определения см. в разделе Предиктор-корректор ('interior-point') или основной алгоритм ('interior-point-legacy') или алгоритм Dual-Simplex.

Dual Infeas A'*y+z-w-f или Dual Infeas

Двойственная несходимость, мера производной лагранжиана, которая должна быть равна нулю при решении.

Определение лагранжиана см. в разделе Предиктор-корректор. Определение двойной несходимости см. в разделе Предиктор-корректор ('interior-point') или основной алгоритм ('interior-point-legacy') или алгоритм Dual-Simplex.

Upper Bounds {x}+s-ub

Выполнимость верхней границы. {x} - это значения x с конечными верхними границами. Это значение является остаточным значением ru в линейном программировании Interior-Point-Legacy.

Duality Gap x'*z+s'*w

Разрыв в дуальности (см. Внутреннее линейное программирование (Interior-Point-Legacy Linear Programming)) между основной и двойной целями. s и w появляются в этом уравнении, только если задача имеет конечные верхние границы.

Total Rel Error

Общая относительная ошибка, описанная в конце основного алгоритма

Complementarity

Мера умножителей Лагранжа, умноженная на расстояние от границ, которое должно быть равно нулю в решении. См. переменную rc в разделе Условия остановки.

Time

Время в секундах, которое linprog был запущен

lsqlin

lsqlin 'interior-point' итеративное отображение наследуется от quadprog итеративный дисплей. Взаимосвязь между этими функциями объясняется в разделе «Линейные наименьшие квадраты: внутренняя точка» или «Активный набор». Сведения об итеративном отображении см. в разделе quadprog.

lsqnonlin и lsqcurvefit

В этой таблице описываются заголовки, относящиеся к lsqnonlin и lsqcurvefit.

lsqnonlin или lsqcurvefit ЗаголовокОтображаемая информация

Directional derivative

Градиент функции вдоль направления поиска

Lambda

λ k значение, определенное в методе Левенберга-Марквардта

Resnorm

Значение квадрата 2-нормы остатка при x

Residual

Остаточный вектор функции

quadprog

В этой таблице описываются заголовки, относящиеся к quadprog. Только 'interior-point-convex' алгоритм имеет итеративный дисплей.

Курс квадпрогаОтображаемая информация

Primal Infeas

Основная несходимость, определяемая как max( norm(Aeq*x - beq, inf), abs(min(0, min(A*x-b))) )

Dual Infeas

Двойная несходимость, определяемая как norm(H*x + f - A*lambda_ineqlin - Aeq*lambda_eqlin, inf)

Complementarity

Мера максимального абсолютного значения множителей Лагранжа неактивных неравенств, которое при решении должно быть равно нулю. Это количество равно g в определении несходимости.