GitHub
TCST
Arxiv
2. 问题描述
2.1 障碍物建模
障碍物用如下公式表示
O(m)={y∈Rn∣A(m)y⪯Kb(m)}
上标(m)表示在时间步为m时的障碍物位置;A(m)y⪯Kb(m)可以展开为b(m)−A(m)y∈K。若令K=R+l即非负象限锥,则此广义不等式变为逐元素不等式≤,此时障碍物由不同的半空间组成,是一个多面体;若令锥为二阶锥,此时障碍物是一个椭球
2.2 被控物体建模
被控物体用符号E(xk)表示,其中xk表示被控物体在时间步为k时的状态
当被控物体被视为质点时,它可以表示为
E(xk)=pk
pk表示质点在时间步为k时的位置
当被控物体被视为全维度物体时,即形状不可忽略,它可以表示为
E(xk)=R(xk)B+t(xk),B:={y∣Gy⪯Kˉg}
可以视为对一个已知的锥B进行旋转G和平移g
2.3 带避碰的最优控制问题
可以构造一个具备避障功能的模型预测控制
x,u,λmin s.t. k=0∑Nℓ(xk,uk)x0=xS,xN+1=xFxk+1=f(xk,uk),h(xk,uk)≤0E(xk)∩O(m)=∅
其中ℓ(⋅)为代价函数;xk+1=f(xk,uk)为运动方程;h(xk,uk)≤0为输入u和状态x约束;E(xk)∩O(m)=∅为避障约束,通常是非凸的且不可微的,因此需要使用等价方式来表示避障
2.4 避碰约束
dist(E(x),O)=tmin s.t. ∥t∥(E(x)+t)∩O=∅
即计算两个集合的距离,因此E(xk)∩O(m)=∅与dist(E(x),O)>0是等价的
3. 质点模型下的无碰撞轨迹生成
结合质点模型和避碰约束,可以得到
dist(E(x),O)=tmin s.t. ∥t∥A(pk+t)⪯Kb
它的拉格朗日对偶问题可以写为
==λmaxtmin ∥t∥+λ⊤(A(pk+t)−b)λmaxtmin ∥t∥+λ⊤At+λ⊤Apk−λ⊤bλmaxtmin ∥t∥+(A⊤λ)t+(Apk−b)⊤λ
为了保证内层的极小化结果是有限的,需要令∥A⊤λ∥∗≤1,其中∥⋅∥∗为对偶范数,证明如下
便于讨论,令μ=A⊤λ,令t=−αt0,其中α>0,则
∥t∥+(A⊤λ)t=α∥t0∥−αμ⊤t0=α(1−μ⊤t0)
若∥μ∥∗>1,则存在μ⊤t0>1,括号里为负,当α→+∞,整个表达式无界。因此需要∥μ∥∗≤1,即∥A⊤λ∥∗≤1,此时mint ∥t∥+(A⊤λ)t=0
因此拉格朗日对偶问题为
λmax s.t. (Apk−b)⊤λ∥A⊤λ∥∗≤1λ⪰K∗0
其中λ⪰K∗0意味着λ属于对偶锥,等价于拉格朗日乘子时参数大于零。因为O具有非空相对内部,具有强对偶性。因此原问题与对偶问题等价
dist(E(x),O)=λmax s.t. (Apk−b)⊤λ∥A⊤λ∥∗≤1λ⪰K∗0
因此
dist(E(x),O)>dmin⇔∃λ⪰K∗0:(Apk−b)⊤λ>dmin,∥A⊤λ∥∗≤1
可以把此存在问题直接放进约束条件中,但若是任意问题,需要转成 “极值约束”放进约束中。因为存在是 “只要有一个就行”,优化器帮我们找到它即可;但是任意是 “所有都要满足”,优化器没法同时验证无穷多个
因此具备避障功能的模型预测控制可以改写为
x,u,λmin s.t. k=0∑Nℓ(xk,uk)x0=xS,xN+1=xFxk+1=f(xk,uk),h(xk,uk)≤0(Apk−b)⊤λ>dminλ⪰K∗0,∥A⊤λ∥∗≤1
4. 全维度模型下的无碰撞轨迹生成
结合全维度模型和避碰约束,可以得到
dist(E(x),O)=e,omin s.t. =e′,omin s.t. =e′,o,ymin s.t. ∥e−o∥Ao⪯Kbe∈E(x)∥R(x)e′+t(x)−o∥Ao⪯KbGe′⪯Kˉg∥y∥Ao⪯KbGe′⪯KˉgR(x)e′+t(x)−o−y=0
令y=R(x)e′+t(x)−o,它的拉格朗日对偶问题可以写为
==λ,μ,ηmaxy,o,e′min ∥y∥+λ⊤(Ao−b)+μ⊤(Ge′−g)+η⊤(R(x)e′+t(x)−o−y)λ,μ,ηmax ymin (∥y∥−η⊤y)+omin (λ⊤Ao−η⊤o)+e′min (μ⊤Ge′−η⊤R(x)e′)−λ⊤b(x)−μ⊤g+η⊤tλ,μ,ηmax ymin (∥y∥−η⊤y)+omin (η−A⊤λ)⊤o+e′min (G⊤μ−R(x)⊤η)⊤e′−λ⊤b(x)−μ⊤g+η⊤t
为了保证内层的极小化结果是有限的,需要令∥η∥∗≤1,η−A⊤λ=0,G⊤μ−R(x)⊤η=0,因此可以将η=A⊤λ代入
因此拉格朗日对偶问题为
λ,μmax s.t. −g⊤μ+(At(x)−b)⊤λ∥A⊤λ∥∗≤1G⊤μ+R(x)⊤A⊤λ=0λ⪰K∗0μ⪰Kˉ∗0
因为O和B具有非空相对内部,具有强对偶性。因此原问题与对偶问题等价
dist(E(x),O)=λ,μmax s.t. −g⊤μ+(At(x)−b)⊤λ∥A⊤λ∥∗≤1G⊤μ+R(x)⊤A⊤λ=0λ⪰K∗0μ⪰Kˉ∗0
因此
⇔dist(E(x),O)>dmin∃λ⪰K∗0,μ⪰Kˉ∗0:−g⊤μ+(At(x)−b)⊤λ>dmin,∥A⊤λ∥∗≤1,G⊤μ+R(x)⊤A⊤λ=0
因此具备避障功能的模型预测控制可以改写为
x,u,λmin s.t. k=0∑Nℓ(xk,uk)x0=xS,xN+1=xFxk+1=f(xk,uk),h(xk,uk)≤0−g⊤μ+(At(x)−b)⊤λ>dminG⊤μ+R(x)⊤A⊤λ=0A⊤λ∥∗≤1,λ⪰K∗0,μ⪰Kˉ∗0
参考资源
凸优化基础
机器人中的数值优化