云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 蚁群算法求解TSP问题(DOC)

蚁群算法求解TSP问题(DOC)

  • 62 次阅读
  • 3 次下载
  • 2025/7/4 22:19:24

广东工业大学

课程学生学生专

课 程 作 业

题目

基于ACO算法求解城市tsp 姓名 朱美霞 学号 2111405091 班

级 计算机技术

2015 年2月 15日

1. AOC算法的数学模型

(1)、基本参数、信息素浓度公式、择路概率

设蚂蚁的数量为m,城市的数量为n,城市i与城市j之间的距离为dij,t时刻城市i与城市j之间的信息素浓度为tij(t),初始时刻,各个城市间连接路径上的信息素浓度相同,不妨记为tij(0)=t0。

蚂蚁k(k=1,2,..,m)根据各城市间连接路径上的信息素浓度,决定其下一个要访问的城市,设Pijk(t)表示t时刻,蚂蚁k从城市i到城市j的概率,其计算公式为如下:

?[tij(t)]??[?ij(t)]?????k[t(t)]?[?(t)]?ijijPij???s?allow0??其中:

s?allowk

s?allowk?ij(t)为启发式函数,?ij(t)=1/dij,表示蚂蚁从城市i转移到城市j的期望程序;

allowk(k=1,2,…,m)表示蚂蚁k待访问的城市的集合,开始时allowk为其他n-1城市,随着时间推进,其中的元素不断减少,直至为空,表示所有城市访问完,即遍历所有城市。

?为信息素的重要程度因子,其值越大,转移中起的作用越大

?为启发函数的重要程度因子,其值越大,表示启发函数在转移中的作用越大,即蚂蚁以较大的概率转移到距离短的城市。

蚂蚁释放的信息素会随时间的推进而减少,设参数?(0

tij(t+1)=(1-?)tij(t)+?tij,?tij=??t

k

ij

k?1

n

其中:

?tijk表示蚂蚁k在城市i与城市j的连接路径上,释放的信息素浓度 ?tij表示所有蚂蚁在城市i与城市j的连接路径上,释放的信息素浓度。 (2)、?tijk的计算方法

?Q/Lk?tij=?0?k

第k只蚂蚁从城市i访问城市j 其他其中:

Q为常数,表示蚂蚁循环一次释放的信息素的总量; dij为第k只蚂蚁经过路径的长度,Length;

4. 相关程序

1、访问每个城市一次也仅一次的最短路径,共有30个

2、城市的坐标citys,这是直角坐标,根据二个城市的坐标值,可以用D=(x1?x2)2?(y1?y2)2可计算出任意二个城市间的距离。 citys = 1304 2312

3639 1315

4177 2244 3712 1399 3488 1535 3326 1556 3238 1229 4196 1004 4312 790 4386 570 3007 1970 2562 1756 2788 1491 2381 1676 1332 695 3715 1678 3918 2179 4061 2370 3780 2212 3676 2578 4029 2838 4263 2931 3429 1908 3507 2367 3394 2643 3439 3201 2935 3240 3140 3550 2545 2357 2778 2826

3、代码 clear all clc

load citys_data.mat % 计算城市间相互距离 n = size(citys,1); %城市的个数

D = zeros(n,n); %n行n列的矩阵,即任意二个城市之间的距离 for i = 1:n for j = 1:n if i ~= j

D(i,j) = sqrt(sum((citys(i,:) - citys(j,:)).^2)); else

D(i,j) = 1e-4; end end end

%% 初始化参数

m = 50; % 蚂蚁数量

alpha = 1; % 信息素重要程度因子 beta = 5; % 启发函数重要程度因子 rho = 0.1; % 信息素挥发因子 Q = 1; % 常系数 Eta = 1./D; % 启发函数

Tau = ones(n,n); % 信息素矩阵,全1矩阵

Table = zeros(m,n); % 路径记录表,全0矩阵,每只蚂蚁依次走过的城市

iter = 1; % 迭代次数初值 iter_max = 200; % 最大迭代次数 Route_best = zeros(iter_max,n); % 各代最佳路径 Length_best = zeros(iter_max,1); % 各代最佳路径的长度

搜索更多关于: 蚁群算法求解TSP问题(DOC) 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

广东工业大学 课程学生学生专业课 程 作 业 题目 基于ACO算法求解城市tsp 姓名 朱美霞 学号 2111405091 班级 计算机技术 2015 年2月 15日 1. AOC算法的数学模型 (1)、基本参数、信息素浓度公式、择路概率 设蚂蚁的数量为m,城市的数量为n,城市i与城市j之间的距离为dij,t时刻城市i与城市j之间的信息素浓度为tij(t),初始时刻,各个城市间连接路径上的信息素浓度相同,不妨记为tij(0)=t0。 蚂蚁k(k=1,2,..,m)根据各

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com