MATLAB-智能算法30个案例分析-终极版(带目录)

2026/1/27 6:50:50

3、案例实例及结果:

本案例以14个城市为例,假定14个城市的位置坐标为:

表4.1 14个城市的位置坐标

城市编号 1 2 3 4 5 6 7 8 9 10 11 12 13 14

X坐标 16.47 16.47 20.09 22.39 25.23 22 20.47 17.2 16.3 14.05 16.53 21.52 19.41 20.09

Y坐标 96.1 94.44 92.54 93.37 97.24 96.05 97.02 96.29 97.38 98.12 97.38 95.59 97.13 92.55

从某个城市出发访问每个城市一次且仅一次, 最后回到出发城市,如何安排才使其所走路线最短。

结果:

优化前的一个随机路线轨迹图

图4.1 随机路线图

随机路线为:

11—>7—>10—>4—>12—>9—>14—>8—>13—>5—>2—>3—>6—>1—>11 总距离:71.1144 优化后的路线图:

图4.2 最优解路线图

最优解路线:

5—>4—>3—>14—>2—>1—>10—>9—>11—>8—>13—>7—>12—>6—>5 总距离:29.3405 优化迭代过程:

图4.3 遗传算法进化过程图

4、主程序:

clear clc

close all

load CityPosition1;%个城市坐标位置 NIND=100; %种群大小 MAXGEN=200;

Pc=0.9; %交叉概率 Pm=0.05; %变异概率

GGAP=0.9; %代沟(Generation gap) D=Distanse(X); %生成距离矩阵 N=size(D,1); %(34*34) %% 初始化种群

Chrom=InitPop(NIND,N);

%% 在二维图上画出所有坐标点 % figure

% plot(X(:,1),X(:,2),'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]) title('优化过程') xlabel('代数') ylabel('最优值')

ObjV=PathLength(D,Chrom); %计算路线长度 preObjV=min(ObjV); while gen

%% 计算适应度

ObjV=PathLength(D,Chrom); %计算路线长度 % fprintf('%d %1.10f\\n',gen,min(ObjV))

line([gen-1,gen],[preObjV,min(ObjV)]);pause(0.0001) 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('-------------------------------------------------------------')


MATLAB-智能算法30个案例分析-终极版(带目录).doc 将本文的Word文档下载到电脑
搜索更多关于: MATLAB-智能算法30个案例分析-终极版(带目录) 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219