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

Введение

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

Можно также получить итеративное отображение при помощи приложения Оптимизации. Выберите Display to command window > Level of display > iterative или iterative with detailed message.

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

  • 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

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

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),

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

fsolve

Следующая таблица описывает заголовки, характерные для fsolve.

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

Directional derivative

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

Lambda

Значение λk задано в Методе Levenberg-Marquardt

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

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

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

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

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

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

Upper Bounds {x}+s-ub

Выполнимость верхней границы. {x} означает тех x с конечными верхними границами. Это - невязка ru в Устаревшем внутренней точкой Линейном Программировании.

Duality Gap x'*z+s'*w

Разрыв дуальности (см. Устаревшее внутренней точкой Линейное Программирование) между основной целью и двойной целью. s и w появляются в этом уравнении, только если существуют конечные верхние границы.

Total Rel Error

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

Complementarity

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

Time

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

lsqlin

'interior-point' lsqlin итеративное отображение наследован от quadprog итеративное отображение. Отношение между этими функциями объяснено в Линейном методе наименьших квадратов Внутренней точки. Для итеративных деталей отображения см. quadprog.

lsqnonlin и lsqcurvefit

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

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

Directional derivative

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

Lambda

Значение λk задано в Методе Levenberg-Marquardt

Resnorm

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

Residual

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

quadprog

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

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

Primal Infeas

Основной infeasibility, заданный как max( norm(Aeq*x - beq, inf), abs(min(0, min(A*x-b))) )

Dual Infeas

Двойной infeasibility, заданный как norm(H*x + f - A*lambda_ineqlin - Aeq*lambda_eqlin, inf)

Complementarity

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