s_,l1_,l2_
s_,l1_,l2_
Решение задачи математического программированияl1 = −1;l2 = 0;
S = −1 − 5 ∗ l1 + 4 ∗ 1 − l1^2 − K −
NIntegrate sè, s,0,1 ;j = 0;l10 = = l2;Do
WA<D;<EIf >; Print@ @ D
206 −0.794 −0.607918 S=3.97259
Анализ оптимального управления
Plot@8U1@t,l10,l20D,U2@t,l10,l20D<,8t,0,1<D2
1.5
0.5
Graphics
Построение оптимального начального положения
8 закона <Osny4 t ,
t,l10,l20 ,
y4'@tDD A91@ D∗@y3D@t@DD+ Sin@ D@tD@∗ y4D@@DtD@+ U2@@@t,l10,l20DD D= D,y1 x10,y2 0 x20,y3 0 x30,y4 0 x40 , 88Plot8 @@@8@@Dêy1DD<@tD8,y2@ D@@tD<
@ 8D @@D<D<<D@ 88Dê@ D<<<E @ Dê < y1t ; y18 t_ , =y1 t .Osn,y2t .Osn,y4 t .Osn ;
Graphics
Вычисление оптимального расстояния до терминального множества
y1 1 −5 ^2+ y2 1 −4 ^2 −1
3.97259 @ D L H @ D LПример 3.1.
Построение фундаментальной матрицы Коши
Resh1 =
DSolve t x21 t ,x21' t −x11 t ,x11 0 == 1, x21 D < 8 @ D,x21D @tD<@,tDD; @ D @ DResh2 =@
DSolve x12' t x22 t ,x22' t −x12 t ,x12 0 0, x22@0@8D<D @ D @,x22D @tD<@,tDD; @ D @ Dx11 t .Resh1,x21 t .Resh1 ;
888 @ D<< 8x12@@tDêDê.Resh2,x22@@tDêDê.Resh2<<;
.t → t − s;
J X @@ DD @@ DDNê
J@CosSin@@ssВвод−−DttDD − CosSinоптимального@ −−tD N DD управления
Интегрирование уравнений движения для оптимального управленияFin = DSolve x1' t x2 t + u10 t ,x2' t −x1 t + u20 t , 8 x1@@ @0D<D<D == 1@8,x@@ DêDê2@@0DD 1<,@8x1D @tD,x2@ D@tD<,t@DD; @ D @ D
x1 t_ = x1 t .Fin;
x2 t_ = x2 t .Fin;
Оптимальная траектория ParametricPlotA8x1@tD,x2@tD<,9t,0,è2=EGraphics
Пример 3.2. Ввод начальных условий
x01 J, 1N88 < 8Построение<< фундаментальной матрицы Коши
Resh1 =
NDSolve x11' t Cos t ∗ x11 t + t ∗ x21 t , x21'@ A9tD = t 8 ∗ x21@tD<E,x11@ D @0D 1,x21 0@D 0 ,;
Resh2 =
NDSolve x12'+ ∗ t ,
x22'@@A9DtD t@+ 1D ∗ x12@tD+ Sin@tD∗ x22@t<@E,x12@@@DDDDêDê@0D 0,<<x22 0 1,;
x11x11 t t .Resh1 ; t .Resh2 ;
Inverse X s ;
JD @@@DDD @@@DDDN @ D@Построение функции ипсилон
l= ll21 ;Vne=PartTranspose MKT,0.x0 .l,1,1;Vsp=Transpose MKT,s .l;
PodJT_,s_,l1_,l2_N @ = Part Vsp,1,1@H @ D^2+LDPart Vsp,2,1D ^2 ^
12; @ @ DD Eps@@T_,l1_,l2_D=VneD H−3∗NIntegrate@ D@Pod@T,s,l1,l2@ D,8Ds,0,TL <D2.27631l1+ 2.08901l2− 3NIntegrate Pod T,s,l1,l2 , s,0,T Ввод оптимального времени@ @ переходаD8 <D
T=0.662;
Определение опорного вектора
A=FindMinimum −EpsT,l1,l2 +100∗ l1^2+l2^2−1 ^2, l1,0.1,0.2, l2,0.1,0.2 ; l10,l208 <=8l1<@ê.Part@ @A,2,1DD,l2ê.PartH @A,2,2D<;L 8 < 8 <D
l0= l10,l200.617752,0.786373
8EpsT,l10,l20 <
−0.0000122584@ D
Построение оптимального управления
Upr=t_Transpose3∗ @PartMK@@T,tUpr,1DD.l0;u10Part^2+@Upr,2Part@t_@DUpr,2D=−3∗DPartLUpr,1Par^2t+@PartUpr,@1Upr,2D D^2L^21 ; u20@ D=− H D H^2 ^; DИнтегрирование уравнений движения для оптимального управления
Fin = NDSolve x1' t Cos t ∗ x1 t + t ∗ x2 t + u10 t ,
8 x2'@@ @D<D< A9@@1DêDê @ D @ D @ D <E+ u20@@tDD,x1@@0DD 1,x2 0 t,0,T ;
x1 t_ 8
x2 t_ = t
Оптимальная траектория
ParametricPlot@8x1@tD,x2@tD<,8t,0,T<DGraphics
Проверка попадания в начало координат
8x1−0.0000134271@TD,x2@TD< , −0.0000148833
8 <
Пример 4.3
Ввод начального и конечного положений фазового вектора
X0
XT 80.7746, −147.179, −8.9441580.7746,
< матрицы Коши