rybalev optimal systems_(отсюда брал лекции) (842910), страница 5
Текст из файла (страница 5)
4.x2x1,x20.610.5x1x1+x2 =10.40.3x20.50.20.10-0.100.20.40.60.8100t0.20.40.6а)0.8б)u1.61.41.210.80.60.40.200.20.40.60.81tв)Рис. 4. Оптимальная траектория (а, б) и оптимальноеуправление (в)Конечные значения координат:x1k = -0.1747*exp(-1)+ 0.1403*exp(1)+ 0.0344*exp(2)x1k =0.5713311x1x2k = -0.1193*exp(-2)+ 0.0935*exp(1)+ 0.0258*exp(2)x2k =0.4287Значение функционала:t = 0:.01:1;u = .2806*exp(t)+.1032*exp(2t)J = trapz(t,u.*u)J =0.7626Пример 5Требуется объект, описываемый уравнениямиìx& 1 = x 2 ,íîx& 2 = u,(148)перевести из состояния x1(0) = x2(0) = 0 в положение x 2 (1) = 0 (конечная скорость равна нулю) таким образом, чтобы обеспечить максимум функционала:J = x1 (1)(149)с учетом ограничения на энергоресурс1òu2dt = 12 .(150)0Из формулировки задачи видно, что это задача на максимальную дальность перемещения.
Избавимся от изопериметрического ограничения (150),введя дополнительную переменную x3, такую, чтоx& 3 = u 2 .(151)Примем x 3 (0) = 0, тогда x 3 (1) = 12 .Запишем гамильтониан и функцию G:H = y1x 2 + y 2 u + y 3u 2 ,G = x1 (1) .(152)(153)Необходимыми условиями экстремума будут:¶Hy& 1 = = 0,¶x1¶H= -y1 ,y& 2 = ¶x 232(154)(155)y& 3 = -¶H= 0,¶x 3(156)¶H= y 2 + 2y 3 u = 0 .¶u(157)Из (154) -(157) получимy1 = C1 = const ,y 2 = -y1t + C 2 = -С1t + C 2 ,y 3 = C3 = const ,yC t - C2.u=- 2 = 12y 32C3(158)(159)(160)(161)Применим условие трансверсальностиY1 (1) =¶G= 1,¶x1 (1)(162)следовательно, С1 = 1. Подставляя это значение в (159) и (161), получимy 2 = C2 - t ,yt - C2u=- 2 =,2y 32C 3(163)(164)t 2 - 2C 2 t + C 22u =.4C322(165)Интегрируя (151) с учетом (165), определимt3C 2 t 2 C 22 tx3 =++ C4 .12C32 4C32 4C32ет:(166)Из начального условия для x3 следует, что С4 = 0.
Конечное условие даx 3 (1) =1C2C 22 1 - 3C 2 + 3C 22+== 12 ,12C32 4C32 4C3212C32(167)откуда1 - 3C 2 + 3C 22C3 = ±.(168)12Необходимо выбрать знак в (168). Рассмотрим оба варианта. Первый:1 - 3C 2 + 3C 22C3 =,12(169)33u=t - C26(t - C 2 )= k1t + k 2 ,=2C 31 - 3C 2 + 3C 22(170)гдеk1 =61 - 3C 2 + 3C 22,k2 = -6C 21 - 3C 2 + 3C 22.(171)Из (148) с учетом (170) получимk1 2t + k 2t + k3 .2Так как x2(0) = 0, k3 = 0. Далее из того, что x2(1) = 0, следует:x2 =(172)k1+ k2 = 0 ,(173)2откуда с учетом (171) получим: С2 = 0,5. Подставляя это значение в (170), имеемu=6(t - C 2 )1 - 3C 2 + 3C 22= 12t - 6 .(174)Интегрируя уравнения объекта с учетом (174) и нулевых начальных условий, получим:x 2 = 6t 2 - 6 t ,(175)x1 = 2 t 3 - 3t 2 .(176)Согласно (176) в момент времени t = 1 x1 = -1.Второй вариант:1 - 3C 2 + 3C 22.(177)C3 = 12Проведя вычисления, аналогичные проведенным выше, в данном случае получим:u = 6 - 12t ,x 2 = 6t - 6t 2 ,(178)(179)x1 = 3t 2 - 2 t 3 .(180)При этом x1(1) = 1.Сравнивая решения по двум вариантам, выбираем второе как обеспечивающее максимум функционала (149) (первое решение, очевидно, дает его ми34нимум).
Графики оптимальных траекторий и оптимального управления, построенные по формулам (178)-(180), приведены на рис. 5.x1,x2u61.5x24120x1-20.5-4000.20.40.60.81t-60а)0.20.40.60.81tб)Рис. 5. Графики изменения координат объекта (а) иуправления (б)В заключение отметим, что с помощью вариационного исчисленияможно решать задачи и с нефиксированным временем, однако в данной работедля этой цели мы будем использовать принцип максимума.2.3. ЗаданияОпределить оптимальное управление, переводящее объект, описанныйматрицами состояния А и управления В, из состояния x1(0), x2(0) в состояниеx1(tк), x2(tк) за заданное время tк таким образом, чтобы достигался минимумфункционала J.Варианты:1ùé 0é0 ù1.
A = ê, B = ê ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 2, x 2 ( t к ) = 0,úë - 1 - 1ûë1 ûtкJ = ò u 2dt, t к = 2 .0é- 1 0 ùé 2ù2. A = ê,B=úê1ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 2, x 2 ( t к ) = 0,5,ë 0 - 2ûë ûtкJ = ò u 2dt, t к = 1 .01ùé 0é0 ù3. A = ê,B=úê1ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 1, x 2 ( t к ) = 0,ë - 1 - 2ûë û35J=ò (utк2)+ x 22 dt, t к = 1.01ùé0 ùé 04. A = ê,B=ê1ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 5, x 2 ( t к ) любое,úë ûë- 2 - 1ûtкJ = ò u 2dt, t к = 3 .01ùé0 ùé05. A = ê,B=ê1ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) любое, x 2 ( t к ) = 1,úë ûë 1 - 1ûtкJ = ò u 2dt, t к = 2 .0é- 1 1ùé0 ù6.
A = ê, B = ê ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 1, x 2 ( t к ) = 0,úë - 1 0ûë 2ûJ=ò (utк2)+ 2x 22 dt, t к = 10 .01ùé 0é0 ù7. A = ê,B=úê1ú, x1 (0) = 1, x 2 (0) = 0, x1 ( t к ) = x 2 ( t к ) = 0,ë - 1 - 4ûë ûtкJ = ò u 2dt, t к = 2 .01ùé 0é1 ù8. A = ê,B=úê0ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 1, x 2 ( t к ) = -1,ë - 1 - 1ûë ûJ=ò (utк2)+ x12 dt, t к = 4 .00ùé- 1é 2ù9. A = ê,B=úê1ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) + 2x 2 ( t к ) = 1,01ëûë ûJ=ò (utк2)+ x12 dt, t к = 2 .01ùé 0é0 ù10. A = ê, B = ê ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 1,úë- 2 - 3ûë1ûx 2 ( t к ) неизвестно,36J=x 22 ( t к ) +tкòu2dt, t к = 1.01ùé0 ùé 011. A = ê,B=ê1ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 1, x 2 ( t к ) = 0,úë ûë - 1 - 6ûJ=ò (utк2)+ x 22 dt, t к = 10 .0é1ùé- 2 - 3ù12. A = ê,B=ê0ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) неизвестно ,0 úûë ûë 1x 2 (t к ) = 5 ,J=x12 ( t к ) +tкò 4u2dt, t к = 6 .00ùé- 2é1ù13.
A = ê,B=úê1ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) + x 2 ( t к ) = 4,ë 0 - 3ûëûJ=x12 ( t к ) +x 22 ( t к ) +tкòu2dt, t к = 1 .02ùé-1é0 ù14. A = ê, B = ê ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 2, x 2 ( t к ) = 0,úë- 3 - 4ûë 4ûJ=ò (utк2)+ x 22 dt, t к = 4 .0é015. A = êë1J=- 1ùé0 ù,B=ê1ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 1, x 2 ( t к ) = 0,0 úûë ûò (x1 + 2x 2 + 3utк222)dt, tк= 2.0é016. A = êë02ùé0 ù,B=ê3ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) максимально,0 úûë ûx 2 ( t к ) = 0, J = - x1 ( t к ),tкòu2dt = 10, t к = 2 .01ùé 0é0 ù17.
A = ê, B = ê ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 1, x 2 ( t к ) = 1,úë - 4 - 2ûë1 û37tкJ = ò u 2dt, t к = 5 .0é018. A = êë40ùé 2ù,B=ê0ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 0,0 úûë ûx 2 ( t к ) = максимальн о, J = - x 2 ( t к ),tкòu2dt = 10, t к = 6 .01ùé0ùé 019. A = ê,B=ê2ú, x1 (0) = x 2 (0) = 0, x1 ( t к ) = 1,úë ûë - 1 - 4ûx 2 ( t к ) неизвестно,J=2x 22 ( t к ) +tкòu2dt, t к = 1 .00ùé- 5é1ù20. A = ê,B=úê1ú, x1 (0) = x 2 (0) = 0, 3x1 ( t к ) + 2x 2 ( t к ) = 1,ë 0 - 8ûëûJ=x12 ( t к ) + 2x 22 ( t к ) +tкò 3u2dt, t к = 2 .0383. РЕШЕНИЕ ЗАДАЧ ОПТИМАЛЬНОГО УПРАВЛЕНИЯС ПОМОЩЬЮ ПРИНЦИПА МАКСИМУМА3.1. Принцип максимума ПонтрягинаПринципом максимума называют математический метод, разработанный академиком Л.С.
Понтрягиным и его учениками для решения задач оптимального управления. Этот метод позволяет определить необходимые условияминимума функционала видаtкJ = ò f 0 (X ( t ), U( t ) )dt ,(181)t0где X - вектор переменных состояния объекта; U - вектор управляющих воздействий при наличии любых, в том числе неклассических (в виде неравенств)ограничений, накладываемых на векторы X и U.Важно отметить, что при этом конечное время tк неизвестно и подлежитопределению при решении задачи.В нашей работе мы будем рассматривать задачи оптимального управления, когда неклассические ограничения заданы только на вектор управления, чему соответствует вариант принципа максимума, наиболее часто используемый на практике.
Будем считать, что этот вектор должен принадлежать некоторой известной области допустимых значений W, т.е. U Ì W . Область Wможет быть задана, например, неравенствами видаu i £ u i, max , i = 1…m,(182)что означает ограничение управляющих воздействий по модулю.Для определения необходимых условий минимума функционала (181)принцип максимума, как и вариационное исчисление, использует функциюГамильтона.
Эта функция задается следующим образом:nH = y 0 ( t )f 0 (X ( t ), U( t )) ) + å y i ( t )f i (X ( t ), U( t ) ) ,(183)i =1где y0…yn - неопределенные множители; f i (X ( t ), U( t ) ) - правые части дифференциальных уравнений объекта.Отличием данной функции от гамильтониана, применяемого в вариационном исчислении, является присутствие множителя y0 перед подынтегральной функцией функционала.При фиксированных значениях y0…yn и x1…xn функция H являетсяфункцией управления U.
Следовательно, из области допустимых значений Wможно выбрать такой вектор управляющих воздействий, при котором гамильтониан достигает максимума. Обозначим верхнюю грань (максимум) значенийH через М(Y,X):39M(Y , X) = sup H(Y , X, U ) .(184)UÌWСформулируем принцип максимума [3].Для оптимальности управления и траектории X(t) необходимо существование такой ненулевой непрерывной вектор-функции Y(t) = [y0(t), y1(t),…yn(t)], соответствующей функциям U(t) и X(t), что:1) при любом t на отрезке t 0 £ t £ t к функция Н(Y,X,U) переменногоU Ì W достигает при данном управлении U(t) максимумаH(Y ( t ), X ( t ), U( t ) ) = M (Y ( t ), X( t )) ;(185)2) в конечный момент времени tк выполняются соотношенияy 0 ( t к ) £ 0;М (Y ( t к ), X ( t к ) ) = 0 .(186)Кроме того, если Y(t), X(t), U(t) удовлетворяют уравнениямy& i = -¶Н, i =1…n¶x i(187)и условию (185), то функции y0(t) и М(Y(t), X(t)) переменного t являются постоянными и условие (186) выполняется в любой момент времени на отрезкеt0 £ t £ tк .Отметим, что вектор Y(t) может быть определен с точностью до постоянного множителя, так как очевидно, что если некоторый вектор Y*(t) удовлетворяет условиям принципа максимума, то вектор kY*(t), где k = const > 0,также им удовлетворяет.
Поэтому всегда при y 0 ( t ) ¹ 0 можно положитьy 0 ( t ) = -1, что мы и будем делать (случай y 0 ( t ) = 0 является особым и нами нерассматривается).3.2. Линейная задача максимального быстродействия.Теорема об n интервалахПринцип максимума позволяет решать задачи оптимального управления, в которых в качестве критерия оптимизации выступает время переходного процесса.
Это время должно быть минимальным, - другими словами, речьидет об обеспечении максимального быстродействия системы.Теоретически любой линейный объект может быть переведен из любого начального состояния в любое конечное за сколь угодно малое время. Увеличение быстродействия достигается увеличением мощности управляющегосигнала. Однако на практике этот сигнал всегда ограничен (в данной работерассматривается ограничение управления по модулю (182)). В таких условияхминимальное время перехода объекта из одного состояния в другое существует и конечно, т.е. задача оптимального управления имеет решение.Пусть имеется линейный объект управления, описываемый матричнымуравнением& = AX + BU .X(188)40Уравнение (188) эквивалентно системе из n дифференциальных уравнений первого порядка:mdx i n= å a ij x j + å bik u k , i = 1...n ,dt j=1k =1(189)где n - порядок системы; m - число управляющих воздействий.Предположим, что система (189) является нормальной, т.е.