tsp matlab,五个城市的TSP问题MATLAB程序.doc

五个城市的TSP问题,距离矩阵为:

01015621008139158020156132005291550设初始温度为10,结束温度为0.7,则程序如下:

d=[0, 10, 15, 6, 2;10, 0, 8, 13, 9;15, 8, 0, 20, 15;6, 13, 20, 0, 5;2, 9, 15, 5, 0];

t0=10; tf=0.7;

[f,T]=trp(d,t0,tf)

得结果如下:

f=43

T=1 4 5 2 3

MATLAB 的程序如下:

function [f,T]=trp(d,t0,tf)% f为目标函数最优值,T为最优路线,d为距离矩阵,t0为初始温度,tf为结束温度[m,n]=size(d);L=100*n;t=t0;pi0=1:n;min_f=0;for k=1:(n-1) min_f=min_f+d(pi0(k),pi0(k+1));endmin_f=min_f+d(pi0(n),pi0(1));p_min=pi0;while t>tf for k=1:L kk=rand; [d_f,pi_1]=exchange_2(pi0,d); r_r=rand; if d_f<0 pi0=pi_1; elseif exp(d_f/t)>r_r pi0=pi_1; else pi0=pi0; end end f_temp=0; for k=1:n-1 f_temp=f_temp+d(pi0(k),pi0(k+1)); end f_temp=f_temp+d(pi0(n),pi0(1)); if min_f>f_temp min_f=f_temp; p_min=pi0; end t=0.87*t;endf=min_f;T=p_min;

%下面的函数产生新解function [d_f,pi_r]=exchange_2(pi0,d)[m,n]=size(d);clear m;u=rand;u=u*(n-2);u=round(u);if u<2 u=2;endif u>n-2 u=n-2;endv=rand;v=v*(n-u+1);v=round(v);if v<1 v=1;endv=u+v;if v>n v=n;endpi_1(u)=pi0(v);pi_1(v)=pi0(u);if u>1 for k=1:u-1 pi_1(k)=pi0(k); endendif v>u+1 for k=1:(v-u-1) pi_1(u+k)=pi0(v-k); endendif v

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/502503.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python挑选以元音字母开头的单词_帮我总结一下,元音字母开头但是读音是辅音的英语单词例如uniform看上去应该是anuniform但事实是auniform的...

什么情况下英语单词加ing或双写加ing?2011-7-12 09:49 提问者&#xff1a;xycg5ydhyd | 浏览次数&#xff1a;1713次2011-7-12 09:52 最佳答案 1. 首先了解一下“闭音节”的基本知识&#xff1a;以辅音结尾的音节称为“闭音节”&#xff0c;如果这个闭音节在单词里是重读的&am…

检测电脑硬件的软件_【软件分享】PowerDVD | PotPlayer | AIDA64

PowerDVD软件介绍&#xff1a;PowerDVD是一款知名的蓝光影音播放软件&#xff0c;支持8K超清、4K蓝光与HDR影像及VR360影片播放。全方位支持播放多种热门影音格式&#xff0c;包括影片、光碟、ISO 档案以及相片&#xff0c;无论是在 PC 或 TV 设备播放都没问题。搭载独家TrueTh…

php怎样查看视频播放的进度条,H5中视频与音频标签和进度条如何使用

这次给大家带来H5中视频与音频标签和进度条如何使用&#xff0c;H5中视频与音频标签和进度条使用的注意事项有哪些&#xff0c;下面就是实战案例&#xff0c;一起来看一下。最近项目中使用Html5的video和audio标签来在线播放视频和音频文件&#xff0c;但是遇到个奇葩的问题&am…

sqlserver如何从周一计算周_纯零基础,花10周时间,完全搞定Python,有没有可能?...

最简单适合小白练手的 10 个Python小项目&#xff0c;十天就能搞定Python。今天我推荐大家一本书&#xff1a;《面向零基础的Python小项目》&#xff0c;如果你集中精力&#xff0c;花10周&#xff0c;也就是两个半月时间&#xff0c;搞定Python&#xff0c;真的不再是一句空谈…

cannot load php5,Cannot load php5apache2_4.dll into server解决办法

我们正在装置好Apache,但装置PHP设置装备摆设完成以后,再次启动apache的时间涌现了毛病 the requested operation has failed; Apache没法启动,检察Ap]一.原因1:我们在安装好Apache服务器,一开始正常,但安装PHP配置完成之后,再次启动apache的时候出现了错误 the requested oper…

python tkinter库 密码实时显示_Python3 tkinter基础 Entry show textvariable 密码输入框

Python : 3.7.0OS : Ubuntu 18.04.1 LTSIDE : PyCharm 2018.2.4Conda : 4.5.11typesetting : Markdowncode"""Author : 行初心Date : 18-10-1Blog : www.cnblogs.com/xingchuxinGitee : gitee.com/zhichengjiu"""from tkinter import *def main(…

graphics 位深度_热门上海乐家人才公寓深度解析又是一个神

热门上海乐家人才公寓深度解析又是一个神提前来电预约看房可售楼处员工优惠5000元到20000元&#xff0c;免费专车接送/自驾报销路费&#xff0c;并可售楼处员工价格优惠&#xff01;老带客户带新客户&#xff0c;还可奖励iPhonePro&#xff0c;新客户有更多优惠&#xff01;更多…

JAVA头部声明异常,Java 异常详解

一.异常与错误的区别再讲异常之前我们就应该要知道异常和错误的区别Error类和Exception类的父类都是throwable类&#xff0c;他们的区别是&#xff1a;Error类一般是指与虚拟机相关的问题&#xff0c;如系统崩溃&#xff0c;虚拟机错误&#xff0c;内存空间不足&#xff0c;方法…

python的特点及应用-python有什么特性和劣势?老男孩python入门

人人都知道&#xff0c;Python是一门高级的编程语言&#xff0c;涉及领域广泛&#xff0c;应用范围多&#xff0c;薪资待遇也是非常不错的&#xff0c;那么Python有哪些优缺点&#xff0c;你了解吗?接下来老男孩教育为大家汇总介绍一下。 Python语言的优点介绍&#xff1a; 1、…

什么是面向对象_什么是面向对象?新手程序员必掌握的技能

面向对象是指基于逻辑对象的概念构建的编程语言&#xff0c;系统或软件方法。它通过创建&#xff0c;利用和操纵可重用对象来执行特定任务&#xff0c;过程或目标。什么是面向对象&#xff1f;面向对象程序设计是种具有对象概念的程序编程典范&#xff0c;同时也是一种程序开发…

微信小程序图片删除php,关于微信小程序中图片处理的问题总结

在小程序的开发过程中&#xff0c;页面布局中&#xff0c;我们经常会遇到一些图片处理的问题&#xff0c;比如&#xff0c;如果图片不是固定高度和高度&#xff0c;但image设置的是固定的高度和宽度&#xff0c;这时候原始图片相对image设置的固定高度和宽度不是等比例大小&…

弹出键盘布局上移_评测 | 别买了HHKB键盘不知道这些新功能!

⇪ 点击“蓝字”关注我们 ⇪ 关于HHKB静电容键盘的新品系列&#xff0c;小U已经与大家分享了不少“评测”&#xff0c;虽然距离新品发布已经有一段时间&#xff0c;但大家的热情依旧不减呀&#xff0c;每一次都能从小伙伴们的反馈中看到新的小惊喜。那么今天&#xff0c;咱们…

python自然语言分析 何翠仪_如何用 Python 中的 NLTK 对中文进行分析和处理?

最近正在用nltk 对中文网络商品评论进行褒贬情感分类&#xff0c;计算评论的信息熵(entropy)、互信息(point mutual information)和困惑值(perplexity)等(不过这些概念我其实也还理解不深...只是nltk 提供了相应方法)。我感觉用nltk 处理中文是完全可用的。其重点在于中文分词和…

如何访问docker内php,主机怎么访问docker里的程序

主机怎么访问docker里的程序需求&#xff1a;1&#xff1a;本机访问docker中的应用2&#xff1a;其他机器访问docker中的应用3&#xff1a;dockerB中访问dockerA中的应用已知环境&#xff1a;主机IP&#xff1a;192.168.220.123容器A已启动&#xff0c;IP&#xff1a;172.17.0.…

苹果手机屏幕镜像搜索不到电视_最全小米电视投屏教程(建议收藏)

【dogkeji-科技犬】今天&#xff0c;小米电视官方带来了最全小米电视投屏教程&#xff0c;包括手机镜像投屏、电脑镜像投屏、APP直接投屏三种方案&#xff0c;建议收藏&#xff01;手机镜像投屏如果你使用的是小米手机投屏&#xff0c;只需两步&#xff1a;1、首页点击遥控器菜…

vue实现上下滑动翻页_vue 实现滚动到底部翻页效果(pc端)

pc端vue 滚动到底部翻页 效果&#xff0c;具体内容如下所示&#xff1a;html&#xff1a;【{{item.code||item.name}}】{{item.name}}js:先写滚动事件handleScroll(){let scrollTop this.$refs.scrollTopList.scrollTop,clientHeight this.$refs.scrollTopList.clientHeight,…

Linux上的JAVA的IDE,在linux上运行的基于文本的强大java IDE

问题是 – 我喜欢旧货;)有一些我喜欢的旧笔记本电脑.它当然运行Xorg,而且速度很快.但Intellij IDEA仍然很慢.想过emacs,但从未使用过. emacs不是太复杂了吗&#xff1f;在许多窗口中以X下的文本模式工作,并制作一些脚本来自动化.解决方法:三大Java /通用IDE(IntelliJ IDEA,Ecli…

a8处理器相当于骁龙几_天玑700处理器怎么样 天玑700相当于骁龙多少_CPU_硬件教程...

根据最新消息得知&#xff0c;联发科(MediaTek)天玑系列将推出新的5G芯片——天玑700&#xff0c;对于这款芯片的性能参数目前透露的不是很多&#xff0c;具体天玑700处理器性能怎么样,大家不妨来看看根据最新消息得知&#xff0c;联发科(MediaTek)天玑系列将推出新的5G芯片——…

git上传分支的原理_几张图让你彻底弄懂git工作流(二) ——git分支

上篇文章已经说了Git简史以及Git基础&#xff0c;那么这篇文章简单总结下Git分支Git分支为了理解 Git 分支的实现方式,我们需要回顾一下,Git保存的不是文件差异或者变化量&#xff0c;而只是一系列文件快照.Git分支分支其实就是从某个提交对象往回看的历史文字描述imageGit中的…

firefox是什么浏览器_Selenium Firefox驱动程序:使用Firefox浏览器自动进行测试

根据statcounter统计&#xff0c;到2020年6月&#xff0c;Mozilla Firefox浏览器在全球浏览器市场中所占份额为4.25&#xff05;&#xff0c;因此&#xff0c;对于每个Selenium测试用例&#xff0c;Mozilla Firefox浏览器都是不可避免的。 Mozilla开发人员推出了Geckodriver(也…