rybalev optimal systems_(отсюда брал лекции) (842910), страница 8
Текст из файла (страница 8)
Его решение позволяет определить не только функциюS(X), но и оптимальные траектории, и оптимальное управление.Пример 8.Требуется объект управленияìx& 1 = x 2 ,íîx& 2 = - x1 - 2x 2 + u(259)перевести из любого начального состояния в состояние x1(1) = x2(1) = 0 такимобразом, чтобы обеспечить минимум функционалаJ=ò (x1 + x 2 + utк222)dt .(260)0Конечное время tк не фиксируется.Функциональное уравнение Беллмана в данном случае имеет вид:æö¶S¶S(- x1 - 2x 2 + u )÷÷ .0 = minçç x12 + x 22 + u 2 +x2 +uÎU è¶x1¶x 2ø(261)Так как на управление не наложено никаких ограничений, то для определения минимума продифференцируем правую часть уравнения по u и приравняем результат нулю:2u +¶S= 0,¶x 2(262)откуда получимu=-1 ¶S.2 ¶x 2(263)Подставляя (263) в (261), получим21 æ ¶S ö¶S¶S æ1 ¶S ö÷÷ +çç - x1 - 2x 2 ÷ = 0.x12 + x 22 + ççx2 +4 è ¶x 2 ø ¶x1¶x 2 è2 ¶x 2 ÷øПосле преобразования:56(264)2x12+ x 22¶S¶S¶S1 æ ¶S ö÷ = 0.+x2 x1 - 2x 2 - çç¶x1¶x 2¶x 24 è ¶x 2 ÷ø(265)Уравнение (265) - уравнение в частных производных, общего решениякоторого не существует.
Будем искать частное решение в виде квадратичнойформыS(X ) = C1x12 + C 2 x1x 2 + C3 x 22 .(266)Напомним, что S(X) по сути есть минимальное значение функционала(260), по виду которого можно заключить, что S(X) должна быть неотрицательна при любых x1, x2.Из (266) находим необходимые частные производные¶S= 2C1x1 + C 2 x 2 ,¶x1¶S= C 2 x1 + 2C3 x 2 .¶x 2(267)Подставляя (267) в (265), получим:x12 + x 22 + 2C1x1x 2 + C 2 x 22 - C 2 x12 - 2C3 x1x 2 1- C 22 x12 - C 2C3 x1x 2 - C32 x 22 = 0.4Коэффициенты С1, С2, С3 определяются из системы уравнений:- 2C 2 x1x 2 - 4C3 x 221 2ìï1 - C 2 - 4 C 2 = 0,ïï2í1 + C 2 - 4C3 - C3 = 0,ï2C - 2C - 2C - C C = 0.322 3ï 1ïî(268)(269)Решая с помощью Matlab первое уравнение системы, получаемC2 = roots([-.25 -1 1])C2 =-4.82840.8284Из второго уравнения для С2 = -4,8284:C31 = roots([-1 -4 1+C2(1)])C31 =-2.4142-1.5858Для С2 = 0,8284:57C32 = roots([-1 -4 1+C2(2)])C32 =-4.41420.4142Для того чтобы квадратичная форма (266) была неотрицательно определенной, очевидно, что С3 должна быть неотрицательной величиной.
Следовательно, из полученных решений следует выбрать вариант С2 = 0,8284,C3 = 0,4142. Тогда из третьего уравнения системы (269) получим:1C1 = C3 + C 2 + C 2C3 = 1,4142 .2С помощью (263) и (266) определим оптимальную стратегиюu=-1 ¶S1= - C 2 x1 - C3 x 2 = -0,4142x1 - 0,4142x 2 .2 ¶x 22(270)(271)Структура системы оптимального управления показана на рис. 13.uu1sx21sx1x12x2.4142.4142Рис. 13. Simulink-модель оптимальной системыГрафики оптимальных траектория и оптимального управления, рассчитанные для x1(0) = 1, x2(0) = 0,5, показаны на рис. 14.58ux1,x201.5-0.11-0.2x1-0.30.5-0.4x2-0.50-0.6-0.5-0.702468t02468tРис.
14. Оптимальные траектории и оптимальноеуправление4.2. Задача об аналитическом конструировании регулятораЗадачей об аналитическом конструировании регулятора называется задача синтеза регулятора для линейного объекта, минимизирующего квадратичный критерий. К этому классу задач относится, в частности, рассмотреннаяв примере 8.В общем случае постановка задачи следующая.Имеется линейный объект управления& = AX + BU ,X(272)где X - n-мерный вектор состояния; U - m-мерный вектор управляющих воздействий; А, В - постоянные матрицы.Требуется определить управление, минимизирующее функционал()1¥ TJ = ò X QX + U T RU dt ,20(273)где Q и R - постоянные матрицы, имеющие размеры n´n и n´m соответственно.
Матрица Q является неотрицательно определенной, т.е. для любого X ¹ 0X T QX ³ 0 , матрица R - положительно определенной, т.е. для любого U ¹ 0U T RU > 0 .С помощью матриц Q и R задаются соответствующие квадратичныеформы. Так как любую квадратичную форму можно задать симметрическойматрицей, будем считать матрицы Q и R симметрическими, т.е. Q = QT, R = RT.В соответствии с критерием Сильвестра, для того чтобы симметрическая матрица была положительно определенной, необходимо, чтобы все ее ведущиеглавные миноры (определители «вдоль» главной диагонали) были положительны.
Указанное обстоятельство позволяет формировать матрицы Q, R длярешения задач.59На управление U не наложено никаких ограничений. На правый конецтраектории условия также не накладываются. Однако очевидно, что функционал (273) может быть конечным только в том случае, если при t ® ¥ X®0.Составим уравнение Беллмана:1¶Sæ1(AX + BU )ö÷ .0 = minç X T QX + U T RU +U è22¶Xø(274)Найдем уравнение, минимизирующее правую часть уравнения (274).Для этого продифференцируем ее по U и приравняем полученную производную нулю. Поскольку¶U T RU = 2U T R ,¶U[](275)¶ é ¶ù ¶BUúû = ¶X B ,¶U êë ¶X(276)в результате получим:UT R +¶SB= 0.¶X(277)Из уравнения (277) находим, чтоTæ ¶SöU = -çBR -1 ÷ .è ¶Xø(278)Используя известное матричное тождество (CM )T = M T C T , перепишем(278) в виде( )U=-R-1 TT¶S öB ç÷ .è ¶X øTæ(279)( )Так как R – симметрическая матрица, то R -1записатьT= R -1 , и поэтому можноT¶S öU = -R B ç÷ .è ¶X ø-1 T æ(280)Управление (280) доставляет экстремум правой части (274).
Определимвид экстремума, взяв вторую производную этого выражения по U:¶2¶U 2[]1 T¶Sé1 Tù ¶()XQX+URU+AX+BU=UT R = R .êë 2ú2¶Xû ¶U(281)Поскольку R – положительно определенная матрица, правая частьуравнения (274) может иметь только минимум.60Подставив оптимальное управление (280) в (274), получимT1 T1 ¶Sæ ¶S öX QX +BR -1RR -1BT ç÷ +22 ¶Xè ¶X ø¶S æçæ ¶S öAX - BR -1BT ç+÷¶X çèè ¶X øTö(282)÷ = 0,÷øилиT1 T1 ¶S¶Sæ ¶S öX QX BR -1BT çAX = 0 .÷ +22 ¶X¶Xè ¶X ø(283)Уравнение (283) представляет собой уравнение в частных производныхотносительно неизвестной функции S(X). Будем искать его решение в видеположительно определенной квадратичной формы:1S(X ) = X T PX ,2Tгде P = P > 0 – симметрическая матрица.Производная квадратичной формы:(284)¶S= XTP .¶X(285)Подставив (285) в (283), получим:1 T1X QX - X T PBR -1BT P T X + X T PAX =221= X T Q - PBR -1BT P T + 2PA X = 0.2[](286)Рассмотрим выражение, стоящее в квадратных скобках (286).
МатрицаQ является симметрической. Покажем, что матрица PBR -1BT P T также является симметрической. Действительно, в соответствии с матричным равенством(CM )T = M T CT можно записать:(PBR) = (B P ) (PBR )-1 T T TB PT T T-1 T( ) (PB)= PB R -1TT= PBR -1BT P T . (287)Квадратичную форму XTPAX также можно задать с помощью симметрической матрицы. Для этого представим ее в виде:1æ1öX T PAX = X T ç PA + A T P T ÷X ,2è2øгде(288)11PA + A T P T - симметрическая матрица.2261Тогда (286) примет вид:[]1 TX Q - PBR -1BT P T + PA + A T P T X = 0.(289)2Квадратичная форма, стоящая в левой части (289), может равняться нулю только в том случае, если ее матрица равняется нулю. Таким образом, получаем:Q - PBR -1BT P T + PA + A T P T = 0.(290)Уравнение (290) называется матричным уравнением Риккати.
Оно позволяет определить искомую матрицу P и эквивалентно системе из n2 уравнений.Матричное уравнение имеет не единственное решение. Из его решенийнеобходимо выбрать такое, которое задает положительно определенную матрицу P. Эта матрица определяется однозначным образом и обеспечивает устойчивость системы управления.Действительно, пусть P – положительно определенная матрица.
В соответствии с (280) и (285) оптимальное управление задается равенством:(U = -R -1BT X T P)T= -R -1BT P T X .(291)По виду (291) можно заключить, что оптимальный регулятор являетсялинейным. Определим устойчивость системы с помощью прямого метода Ляпунова. Для этого исследуем функцию (284).В случае положительно определенной матрицы P эта функция являетсяположительно определенной. Ее полная производная по времени, вычисленнаяв силу уравнений объекта с учетом (291), имеет вид:d¶S(X) dXS(X ) == X T P(AX + BU ) = X T PAX - X T PBR -1BT P T X . (292)dt¶X dtИз уравнения (286) следует, что[]1X T PAX = X T PBR -1BT P T - Q X .2Подставив (293) в (292), получим(293)d11S(X ) = - X T QX - X T PBR -1BT P T X .dt22(294)Из (291) получим:U T = - X T PBR -1 .(295)Тогда, учитывая (291) и (295), (294) можно переписать в видеd11S(X ) = - X T QX - U T RU .dt22(296)62Так как X T QX и U T RU являются положительно определенными квадратичными формами,dS(X ) < 0dt(297)при всех X ¹ 0 и, следовательно, решение X = 0 системы (272), (291) являетсяасимптотически устойчивым.Основную сложность при использовании метода аналитического конструирования регулятора составляет решение матричного уравнения Риккати.В настоящее время разработаны численные методы его решения.
В частности,в пакете Control программы Matlab имеется функция lqr, решающая болееобщую по сравнению с рассмотренной выше задачу, в которой функционал задан в видеJ=ò (X¥T)QX + U T RU + 2X T NU dt ,(298)0где N - некоторая постоянная матрица.Функция lqr решает уравнение Риккати видаQ - (PB + N )R -1 (BT P + N T ) + PA + A T P = 0 ,(299)а также вычисляет матрицу K и собственные числа матрицы состояний синтезированной системы A-BK.Применяя простейший вариант функции lqr (без матрицы N), решимзадачу из примера:ABQRk=====k =[0 1; -1 -2];[0;1];[1 0; 0 1];1;lqr(A,B,Q,R)0.41420.41424.3. ЗаданияОпределить оптимальное управление, переводящее объект, описанныйматрицами состояния А и управления В, из любого начального состояния вначало координат x1(tк) = x2(tк) = 0 таким образом, чтобы достигался минимумфункционала J.Решение проверить в Matlab с помощью функции lqr.Варианты:()tк1ùé 0é0 ù1.
A = ê, B = ê ú, J = ò x 22 + u 2 dt ;úë - 1 - 1ûë1 û063()tк1ùé0 ùé 02. A = ê, B = ê ú, J = ò x12 + u 2 dt ;úë1 ûë - 6 - 2û0()tк1ùé0 ùé03. A = ê, B = ê ú, J = ò x12 + 3x 22 + u 2 dt ;úë1ûë0 - 2 û0()tк1ùé0 ùé 04. A = ê, B = ê ú, J = ò x12 + 2x 22 + 0,5u 2 dt ;úë1 ûë - 5 - 1û0()tк1 ùé0 ùé 0, B = ê ú, J = ò 2x12 + x 22 + 5u 2 dt ;5. A = êúë1ûë- 0,5 - 1,5û0()tк1ùé0 ùé 06.
A = ê, B = ê ú, J = ò x12 + 2x 22 + 2u 2 dt ;úë1 ûë- 10 - 6û0()tк1ùé 0é0 ù, B = ê ú, J = ò 2x 22 + u 2 dt ;7. A = êúë - 3 - 4ûë1 û0()tк1ùé 0é0 ù, B = ê ú, J = ò x12 + 0,5u 2 dt ;8. A = êúë- 2 - 2ûë1 û0()tк1ùé 0é0 ù9. A = ê, B = ê ú, J = ò x12 + 2x 22 + 3u 2 dt ;úë- 15 - 20ûë1û0()tк1ùé0é0 ù10. A = ê, B = ê ú, J = ò 3x12 + 2x 22 + 4u 2 dt ;úë- 4 - 3ûë1 û0()tкé 0 1ùé0 ù, B = ê ú, J = ò x12 + x 22 + 2u 2 dt ;11.