最优控制的计算方法方案_第1页
最优控制的计算方法方案_第2页
最优控制的计算方法方案_第3页
最优控制的计算方法方案_第4页
最优控制的计算方法方案_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

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

文档简介

1最优控制的计算方法一、直接法二、间接法1最优控制的计算方法一、直接法二、间接法2最优控制的计算方法

在前面讨论变分法、极小值原理和动态规划时,我们列举了一些例子。为了易于说明问题,这些例子都是非常简单的,可以用手算来解决问题。但是在实际工作中所遇到的最优控制问题,一般都是很复杂的,必须用计算机求解。

因此,最优控制的计算方法就变得十分重要了。这方面的内容十分丰富,由于篇幅所限,我们只介绍几种典型的算法。2最优控制的计算方法在前面讨论变分法、极小值3最优控制的计算方法直接法的特点是,在每一步迭代中,U(t)不一定要满足H取极小的必要条件,而是逐步改善它,在迭代终了使它满足这个必要条件,而且,积分状态方程是从t0到tf,积分协态方程是从tf到t0,这样就避免了去寻找缺少的协态初值(t0)的困难。常用的直接法有梯度法,二阶梯度法,共轭梯度法。间接法的特点是,在每一步迭代中都要满足H取极小的必要条件,而且要同时积分状态方程和协态方程,两种方程的积分都从从t0到tf或从tf到t0

。常用的间接法有边界迭代法和拟线性化法。3最优控制的计算方法直接法的特点是,在每一步迭代中,U(t)4最优控制的计算方法(U无约束)(ii)哈密顿函数H取极小的必要条件或

由极小值原理可知,最优控制问题的解必须满足以下几个条件:(iii)边界条件(包括横截条件)(i)正则方程(U有约束)

最优控制的计算方法一般是先求出满足上面三个条件中某两个的解,然后用合适的迭代计算形式逐次改变这个解,以达到满足剩下的另一个条件的解(即最优解)。4最优控制的计算方法(U无约束)(ii)哈密顿函数H取极小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)。5一、直接法1、梯度法这是一种直接方法,应用比较广泛。它的特61、梯度法3、用UK(t)、XK(t)和横截条件求得的终端值(tf),从tf到t0反向积分协态方程,求出协态向量K(tf)。

表示在、、处取值。当这些量非最优值时,。4、计算哈密顿函数H对U的梯度向量61、梯度法3、用UK(t)、XK(t)和横截条件求得的终端71、梯度法是一个步长因子,它是待定的数。选择使指标达到极小。这是一维寻优问题,有很多现成的优化方法可用。如分数法,0.618法,抛物线法,立方近似法等。上式表明迭代是沿着梯度 的负方向进行的。5、修正控制向量6、计算是否满足下列指标是指定小量,若满足则停止计算,否则,令,转步骤2。另一停止计算的标准是71、梯度法是一个步长因子,它是待定的数。选择81、梯度法例、考虑下面的一阶非线性状态方程用梯度法寻找最优控制使下面的指标最小因x(1)自由,由横截条件得解:哈密顿函数为协态方程为81、梯度法例、考虑下面的一阶非线性状态方程用梯度法寻找最优91、梯度法1、选初始估计。代入初始条件:,确定积分常数2、将代入状态方程可得积分上式可得可得91、梯度法1、选初始估计104、由,得1、梯度法3、将代入协态方程,且由边界条件 从t=1倒向积分可得这里选步长因子。如此继续下去,直至指标函数随迭代变化很小为止。5、104、由,111、梯度法右图表示了控制和状态的初始值和第一次迭代值,可以看到第一次迭代就几乎收敛到最优值,与最优值还有差异,而且一般说来愈接近最优值收敛愈慢。图b最优状态的求解图a用梯度法寻找最优控制111、梯度法右图表示了控制和状态的初始值和第一次迭代值,可121、梯度法梯度法应用得比较多,它的优点是:(1)简单,编制程序容易;(2)计算稳定可靠。缺点是:(1)在接近最优解时,迭代收敛很慢,为改善收敛性可用共轭梯度法和二阶变分法等;(2)不能区分局部极小和全局极小;(3)对控制变量受约束,终端状态受约束的情况不能直接处理。对于这种有约束的情况可用约束梯度法或惩罚函数法加以处理。121、梯度法梯度法应用得比较多,它的优点是:132、共轭梯度法用共轭梯度法寻找最优控制时是沿着所谓共轭梯度向量的方向进行的。为了说明共轭梯度的意义,我们先从求函数极值问题的共轭梯度法开始,再推广到求泛函极值问题。(1)求函数极值的共轭梯度法其中,C为常数,Q为正定阵。要求寻找X使F(X)取极值。设F(X)是定义在Rn空间中的二次指标函数是X和QX的内积。132、共轭梯度法用共轭梯度法寻找最优控制时是沿着所谓共轭梯142、共轭梯度法则称X和Y是Q共轭的。Q=I(单位阵)时,共轭就变为通常的正交。定义:若Rn中两个向量X和Y满足设向量,是两两Q共轭的,以为寻找方向,可得共轭梯度法的迭代寻优程序:与梯度法不同处仅在于用共轭梯度PK代替负梯度gK=(F/X)K。问题是如何产生共轭梯度方向。142、共轭梯度法则称X和Y是Q共轭的。Q=I(单位阵)152、共轭梯度法值由和对共轭的关系来确定,即令,即初始时共轭梯度与梯度方向相反、大小相等。以后的共轭梯度可如下递归产生:于是,得称为共轭系数。故152、共轭梯度法值由和对共轭的162、共轭梯度法

K的计算是不方便的,因为要用到二阶导数阵Q。而

分别为X的第i个和第j个分量,右端表示由Q

的第i行第j列元素构成的矩阵。计算这个二阶导数阵非常困难。为此,有必要推导不用Q来计算K的公式。

通过推导(略),可得上式计算K,只用到F(X)在XK和XK1两处的梯度,因此非常方便。上式对二次函数是精确的,对非二次函数,它只是一个近似公式。162、共轭梯度法K的计算是不方便的,因为要用到二阶导数172、共轭梯度法将共轭梯度法求F(X)的极小解的算式归纳如下:(d)递推逼近极值点解(b)计算共轭系数(a)计算梯度(c)计算共轭梯度K用一维寻优决定。172、共轭梯度法将共轭梯度法求F(X)的极小解的算式归纳如182、共轭梯度法(2)用共轭梯度法解最优控制问题求解最优控制问题的直接法是用迭代方法逐步改善控制量u(t),使它最后满足哈密顿函数H取极小的必要条件,故梯度向量为除了这些以外,其它在形式上与求函数极值的共轭梯度法一样。这里梯度向量是时间的函数,向量时间函数的内积定义为182、共轭梯度法(2)用共轭梯度法解最优控制问题求解最优192、共轭梯度法共轭梯度法求最优控制步骤为(1)设已求出第K步估计的控制函数可任选。(2)以为初值,从到积分状态方程,得出状态轨迹。(3)以为终值,从到反向积分协态方程,求得协态轨迹。(4)计算梯度向量(5)计算共轭系数(6)计算共轭梯度192、共轭梯度法共轭梯度法求最优控制步骤为(1)设已求出202、共轭梯度法停止计算。否则令,回到步骤2。(8)当满足下面的不等式用一维寻优决定,即(7)计算控制函数202、共轭梯度法停止计算。否则令212、共轭梯度法要求用共轭梯度法决定最优控制,使最小。性能指标例设系统状态方程为协态方程为解哈密顿函数为212、共轭梯度法要求用共轭梯度法决定最优控制222、共轭梯度法故协态方程化为横截条件选,代入状态方程和协态方程,可求得(1)K=0时的计算积分可得状态方程222、共轭梯度法故协态方程化为横截条件选23共轭梯度。2、共轭梯度法梯度向量0用一维寻优来决定。将代入状态方程和协态方程(2)K=1时的计算状态方程协态方程23共轭梯度242、共轭梯度法积分得242、共轭梯度法积分得252、共轭梯度法可求得的最优值为于是由积分上式可得协态方程由252、共轭梯度法可求得的最优值为于是由积分上式262、共轭梯度法共轭系数共轭梯度262、共轭梯度法共轭系数共轭梯度272、共轭梯度法(2)K=1时时,控制量为同以上步骤,将代入状态方程和协态方程,求出对寻优,可得,于是由272、共轭梯度法(2)K=1时时,控制量为同以上步骤,将282、共轭梯度法所以,这个例子只要两步迭代即可得到最优解。一般说来,共轭梯度法比梯度法收敛快,但接近最优解后收敛性仍是较慢的。一个补救办法是重新启动,即找出几个共轭梯度方向 后,令,再重新迭代,寻找共轭梯度方向。可以证明,即为最优控制。这只要证明即可。282、共轭梯度法所以,这个例子只要两步迭代即可得到最优解。29二、间接法1、边界迭代法方法的特点是逐步改善对缺少的初始条件的估计,以满足规定的边界条件。它的原理如下。可解出U,将它表示为X和的函数,即利用哈密顿函数H取极小的方法将所求得的代入正则方程,消去正则方程中的U。再引入增广状态正则方程29二、间接法1、边界迭代法方法的特点是逐步改善对缺少的初始301、边界迭代法

、g一般是非线性向量函数。正则方程有n个已知初始条件X(t0)=X0和n个终端条件:则正则方程可写成这是混合式的两点边值条件,用边界迭代法也很易处理。显然,是已知的,并设为。定义301、边界迭代法311、边界迭代法因未知,用一个估计值得到的解为设由、出发积分正则方程,求得解,从中抽出n个分量构成。显然的值将随 而变,记成因估计得不一定准确,故一般不等于给定值。将在处展开为台劳级数,保留一次项,得其中,是维矩阵,称为敏感矩阵或转移矩阵。311、边界迭代法因未知,用一个估计值321、边界迭代法式中,是的第i行,第j列元素。可得因一般是非线性函数,上式是一个近似式,为了求得正确的,要用迭代求解。321、边界迭代法式中,331、边界迭代法其中,K是迭代次数,是松驰因子,,可改善收敛性,收敛到最后时,将取为1。在第K步,用作为估值,积分正则方程,求得。令是第K步的估值,则可得到下面的迭代式为指定的小值,则停止计算。否则用代替,再积分正则方程,重复进行。若331、边界迭代法其中,K是迭代次数,是松驰因子,341、边界迭代法计算步骤如下:(1)由解出,代入正则方程。(2)的第K步估计值和给定的合在一起,从积分正则方程,求出 ,抽出n个要求的分量的终值,若,停止计算,否则进行下一步。(4)迭代计算。(5)令回到步骤2。(3)求敏感矩阵。341、边界迭代法计算步骤如下:(1)由351、边界迭代法这种方法的缺点是:(1)第一次估计很困难,(2)终端值对非常敏感时,与相差很大,线性关系(3)敏感矩阵难于确定得很精确,对它求逆的运算也容易引入误差。不成立。351、边界迭代法这种方法的缺点是:(1)第一次估计361、边界迭代法例系统状态方程为性能指标为用边界迭代法寻找,使最小。解因终端,自由,故设的初始估计值为零,迭代结果见表。第7次迭代时,、已为零,满足了边界条件。361、边界迭代法例系统状态方程为性能指标为用边界迭代法371、边界迭代法371、边界迭代法382、拟线性化法方法的特点:用迭代算法来改善对正则方程解的估计,使它逐步逼近正则方程的精确解。n个初始条件将正则方程写成n个终端条件拟线性化法将非线性两点边值问题转化为线性两点边值问题,因此变得容易求解。设第K步迭代解为,将正则方程在 展开,保留一次项,可得到第K+1步的解,有382、拟线性化法方法的特点:用迭代算法来改善对正则方程解的392、拟线性化法满足给定边界条件则正则方程的展开式可写成线性非齐次微分方程或其中,系统矩阵时,停止计算。当满足驱动函数向量392、拟线性化法满足给定边界条件则正则方程的展开式可写成线402、拟线性化法用拟线性化法求,使最小。例系统方程为性能指标为解哈密顿函数为代入正则方程中,得到402、拟线性化法用拟线性化法求,使412、拟线性化法2n×2n维的系统矩阵n×1维的驱动函数向量412、拟线性化法2n×2n维的系统矩阵n×1维的驱动函数向422、拟线性化法于是,在正则方程线性化后得到的非齐次时变微分方程中,系数阵和驱动项都已确定,解这个非齐次时变微分方程,并用边界条件和以决定通解中的未定常数,就完全确定了,这就完成了一次迭代。当满足精度要求时,停止计算,求解结束。非齐次时变微分方程422、拟线性化法于是,在正则方程线性化后得到的非齐次时变微43小结(1)最优控制的计算方法可分为直接法和间接法两大类。直接法中我们列举了梯度法和共轭梯度法。间接法中列举了边界迭代法和拟线性化法。(2)直接法的特点是:在每步迭代中并不满足哈密顿函数H取极小的必要条件,只是在迭代终了才满足这个条件;另外积分状态方程时是从t0到tf,而积分协态方程时是从tf到t0

。由于状态和协态的稳定性是相反的,所以这种双向积分,可使最优化过程非常稳定。43小结(1)最优控制的计算方法可分为直接法和间接法两大类44小结(3)梯度法是利用梯度信息H/u来不断改善对控制函数u(t)的估计,最后满足H/u=0的必要条件。这是一种简单又稳定的算法,几乎对所有的u(

温馨提示

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

评论

0/150

提交评论