最优控制理论第二次作业.doc
- 格式:doc
- 大小:140.73 KB
- 文档页数:3
最优控制习题答案最优控制习题答案最优控制是一门研究如何在给定的约束条件下,使某个系统的性能指标达到最优的学科。
在实际应用中,最优控制被广泛应用于工程、经济、生态学等领域。
然而,最优控制问题通常非常复杂,需要运用数学方法进行求解。
在本文中,我们将探讨一些最优控制习题,并给出相应的答案。
习题一:一辆汽车行驶在一条直线上,其速度v(t)满足以下微分方程:m*dv(t)/dt = F(t) - kv(t),其中m为汽车的质量,F(t)为外部施加的力,k为阻力系数。
求使得汽车行驶时间最短的外部力F(t)。
解答:首先,我们需要确定行驶时间的数学表达式。
设汽车的初始速度为v0,行驶时间为T,根据题意,我们可以得到以下约束条件:v(0) = v0,汽车的初始速度为v0;v(T) = 0,汽车的最终速度为0。
根据最小时间原理,我们可以建立一个最优控制问题的数学模型,即求解以下极值问题:minimize T,使得v(T) = 0;subject to m*dv(t)/dt = F(t) - kv(t),v(0) = v0。
通过拉格朗日乘子法,我们可以得到最优控制问题的解析解。
最终,我们可以得到外部力F(t)的解析表达式。
习题二:一个农民想要将一块矩形土地分成两块,使得两块土地的总面积最大。
该农民只能在土地的一条边上建立一道直线围栏。
求最优划分方案。
解答:设矩形土地的长为a,宽为b。
我们需要确定如何划分土地,使得两块土地的总面积最大。
根据题意,我们可以得到以下约束条件:2a + b = L,L为围栏的长度。
根据最大面积原理,我们可以建立一个最优控制问题的数学模型,即求解以下极值问题:maximize A = ab,使得2a + b = L。
通过拉格朗日乘子法,我们可以得到最优控制问题的解析解。
最终,我们可以得到最优划分方案的解析表达式。
习题三:一架飞机要从A地飞往B地,途中需要经过一个位于C地的雷达站。
飞机的速度恒定为v,雷达站可以通过调整飞机的航向角度来监测飞机的位置。
最优控制第四次作业4—2 一位公务员乘出租车要从机场赶到会场参加重要会议,已知交通网络如图所示。
图上数字为每条支路的驾驶时间,且全部支路都是单行线.试用动态规划找出最短时间路线。
解:机场用A 表示,会场用O 表示,从左到右,从上到下分别用字母A-O 表示,采用逆序计算法,末端开始,终端为止。
如上图。
(1) N=14(N 级)11(1)4(2)5J N J N ==由于从N1到O 以及从N2到O 都只有一种可能,所以本级无决策问题.(2) N=13(M 级)本级决策有三种选择,计算如下21(1)(1,1)(1)6410J M d M N J N =+=+=121(2,1)(1)9413(2)min 9(2,2)(2)459d M N J N J M d M N J N +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量2(2)2S M N =本级决策有四种选择,计算如下32(1)(1,1)(1)51015J L d L M J M =+=+=232(2,1)(1)41014(2)min 14(2,2)(2)7916d L M J M J L d L M J M +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量3(2)2S L M =232(3,2)(2)5914(3)min 10(3,3)(3)3710d L M J M J L d L M J M +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量3(3)3S L M =32(4)(4,3)(3)4711J L d L M J M =+=+=(4) N=11(K 级)本级决策有五种选择,计算如下413()(1,1)(1)31518J K d K L J L =+=+=343(2,1)(1)71522(2)min 16(2,2)(2)21416d K L J L J K d K L J L +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量4(2)2S K L =343(3,2)(2)41418(3)min 16(3,3)(3)61016d K L J L J K d K L J L +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量4(3)3S K L =343(4,3)(3)31013(4)min 13(4,4)(4)61117d K L J L J K d K L J L +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量4(4)3S K L =43(5)(5,4)(4)81119J K d K L J L =+=+=(5) N=10(J 级)本级决策有六种选择,计算如下(1)(1,1)(1)51823J J d J K J K =+=+=454(2,1)(1)41822(2)min 21(2,2)(2)51621d J K J K J J d J K J K +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量5(2)2S J K =454(3,2)(2)31619(3)min 19(3,3)(3)61622d J K J K J J d J K J K +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量5(3)2S J K =454(4,3)(3)41620(4)min 20(4,4)(4)81321d J K J K J J d J K J K +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量5(4)3S J K =454(5,4)(4)21315(5)min 15(5,5)(5)31922d J K J K J J d J K J K +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量5(5)4S J K =54(6)(6,5)(5)41923J J d J K J K =+=+=(6) N=9(I 级)本级决策有七种选择,计算如下65(1)(1,1)(1)72330J I d I J J J =+=+=565(2,1)(1)22325(2)min 25(2,2)(2)52126d I J J J J I d I J J J +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量6(2)1S I J =565(3,2)(2)42125(3)min 21(3,3)(3)21921d I J J J J I d I J J J +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量6(3)3S I J =565(4,3)(3)71926(4)min 25(4,4)(4)52025d I J J J J I d I J J J +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量6(4)4S I J =5(5,4)(4)32023d I J J J +=+=⎧⎫565(6,5)(5)11516(6)min 16(6,6)(6)32326d I J J J J I d I J J J +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量6(6)5S I J =65(7)(7,6)(6)62329J I d I J J J =+=+=(7) N=8(H 级)本级决策有八种选择,计算如下76(1)(1,1)(1)33033J H d H I J I =+=+=676(2,1)(1)33033(2)min 31(2,2)(2)62531d H I J I J H d H I J I +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量7(2)2S H I =676(3,2)(2)52530(3)min 24(3,3)(3)32124d H I J I J H d H I J I +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量7(3)3S H I =676(4,3)(3)42126(4)min 26(4,4)(4)42529d H I J I J H d H I J I +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量7(4)3S H I =676(5,4)(4)52530(5)min 28(5,5)(5)52328d H I J I J H d H I J I +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量7(5)5S H I =676(6,5)(5)72330(6)min 25(6,6)(6)91625d H I J I J H d H I J I +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量7(6)6S H I =6(7,6)(6)21618d H I J I +=+=⎧⎫76(8)(8,7)(7)32932J H d H I J I =+=+=(8) N=7(G 级)本级决策有七种选择,计算如下787(1,1)(1)53338(1)min 35(1,2)(2)43135d G H J H J G d G H J H +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量8(1)2S G H =787(2,2)(2)63137(2)min 27(2,3)(3)32427d G H J H J G d G H J H +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量8(2)3S G H =787(3,3)(3)22426(3)min 26(3,4)(4)92534d G H J H J G d G H J H +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量8(3)3S G H =787(4,4)(4)52530(4)min 30(4,5)(5)42832d G H J H J G d G H J H +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量8(4)4S G H =787(5,5)(5)32831(5)min 30(5,6)(6)52530d G H J H J G d G H J H +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量8(5)6S G H =787(6,6)(6)92534(6)min 20(6,7(7)21820d G H J H J G d G H J H +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量8(6)7S G H =787(7,7)(7)71825(7)min 25(7,8)(8)73239d G H J H J G d G H J H +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量8(7)7S G H =898(1,1)(1)23537(1)min 35(1,2)(2)82735d F G J G J F d F G J G +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量9(1)2S F G =898(2,2)(2)52732(2)min 32(2,3)(3)72633d F G J G J F d F G J G +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量9(2)2S F G =898(3,3)(3)82634(3)min 34(3,4)(4)63036d F G J G J F d F G J G +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量9(3)3S F G =898(4,4)(4)63036(4)min 34(4,5)(5)43034d F G J G J F d F G J G +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量9(4)5S F G =898(5,5)(5)43034(5)min 23(5,6)(6)32023d F G J G J F d F G J G +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量9(5)6S F G =898(6,6)(6)52025(6)min 25(6,7)(7)32528d F G J G J F d F G J G +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量9(6)6S F G =(10) N=5(E 级)本级决策有五种选择,计算如下9109(1,1)(1)63541(1)min 36(1,2)(2)43236d E F J F J E d E F J F +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量10(1)2S E F =9109(2,2)(2)23234(2)min 34(2,3)(3)93443d E F J F J E d E F J F +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量10(2)2S E F =9(3,3)(3)63440d E F J F +=+=⎧⎫9109(4,4)(4)43438(4)min 31(4,5)(5)82331d E F J F J E d E F J F +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量10(4)5S E F =9109(5,5)(5)32326(5)min 26(5,6)(6)72532d E F J F J E d E F J F +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量10(5)5S E F =(11) N=4(D 级)本级决策有四种选择,计算如下101110(1,1)(1)73643(1)min 38(1,2)(2)43438d D E J E J D d D E J E +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量11(1)2S D E =101110(2,2)(2)63440(2)min 40(2,3)(3)24042d D E J E J D d D E J E +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量11(2)2S D E =101110(3,3)(3)84048(3)min 35(3,4)(4)43135d D E J E J D d D E J E +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量11(3)4S D E =101110(4,4)(4)53136(4)min 32(4,5)(5)62632d D E J E J D d D E J E +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量11(4)5S D E =(12) N=3(C 级)本级决策有三种选择,计算如下111211(1,1)(1)53843(1)min 43(1,2)(2)74047d C D J D J C d C D J D +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量12(1)1S C D =111211(3,3)(3)33538(3)min 37(3,4)(4)53237d C D J D J C d C D J D +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量12(3)4S C D =(13) N=2(B 级)本级决策有两种选择,计算如下121312(1,1)(1)44348(1)min 44(1,2)(2)63844d B C J C J B d B C J C +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量13(1)2S B C =121312(2,2)(2)33841(2)min 41(2,3)(3)103747d B C J C J B d B C J C +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量13(2)2S B C =(14)N=1(A 级)本级决策是唯一的,计算如下131413(,1)(1)84452()min 46(,2)(2)54146d A B J B J A d A B J B +=+=⎧⎫==⎨⎬+=+=⎩⎭决策变量14()2S A B =最后可知最短时间路线是A-B2-C2—D3-E4—F5-G6-H7-I6-J5-K4-L3-M3—N2—O 最短时间是464.4设二阶离散系统1112122(1)2()(),(0)1(1)()(),(0)0x k x k u k x x k x k x k x +=+=+=+=试求使性能指标12220[2(1)2()]k J x k u k ==++∑为极小的最优控制*()u k 和最优轨线*()x k 。
单纯行法第一题和第二题采用了单纯形法进行解决,单纯形法的理论依据是:线形规划问题的可行域是n 维向量空间Rn 中的多面凸集,其最优值如果存在必在该凸集的某顶点处达到。
顶点所对应的可行解称为基本可行解。
单纯形法的基本思想是:先找出一个基本可行解,对它进行鉴别,看是否是最优解;若不是,则按照一定法则转换到另一改进的基本可行解,再鉴别;若仍不是,则再转换,按此重复进行。
因基本可行解的个数有限,故经有限次转换必能得出问题的最优解。
如果问题无最优解也可用此法判别。
单纯形法的一般解题步骤可归纳如下:1.把线性规划问题的约束方程组表达成典范型方程组,找出基本可行解作为初始基本可行解。
2.若基本可行解不存在,即约束条件有矛盾,则问题无解。
3.若基本可行解存在,从初始基本可行解作为起点,根据最优性条件和可行性条件,引入非基变量取代某一基变量,找出目标函数值更优的另一基本可行解。
4.按步骤3进行迭代,直到对应检验数满足最优性条件(这时目标函数值不能再改善),即得到问题的最优解。
5.若迭代过程中发现问题的目标函数值无界,则终止迭代。
用单纯形法求解线性规划问题所需的迭代次数主要取决于约束条件的个数。
1 某工厂生产A 和B 两种产品。
已知制造A 产品,每公斤要用煤9吨、电力4千万、劳力3个;制造产品B ,每公斤要用煤4吨、电力5千瓦-劳力10个。
又知制成产品A 每公斤的产值是7万元;B 每公斤的产值是12万元。
现该厂只有煤360吨、电力200千瓦、劳力300个。
问在这种条件下,应该生产A 、B 产品各多少才能使产值为最高。
试写出其数学模型,即约束方程和目标函数,并利用单纯形法求解该线性规划问题。
解:设生产A 、B 产品各,x y 吨9436045200310300x y x y x y +≤⎧⎪+≤⎨⎪+≤⎩使max 712J x y =+引入附加变量123,,x x x ,使不等式约束变为等式约束1239436045200310300x y x x y x x y x ++=⎧⎪++=⎨⎪++=⎩程序清单如下:#include<iostream>#include<iomanip>using namespace std;int varIn(double delta[5]); //计算进基变量int varOut(double sita[3],double a[3][5],double b[3],double delta[5]); //计算出基变量void cal(double sita[3],double a[3][5],double b[3],double delta[5]); //计算方程组系数和判别数 double *A;//产品A 的产量double *B;//产品B 的产量int main(){double max=0; //最高产值double delta[5]={-7,-12,0,0,0}; //判别数double b[3]={360,200,300}; //基可行解double a[3][5]={9,4,1,0,0, //系数矩阵A4,5,0,1,0,3,10,0,0,1};double sita[3]; //出基变量判别数int in; //进入基变量位置int out; //出入基变量位置int flag=0; //判别数是否全部非负的标志while (!flag){in=varIn(delta);out=varOut(sita, a, b, delta);cal(sita, a, b, delta);flag=1;for (int i=0;i<5;i++){if (delta[i]<0) //是否所有的判别数都大于0flag = 0;}}cout<<"生产A和B产品的产量和最大产值:"<<endl;cout<<"*****************************"<<endl;max=7*(*A)+12*(*B);cout<<"产值最大时A产品的产量: x="<<*A<<","<<endl;cout<<"产值最大时B产品的产量: y="<<*B<<","<<endl;cout<<"最大产值为:optimal="<<max<<endl;cout<<"*****************************"<<endl;return 0;}int varIn(double delta[5]){int k=0;double mindelta=delta[0];for (int i=1; i<5; i++){if (delta[i]<mindelta){mindelta=delta[i];k=i;}}return k;}int varOut(double sita[3],double a[3][5],double b[3],double delta[5]) {int l=0;double minsita=1000;for (int i=1; i<3; i++){if (a[i][varIn(delta)]> 0)sita[i]=b[i]/a[i][varIn(delta)];if (sita[i]<minsita){minsita=sita[i];l=i;}}return l;}void cal(double sita[3],double a[3][5],double b[3],double delta[5]) {int i,j,k,l;double a1[3][5];double b1[3];double delta1[5];k=varIn(delta);l=varOut(sita, a, b,delta);for (i=0;i<3;i++){b1[i]=b[i];for(j=0;j<5;j++){a1[i][j] = a[i][j];delta1[j]=delta[j];}}for (i=0;i<3;i++){for(j=0;j<5;j++){if (i!=l){a[i][j]=a1[i][j]-a1[l][j]*a1[i][k]/a1[l][k];b[i]=b1[i]-b1[l]*a1[i][k]/a1[l][k];}else{a[i][j]=a1[l][j]/a1[l][k];b[i]=b1[l]/a1[l][k];}delta[j]=delta1[j]-a1[l][j]*delta1[k]/a1[l][k];}}if (k==0){A=&b[l];}else if(k==1){B=&b[l];}}程序运行结果为:2某车间有一批长度为180公分的钢管(数量充分多)。
4题任选2题1.一质点沿曲线()y f x =从点(0,8)运动到(4,0),设质点运动速度为x ,问曲线取什么样的形状,质点运动的时间最短? 解答:取两点之间的连线直线为质点运动时间最短曲线。
2.设有一阶系统x x u ∙=-+,()03x =,试确定控制函数()u t ,在t=2时,把系统转移到零状态,并使泛函()2201J u dt=+⎰取极小值,如果把系统转移到零态的时间不固定,那该如何求解? 解答:t=2时的系统转移到零时刻,2112H 0201112201(t)(t)(t )e 23(0)3,(2)0(t 32t tu x u H x Hx xx u Hu uu xx x x d dx CC e x C x x x λλλλλλλλλλλλ--=∂=-→=-∂∂=-→=-+∂∂=→+=∂→⎧⎛⎫=-+---⎛⎫⎛⎫⎪ ⎪⇒=⎨ ⎪ ⎪ ⎪⎝⎭⎝⎭⎪-=-⎝⎭⎩=→=+==⇒=+ 做汉密尔顿函数:(1+)+(-+)欧拉方程:状态方程:控制方程:消除代入边界条件:)e 3(t)2t tu e --⇒=-222111(t )0(1)()0t 2123033(t 3)e e 22C 31e C t +6+C 22f f f f ftt f t f H u x u u ux u x u θθλλ---∂=-=→++-+=∂=-→+-==+=-=移动到零态的时间不固定则还要符合条件由于则将和代入()无法继续。
3.已知线性二阶系统的微分方程及初始条件为12x x ∙=,()101x = 2x u ∙=,()201x =求最优控制()u t ,使下列性能指标分别为最小 (a )120J u dt =⎰,()111x =(b )20f t J u dt =⎰,()()21f f f x t c t t ==-(f t 可变)(c )20f t J u dt =⎰,()()()212,0f f f f x t c t t x t ==-=解答:(a )2122122111212112H ,0,(t)C (t)C C H0202f u x u Hxxx x u H xt u u t u λλλλλλλλλλ=++∂=→==∂∂=-→==∂=→=∂=→+=→=-∂ 本题为t =1,终端固定的最优解问题正则方程:控制方程:211222231112123231113122(t)24(t)412(0)11,1(1)11111212(t)t 1(t)3t 1C Cxt x t C C Cxt C x t C t C x C C C x C x t x =-→=-+=-+→=-++=→===→-++=⇒=⇒=-++=-+ 边界条件 (b )2321111C =1,C =1(t )t (t )()(t )(t )1f f Tf f f x M v x v C λ=-∂=→∂==同理可以得到4.设受控系统为12x x ∙=,23x x ∙=,3x u ∙=,试写出在约束()1u t ≤条件下,系统由初始条件()()()1230000x x x ===转移到目标集()21f f x t t =,()()223f f x t x t =,且使性能指标()220f t f f J t x t u dt =+⎰为最小的最优控制必要条件,其中f t 未定。
4题任选2题
1.一质点沿曲线()y f x =从点(0 ,8)运动到(4 ,0) ,设质点运动速度为x ,问曲线取什么样的形状 ,质点运动的时间最短? 解答:取两点之间的连线直线为质点运动时间最短曲线。
2.设有一阶系统x x u •
=-+ ,()03x = ,试确定控制函数()u t ,在t=2时 ,把系统转移到零状态 ,并使泛函
()2
20
1J u dt
=+⎰
取极小值 ,如果把系统转移到零态的时间不固定 ,那该如何求解? 解答:t=2时的系统转移到零时刻 ,
2112H 020
1112201(t)(t)(t )e 2
3
(0)3,(2)0(t 32
t t
u x u H
x H
x x x u
H
u u
u x x x x d dx C
C e x C x x x λλλλ
λ
λλ
λλλλλ--=∂=-→=-∂∂=-→=-+∂∂=→+=∂→
⎧⎛
⎫=-+---⎛⎫⎛⎫⎪ ⎪⇒=⎨ ⎪ ⎪ ⎪⎝⎭⎝⎭⎪-=-⎝⎭⎩
=→=+==⇒=+做汉密尔顿函数:(1+)+(-+)
欧拉方程:状态方程:控制方程:消除代入边界条件:
)e 3(t)2
t t
u e --⇒=-
222111(t )0(1)()0
t 21230
33(t 3)e e 22C 31e C t +6+C 22f f f f f
t
t f t f H u x u u ux u x u θ
θλλ---∂=-=→++-+=∂=-→+-==+=-=移动到零态的时间不固定则还要符合条件
由于则将和代入
()
无法继续。
3.已知线性二阶系统的微分方程及初始条件为
12x x •
= ,()101x = 2x u •= ,()201x =
求最优控制()u t ,使下列性能指标分别为最小 (a )1
20J u dt =⎰ ,()111x =
(b )20
f t J u dt =⎰ ,()()21f f f x t c t t ==-(f t 可变)
(c )20
f t J u dt =⎰ ,()()()212,0f f f f x t c t t x t ==-=
解答:(a )
2122122111
212112H ,0,(t)C (t)C C H
0202
f u x u H
x x x x u H
x
t u u t u λλλλλλλλλλ=++∂=
→==∂∂=-→==∂=→=∂=→+=→=-∂本题为t =1,终端固定的最优解问题正则方程:
控制方程:
211222
231112123
231
113122(t)24
(t)412
(0)11,1
(1)11111212
(t)t 1(t)3t 1C C
x t x t C C C
x t C x t C t C x C C C x C x t x =-
→=-+=-+→=-++=→===→-++=⇒=⇒=-++=-+边界条件 (b )
232
1111C =1,C =1(t )t (t )(
)(t )(t )
1
f f T
f f f x M v x v C λ=-∂=→∂==同理可以得到
4.设受控系统为12x x •= ,23x x •= ,3x u •
= ,试写出在约束()1u t ≤条件下 ,系统由初始条件()()()1230000x x x ===转移到目标集
()21f
f x t t = ,()()2
23f f x t x t = ,且使性能指标()220
f
t f f J t x t u dt =+⎰为
最小的最优控制必要条件 ,其中f t 未定。