1 内容介绍
针对复杂的多约束条件下的机械手抓取几何体问题,通过分析将实际问题转换成旅行商问题求解.阐述了旅行商问题,遗传算法及其算法实现的过程,在充分考虑遗传算法和约束条件特点的情况下,提出将多约束条件变成约束矩阵的新方法,从而将多约束条件的路径规划问题转化成常规旅行商问题,有效简化了问题的复杂程度,充分利用遗传算法的搜索能力规划出最优抓取路径.软件仿真及实验结果表明,该算法能够取得比较理想的效果.
2 部分代码
clear
clc
close all
i_o = [0,0,0,0];
pickid=[10,1,19,1.5
2,1,8,2.3
4,0,7,0.7
1,0,20,0.2
1,1,15,1.3
5,0,11,1
7,1,20,1.5
4,1,1,0.9
3,1,7,2.8
2,0,13,0.2
3,1,17,2.5
1,1,14,1.8
4,1,5,0.5
6,0,15,1.2
9,1,2,0.4
2,1,20,0.1
5,0,3,1.4
10,0,12,0.7
6,0,11,3.1
8,1,9,3.5
2,1,17,0.6
6,0,10,0.9
5,1,20,1.9
5,0,7,1.1
8,1,20,0.8
7,1,5,0.3
8,1,3,1.3
1,0,1,0.6
8,1,2,1.5
10,0,17,2];%%input('待拣选货位号和质量');
X=[i_o;pickid];
NIND=300; %初始种群数
MAXGEN=500; %最大进化代数
Pc=0.9; %交叉概率
Pm=0.05; %变异概率
GGAP=0.9; %代沟
d1=1;
d2=2;
d3=3;
d4=4;
D=Distanse(X,d1,d2,d3,d4);
N=size(D,1);
%%初始化种群
Chrom = InitPop(NIND,N);
%%在二维图上画出所有坐标点
%figure
%plot(X(:,1),X(:,3),'o');
%%画出随机解的路线图
DrawPath(Chrom(1,:),X)
pause(0.0001)
disp('初始种群的一个随机值:')
OutputPath(Chrom(1,:));
Rlength = PathLength(D,Chrom(1,:));
disp(['初始值',num2str(Rlength)]);
disp('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')
%%优化
gen = 0;
figure;
hold on;box on
xlim([0,MAXGEN])
%ylim([0,500])
title('优化过程')
xlabel('代数')
ylabel('最优值')
ObjV = PathLength(D,Chrom);%计算路线长度
preObjV = min(ObjV);
while gen < MAXGEN
%%计算适应度
ObjV = PathLength(D,Chrom);
%fprintf('%d %1.10fn',gen,min(ObjV))
line([gen-1,gen],[preObjV,min(ObjV)]);pause(0.001)
preObjV = min (ObjV);
FitnV = Fitness(ObjV);
SelCh = Select(Chrom,FitnV,GGAP);
SelCh = Recombin(SelCh,Pc);
SelCh = Mutate(SelCh,Pm);
SelCh = Reverse(SelCh,D);
Chrom = Reins(Chrom,SelCh,ObjV);
gen = gen +1;
end
ObjV=PathLength(D,Chrom);
[minObjV,minInd] = min(ObjV);
DrawPath(Chrom(minInd(1),:),X)
disp('最优解:')
p = OutputPath(Chrom(minInd(1),:));
disp(['最终值',num2str(ObjV(minInd(1)))]);
disp('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~')
3 运行结果
4 参考文献
[1]蒲晶, 谭代伦, 郭潇. 基于小生境遗传算法的仓库拣货-复核路径规划[J]. 四川轻化工大学学报:自然科学版, 2022, 35(1):9.
[2]文生平, 陈端平. 基于遗传算法的分拣机器人最优路径规划[J]. 自动化与仪表, 2015, 30(11):4.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机、雷达通信、无线传感器等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
最后
以上就是精明美女最近收集整理的关于【路径规划】基于遗传算法求解仓库拣货路径规划问题附matlab代码的全部内容,更多相关【路径规划】基于遗传算法求解仓库拣货路径规划问题附matlab代码内容请搜索靠谱客的其他文章。
发表评论 取消回复