优化|高效的非线性模块预测求解器FORCES NLP


这次要解读的是论文是FORCES NLP: An efficient implementation of interior-point methods for multistage nonlinear nonconvex programs,A. Zanelli, A. Domahidi, J. Jerez & M. Morari。总结来讲就是一个内点法,做到了structure-exploiting, approximate Hessians, and adaptive barrier rules。

现在我们要解决如下问题:

首先,本文讨论的是general的nonlinear optimization问题,两类思路,一个是single shooting method based on dynamic programming, 能够利用这个ocp特有的状态转移关系干掉很多优化变量,只留下控制量作为优化变量。他对于求解大规模问题在这个角度上来说是有利的。不过其实backward Riccati recursion+ipm也能吃到状态转移约束红利,两个方法一个意思。那还有一类可以采用牛顿类方式。首先把上面问题进行离散化,重新表达成:

其中

现在有一种方法牛顿类方法是SQP, 这个最直接:

不断进行局部二次展开然后迭代: z k + 1   =   z k   +   Δ z z^{k+1} = z^k + \Delta z zk+1 = zk + Δz,不过这个方法的问题还是比较慢
“Due to the potentially high computational burden associated with the solution of several QPs and the computation of several linearizations, there exist approaches in the literature that rely on a limited number iterations.”

那还有一个办法就是直接采用purturb KKT来迭代。写出(2)的 KKT条件:

其中 L   : =   ∑ i = 0 N   l i ( z i )   +   y c ⊤   c ( z )   +   y d ⊤   h ( z )   \mathcal{L} := \sum_{i=0}^N l_i(z_i) + y_c^\top c(z) + y_d^\top h(z)  L := i=0N li(zi) + yc c(z) + yd h(z) 。写成矩阵形式:

这其中的Hessian表达是:

然后根据这个KKT function的稀疏特征进行消元,得到 Δ s   =   Y D − 1 ( − r N − S Δ y d ) \Delta{s} = Y_D^{-1}(-r_N - S\Delta{y_d}) Δs = YD1(rNSΔyd) ,以及 Δ y d   =   S − 1 Y D ( r D + J i n e q ( z ) Δ z )   −   S − 1 r N \Delta{y_d} = S^{-1}Y_D(r_D + J_{ineq}(z)\Delta{z}) - S^{-1}r_N Δyd = S1YD(rD+Jineq(z)Δz)  S1rN 。这样就只剩下;

其中:

更紧凑和对称的形式通过(7)的Schur补表达:

接下来问题来了,由于这个是个general的非线性问题,求逆不一定成功,因为Hessian可能不定,一般来说我们搞QP,这个问题定义的时候可以保证他是正定的,如果正定则可以cholesky分解,现在不确定了,咋办呢?文章还是提供了两个方法:一个是高斯牛顿表达,还有一个是BFGS. 先看第一个:

然后Hessian:

做了一点假设之后:

我们可以有:

不过这个假设不一定合理,万一这个二阶展开量不是小到可以忽略该怎么办呢?所以还有一个办法就是采用BFGS, Hessian的迭代直接采用如下表达:

其中:

当然也可以用Powell迭代表达:

最后还有一个adaptive barrier, 就是这个purturbed kkt的 τ \tau τ的迭代。主要方法是Mehrotra predictor-corrector approach。公式来自[1],[2]。论文[1]给出了Mehrotra predictor-corrector 的方法:

论文[2]中则是:

[1] Nocedal, Jorge, and StephenJ. Wright. “Numerical Optimization.” A First Course in Statistical Programming with R, 2021, pp. 222–47, https://doi.org/10.1017/9781108993456.011.

[2] Nocedal, Jorge, et al. “Adaptive Barrier Update Strategies for Nonlinear Interior Methods.” SIAM Journal on Optimization, vol. 19, no. 4, Jan. 2009, pp. 1674–93, https://doi.org/10.1137/060649513.

  • 22
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值