我发现这个问题很有趣,因为它的目标很简单,但必须修剪和搜索巨大的排列组合(60 个城市 = 比宇宙中的原子还多的旅游组合)。 当前算法 随机的 贪婪的 重叠消除 2-选择 模拟退火 效果展示: https://youtu.be/j1s69yf4a9Y 更多详情、使用方法,请下载后阅读README.md文件
2022-06-22 21:04:19 692KB kotlin
蛮力法动态规划法贪心法回溯法四种算法(Java和C++)01背包TSP问题代码和折线图比较。
2022-06-22 15:00:16 631KB 代码
1
分支限界法求解TSP问题程序设计说明书
2022-06-18 19:05:16 105KB 文档资料
算法复杂度分析 算法分析 如果程序终止于NC 次循环后, 算法复杂度为:O(NC·n2·m ) 第一步的复杂度为O (n2+ m) 第二步的复杂度为O (m) 第三步和第四步的复杂度为O (n2·m) 第五步的复杂度为O (n2) , 第六步的复杂度为O (n·m) 实验证明m 一般取值与n 为同一数量级 因此,整个算法的复杂度为O (NC·n3)
2022-06-10 16:54:54 1.28MB 蚁群 算法
1
TSP问题】基于遗传算法求解31城市旅行商问题Matlab源码.pdf
2022-06-08 17:40:10 704KB matlab代码
1
代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题matlab代码代码 蚁群算法求解TSP问题ma
2022-06-05 09:06:12 2KB matlab 算法 开发语言
代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒子群算法求解TSP问题代码代码 混合粒
代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群求解TSP问题源代码代码 人工鱼群
实验内容与步骤 TSP 问题是一个经典的 NP 问题,很难得到最优解,利用遗传算法,可以比较快的找到近似最优。本实验采用 TSPLIB 的数据,利用遗传算法进行求解。 染色体设计 染色体设计是遗传算法的关键之一,在本实验中,采用基于路径的方法进行设计,即一条完整合法的路径为一个染色体。如 12345678 或 51834762 (以 8 个城市为例)。 交叉编码方式设计 在本实验中采用部分交叉编码方式,编码过程如下: 根据两个父代染色体建立基因对应规则 确定父代中交叉的起始位置、结束位置 互换需要交叉的编码得到子代,对于每一个子代,如果交叉的部分已经在存在,则根据基因对应规则对寻找替换基因 示例:父代 1 : 12345678; 父代 2: 51834762 步骤 1、确定基因对应规则。 父代 1 视角: 1->5、 2->1、 3->8、 4->3、 5->4、 6->7、 7->6、8->2 父代 2 视角: 5->1、 1->2、 8->3、 3->4、 4->5、 7->6、 6->7、2->8 步骤 2、确定交叉起始位置为 4,结束位置为 6。 父代 1 中需要交换的基因为 456 父代 2 中需要交换的基因为 347 步骤 3、通过互换基因得到子代。 子代 1 生成过程:父代 1 中前 3 个基因和后 2 个基因无需互换,遗传给子代 1,得到 123***78 第四个基因 4 需要交换,对应的基因为 3,得到 1233##78。由于基因 3 已经存在于子代 1(位置 3)中,因此将该基因根据对应规则修改为 8,得到1283##78,但基因 8 也已经存在,根据规则修改为 2,得到 1223##78; 2 同样存在,修改为 1,得到 1213##78; 1 也存在,修改为 5,得到 1253##78; 第五个基因 5 需要交换,对应的基因为 4,得到 12534*78; 第六个基因 6 需要交换,对应的基因为 7,得到 12534778,基因 7 已经存在,根据规则修改为 6,得到 12534768,子代 1 编码完成; 用同样的方式编码子代 2(用父代 2 视角的对应规则)。 编码原则 如果交换得到的基因已经存在,保留交换得到的基因、修改由父代遗传下来的基因。基因修改可能会有多次(由于多次冲突),但都只在同一位置进行。 变异编码规则设计 本实验采用交换变异,即在自身染色体中随机挑选两个基因,然后互换位置。 程序实现 1.设定种群数量 2.随机初始化种群染色体并计算适应度 3.根据适应度选择父代进行遗传(根据交叉概率决定是否交叉染色体) 4.根据变异率进行变异操作 5.计算适应度,如达到要求或达到迭代次数则终止算法,否则跳转到第3步
2022-06-01 17:52:12 2KB 遗传算法 TSP python
1
内有报告论文详细阐述,程序好使,自己三天时间亲手编写,仿真结果在报告里。
2022-05-31 17:40:57 85KB 遗传算法 TSP问题 matlab 边重组
1