- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
package GA;
import java.util.*;
public class Tsp {
private String cityName[]={北京,上海,天津,重庆,哈尔滨,长春, 沈阳,呼和浩特,石家庄,太原,济南,郑州,西安,兰州,银川,西宁, 乌鲁木齐,合肥,南京,杭州,长沙,南昌,武汉,成都,贵州,福建,台 北,广州,海口,南宁,昆明,拉萨,香港,澳门};
//private String cityEnd[]=new String[34];
private int cityNum=cityName.length;
//城市个数
private int popSize = 50; private int maxgens = 20000; private double pxover = 0.8; private double pmultation = 0.05;
//种群数量 //迭代次数 //交叉概率
//变异概率
private long[][] distance = new long[cityNum][cityNum];
private int range = 2000; private class genotype {
int city[] = new int[cityNum]; long fitness;
double selectP;
double exceptp;
int isSelected;
//用于判断何时停止的数组区间
//单个基因的城市序列
//该基因的适应度
//选择概率
//期望概率
//是否被选择
}
private genotype[] citys = new genotype[popSize]; /**
*
*/
构造函数,初始化种群
public Tsp() {
for (int i = 0; i popSize; i++) {
citys[i] = new genotype();
int[] num = new int[cityNum];
for (int j = 0; j cityNum; j++) num[j] = j;
int temp = cityNum;
for (int j = 0; j cityNum; j++) {
int r = (int) (Math.random() * temp); citys[i].city[j] = num[r];
num[r] = num[temp - 1];
temp--;
}
citys[i].fitness = 0;
citys[i].selectP = 0;
citys[i].exceptp = 0;
citys[i].isSelected = 0;
}
initDistance();
}
/**
* 计算每个种群每个基因个体的适应度,选择概率,期望概率,和是否被选择。 */
public void CalAll(){
for( int i = 0; i popSize; i++){
citys[i].fitness = 0;
citys[i].selectP = 0;
citys[i].exceptp = 0;
citys[i].isSelected = 0;
}
CalFitness();
CalSelectP();
CalExceptP();
CalIsSelected();
}
/**
*
*/
填充,将多选的填充到未选的个体当中
public void pad(){
int best = 0;
int bad = 0;
while(true){
while(citys[best].isSelected = 1 bestpopSize-1) best ++;
while(citys[bad].isSelected != 0 badpopSize-1) bad ++;
for(int i = 0; i cityNum; i++)
citys[bad].city[i] = citys[best].city[i];
citys[best].isSelected --;
citys[bad].isSelected ++;
bad ++;
if(best == popSize ||bad == popSize)
break;
}
}
/**
*
*/
交叉主体函数
public void crossover() {
int x;
int y;
int pop = (int)(popSize* pxover /2);
while(pop0){
= (int)(Math.random()*popSize);
= (int)(Math.random()*popSize);
executeCrossov
您可能关注的文档
- Revit在桥梁中的应用建模篇——T梁.docx
- revit在桥梁中的应用二次开发——族.docx
- Revit在桥梁中的应用建模篇——变截面梁.docx
- Revit入门教程(一看就会)要点.docx
- Revit在桥梁中的应用建模篇——箱梁.docx
- revit培训测试题及答案.docx
- RFID农业与畜牧业应用.docx
- RFID原理与应用读写器基本参数设置.docx
- RFID固定资产管理应用.docx
- RFID应用技术期末考试卷.docx
- 广东省东莞市2024-2025学年八年级上学期生物期中试题(解析版).pdf
- 非遗剪纸文创产品开发经理岗位招聘考试试卷及答案.doc
- 广东省东莞市2024-2025学年高二上学期期末教学质量检查数学试题.pdf
- 体育安全理论课件图片素材.ppt
- 3.1 公民基本权利 课件-2025-2026学年道德与法治八年级下册 统编版 .pptx
- 广东省潮州市湘桥区城南实验中学等校2024-2025学年八年级上学期期中地理试题(解析版).pdf
- 大数据运维工程师岗位招聘考试试卷及答案.doc
- 广东省深圳市福田区八校2026届数学八年级第一学期期末教学质量检测模拟试题含解析.doc
- 广东省潮州市湘桥区城基初级中学2024-2025学年八年级上学期11月期中考试数学试题(解析版).pdf
- 广东省潮州市湘桥区城西中学2024-2025学年八年级上学期期中地理试题(解析版).pdf
最近下载
- 农田改造滴灌蓄水池工程施工组织设计.pdf VIP
- 轨道交通装备智能化运维中的智能巡检与状态监测技术报告.docx
- 工资代付委托书(范本).docx VIP
- 征兵体检口吃测试文案.docx VIP
- 《国家基层糖尿病防治管理指南(2025)》解读PPT课件.pptx VIP
- RS Components 电工电料 PLC 附件 VBA-4E3A-KE-ZE R 使用说明.pdf VIP
- 2012东风本田 CR-V 服务技术指导手册(上册).pdf VIP
- 附件4:AESC国际猎头协会——《人才候选人之权利》.pdf VIP
- 附件3:AESC国际猎头协会——《候选人测评及背景调查程序》.pdf VIP
- 附件1:AESC国际猎头协会——《职业道德公约》.pdf VIP
原创力文档


文档评论(0)