mincx

Минимизируйте линейную цель при ограничениях LMI

Синтаксис

[copt,xopt] = mincx(lmisys,c,options,xinit,target)

Описание

[copt,xopt] = mincx(lmisys,c,options,xinit,target) решает выпуклую программу

minimize cTx  при ограничениях NTL(x)NMTR(x)M(1)

где x обозначает вектор из скалярных переменных решения.

Система LMIs описана lmisys. Векторный c должен иметь ту же длину как x. Эта длина соответствует количеству переменных решения, возвращенных функцией decnbr. Для линейных целей, описанных в терминах матричных переменных, соответствующего c вектор легко выведен с defcx.

Функциональный mincx возвращает глобальный минимальный copt для цели cTx, а также значение минимизации xopt из вектора из переменных решения. Соответствующие значения матричных переменных получены на xopt с dec2mat.

Остающиеся аргументы являются дополнительными. Векторный xinit исходное предположение минимизатора xopt. Это проигнорировано, когда неосуществимый, но может ускорить расчеты в противном случае. Обратите внимание на то, что xinit должен иметь ту же длину как c. Что касается target, это ставит некоторую цель для объективного значения. Код завершает работу, как только эта цель достигается, то есть, как только некоторый выполнимый x, таким образом что cTxtarget найден. Установка опций к [] использовать xinit и target с опциями по умолчанию.

Управляйте параметрами

Дополнительный аргумент options предоставляет доступ к определенным параметрам управления кода оптимизации. В mincx, это - вектор с пятью записями, организованный можно следующим образом:

  • options(1) устанавливает желаемую относительную точность на оптимальном значении lopt (значение по умолчанию = 10–2).

  • options(2) определяет максимальный номер итераций, позволенных выполняться процедурой оптимизации (100 по умолчанию).

  • options(3) устанавливает радиус выполнимости. Его цель и использование что касается feasp.

  • options(4) помогает ускорить завершение. Если установлено в целочисленное значение J> 0, код завершает работу когда цель cTx не уменьшился больше, чем желаемая относительная точность во время последних итераций J.

  • options(5) = 1 выключает трассировку осуществления процедуры оптимизации. Сброс options(5) обнулять (значение по умолчанию) снова включает его.

Установка option(i) обнулять эквивалентно установке соответствующего параметра управления на его значение по умолчанию. Смотрите feasp для большего количества детали.

Совет для ускорения

В оптимизации LMI вычислительные издержки на итерацию в основном прибывают из решения задачи наименьших квадратов формы

minx|Axb|

где x является вектором из переменных решения. Два метода используются, чтобы решить эту задачу: факторизация Холесского AT(Значение по умолчанию) и QR-факторизация A, когда нормальное уравнение заболевает обусловленное (когда близко к решению обычно). Сообщение

* switching to QR

отображен, когда решатель должен переключиться на режим QR.

Поскольку QR-факторизация является инкрементно более дорогой в большинстве проблем, иногда желательно предотвратить переключение на QR. Это сделано установкой options(4) = 1. В то время как не гарантируемый произвести оптимальное значение, это обычно достигает хорошего компромисса между скоростью и точностью.

Проблемы памяти

Основанная на QR линейная алгебра (см. выше) не является только дорогой в терминах вычислительных издержек, но также и в терминах требований к памяти. В результате объем памяти, требуемый QR, может превысить вашу область подкачки для больших проблем с многочисленными ограничениями LMI. В таком случае, MATLAB® выпускает ошибку

??? Error using ==> pds 
Out of memory. Type HELP MEMORY for your options.

Необходимо затем попросить, чтобы системный администратор увеличил область подкачки или, если никакая дополнительная область подкачки не доступна, набор options(4) = 1. Это предотвратит переключение на QR и mincx завершит работу, когда Холесский перестанет работать из-за числовой нестабильности.

Ссылки

Решатель mincx реализации Нестеров и Проективный Метод Немировского как описано в

Нестеров, Ю, и А. Немировский, методы полинома внутренней точки в выпуклом программировании: теория и приложения, SIAM, Филадельфия, 1994.

Немировский, A. и П. Гэхинет, “Проективный Метод для Решения Линейных Матричных Неравенств”, Proc. Amer. Противоречие. Конференция, 1994, Балтимор, Мэриленд, стр 840-844.

Оптимизация выполняется pds.mex файла MEX на C.

Смотрите также

| | | | |

Представлено до R2006a