1.存在什么问题---针对无人机航迹规划过程中计算量大,收敛性慢。
2.提出什么方法---提出改进的蜣螂算法
3.具体方法是什么---混沌初始化,黄金正弦,levy飞行策略,水平交叉策略
4.建立什么模型,评价函数设计是什么---三维空间模型,规划成本函数转化为多变量优化问题
5.算法性能验证---测试函数
6.实际问题不同场景下仿真分析---获取更安全可行的航迹路径
一.算法改进部分
1.混沌初始化
使用该策略的目的:产生初始种群时利用该策略种群初始化,有利于增加种群多样性,加快收敛加快种群进化速度。
a.piecewise混沌映射。
要产生一个个体,首先要产生一个具有混沌映射的D维随机向量r,然后个体为popx1=lb+(ub-lb).*r。
产生随机向量r通过上面式子,先产生r1,从r1开始一直产生到rD。取所得种群前两维画一个散点图。
可以看出种群第一,二维是均匀分布的,依次类推后面的维也是均匀分布在解空间的。
代码如下:
%piecewise混沌映射
p=0.4;%用于划分
for i=1:50%产生50个混沌向量
r1=rand;
r(i,1)=r1;
for j=2:30%每个混沌向量是30维的
if (r(i,j-1)>=0)&(r(i,j-1)<p)
r(i,j)=r(i,j-1)/p;
elseif (r(i,j-1)>=p)&(r(i,j-1)<0.5)
r(i,j)=(r(i,j-1)-p)/(0.5-p);
elseif (r(i,j-1)>=0.5)&(r(i,j-1)<1-p)
r(i,j)=(1-r(i,j-1)-p)/(0.5-p);
elseif (r(i,j-1)>=(1-p))&(r(i,j-1)<1)
r(i,j)=(1-r(i,j-1))/p;
end
end
end
%利用产生的混沌矩阵产生初始种群
NP=50;D=30;lb=-30;ub=30;
popx=lb+(ub-lb).*r;
x1=popx(:,1);x2=popx(:,2);figure(1);scatter(x1,x2,'r*');%画一二维的散点图
2.黄金正弦
黄金正弦算法是2017年tanyildizi等人根据正弦函数相关思想提出的新智能算法,利用正弦函数和单位圆特殊关系结合黄金分割系数迭代搜索。黄金分割系数C1,C2是固定的。他是将其用到滚球蜣螂更新公式上面。
(我有个疑问,他里面有sin函数,当R1,R2同时取到pi时个体每一维都为0,对于最优解就是每一维都是0的看上去都不合理,对于最优解不是全为0的真的有效果吗?)
3.levy飞行策略
levy飞行策略是一类随机游走策略,表现为较短距离和相对较长距离的交错移动。在智能算法中加入该策略,有利于扩大搜索空间,提高种群多样性,使算法跳出局部最优等。
4.水平交叉策略
水平交叉其实就是利用两个父代个体进行交叉产生两个新的个体且更好时用于子代的更新。
二.模型建立,适应度设计
1.无人机三维路径规划模型
山地模型和圆柱障碍物
2.建立无人机路径规划成本函数
1.无人机航迹规划以任务空间代价函数最小为目标,是一种多约束优化问题。新型随机优化算法找到的路径是一条折线路径,并不符合实际情况下的飞行情况。故需要采取路径平滑技术(三次样条插值,B样条曲线平滑,贝塞尔曲线等方法)。
2.无人机航迹规划问题是由很多优化准则和约束构成。如飞行环境约束、威胁代价最小化,无人机自身特性约束等。
3.笔者定义飞行总代价由路径长度代价、飞行高度代价、平滑代价三部分加权总和。
其中w1,w2,w3的和为1。
a.路径长度
路径短:需要的飞行时间少,耗能少,遇到未知危险的可能小。
一条路径由若干线段组成,线段总长度即为路径代价,当路径中有线段穿过障碍物时需施加罚函数处理,无穷大用一个相对较大的数代替,例如。
b.飞行高度
飞行高度会对无人机飞行产生影响,飞行过程中高度变化不应太频繁和剧烈,节省燃料且安全性高,低飞行还可避免未知威胁。
(高度代价其实就是求所有路径点z坐标的一个标准差)。
c.转弯角
无人机稳定性和机动性受最大转角约束。飞行过程最大转弯角度不应超过最大预设角度。无人机转弯时飞行效率是低效的。转角代价为:
最大预设角度,
当前角度,第i个路径点和第i+1个路径点构成的角度。
d.基于改进算法的无人机三维路径规划
伪代码
三.仿真实验及结果分析
算法测试实验:仿真环境说明--算法参数设置---基准测试函数选择---独立运行若干次记录数据----分析数据体现算法性能----收敛曲线分析。
航迹规划实验:构建地形环境+威胁物---(两种情景)----结果分析