一、问题定义
上述问题分别给定了目标函数、动态约束、路径约束和边界条件,针对该最优控制问题,利用基于LGL配置点的伪谱方法,将其转化为非线性规划问题,再调用IPOPT软件包进行求解。
二、LGL伪谱法
对上述 求导可得:
将均用上述方法表示,即可将动态约束转化为如下形式:
因此可以将动态约束离散化为:
这里的就是LGL点对应的伪谱微分矩阵,为需要求解的参数,代码中设置了120个LGL点,也就是需要480个参数来确定状态,代表动态约束的右端项,可以直接调用预定义好的函数得到不同x对应的右端项。
通过上述步骤便将最优控制问题转化为非线性规划问题的形式,然后再将该问题相关的变量和函数传入到IPOPT的接口中,即可利用IPOPT软件包求解该非线性规划问题,从而得到最优控制问题的解。