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

Введение

Итеративное отображение является таблицей статистики, описывающей вычисления в каждой итерации решателя. Статистика зависит и от решателя, и от алгоритма решателя. Таблица появится в 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

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

Procedure

Гессианские процедуры обновления:

  • 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

Current point для алгоритма

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(ba)|b|+1,

где

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

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

Примечание

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

linprog

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

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

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

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

Для определений см. Predictor-Corrector ('interior-point') или Основной Алгоритм ('interior-point-legacy') или Алгоритм Двойного Симплекса.

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

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

Для определения Лагранжа, см. Предиктор-Корректор. Для определения двойной недопустимости см. Predictor-Corrector ('interior-point') или Основной Алгоритм ('interior-point-legacy') или Алгоритм Двойного Симплекса.

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 в Stopping Conditions.

Time

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

lsqlin

lsqlin 'interior-point' итеративное отображение наследуется от quadprog итеративное отображение. Связь между этими функциями объясняется в Линейных методах наименьших квадратов: Interior-Point или Active-Set. Для получения итерационных сведений об отображении см. quadprog.

lsqnonlin и lsqcurvefit

Эта таблица описывает заголовки, характерные для lsqnonlin и lsqcurvefit.

lsqnonlin или lsqcurvefit КурсОтображаемая информация

Directional derivative

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

Lambda

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

Resnorm

Значение квадратичной 2-нормы невязки в x

Residual

Вектор невязок функции

quadprog

Эта таблица описывает заголовки, характерные для quadprog. Только 'interior-point-convex' алгоритм имеет итеративное отображение.

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

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 в обнаружении недопустимости.