Обобщенная минимизация собственного значения при ограничениях 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
описывает систему уравнения LMIs 1 к уравнению 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
систематически принимает, что последние ограничения LMI nlfc
линейны дробный.
Добавьте ограничение 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) = xT Px, который доказывает устойчивость
и максимизирует уровень затухания . Это эквивалентно минимизации
α подвергающийся
(4) |
(5) |
(6) |
(7) |
Чтобы настроить эту проблему для gevp
, сначала задайте уравнение LMIs 5 к уравнению 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). Это значение достигается для:
Обобщенные проблемы минимизации собственного значения включают стандартное ограничительное уравнение LMI 1 и линейное дробное ограничительное уравнение 3. Для хорошо-posedness, положительная определенность B (x) должна быть осуществлена путем добавления ограничения B (x) > 0 к проблеме. Несмотря на то, что это могло быть сделано автоматически из кода, это не желательно по причинам эффективности. Например, набор ограничительного уравнения 2 может уменьшать до одного ограничения как в примере выше. В этом случае одного дополнительного LMI “P> I ” достаточно, чтобы осуществить положительность всех линейно-дробных правых сторон. Это поэтому оставляют пользователю создать наименее дорогостоящий способ осуществить это требование положительности.
Решатель gevp
основан на Нестерове и Проективном Методе Немировского, описанном в
Нестеров, Y., и А. Немировский, методы полинома внутренней точки в выпуклом программировании: теория и приложения, SIAM, Филадельфия, 1994.
Оптимизация выполняется fpds.mex
файла MEX на C.