• 大小: 3.68KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-03-01
  • 语言: Python
  • 标签: python  TSP  

资源简介

遗传算法解决 TSP 问题,并将其可视化

资源截图

代码片段和文件信息

#-*-coding:utf-8 -*-
“““
参数设计:种群规模count=100,染色体长度length=33,进化次数evolution_time=5000
编码策略:采用十进制.直接用城市的编号进行编码,染色体{1,2,……33}表示路径为15-1-2-……-33。
“““
“““
参数说明:
origin #起点0-33->对应城市
state[][] -----城市坐标
init_count ----改进次数 1000
evolution_time 进化次数 5000
count  --------种群规模 100
pm  -----------变异率   0.1
ps  -----------强者比例 0.3
pr ------------弱者存活率 0.5
population[]---初始化种群
“““

import numpy as np
import matplotlib.pyplot as plt
plt.ion()
import matplotlib
#显示中文
matplotlib.rcParams[‘font.family‘]= ‘SimHei‘
import math
import random
import tkinter
import time
start = time.perf_counter()

#获得总距离
def get_sum_distance(grouporigin):
distance=0
distance+=state[origin][group[0]]
for i in range(len(group)):
if i == len(group)-1:
distance+=state[origin][group[i]]
else:
distance+=state[group[i]][group[i+1]]
return distance



#自然选择
“““ 对适应度从大到小排序,选出存活的染色体
    再进行随机选择,选出适应度虽然小,但是幸存下来的个体
“““
def select(populationorigin):
#对总距离从小到大进行排序
dis=[

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

    .......       641  2019-06-09 17:37  data.txt

    .......      8333  2019-06-09 17:37  myTSP.py

----------- ---------  ---------- -----  ----

                 8974                    2


评论

共有 条评论