Обобщенная минимизация собственного значения при ограничениях LMI
[lopt,xopt] = gevp(lmisys,nlfc,options,linit,xinit,target)
gevp
решает обобщенную задачу минимизации собственного значения минимизации λ согласно:
(1) |
(2) |
(3) |
где C (x) <D (x) и A (x) <λB (x) обозначает системы LMIs. При условии, что уравнение 1 и уравнение 2 совместно выполнимы, gevp
возвращает глобальный минимальный lopt
и значение минимизации xopt
из вектора из переменных x решения. Соответствующие оптимальные значения матричных переменных получены с dec2mat
.
Аргумент lmisys
описывает систему уравнения 1 LMIs к уравнению 3 для λ = 1. LMIs, включающие λ, называются линейно-дробными ограничениями, в то время как уравнение 1 и уравнение 2 являются регулярными ограничениями LMI. Количество линейно-дробного ограничительного уравнения 3 задано nlfc
. Все другие входные параметры являются дополнительными. Если начальная выполнимая пара (λ0, x 0) доступна, это может быть передано gevp
установкой linit
к λ0 и xinit
к x 0. Обратите внимание на то, что xinit
должен иметь длину decnbr(lmisys)
(количество переменных решения). Начальная точка проигнорирована, когда неосуществимый. Наконец, последний аргумент target
наборы некоторое целевое значение для λ. Код завершает работу, как только он нашел выполнимую пару (λ, x) с λ ≤ целью.
При подготовке gevp
проблема, быть осторожным к
Всегда задавайте линейно-дробное ограничительное уравнение 3 в последний раз в системе LMI. gevp
систематически принимает что последний nlfc
Ограничения LMI линейны дробный.
Добавьте ограничение B (x)> 0 или любое другое ограничение LMI, которое осуществляет его (см. Комментарий ниже). Это ограничение положительности требуется для регулярности и хорошей формулировки задачи оптимизации.
Дополнительный аргумент options
позволяет вам параметры управления доступом кода оптимизации. В gevp
, это - вектор с пятью записями, организованный можно следующим образом:
options(1)
устанавливает желаемую относительную точность на оптимальном значении lopt
(значение по умолчанию = 10–2).
options(2)
определяет максимальный номер итераций, позволенных выполняться процедурой оптимизации (100 по умолчанию).
options(3)
устанавливает радиус выполнимости. Его цель и использование эквивалентны для feasp
.
options(4)
помогает ускорить завершение. Если установлено в целочисленное значение J> 0, код завершает работу, когда прогресс λ по последним итерациям J падает ниже желаемой относительной точности. Прогресс означает сумму, которой уменьшается λ. Значением по умолчанию являются 5 итераций.
options(5) = 1
выключает трассировку осуществления процедуры оптимизации. Сброс options(5)
обнулять (значение по умолчанию) снова включает его.
Установка option(i)
обнулять эквивалентно установке соответствующего параметра управления на его значение по умолчанию.
Данный
считайте задачу нахождения одной функцией Ляпунова V (x) = xTPx, который доказывает устойчивость
и максимизирует уровень затухания . Это эквивалентно минимизации
α удовлетворяющий
(4) |
(5) |
(6) |
(7) |
Настраивать эту проблему для gevp
, сначала задайте уравнение 5 LMIs к уравнению 7with α = 1:
setlmis([]); p = lmivar(1,[2 1]) lmiterm([1 1 1 0],1) % P > I : I lmiterm([-1 1 1 p],1,1) % P > I : P lmiterm([2 1 1 p],1,a1,'s') % LFC # 1 (lhs) lmiterm([-2 1 1 p],1,1) % LFC # 1 (rhs) lmiterm([3 1 1 p],1,a2,'s') % LFC # 2 (lhs) lmiterm([-3 1 1 p],1,1) % LFC # 2 (rhs) lmiterm([4 1 1 p],1,a3,'s') % LFC # 3 (lhs) lmiterm([-4 1 1 p],1,1) % LFC # 3 (rhs) lmis = getlmis
Обратите внимание на то, что линейные дробные ограничения заданы в последний раз как требуется. Чтобы минимизировать α, удовлетворяющий уравнению 5 к уравнению 7, вызовите gevp
[alpha,popt]=gevp(lmis,3)
Это возвращает alpha = -0.122
как оптимальное значение (самый большой уровень затухания поэтому 0.122). Это значение достигается для:
Обобщенные проблемы минимизации собственного значения включают стандартное ограничительное уравнение 1 LMI и линейное дробное ограничительное уравнение 3. Для хорошо-posedness, положительная определенность B (x) должна быть осуществлена путем добавления ограничения B (x) > 0 к проблеме. Несмотря на то, что это могло быть сделано автоматически из кода, это не желательно по причинам КПД. Например, набор ограничительного уравнения 2 может уменьшать до одного ограничения как в примере выше. В этом случае одного дополнительного LMI “P> I ” достаточно, чтобы осуществить положительность всех линейно-дробных правых сторон. Это поэтому оставляют пользователю создать наименее дорогостоящий способ осуществить это требование положительности.
Решатель gevp
основан на Нестерове и Проективном Методе Немировского, описанном в
Нестеров, Y., и А. Немировский, методы полинома внутренней точки в выпуклом программировании: теория и приложения, SIAM, Филадельфия, 1994.
Оптимизация выполняется fpds.mex
файла MEX на C.