能够进行动态与静态避障,而且规划速度快.算法由BAS(beetle antennae search)和APF(artificial potential fiel)混合,叫做BAS-APF算法
There are many related research results for path planning[24-28]
such as :
传统方法:APF RRT PRM
The paper presented in [32] used a hybrid algorithm of A* and RRT for indoor navigation of unmanned aerial vehicle.
In [33], they proposed a bidirectional RRT based on potentially guidance to quickly plan paths in a messy environment.
Some heuristic algorithms, such as A*, D*, are widely used in industry [34–36].
Xin et al. [37] proposed an improved A* algorithm, which extends the neighborhood propagation of the standard A* algorithm.
But these methods are mainly used in globally-known environments.
智能优化算法:ACO GA PSO[39–42].
In [43], by combining artificial bee colony algorithm and evolutionary programming algorithm, they proposed a new path planning algorithm applied to path planning in two-dimensional static environment
In [44], they designed a non-dominated sorting genetic algorithm for multi-objective path planning in static environments.
In [45], a heuristic PSO algorithm is proposed,启发式粒子群算法时间复杂度比较大
BAS is a relatively novel intelligent optimization algorithm. The design idea is inspired by the
foraging behavior of beetles in nature. By optimizing the beetle’s foraging process and the concept of pheromone, an optimization algorithm with faster optimization is proposed [46].
APF is a classic obstacle avoidance method. The basic idea is to abstract the motion of the robot
in the surrounding environment into the motion in the artificial potential field and guide the robot movement through the force of the potential field. But this method easily falls into local extremum(局部极值).
In general, we evaluate the path based on some criteria, such as path length, planning time,etc. Therefore, we only need to minimize g(·), while ensuring the planned time t.
首先在起始点 X s t a X_sta Xsta找一些随机的方向向量 d d d, X s t a X_sta Xsta也是BAS算法中所谓的触角的初始位置. τ \tau τ是检测范围的大小
公式(2)
(3)
根据公式(2)(3)选择两个候选店 x l x_l xl和 x r x_r xr,其中(3)的 η \eta η是衰弱值.
然后计算两个点分别的cost fuction,f(xl)和f(xr),然后通过公式(4)和式(5),移动机器人向较优点方向移动一步。
(4)
此处的代表步长的衰减,s代表步长,x是之前的位置
(5)
然后我们接着按照这个思路不断的选择两个点然后踏出第i+1,i+2,…,i+n个点.随着i的增加步长会越来越小.收敛到最后会得到一条路径.
最后对于每一条路径,我们都计算这个路径的g§
(6)
如果说新生成的路径好则替换当前最佳路径,要么重新生成.(6)中的N是path的总步数.虽然上述可以找到路径,但是会造成局部最优.
作者然后修改cost fuction ,加上APF,并且使用曲线拟合使得路线更好.
某一点的作用力等于终点的重力引力-障碍物的斥力,具体公式看论文
这个costmap的用以就在于对APF给出的F(x)函数进行改进,当obstacle(O)在检测范围内的时候,惩罚因子 α \alpha α作用cost fuction,在检测范围的outer layer出现O, β \beta β作用,没有O在D内则为普通的F(x)
这里的 D i n D_{in} Din代表检测范围内
B样条曲线
其实这个所谓的动态就是设定一个范围,如果范围内没有就按照原来的方案走,有就重新执行路径规划
最后比较之后说我们的方法路径在动态下最短.是计算所有避障的路径包括进去的,不是计算生成的path的长度.