最优控制周靖林北京化工大学信息学院教学目标能实现动态过程/静态过程中的最优控制完成学习后,应具备如下能力:掌握最优控制的基本原理;应用这些原理来设计线性系统的静态约束和非约束最优控制问题;掌握最优控制的PID实现。教学安排教学学时30学时,其中理论课24学时;上机实验6学时。I引言;2学时I变分法;4学时I极大(小)值原理;4学时I线性最优二次型;6学时IPID实现;4学时IMATLAB实现;4学时I2次上机实验。6学时考核方法平时和期末分别占40%和60%;I平时测验或思考题25%;I作业10%;I课堂表现5%,基于系统考勤。I期末随堂考试60%。内容提要一、引言二、泛函与变分三、用变分法解最优控制3.1无约束条件的泛函极值问题3.2有约束条件的泛函极值问题3.3小结四、极小值原理及其应用4.1经典变分法的局限性4.2连续系统的极小值原理4.3最短时间控制问题4.4最少燃料控制问题4.5离散系统的极小值原理4.6本章小结什么是最优控制最优控制,顾名思义,就是最好的控制,好的标准是什么?定义(最优控制)在生产过程、军事行动、经济活动以及人类的其它有目的的活动中,常需要对被控系统或被控过程施加某种控制作用以使某个性能指标达到最优,这种控制作用称为最优控制。某个性能指标:标准。国家平均发达国家中国美国日本德国英国2.61.83.71.81.61.41.0Table1:单位GDP能耗(吨标煤/万美元)数据来源:能源:《BPstatisticalreviewofworldenergy2015》数据折算;2015年GDP数据来源于IMF《世界经济展望》,中国数据为2016年预计数举例说明我们将给出几个例子来说明最优控制问题。希望同学们在学习每一个例子时都思考以下几个问题。I存在性:当前的问题是否有最优解?I唯一性:如果有最优解,那么最优解是否是唯一的?I最优控制的主要特征是什么?I是否有可能获得闭环状态反馈形式而不是开环形式的最优解?例1.1:生产计划问题设x(t)表示商品存货量,r(t)0表示对商品的需求率,是已知函数,u(t)表示生产率,它将由计划人员来选取,故是控制变量。x(t)满足下面的微分方程_x(t)= r(t)+u(t)t2[0;tf](1)x(0)=x0(2)x0是初始时刻的商品存货量,且x00。从x(t)的实际意义来看,显然必须选取生产率使得x(t)0t2[0;tf](3)生产计划问题其次,生产能力应该有限制,即容许控制为0u(t)At2[0;tf]这里A0表示最大生产率,另外为了保证满足需求,必须有Ar(t)t2[0;tf](4)生产计划问题假定每单位时间的生产成本是生产率u(t)的函数,即h[u(t)]。设b0是单位时间储存单位商品的费用,于是,单位时间的总成本为f[x(t);u(t);t]=h[u(t)]+bx(t)(5)由t=0到t=tf的总成本为J(u)=Ztf0f[x(t);u(t);t]dt(6)要求寻找最优控制u(t),使总成本J最小。因为u是时间的函数,J又是u的函数,所以J是函数的函数,称为泛函。例1.2:无摩擦的水平运动质点的最优时间控制问题设质点的位移为x1,速度为x2,控制变量是加速度u;u2=[ amax;amax]。寻求一个分段连续(piecewisecontinuous)的加速度u:[0;tb]!使得动态系统_x1(t)_x2(t)#=0100#x1(t)x2(t)#+01#u(t)从状态[x1(0);x2(0)]T=[sa;va]T到终态[x1(tf);x2(tf)]T=[sb;vb]T的时间最短。即使得性能准则J(u)=tf=Ztf0dt最小。例1.3:飞船的月球软着陆问题飞船靠其发动机产生一与月球重力方向相反的推力f,赖以控制飞船实现软着陆(落到月球表面上时速度为零)。要求选择一最好发动机推力程序f(t),使燃料消耗最少。设飞船质量为m,它的高度和垂直速度分别为h和v。月球的重力加速度可视为常数g,飞船的自身质量及所带燃料分别为M和F。飞船的月球软着陆自某t=0时刻开m(t)u(t)v(t)h(t)mg图1:飞船最优软着陆始飞船进入着陆过程。其运动方程为_h=v_v=fm g_m= kf其中k为一常数,f等价于图中的u。飞船的月球软着陆cont要求控制飞船从初始状态h(0)=h0;v(0)=v0;m(0)=M+F出发,于某一时刻tf实现软着陆,即h(tf)=0;v(tf)=0控制过程中推力f(t)不能超过发动机所能提供的最大推力fmax,满足上述限制,使飞船实现软着陆的推力程序f(t)不止一种,其中消耗燃料最少者才是最佳推力程序,即飞船在着陆时的质量保持最大,易见,问题可归结为求J=m(tf)为最大的数学问题。例1.4:电机最优电流控制问题电动机的运动方程为KmID TF=JDd!dt(7)其中,Km为转矩系数;JD为转动惯量;TF为恒定的负载转矩;图2:电机工作示意图例1.4:电机最优电流控制问题contZtf0!(t)dt==Const(8)希望:在时间区间[0;tf]内,电动机从静止起动,转过一定角度后停止,使电枢电阻RD上的损耗E=Rtf0RDI2D(t)dt最小。采用状态方程表示,令x1=x2=_x1=_=!例1.4:电机最优电流控制问题cont则有_x2=KmJDID TFJD,用状态空间描述有_x1(t)_x2(t)#=0100#x1(t)x2(t)#+0KmJD#ID+01JD#TF(9)初始状态[x1(0);x2(0)]T=[0;0]T,末值状态[x1(tf);x2(tf)]T=[;0]T。控制ID不受限制。性能指标E=Ztf0RDI2D(t)dt(10)本问题的最优控制问题是:在数学模型(9)的约束下,寻求一个控制ID(t),使电动机从初始状态转移到末值状态,性能指标(10)为最小。例1.5:防天拦截问题所谓防天拦截是图3:反导示意图指发射火箭拦击对方洲际导弹或其它航天武器。反导系统的英文缩写很有意思。通俗的讲,美国两个导弹拦截系统一个是TMD(末端反导),一个是NMD(中段反导)。而中国的两个系统则对应的是CTMD和CNMD。俄罗斯的就是RTMD和RNMD。2017年7月23日,图4:反导成功现象图荷兰民航飞行员克里斯蒂安驾驶一架波音747客机飞越喜马拉雅山脉时,意外遇见远处天空中导弹发射的壮观景象。反导系统的功能旨在拦截对方的弹道导弹,按照弹道导弹的飞行过程,可以分成三个阶段,即上升段、中段和末段。上升段拦截的优点是导弹速度慢,而且可以把核武器击落在敌方领土上,但反应时间太短。中段拦截是指在大气层外拦截正在飞行的弹头,这时目标飞行轨迹稳定,但速度已经较快,且容易被假目标欺骗,是目前主流的拦截技术。末段拦截是拦截正在俯冲的弹头,这时的弹头速度太快,难以捕捉,而且容易对地面造成伤害。设x(t)、v(t)分别表示拦截器L与目标M的相对位置和相对速度向量。a(t)是包括空气动力与地心引力所引起的加速度在内的相对加速度向量,它是x、v的函数,既然位置和速度向量是由运动微分方程所确定的时间函数,因此相对加速度也可以看成时间的函数。设m(t)是拦截器的质量,f(t)是其推力的大小。用u表示拦截器推力方向的单位向量。C是有效喷气速度,可视为常数。于是,拦截器与目标的相对运动方程可写为防天拦截问题cont_x=v_v=a(t)+f(t)m(t)u_m=m(t)C初始条件为x(t0)=x0;v(t0)=v0;m(t0)=m0,u为单位向量。为实现拦截,既要控制拦截器的推力大小,又要改变推力方向。拦截火箭的最大推力是一有限值fmax。防天拦截问题cont要求控制拦截器从相对于目标的初始状态出发,于某末态时刻tf与目标相遇(实现拦截),即x(tf)=0,且应满足m(tf)me,me是燃料耗尽后拦截火箭的质量。一般说来,达到上述控制目标的f(t)、u(t)和tf并非唯一。为了实现快速拦截,并尽可能地节省燃料,可综合考虑这两种要求,取性能指标为J=Ztft0[C1+f(t)]dt(11)问题归结为选择f(t)、u(t)和tf,除实现拦截外还要使规定的性能指标为最小,此即在性能指标(11)意义下的最优拦截问题。统一模型上面的具体实例可抽象为共同的数学模型,其中受控系统数学模型一般可以表示为:_x(t)=f(x(t);u(t);t)如果是线性时不变(定常)系统,则可以表示为_x=Ax(t)+Bu(t)性能指标:尽管我们不能为各种各样的最优控制问题规定一个性能指标的统一格式,但是通常情况下如下形式的性能指标可以概括一般:J=(x(tf);tf)+Ztft0L(x(t);u(t);t)dt统一模型cont针对不同的具体问题,J一般可以取为不同的具体形式,如:I最短时间问题J=Ztft0dt=tf t0I线性二次最优控制问题J=Ztft0 xTQx+uTRudtI线性伺服器问题果要求给定的系统状态x跟踪或者尽可能地接近目标轨迹xd,则J可以取为J=Ztft0(x xd)T(x xd)dt统一模型cont针对不同的具体问题,J一般可以取为不同的具体形式,如:I最短时间问题J=Ztft0dt=tf t0I线性二次最优控制问题J=Ztft0 xTQx+uTRudtI线性伺服器问题果要求给定的系统状态x跟踪或者尽可能地接近目标轨迹xd,则J可以取为J=Ztft0(x xd)T(x xd)dt统一模型cont针对不同的具体问题,J一般可以取为不同的具体形式,如:I最短时间问题J=Ztft0dt=tf t0I线性二次最优控制问题J=Ztft0 xTQx+uTRudtI线性伺服器问题果要求给定的系统状态x跟踪或者尽可能地接近目标轨迹xd,则J可以取为J=Ztft0(x xd)T(x xd)dt数学描述用数学语言来比较详细地表达最优控制问题的内容:(1)建立被控系统的状态方程_x=f[x(t);u(t);t]其中,x(t)为n维状态向量,u(t)为m维控制向量,f[x(t);u(t);t]为n维向量函数,它可以是非线性时变向量函数,也可以是线性定常的向量函数。状态方程必须精确的知道。数学描述(2)确定状态方程的边界条件。一个动态过程对应于n维状态空间中从一个状态到另一个状态的转移,也就是状态空间中的一条轨线。在最优控制中初态通常是知道的,即x(t0)=x0而到达终端的时刻tf和状态x(tf)则因问题而异。数学描述例如,在流水线生产过程中,tf是固定的;在飞机快速爬高时,只规定爬高的高度x(tf)=xf,而tf是自由的,要求tf t0越小越好。终端状态x(tf)一般属于一个目标集S,即x(tf)2S数学描述I当终端状态是固定的,即x(tf)=xf时,则目标集退化为n维状态空间中的一个点。I而当终态满足某些约束条件,即[x(tf);tf]=0这时x(tf)处在n维状态空间中某个超曲面上。I若终态不受约束,则目标集便扩展到整个n维空间,或称终端状态自由。数学描述(3)选定性能指标J。性能指标一般有下面的形式:J=(x(tf);tf)+Ztft0L(x(t);u(t);t)dt上述性能指标包括两个部分,即积分指标Rtft0L(x(t);u(t);t)dt和终端指标(x(tf);tf),这种综合性指标所对应的最优控制问题称为波尔扎(Bolza)问题。当只有终端指标时,称为迈耶尔(Mayer)问题;当只有积分指标时,称为拉格朗日(Lagrange)问题。数学描述性能指标的确定因问题的性质而异。在导弹截击目标的问题中,我们要求弹着点的散布度最小,这时可用终端指标来表示。在快速控制问题时,要求系统从一个状态过渡到另一个状态的时间最短,即Rtft0dt,这就是积分指标。数学描述(4)确定控制作用的容许范围,即u(t)2是n维控制空间Rm中的一个集合。例如,控制飞机的舵偏角是受限制的,控制电机的电流是受限制的,即有ju(t)jM。这时控制作用属于一个闭集。当u(t)不受任何限制时,称它属于一个开集。处理这两类问题的方法不同。可称为容许集合,属于的控制则称为容许控