智能优化算法——禁忌算法小实践

实验一 禁忌搜索算法
一、实验目的与要求:
目的:通过本次实验,学生可以掌握禁忌搜索算法基本原理、基本禁忌搜索算法流程和关键参数的设置。
要求:上机仿真,调试通过。
二、 实验设备:
计算机、Python语言软件
三、实验内容:
旅行商问题(TSP)描述:假设有一个旅行商人要游览全国31个省会城市,他需要选择所要走过的路径,路径的限制是每个城市只能游览一次,而且最后要回到原来出发的城市。路径的选择要求是:所选择路径的路程为所有路径之中的最小值。
全国31个省会城市的坐标为【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;2370 2975】
四、实验原理:
(1)禁忌搜索算法原理
禁忌搜索算法是解决组合优化问题的一种优化方法。采用禁忌技术,用一个禁忌表记录下已经到达过的局部最优点,在下一次搜索中利用禁忌表中的信息有选择地搜索这些点,以此来挑出局部最优点。
(2)禁忌搜索算法流程或步骤
在这里插入图片描述
五、实验结果
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述六、思考禁忌搜索算法关键参数设置对算法结果的影响
1.禁忌长度
控制其他变量,单就禁忌长度的选择而言,禁忌长度越短,机器内存占用越少,搜索范围上限越大,但很容易造成搜索循环,过早陷入局部最优。禁忌长度过长又会导致计算时间过长。在此实验中选择了((N*(N-1)/2)^0.5)=23为禁忌长度较为合适。
在这里插入图片描述
在这里插入图片描述2.特赦规则
禁忌搜索算法中,迭代的某一步会出现候选集的某一个元素被禁止搜索,但是若解禁该元素,则会使评价函数有所改善,因此我们需要设置一个特赦规则,当满足该条件时该元素从禁忌表中跳出。
3.禁忌迭代次数
迭代次数直接关系到结果的好坏程度,理论上越大越好,但是过大会使迭代时间过长而降低效率。针对本次实验迭代次数分别取值1,2,5,10,50,100,400分别进行验证。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值