Деменков Н.П. - Вычислительные методы решения задач оптимального управления на основе принципа максимума Понтрягина - 2015 (842911), страница 6
Текст из файла (страница 6)
Создадим m-файл, определяющий целевую функцию:Function = myfun(x)F = -х(l)*х(2)*х(З) ;Запишем ограничения в виде неравенств- х1 - 2х2 - 2х3 < О,х 1 + 2х2 + 2х3 < 72,или в матричной формеАх < Ь,гдеА=-1-2-2].[122 'Нахождение решения представим следующим образом:>> А= [- 1 - 2 - 2; 122];36>> Ь = [0;72];>> хО = [10;10;10]; % стартовое значение>> [x,fval] = fmincon('myfun',x0,A,b)х=24.000012.000012.0000fval =-3.4560е+ОО3Функцияfminsearchпозволяет найти минимум функции нескольких переменных без ограничений, т. е. решение задачи безусловной оптимизации с использованием симплексного метода.Формы записи, аргументы и возвращаемые величины аналогичны рассмотренным ранее функциямfminconиfgoalattain:х= fminsearch(fun,x0)х = fminsearch(fun,x0,options)х = fminsearch(fun,x0,options,Pl,P2, ...
)[x,fval] = fminsearch( ...)[x,fval,exitflag] = fminsearch( ... )[x,fval,exitflag,output] = fminsearch( ...)Пример 1.5. Найти минимум функции одного= sin(x) + 3:аргументаfiх)=Решение. В результате применения фукций>> f= inline('sin(x)+3');>> х = fminsearch( f,2)получимх= 4.712402343750007.Контрольные вопросы и задачи1.Какова техническая постановка задачи синтеза оптимальных систем автоматического управления?2.3.Что представляют собой критерии оптимальности?Каковаматематическаяпостановказадачиоптимальногоуправления.4.Сформулируйтенеобходимоеусловиеоптимальностивпринципе максимума Понтрягина.375.В чем преимущество принципа максимума перед классическим вариационным исчислением?6.7.Какие существуют методы решения краевых задач?Какие вычислительные проблемы возникают при решениикраевой задачи?8.9.10.В чем состоит метод стрельбы?Как задаются недостающие начальные условия?В чем заключается особенность метода деления отрезка пополам?11.12.В чем состоит особенность метода Ньютона?Опишите алгоритм решения краевой задачи с помощьюпроцедуры13.bvp4c.С помощью стандартных процедур интегрирования дифференциальных уравнений(odel 13, ode45 и др.) решите, используяметод стрельбы и функцию МАTLAB bvp4c или bvp5c, уравнение(t+1)х" (t) + x(t) = i2, х(О) = 4, х'( 5) = 14,961.14.
Найдите минимум функции у(х), гдеХ = (х1 , Х2, Х3, Х4)т;у(х) = С11х1 л2 + С22х2л2,3 +СззХзл l ,4 +С44Х4л2+С1 2Х1 л 1 ,2Х2лО, 5+ С1зХ1 л2, s лхзл 1,1 +С14Х1 л3 Х4л0,7 + С2зХ2л l,6 Хзло,4 +С24Х2л2 Х4л 1 ,2 +Сз4Хзл3,1 Х4ло,1 +С1х1 +С2Х2 + Сзхз + С4Х4 ;С11=2; С22=0,9; Сзз=3 , 7; С44=-2,5 ; С12=3 , 1; Св=4,2 ; С14=3 ,4;С2з=- 4,1; С24=1,3; Сз4=3 , 8 ; C1=l; С2=2; Сз=3; С4=4при ограничениях типа линейных неравенств Ах < Ь :2х1+ 3,7x2< 8,l;4,2х3 - 2,2х4 < 13,4;О , 5х1 + 3х2 + 4хз < 1О.ГЛАВА2. ПРИМЕРЫ РЕШЕНИЯ ЗАДАЧНА ПРИНЦИП МАКСИМУМА2.1. Система, оптимальнаяпо быстродействиюРассмотрим вычисление оптимального управления на примересистемы, оптимальной по быстродействию, для которой функцияGk =иО,L ( х, и, t) = 1гамильтонианпН= ро+LPifi•i=1Критерий качестваfkfktotofJJ= L(x,u,··t)dt= Idt=tk-to =Т.Привод металлорежущего станка (лифта) снабжен двигателем,с помощью которого он перемещает резец (лифт) массойвдоль горизонтальной (вертикальной) прямой (рис.2.1 ).т= 1Размерами резца (лифта) можно пренебречь.Сила тяги, развиваемая двигателем,ограничена значениемlиl ~ 1.
Обозначим расстояние от резца до некоторойточкипрямойт1хчерез х. Тогда уравнение движения привода будет иметь вид2тd xdt21О~------===1=~---Рис.2.1. Объект управления=и.Обозначим х1 = х, а скорость движения резца .х = х2. В этом случае39dx2dt-=и·-1~и~1.'Требуется определить, как должна изменяться сила тяги двигателяu(t),данного(x1(tk)=чтобы за минимальное время Т перевести резец из заначальногоx2(tk)положения(х 10 , х20)вначалокоординат= О).Функция Гамильтона Н имеет видdx 0н -- Ро--+dx1dx 2+ Р2 - = Ро + Р1Х2 + Р2И,dtdtР1--dtтак какdxo =1dtи х0 =fkf1dt.toСоставим уравнения для вспомогательных переменных:dp 0 = - ан =О;dtах0dp1 =- ан =о·'dtах1dp 2--= -dtан--= -р1;ах2откуда получимРо = Со =где С0 , С1, С2-const,р1 = С1 =const, Р2= С2- C1t,постоянные интегрирования.Функция Н представляет собойлинейнуюфункциюот и.Наибольшее значение она может принимать на границах интервала:u(t) = 1,u(t) = - 1,еслиp2(t) >еслир2(t)О;< О.Таким образом, оптимальное управление имеет вид40гдеl,p2 > ОО, р2sign p2(t) ==О-l,p2 < ОПоскольку функцияр2(t)= С2 - C1t на отрезке O~t ::;;тизменяетзнак не более одного раза,то оптимальное управление являетсякусочно-постоянной функцией, имеющей не более двух знакопостоянных интервалов.
Оптимальная система в этом случае оказывается релейной. Для устойчивой линейной системы п-го порядка в соответствии с теоремой Фельдбаума имеется не более пинтервалов ((п-1) переключений).Представим более наглядно,как происходит процесс движения. Исключая время из уравнений, описывающих динамику объекта, получимили---- =и.х2dx 1dx1При и*= ±1 имеемх; = ±х 1 + С.Фазовые траектории являются параболами.ПриСО их1 = ±х; /2 траектория проходит через начало координат.Для signp2 > О (и=+ 1)Х2 = Х20 + t;Х1 = -1 t22+ Х20 t + Х10 = -12Фазовые траекторииной оси (кривые(t+ Х20)2 + ( х10 -Xio ] = -Xi-22+ А.параболы с вершинами на веществен-1 на рис. 2.2) и ветвями, расположеннымисправаот вершинДляsignp2 < О(и=d 2x- 1, -dtХ22< О);= Х20 - t;f2-12х1 =-- + x2ot+x10 = - (- t+x20)22Х20+ ( х10 +2-]2-Х22= -- + В.241Фазовые траекторииной оси (кривые2на рис.2от вершинпараболы с вершинами на веществен-2.2)и ветвями, расположенными слеваJd x( и = +1, dt 2 > О .Рис.22.2.
Фазовый портрет системы,оптимальной по быстродействию:1-иd2x= +1 ,2- > О;2-dt1иd2 x= -1, -dt 2< О;линия переключения (т. е. изменение3 -знака и)Изменение знака и (переключение) происходит не более одного раза, поэтому оно может происходить лишь на той траектории,которая проходит через конечную точку- начало координат,т. е.на линии переключения.Фазовые оптимальные траектории показаны сплошными линиями.
Линия переключения (кривая3на рис.2.2)состоит из двухкусков парабол, расположенных во втором и четвертом квадрантах. Ее уравнение имеет вид2Х1л.п+Х2л п2·s1gn Р2= 0'откудаХ2л.п = Х°lл.п = -,fi;;_sign р2.Следовательно, в регуляторе должно быть устройство, дифференцирующее входной сигнал (регулируемую величину) по времени и вычисляющее х1 на линии переключения по формулеi1= -,fi;;_sign р2,а также логическое устройство, осуществляющее переключениеуправления на максимальное значение по формуле42и(х1)=dx1 dх1л.п{ +1 при-<-dtdtи при-=---<dx1dtdх1л.пdtОdx1 dх1л.п{ - 1 при->-dtdtипри-=-->dx1dtdх1л.пОdt;.Функциональная схема оптимального регулятора представлена на рис.2.3.Х tл.пВычислитель Х1 л.пЛогическоеДифференциальноеустройствоРис.и*=±1устройство-----•2.3.
Функциональная схема оптимального регулятораОпределим оптимальное время перехода из заданного положения в нулевое положение . Посколькуdx2dtdx1dt--=-=и,отсюда= udt.dx1В результате интегрирования получимX1k -Х1п= u(tk -fп ).Так как переход совершается в два этапа и значенияпроцесса(±10) ив конце(x1k = О)3 (см.рис.2.2).в началезаданы, для вычисления временина каждом этапе необходимо найти хключения±1= х1пв точкеDлинии переЭта точка лежит на пересечении кривых,описываемых уравнениями- (±1)2х1 =---+Со2их1=+(±1)2243ПоэтомуХlп = +.}Со,где Со определим из начальных условий.Для расчета необходимо взять знак«-», так как переключениепроисходит в области отрицательных значенийх1п,Лt2находим время движения на первом= tk -Лt1х1.Подставляя= tп - toи второмtп участках.
Общее времяТ= Лt1 + Лt2 = tп - to + tk -tп= tk - to.Отметим, что найденное решение применимо и к задаче об оптимальном по быстродействию управления системой,у которойограничено значение второй производной. Для этой цели примемограниченную вторуюпроизводную в качестве управления и получим уравнениеd 2x- 2 =и,dtlиl~l.Очевидно, что оптимальный процесс должен состоять из двухэтапов:1)разгонаприпредельномускорении и2)торможенияпри предельном замедлении. Принцип максимума дает строгое математическое обоснование этого распределения, которое используется для синтеза оптимальной, а затем и желаемой передаточныхфункций системы.Рассмотрим более подробно структуру оптимального регулятора для рассматриваемого объекта.
На рис.2.4приведена функциональная схема регулятора с объектом.•l~_Р_е_гу_л_я_то_Р__и1Рис.2.4. Функциональная схема регулятора с объектомПри и = -1 имеем2х2= -2х 1или х 1Xi = 2х1= - х22 /2,х2>или х 1 = х~ /2, х2<О, при и = +1О. Следовательно, линия переклю-чения удовлетворяет следующему логическому уравнению:442Х1л п.-Х2.= -Х1л.п = --s1gnx2.2Структурная схема оптимального регулятора представленана рис.2.5.Блокс нелинейной функциейS(.x)получен путемпересчета.х1sхS(x)Рис.2.5.Структурная схема оптимального регулятораг----------------------,Оптимальный регуляторх1---+➔l-•f1__11и_ _ _i _ _,. 1s- 1 .________.S(x)х1хsхХ2 = Х1111_______________________ !1Рис.2.6.
Упрощеннаяструктурная схема оптимального регулятораИспользуя внутренние связи и свойства объекта, можно существенно(рис.упростить2.6).структурнуюсхемуоптимальногорегулятораНа этом примере видно, что хорошее знание объектапозволяет упростить структуру регулятора.452.2. Оптимизацияпривода с двигателем постоянного токаС использованием принципа максимума синтезируем алгоритмоптимального управления и рассчитаем оптимальные процессы дляпривода с двигателем постоянногочисло оборотов пн= 700тока,об/мин, Ин=имеющим номинальными220 В,Рн= 1200 Вт при ограничении его нагрева.
Привод описывается следующей системойуравнений:(2.1)Требуется перевести координаты объекта из положения приt=QkО ЩJ==О рад,00=О рад/с в положение при t= tk, a k = 200рад,О рад/с за минимально допустимое время tk при ограничениина нагревfkQ = JRi dt ~А.2toВыясним, меньше какого значения нельзя сделать tk и как влияет ограничение по нагреву на время переходного процесса в оптимальной системе.Исходные данные:J = 0,4 кг•м2 - момент инерции;Кдв = О, 14 - коэффициент усиления двигателя;Мс = 0,03 Н · м - момент сопротивления на валу двигателя;iн = 6,8 А- номинальный ток;А = 146 Вт-с - ограничение на нагрев;R = 3,8 Ом-сопротивление.Для решения задачи оптимального управления введем фазовые переменные:{46а = х1 (t); ⇒ {х1 (О) = ао = О; {х1 (tk) = ak = 200;Q = x2(t)х2(О) = Оо = О; x2(tk) = Ok = О.Представим исходную систему{Токх1.(2.1) в пространстве состояний:= х2;х2=КдвИ-МсJ.i(t) является управлением u(t).Так как требуется перевести систему из одного положения вдругое за минимально допустимое время с ограничением на тепловыделение, функционал можно записать следующим образом :lkJ=lkJ(L+Ru 2 )dt=оJ(1+Ru 2 )dt ➔ min .оФункция Гамильтона для рассматриваемой задачи имеет видН(р,х , и)=-1-Rи 2 + р1.х1 + р2.х2== -1- Ru 2 + р1х2 + р2 [КдвИJ-Мс] •Сопряженная система дифференциальных уравнений для составляющих вектора импульсовdp1dtdp2dtдН-дх1дН'⇒Piвыглядит так:dp1 = О·dt'dp2---=-р1дх2⇒{р' =с,;р2= -c1t + с2 .dtДля минимизации Н по и при условии -Итах= Иmin~ и ~ Иmахнеобходимо , чтобы управление имело следующий вид :u(t) ={Иmах при Р2 ~ О;Иmin при р2 ~ О.Найдем уравнения фазовых траекторий для каждого из возможных управлений .Для управления и= Иmах получим47.КдвИmах -Мсх2 (t) = - - - - - =Jconst;Х2 (t)-Мс ]= КдвИmахJt + Х20;Х1 (t)= Х2 (t);[fоКдвИmах - Мсtх1 (t) = t х2 (t)dt =[ - - - - -] - 2 + x2ot + х10.J2Определим время из второго уравнения для фазовой траектории:x2(t)-x20t=------.[Кдвит;-Мс]ТогдаxI(t)-xioХ1 (t) = [ КдвИmах _ Мс ] + Х1 О ;2X2(t) =J[ КдвИmахJ -Мс ] t + Х20;х2(О) = х20 = О;х1(О) = х10 = О;Х21 (t) =[ КдвИmахJ -Мс] t = 2.3O5t;xICt)х11 (t) =22[ КдвИтах -Мс ] = 1.152t .JУравнения для управления и = Иmin выглядят аналогично:xI(t)- xioX12(t) =248[ КдвИmin JМс] + Х10;x22(t)=[ КдвИminJ -Мс] t+x20.Найдем значения х10, х20, а также время переключения tпивремя окончания процесса tкх2(tк)Х1 (tк)о= -2,455tк= О;= 200;+ х20 ⇒ х20 =2,455tк;Xi(tк)-Xio200 =-х2202(-2, 445)+х .lOЗапишем уравнения неразрывностих11(tп)2,3O5tп2,3052= х12(tп);= -2,445tп + х20;-2,445222--tп = ---tп +х2оtп + х10.Решая полученную систему уравненийх20= 2, 455tк;200 =-х2202(-2,445)2,3O5tп2,30522+х.lO,= -2,445tn + Х20;-2,44522--tп = ---tп +х2оtп +х10,49найдем= 45,032;Х10 = -213,015;tп = 9,460;fк = 18,343.Х20Запишем систему уравнений с учетом этих значений:X11(t)=1,152t 2 ; U=Итах; tE[O, tп];Х21 (t)= 2, 305t;И= Иmах ; t Е [О, fп ];-2,455t2X12(t)=---+45,032t-213,015;2Х22 (t)U=Иmin; tE[tп,tк ];= -2, 455t + 45,032; И = Иmin; t Е [tп , fк ].Зная время переключения tп , найдем координаты точки переключения на фазовой плоскости:х1(tп )= 103,13;х2(tп)= 21,8.Построим фазовый портрет системы (рис .На рисунке2.7).видно, что система сначала использует то управление (Иmах ) , котороеприводитеек точкепереключения,а потомпереключаетуправление на Иmin .Оптимальное300 Хэ(t)изменяется по з аконуи-60 - 40 -201 1/Рис.2.7.1О1004060~1~1~\I_IФазовый портрет системы5020управлениеа*(t) ={Иmах при t < tп;Иmin припереходныеt > tп,процессыимеютвидO(t)= {2, 305t; t < tп;-2, 455t + 45,032; t > fп ;1, 152t2 ; t < tп;a(t) = -2,455t 2---+45,032t-213,015;2Их графики приведены на рис.и2.82.9.t>tп.Таким образом, нашлирешение задачи быстродействия без ограничения на нагрев.