资源简介
遗传算法解决 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
相关资源
- python一个打砖块的小游戏
- python实验指导书 图文高清版
- python主动安装第三方库
- python爬取豆瓣top250电影信息
- python绘制 大蟒蛇
- python小程序(数组排序)
- Python去水印(基于cv2)
- Python 数据结构入门 - 二叉搜索树(
- python空心电感计算器
- python除法.docx
- 抽奖背后的秘密(python抽奖逻辑)
- 绘制统计学直方图茎叶图(matplotlib)
- python求解标准差
- python数据分析与处理
- 利用Python将照片在Excel中利用点阵图显
- python turtle 跳房子
- python 人群计数
- Python调用第三方API换脸
- “去哪儿吃”帮你选餐厅(python代码
- python 控制台登陆密码验证
- KNN算法的Python实现(datingrecd.ipynb)
- python核心编程第二版-习题答案
- python爬取笔趣阁小说
- Python程序设计基础试题以及答案(3
- python聊天-服务端与客户端
- python递归求最大公约数
- 用python画皮卡丘(基于turtle)
- 伟哥的python私房菜(中国程序员).
- pip一键升级(python脚本)
- 我的世界python编程——天空行走py格式
评论
共有 条评论