最优控制的计算方法.ppt_第1页
最优控制的计算方法.ppt_第2页
最优控制的计算方法.ppt_第3页
最优控制的计算方法.ppt_第4页
最优控制的计算方法.ppt_第5页
免费预览已结束,剩余41页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1,最优控制的计算方法,一、直接法,二、间接法,2,最优控制的计算方法,在前面讨论变分法、极小值原理和动态规划时,我们列举了一些例子。为了易于说明问题,这些例子都是非常简单的,可以用手算来解决问题。但是在实际工作中所遇到的最优控制问题,一般都是很复杂的,必须用计算机求解。,因此,最优控制的计算方法就变得十分重要了。这方面的内容十分丰富,由于篇幅所限,我们只介绍几种典型的算法。,3,最优控制的计算方法,直接法的特点是,在每一步迭代中,U(t)不一定要满足H取极小的必要条件,而是逐步改善它,在迭代终了使它满足这个必要条件,而且,积分状态方程是从t0到tf,积分协态方程是从tf到t0,这样就避免了去寻找缺少的协态初值(t0)的困难。常用的直接法有梯度法,二阶梯度法,共轭梯度法。,间接法的特点是,在每一步迭代中都要满足H取极小的必要条件,而且要同时积分状态方程和协态方程,两种方程的积分都从从t0到tf或从tf到t0。常用的间接法有边界迭代法和拟线性化法。,4,最优控制的计算方法,(U无约束),(ii)哈密顿函数H取极小的必要条件,或,由极小值原理可知,最优控制问题的解必须满足以下几个条件:,(iii)边界条件(包括横截条件),(i)正则方程,(U有约束),最优控制的计算方法一般是先求出满足上面三个条件中某两个的解,然后用合适的迭代计算形式逐次改变这个解,以达到满足剩下的另一个条件的解(即最优解)。,5,一、直接法,1、梯度法,这是一种直接方法,应用比较广泛。它的特点是:先猜测任意一个控制函数U(t),它可能并不满足H取极小的必要条件,然后用迭代算法根据H梯度减小的方向来改善U(t),使它最后满足必要条件。,计算步骤如下:,1、先猜测t0,tf中的一个控制向量UK(t)=U0(t),K是迭代步数,初始时K=0。U0的决定要凭工程经验,猜得合理,计算收敛得就快,2、在第K步,以估计值UK和给定的初始条件X(t0),从t0到tf顺向积分状态方程,求出状态向量XK(t)。,6,1、梯度法,3、用UK(t)、XK(t)和横截条件求得的终端值(tf),从tf到t0反向积分协态方程,求出协态向量K(tf)。,表示在、处取值。当这些量非最优值时,。,4、计算哈密顿函数H对U的梯度向量,7,1、梯度法,是一个步长因子,它是待定的数。选择使指标达到极小。这是一维寻优问题,有很多现成的优化方法可用。如分数法,0.618法,抛物线法,立方近似法等。上式表明迭代是沿着梯度的负方向进行的。,5、修正控制向量,6、计算是否满足下列指标,是指定小量,若满足则停止计算,否则,令,转步骤2。另一停止计算的标准是,8,1、梯度法,例、考虑下面的一阶非线性状态方程,用梯度法寻找最优控制使下面的指标最小,因x(1)自由,由横截条件得,解:哈密顿函数为,协态方程为,9,1、梯度法,1、选初始估计。,代入初始条件:,确定积分常数,2、将代入状态方程可得,积分上式可得,可得,10,4、由,得,1、梯度法,3、将代入协态方程,且由边界条件从t=1倒向积分可得,这里选步长因子。如此继续下去,直至指标函数随迭代变化很小为止。,5、,11,1、梯度法,右图表示了控制和状态的初始值和第一次迭代值,可以看到第一次迭代就几乎收敛到最优值,与最优值还有差异,而且一般说来愈接近最优值收敛愈慢。,图b最优状态的求解,图a用梯度法寻找最优控制,12,1、梯度法,梯度法应用得比较多,它的优点是:(1)简单,编制程序容易;(2)计算稳定可靠。缺点是:(1)在接近最优解时,迭代收敛很慢,为改善收敛性可用共轭梯度法和二阶变分法等;(2)不能区分局部极小和全局极小;(3)对控制变量受约束,终端状态受约束的情况不能直接处理。对于这种有约束的情况可用约束梯度法或惩罚函数法加以处理。,13,2、共轭梯度法,用共轭梯度法寻找最优控制时是沿着所谓共轭梯度向量的方向进行的。为了说明共轭梯度的意义,我们先从求函数极值问题的共轭梯度法开始,再推广到求泛函极值问题。,(1)求函数极值的共轭梯度法,其中,,C为常数,Q为正定阵。,要求寻找X使F(X)取极值。,设F(X)是定义在Rn空间中的二次指标函数,是X和QX的内积。,14,2、共轭梯度法,则称X和Y是Q共轭的。Q=I(单位阵)时,共轭就变为通常的正交。,定义:若Rn中两个向量X和Y满足,设向量,是两两Q共轭的,以为寻找方向,可得共轭梯度法的迭代寻优程序:,与梯度法不同处仅在于用共轭梯度PK代替负梯度gK=(F/X)K。问题是如何产生共轭梯度方向。,15,2、共轭梯度法,值由和对共轭的关系来确定,即,令,即初始时共轭梯度与梯度方向相反、大小相等。以后的共轭梯度可如下递归产生:,于是,得,称为共轭系数。,故,16,2、共轭梯度法,K的计算是不方便的,因为要用到二阶导数阵Q。而,分别为X的第i个和第j个分量,右端表示由Q的第i行第j列元素构成的矩阵。计算这个二阶导数阵非常困难。为此,有必要推导不用Q来计算K的公式。,通过推导(略),可得,上式计算K,只用到F(X)在XK和XK1两处的梯度,因此非常方便。上式对二次函数是精确的,对非二次函数,它只是一个近似公式。,17,2、共轭梯度法,将共轭梯度法求F(X)的极小解的算式归纳如下:,(d)递推逼近极值点解,(b)计算共轭系数,(a)计算梯度,(c)计算共轭梯度,K用一维寻优决定。,18,2、共轭梯度法,(2)用共轭梯度法解最优控制问题,求解最优控制问题的直接法是用迭代方法逐步改善控制量u(t),使它最后满足哈密顿函数H取极小的必要条件,故梯度向量为,除了这些以外,其它在形式上与求函数极值的共轭梯度法一样。,这里梯度向量是时间的函数,向量时间函数的内积定义为,19,2、共轭梯度法,共轭梯度法求最优控制步骤为,(1)设已求出第K步估计的控制函数可任选。,(2)以为初值,从到积分状态方程,得出状态轨迹。,(3)以为终值,从到反向积分协态方程,求得协态轨迹。,(4)计算梯度向量,(5)计算共轭系数,(6)计算共轭梯度,20,2、共轭梯度法,停止计算。否则令,回到步骤2。,(8)当满足下面的不等式,用一维寻优决定,即,(7)计算控制函数,21,2、共轭梯度法,要求用共轭梯度法决定最优控制,使最小。,性能指标,例设系统状态方程为,协态方程为,解哈密顿函数为,22,2、共轭梯度法,故协态方程化为,横截条件,选,代入状态方程和协态方程,可求得,(1)K=0时的计算,积分可得,状态方程,23,共轭梯度。,2、共轭梯度法,梯度向量,0用一维寻优来决定。将代入状态方程和协态方程,(2)K=1时的计算,状态方程,协态方程,24,2、共轭梯度法,积分得,25,2、共轭梯度法,可求得的最优值为,于是,由,积分上式可得,由,26,2、共轭梯度法,共轭系数,共轭梯度,27,2、共轭梯度法,(2)K=1时时,控制量为,同以上步骤,将代入状态方程和协态方程,求出,对寻优,可得,于是,由,28,2、共轭梯度法,所以,这个例子只要两步迭代即可得到最优解。一般说来,共轭梯度法比梯度法收敛快,但接近最优解后收敛性仍是较慢的。一个补救办法是重新启动,即找出几个共轭梯度方向后,令,再重新迭代,寻找共轭梯度方向。,可以证明,即为最优控制。这只要证明,即可。,29,二、间接法,1、边界迭代法,方法的特点是逐步改善对缺少的初始条件的估计,以满足规定的边界条件。它的原理如下。,可解出U,将它表示为X和的函数,即,利用哈密顿函数H取极小的方法,将所求得的代入正则方程,消去正则方程中的U。再引入增广状态,30,1、边界迭代法,、,g一般是非线性向量函数。正则方程有n个已知初始条件X(t0)=X0和n个终端条件:,则正则方程可写成,这是混合式的两点边值条件,用边界迭代法也很易处理。,显然,是已知的,并设为。,定义,31,1、边界迭代法,因未知,用一个估计值得到的解为,设由、出发积分正则方程,求得解,从中抽出n个分量构成。显然的值将随而变,记成,因估计得不一定准确,故一般不等于给定值。将在处展开为台劳级数,保留一次项,得,其中,是维矩阵,称为敏感矩阵或转移矩阵。,32,1、边界迭代法,式中,是的第i行,第j列元素。可得,因一般是非线性函数,上式是一个近似式,为了求得正确的,要用迭代求解。,33,1、边界迭代法,其中,K是迭代次数,是松驰因子,可改善收敛性,收敛到最后时,将取为1。在第K步,用作为估值,积分正则方程,求得。,令是第K步的估值,则可得到下面的迭代式,为指定的小值,则停止计算。否则用代替,再积分正则方程,重复进行。,若,34,1、边界迭代法,计算步骤如下:,(1)由解出,代入正则方程。,(2)的第K步估计值和给定的合在一起,从积分正则方程,求出,抽出n个要求的分量的终值,若,停止计算,否则进行下一步。,(4)迭代计算。,(5)令回到步骤2。,(3)求敏感矩阵。,35,1、边界迭代法,这种方法的缺点是:,(1)第一次估计很困难,,(2)终端值对非常敏感时,与相差很大,线性关系,(3)敏感矩阵难于确定得很精确,对它求逆的运算也容易引入误差。,不成立。,36,1、边界迭代法,例系统状态方程为,性能指标为,用边界迭代法寻找,使最小。,解因终端,自由,故,设的初始估计值为零,迭代结果见表。第7次迭代时,、已为零,满足了边界条件。,37,1、边界迭代法,38,2、拟线性化法,方法的特点:用迭代算法来改善对正则方程解的估计,使它逐步逼近正则方程的精确解。,n个初始条件,将正则方程写成,n个终端条件,拟线性化法将非线性两点边值问题转化为线性两点边值问题,因此变得容易求解。,设第K步迭代解为,将正则方程在展开,保留一次项,可得到第K+1步的解,有,39,2、拟线性化法,满足给定边界条件,则正则方程的展开式可写成线性非齐次微分方程,或,其中,系统矩阵,驱动函数向量,40,2、拟线性化法,用拟线性化法求,使最小。,例系统方程为,性能指标为,解哈密顿函数为,代入正则方程中,得到,41,2、拟线性化法,2n2n维的系统矩阵,n1维的驱动函数向量,42,2、拟线性化法,于是,在正则方程线性化后得到的非齐次时变微分方程中,系数阵和驱动项都已确定,解这个非齐次时变微分方程,并用边界条件和以决定通解中的未定常数,就完全确定了,这就完成了一次迭代。当满足精度要求时,停止计算,求解结束。,43,小结,(1)最优控制的计算方法可分为直接法和间接法两大类。直接法中我们列举了梯度法和共轭梯度法。间接法中列举了边界迭代法和拟线性化法。,(2)直接法的特点是:在每步迭代中并不满足哈密顿函数H取极小的必要条件,只是在迭代终了才满足这个条件;另外积分状态方程时是从t0到tf,而积分协态方程时是从tf到t0。由于状态和协态的稳定性是相反的,所以这种双向积分,可使最优化过程非常稳定。,44,小结,(3)梯度法是利用梯度信息H/u来不断改善对控制函数u(t)的估计,最后满足H/u=0的必要条件。这是一种简单又稳定的算法,几乎对所有的u(t)的初始估计都有很好的收敛性。但在远离最优解时收敛速度快,在接近最优解时收敛得慢(原因在于H/u0)。,共轭梯度法比梯度法稍微复杂些,但收敛速度也快些。同样,在接近最优解时,共轭梯度法收敛速度变慢。要加速接近最优解时的收敛速度可用二阶变分法,不过这种方法的计算复杂程度要增加很多。,45,小结,(4)间接法的特点是:在每步迭代中都满足H取极小的必要条件;另外,它同时从一个方向(从t0到tf或从tf到t0)积分状态和协态方程。,由于状态和协态的稳定性相反,这就使得对边

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论