二、阿尔卑斯山骑手问题

一、问题定义

上述问题分别给定了目标函数动态约束路径约束边界条件,针对该最优控制问题,利用基于LGL配置点的伪谱方法,将其转化为非线性规划问题,再调用IPOPT软件包进行求解。

二、LGL伪谱法

对上述x(\tau) 求导可得:

\dot x_N(\tau_k)=\sum^N_{i=1}X_i\dot L_i(\tau_k)=\sum^N_{i=1}D_{ki}X_i=DX\\ \quad\quad\quad\quad\quad\quad\quad \quad D_{ki}=\dot L_i(\tau_k)

\dot x_1,\dot x_2,\dot x_3,\dot x_4均用上述方法表示,即可将动态约束转化为如下形式:

D_1X_1=-10x_1+u_1+u_2=d_1\\ D_2X_2=-2x_2+u_1+2u_2=d_2\\ D_3X_3=-3x_3+5x_4+u_1-u2=d_3\\ D_4X_4=5x_3-3x_4+u_1+3u_2=d_4

因此可以将动态约束离散化为:

D_1X_1-d_1=0\\ D_2X_2-d_2=0\\ D_3X_3-d_3=0\\ D_4X_4-d_4=0

这里的D_1,D_2,D_3,D_4就是LGL点对应的伪谱微分矩阵,X_1,X_2,X_3,X_4为需要求解的参数,代码中设置了120个LGL点,也就是需要480个参数来确定状态,d_1,d_2,d_3,d_4代表动态约束的右端项,可以直接调用预定义好的函数得到不同x对应的右端项。

通过上述步骤便将最优控制问题转化为非线性规划问题的形式,然后再将该问题相关的变量和函数传入到IPOPT的接口中,即可利用IPOPT软件包求解该非线性规划问题,从而得到最优控制问题的解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值