GitHub
TRO
Arxiv
YouTube
Bilibili
Website
ROS
3. 问题陈述
3.1 机器人运动学
3.2 机器人模型
可以将机器人本体看成一个紧凑的凸集,初始状态用锥不等式表示为
C={x∈Rn∣Gx⪯Kh}
具体解释请参考OBCA
由于机器人在不断运动,因此给定状态st,第t帧的占用空间表示为凸紧集Zt
Zt(st)={Rt(st)x+tt(st)∣x∈C}
本质上是对C进行旋转和平移
3.3 点级碰撞规避约束
这篇文章使用点来表示障碍物,而非占据栅格或是锥不等式来拟合障碍物,因此机器人与障碍物的最小距离可以表示为
==dist(Zt(st),Pt)emin {∥e∥2∣(Zt(st)+e∩Pt)=∅}min {Dt1(Zt(st),pt1),…,DtM(Zt(st),ptM)}
式中e代表让两个集合接触的最小平移向量;Dti(Zt(st),pti)代表机器人与点的最小距离
计算机器人与点的最小距离是一个凸优化问题
xmin s.t. ∥Rt(st)x+tt(st)−pti∥Gx⪯Kh
3.4 目标函数
MPC控制的目标是让机器人尽量以期望速度沿着期望轨迹运动
C0(S,U)=h=t∑t+H(∥q∘(sh+1−sh+1♢)∥22+∥p∘(uspeed,h−uspeed♢)∥22)
其中{q,p}是权重系数,分别影响机器人尽量沿期望轨迹和尽量保持期望速度
3.5 问题表述
直接点机器人导航问题被表述为以下在预测范围H上的模型预测感知与控制(MPPC)优化问题
P:{S,U}∈Fmin s.t. C0(S,U)dist(Zh(sh),Ph)≥dmin,∀h∈H
技术挑战:内部层的距离计算涉及到大量点级约束,数量可能达到数千。现有的方法将其转换为凸集、体素或网格来减少约束。然而,这会导致求解精度下降
4. NEUPAN系统架构
4.1 数学解释
根据机器人与点的最小距离的强对偶性,可以把它转化为拉格朗日对偶问题(推导过程为了简洁省略st和ti)
Dti=x,ymin s.t. =μ,λmaxx,ymin s.t. =μ,λmaxymin s.t. =μ,λmax s.t. ∥y∥2Gx⪯KhRx+t−p−y=0∥y∥2+μ⊤(Gx−h)+λ⊤(Rx+t−p−y)μ⪰K∗0∥y∥2−λ⊤y+xmin μ⊤Gx+λ⊤Rx−μ⊤h+λ⊤t−λ⊤pμ⪰K∗0−μ⊤h+λ⊤(t−p)μ⪰K∗0∥λ∥∗⪯1μ⊤G+λ⊤R=0
点p可以变换到机器人坐标系中,即先反向平移再反向旋转
μ,λmax =μ,λmax =μ,λmax =μ,λmax −μ⊤h+λ⊤(t−p)−μ⊤h−λ⊤RR⊤(p−t)−μ⊤h−λ⊤Rpμ⊤(Gp−h)
其中最后一步变换用到了等式约束的条件,最终的形式可以写为
Dti=μti,λtimax s.t. μti⊤(Gpti(st)−h)μti⪰K∗0,∥λti∥∗⪯1μti⊤G+λti⊤R(st)=0
其中pti=Rt(st)⊤[pti−tt(st)]。并且μti定义了边是否与碰撞相关;μti决定了了分离超平面的法向量,证明如下
根据KKT中的互补松弛性
μ⊤(Gx−h)=0
即当边与碰撞无关时,x位于锥不等式的内部,此时(Gx−h)不为零,则μti为零;相反,当边与碰撞无关时,x位于锥不等式的边界,此时(Gx−h)为零,则μti为正数
令对偶目标为正
(G⊤λ)⊤x=λ⊤(Gx)≤λ⊤h<λ⊤Gp
这说明G⊤λ定义的超平面分离了x和p
基于以上直觉,将M={μti∈Rl}和L={λti∈Rn}定义为隐式距离特征,即神经网络的中间量,并且满足约束下的所有隐式距离特征的集合可以表示为{M,L}∈G
通过将约束转为罚函数的方式,可以将原问题P重新表述为等价形式Q
Q:{S,U}∈F,{M,L}∈GminCe2e(S,U,M,L)C0(S,U)+Cr(S,M,L)Cr(S,M,L)=2ρ1h=t∑t+Hi=0∑M∥min(I(sh,μti,λti),0)∥22+2ρ2h=t∑t+Hi=0∑M∥E(sh,μti,λti)∥22I(sh,μti,λti)=−μhi⊤h+λhi⊤(th(sh)−phi)−dminE(sh,μti,λti)=μhi⊤G+λhi⊤R(sh)
I(sh,μti,λti)代表Dti的目标函数的惩罚项;E(sh,μti,λti)代表Dti的等式约束的惩罚项
4.2 NeuPAN系统
给定时刻t的一组障碍点Pt={pt1,…,ptM}及其相关速度Vt={vt1,…,vtM},在全局坐标系统中,时域H内的点流应为
PFt=pt1⋮pt+H1⋯⋱⋯ptM⋮pt+HM