求解最优控制问题的伪谱法

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

16.323讲课17DIDO,求解最优控制问题的伪谱法zM.Ross,“DIDO用户手册(版本.PR.1β):求解最优控制问题的MATLABTM应用程序包,”海军研究生学院,Monterey,CA,Tech.Rep.04-01.0,二月。2004。[在线]。可用:,M.A.Kazemi和M.Razzaghi,“离散最优控制问题的伪谱Legendre法,”IEEE会刊.自动控制,第40卷,第10页,1793-1796页,1995年10月。zM.Ross和F.Fahroo,“求解非平滑最优控制问题的直接法,”2002年IFAC世界大会会议录,巴塞罗那,西班牙,2002年7月,479-484页。2006年5月10日2006年春季16.32317-1DIDOz最近一些年发表了很多求解通用非线性最优控制问题(OCP)的方法。其中一些已经发展到足够成熟的标准,而且可以作为独立的程序包使用:-DIDO1—Ross等人,海军研究生学院-稀疏最优控制软件(SOCS)2—Betts,Boeing-非线性轨道生成(NTG)3—Milam等人,Caltech-RIOTS_954—Schwartz,加州大学Berkeleyz研究当前可用的求解器之一,DIDO5,选择它部分是因为其求解非常复杂问题的能力,更显著的原因是支撑它的清晰的理论基础。z求解OCP的一般过程是转换问题为等价参数优化问题,而这个问题可以使用开发很好的非线性程序(NLP)求解器解决。-DIDO适应于相同的过程,而且NLP求解器基于序列二次规划(SQP),并且被命名为SNOPT6。-所以DIDO有什么不同?—Legendre伪谱法1M.Ross,“DIDO用户手册(版本.PR.1β):求解最优控制问题的MATLABTM应用程序包,”海军研究生学院,Monterey,CA,Tech.Rep.04-01.0,二月。2004。[在线]。可用:öm,F.Martinsen和M.Edvall,“TOMLAB/SOCS用户手册,”Tomlab优化公司,2005年2月[在线]。可用:和R.Murray,NTG-实时轨道生成的库。[在线]。可用:~murray/software/2002a_ntg.html4A.Schwartz,E.Polak和Y.Chen。(1997年,5月),RIOTS_95TM:求解最优控制问题的Matlab工具箱。可用:,第107页,“Carthage的QueenDido显然是第一个使用变分法处理问题的人。Dido,她许诺土地的所有都可以用牛皮包围,聪明的把牛皮分为许多段,然后再最后系起来。这样做之后,她的问题发现用固定轴承的闭合曲线包围了最大的面积。”6P.Gill,W.murray和M.Saundes,“SNOPT:大规模约束优化的SQP算法,”SIAMJ.最优化,第12卷,第4期,979-1006页,2002年。2006年5月10日2006年春季16.32317-2直接法vs间接法zOCP求解技术可以分类为直接法或者间接法78-打靶法,多重打靶法,转录/配置法的直接和间接变量可得z间接法-目标是找到必要条件的近似解-Pros—高精度—解满足必要优化条件-Cons—必要优化条件必须解析推导(可能很难!)—小收敛半径:需要一个好的初始猜测—需要共同预测—需要知道约束和无约束子弧的先验知识z直接法-转换连续OCP为离散NLP-Pros:围绕间接法“Cons”项中的列表-Cons—不如间接法精确—许多直接法不能产生共态信息7J.Betts,“轨道优化的数值方法调查,”制导,控制和动力学,第21卷,第2期,193-207页,1998年3月。8D.Benson,“最优控制的高斯伪谱转录,”博士论文,航空航天系,MIT,剑桥,马萨诸塞州,2005年。2006年5月10日2006年春季16.32317-3zDIDO类似于直接转录/配置法,都用Legendre多项式作为函数逼近的基础z已经知道Legendre伪谱法(虽然是直接法)具有的属性是其解满足必要优化条件。-大多数其他直接法并不满足这点。99M.Ross和F.Fahroo,“轨道优化方法调查,”会议录。AIAA/AAS天文动力学专家会议,Monterey,2002年,AIAA2002-4727。2006年5月10日2006年春季16.32317-4谱方法zDIDO使用Legendre伪谱法,它常广泛用作流体流动建模。zDIDO和直接配置法很像。-主要的不同:传统的配置法使用固定阶多项式(例如,三阶)逼近节点间每一段的状态和控制,而DIDO使用Legendre多项式作为基础逼近多个节点上的变量(覆盖整个区间)-现在看函数逼近的谱方法。z假设现在想逼近一个周期函数()ut,这可以用傅立叶级数表示:201ˆˆ()()2iktiktkkkutueuuedπττπ∞−=−∞=↔=∑∫z为了实际的目的,逼近最好是截断级数。另外,需要一些方法在感兴趣的区间内用有限多的()uτ的点计算ˆku。z则问题变为需要级数的多少项才能得到“足够好”的()ut的逼近,以及用有限多的点如何逼近ˆku。z傅立叶法给出谱精度10。“当函数无限平滑而且所有导数都是周期的,展开式的第k个系数比任何k的逆幂衰减的快。实际上,这个衰减直到有足够多的系数表达函数的所有必要结构才能展示。系数随后快速衰减暗示傅立叶级数在能很好的逼近函数的一些项之后截断。这个特征称作傅立叶方法的“谱精度”。”10C.Canuto,M.Hussaini,A.Quateroni和T.zang,流体动力学中的谱方法。柏林,德国:Springer-Verlag,1988年,第2章2006年5月10日2006年春季16.32317-5z当计算ˆku的时候,可以知道采用高斯类积分11是最优的-用感兴趣区间内最少数目的点产生最佳逼近。-著名的积分技术(主要的不同在区间的终端点。)—Gauss积分—Gauss-Radau积分—Gauss-Lobatto积分z对非周期函数,可以使用多项式的正交系统-Legendre(勒让德)多项式-Chebyshev(切比雪夫)多项式-Jacobi(雅可比)多项式—包括Legendre和Chebyshevz本质上,逼近函数(包括非周期函数)的谱方法可以用截断级数的更少项做出更好的精度。z关于谱和伪谱法有一个广泛的可用文献。-免费书是:J.Boyd,Chebyshev和Fourier谱方法。纽约:Dover,2000。1211高斯积分是一种用有限和逼近定积分的方法12~jpboyd/aaabook_9500may00.pdf2006年5月10日2006年春季16.32317-6Legendre伪谱法zDIDO是个有效的计算工具13,可以求解很复杂的OCP,包括非平滑问题,就是状态/控制是不连续的。-OCP中的这些不连续点是自然出现的,如从最短时间问题中推导得出的bang-bang控制。z为了获取到非平滑行为,定义一个与必须满足的约束集相关的离散时间点的行为。-考虑时刻eτ的内部事件,并扩展到更多的内部事件。-在0τ和fτ的边界条件都包括在定义里。-事件条件是:0,0e(x,x,x,x,,)eleefefueτττ−+≤≤(1)其中0xlimx()eeτ−↑=+εε,0xlimx()eeτ−↓=+εεz广义问题是确定状态控制对,可能还有事件时间eτ和fτ,最小化代价泛函:000,0(x(),u(),,,)(x,x,x,x,,)(x(),u(),)fefeefefJEFdττττττττττττ−+⋅⋅=+∫(2)受约束于动态约束:x()f(x(),u(),)ττττ=事件约束(1),以及混合状态控制路径约束:gg(x(),u(),)gluτττ≤≤(3)13M.Ross和F.Fahroo,“求解非平滑最优控制问题的直接法,”会议录,2002IFAC世界大会,巴塞罗那,西班牙,2002年7月,479-484页。2006年5月10日2006年春季16.32317-7z这些函数在事件时间eτ可以是非平滑的,但是在开区间0(,)eττ和(,)efττ一定是连续可微的。-如果使用上标1表示在第一个区间内的函数,上标2表示第二个区间的函数,102(x(),u(),)[,]()(x(),u(),)[,]eefFFFττττττττττττ⎧∈⎪⋅=⎨∈⎪⎩(4)102f(x(),u(),)[,]f()f(x(),u(),)[,]eefττττττττττττ⎧∈⎪⋅=⎨∈⎪⎩(5)102g(x(),u(),)[,]g()g(x(),u(),)[,]eefττττττττττττ⎧∈⎪⋅=⎨∈⎪⎩(6)如果有超过一个内部事件,可以按照时间把上面的函数划分。z在Legendre伪谱逼近中,节点是按照Legendre-Gauss-Lobatto(LGL)积分在区间[]1,1−内的最优选择。-为映射时间坐标到区间[]1,1−,定义:100()()2eetτττττ−++=2()()2fefetτττττ−++=zLGL节点与Legendre多项式密切相关。-()NLt是区间[]1,1−上degN的Legendre多项式。-LGL节点,0,,ltlN=…为01,1Ntt=−=,对11lN≤≤−,lt是()NLt的零点,()NLt的导数。-在第一段0[,]eττ,有11N+LGL点,而且在第二段[,]efττ,有21N+LGL点。2006年5月10日2006年春季16.32317-8z使用Lagrange(拉格朗日)内插多项式,()ltφ,未知状态和控制则表示为:121111222200x()x()()x()x()()NNNllNllllttττφττφ====∑∑121111222200u()u()()u()u()()NNNllNllllttττφττφ====∑∑而且()ltφ与Legendre多项式按照下式相关:2(1)()1()(1)()iiNliillNtLttNNLtttφ−=+−z结果如下:00,01101111(x(),u(),,,)(x,x,x,x,,)+(x(),u(),())2+(x(),u(),())2efeefefefeJEFtttdtFtttdtττττττττττττ−+−−⋅⋅=−−∫∫(7)约束为:010222f(x(),u(),)[,]()f(x(),u(),)[,]efeeefxtττττττττττττττττ−−⎧∈⎪=⎨∈⎪⎩(8)0,0e(x,x,x,x,,)eleefefueτττ−+≤≤(9)111gg(x(),u(),())glutttτ≤≤(10)222gg(x(),u(),())glutttτ≤≤(11)z这种方法的关键步骤之一就是加入条件,也就是以上逼近满足在LGL节点(配置)上的微分约束(8)。z下面一步就是使用Gauss-Lobatto积分的有限和逼近代价泛函(7)中的积分。2006年5月10日2006年春季16.32317-9z问题现在转换为一个NLP,对于10,,iN=…,20,,jN=…,其中未知的是系数11x()iτ,11u()iτ,22x()iτ,和22u()iτ。-DIDO则使用NLP求解器SNOPT求解这个问题。z注意:-事件和事件约束的概念引入到求解非光滑OCP中⇒Legendre伪谱法只能单独求平滑问题。-Legendre伪谱法是离散化问题的另外一个方法,作为NLP。‹尽管如此,它通过使用Leg

1 / 23
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功