⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 example62index.m

📁 NNDemo2.0是对神经网络实验演示系统NNDemo1.0的进一步增强与扩充
💻 M
字号:
%%example62index
%==============
%==============
clc;
clear;
close;
%随机网络实验
Hsa2=figure('color',[0.8 0.8 0.8],'position',[120 120 600 400],'name',...
   'example6.2','numbertitle','off');

%界面说明
uicontrol(Hsa2,'style','text','units','normalized','position',[0.1 0.8 0.8 0.15],...
   'horizontal','center','string','例2. 用SA算法思想求解TSP问题','back',[0.8 0.8 0.8],...
   'fontsize',12,'fontWeight','bold');

%框架
uicontrol(Hsa2,'style','frame','units','normalized','position',[0.1 0.1 0.45 0.7],...
   'back',[0.8 0.8 0.8]);

uicontrol(Hsa2,'style','text','units','normalized','position',[0.12 0.68 0.42 0.1],...
   'string','试用SA算法思想求解TSP问题:','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);
uicontrol(Hsa2,'style','text','units','normalized','position',[0.12 0.61 0.42 0.1],...
  'string','TSP问题介绍:','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);
uicontrol(Hsa2,'style','text','units','normalized','position',[0.12 0.35 0.42 0.3],...
   'string','    假定有n个城市A,B,C...,它们之间的相互距离分别为Dab,Dac,Dbc,...。问题是如何寻找一条闭合路径,此路径历经每个城市且仅经过一次,返回起始城市。要求此路径最短。','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);
uicontrol(Hsa2,'style','text','units','normalized','position',[0.12 0.21 0.42 0.1],...
   'string','注: 本例的城市数量选择为10或20。','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);

%网络参数设置
uicontrol(Hsa2,'style','text','units','normalized','position',[0.58 0.7 0.3 0.1],...
   'string','网络参数设置','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);

uicontrol(Hsa2,'style','text','units','normalized','position',[0.58 0.65 0.2 0.1],...
   'string','最大训练步数:','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12 );
Hsa2_epoch=uicontrol(Hsa2,'style','edit','units','normalized','position',[0.58 0.65 0.13 0.05],...
   'string','1000','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);
uicontrol(Hsa2,'style','text','units','normalized','position',[0.58 0.53 0.2 0.1],...
   'string','初始温度:','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);
Hsa2_tstart=uicontrol(Hsa2,'style','edit','units','normalized','position',[0.58 0.53 0.13 0.05],...
   'string','1000','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);

uicontrol(Hsa2,'style','text','units','normalized','position',[0.58 0.40 0.2 0.1],...
   'string','结束温度:','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);
Hsa2_tend=uicontrol(Hsa2,'style','edit','units','normalized','position',[0.58 0.40 0.13 0.05],...
   'string','0.001','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);

uicontrol(Hsa2,'style','text','units','normalized','position',[0.58 0.27 0.2 0.1],...
   'string','温度变化率:','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);
Hsa2_trate=uicontrol(Hsa2,'style','edit','units','normalized','position',[0.58 0.27 0.13 0.05],...
   'string','0.99','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);

uicontrol(Hsa2,'style','text','units','normalized','position',[0.58 0.14 0.2 0.1],...
   'string','阈值概率:','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);
Hsa2_thre=uicontrol(Hsa2,'style','edit','units','normalized','position',[0.58 0.14 0.13 0.05],...
   'string','0.1','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);

uicontrol(Hsa2,'style','text','units','normalized','position',[0.58 0.02 0.2 0.1],...
   'string','城市数量:','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);
Hsa2_num=uicontrol(Hsa2,'style','edit','units','normalized','position',[0.58 0.02 0.13 0.05],...
   'string','10','back',[0.8 0.8 0.8],'horizontal','left','fontsize',12);


%按钮
uicontrol(Hsa2,'style','push','units','normalized','position',[0.78 0.7 0.16 0.1],...
   'string','城市分布图示','fontsize',12,'callback',[...
                                              'num=get(Hsa2_num,''string'');'...        
                                              'Sa2_figure']);

uicontrol(Hsa2,'style','push','units','normalized','position',[0.78 0.59 0.16 0.1],...
   'string','运行程序','fontsize',12,'callback',[...                                    
                                              'epoch=get(Hsa2_epoch,''string'');'...
                                              'tstart=get(Hsa2_tstart,''string'');'...
                                              'tend=get(Hsa2_tend,''string'');'...
                                              'trate=get(Hsa2_trate,''string'');'...
                                              'thre=get(Hsa2_thre,''string'');'...                                              
                                               'num=get(Hsa2_num,''string'');'... 
                                               'example62']);

uicontrol(Hsa2,'style','push','units','normalized','position',[0.78 0.48 0.16 0.1],...
   'string','显示路径','callback','sa2_result','fontsize',12);
uicontrol(Hsa2,'style','push','units','normalized','position',[0.78 0.37 0.16 0.1],...
   'string','显示结果','fontsize',12,'callback',[...                                                     
                                               'epoch=get(Hsa2_epoch,''string'');' ...
                                               'sa2_result1']);



%查看函数
uicontrol(Hsa2,'style','push','units','normalized','position',[0.77 0.25 0.18 0.1],...
   'string','查看网络函数','callback','NNfunctionindex','fontsize',12);

%退出
uicontrol(Hsa2,'style','push','units','normalized','position',[0.77 0.13 0.18 0.1],...
   'string','返       回','callback','close(Hsa2);NNindex15','fontsize',12);
uicontrol(Hsa2,'style','push','units','normalized','position',[0.77 0.01 0.18 0.1],...
   'string','退出系统','callback','close(Hsa2)','fontsize',12);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -