FIS结构
FUEL采用FIi结构描述环境边界,包含的信息为:
- 边界聚类 Fi
- 所有数据这个类的网格 Ci
- Ci的中心位置 pavg,i
- 边界框(AABB) Bi
主要步骤
- 建立AABB框
- 获取传感器信息,在新感知区域建立AABB框
- 对比原有AABB框和新AABB框,删除不含边界的AABB框
- 利用剩余的AABB框(FIS)更新边界
- 判断AABB框对应边界大小,过大则主元分解

视点建立
对于每个FIS,建立视点,使用一个极坐标系,中心点在Ci的中心位置,在极坐标系内均匀采样,得到视点集合VPi。

对每个VP,根据使覆盖范围最大来确定yaw角,覆盖范围计算使根据传感器模型,与已占用的栅格不冲突的边界栅格的数量。
并计算两个VP的最短时间:
tlb(xk1,j1,xk2,j1)=max{vmaxlength(P(pk1,j1,pk2,j1)),ξ˙maxmin(∣ξk1,j1−ξk2,j1∣,2π−∣ξk1,j1−ξk2,j1∣)}
其中P是用A*算法规划的路径,前一项是位移速度限制,后一项是角速度限制。
全局规划
TSP问题,寻找开环回路,假设有Ncls个类,Mtsp代表Ncls+1维矩阵,主要部分为Ncls×Ncls块,则TSP问题为:
Mtsp(k1,k2)=Mtsp(k2,k1)=tlb(xk1,1,xk2,1),k1,k2∈{1,2,...,Ncls}
Mtsp(0,k)=tlb(x0,1,xk,1)+ωc⋅cc(xk,1),k∈{1,2,...,Ncls}
其中cc(xk,1)是运动一致性成本,用来惩罚运动方向改变。
cc(xk,1)=cos−1∣∣pk,j−p0∣∣ ∣∣v0∣∣(pk,j−p0)⋅v0
最后,通过Mtsp(k,0)=0,k∈{1,2,...,Ncls},将开环TSP问题转化为闭环问题求解,且不会引入额外的cost。
局部规划
全局规划只是找到了访问所有聚类的最佳顺序,但是只涉及每个类都单个视点,不一定是所有视点中的最佳组合。
因此,在局部路径规划中,以当前位置做一个半径圆,在该圆内同时再取一些其他的视点,将这些在半径中的视点进行全连接,然后通过dijkstra算法寻找最优路径E={x1,j1,x2,j2,...,xNrf,jNrf}。
crf(E)=tlb(x0,x1,j1)+ωc⋅cc(x1,j1)+tlb(xNrf+1,1)+k=1∑Nrf−1tlb(xk,jk,xk+1,jk+1)
