数学建模社区-数学中国
标题:
TSP算法小软件要考虑的问题很多
[打印本页]
作者:
释永思
时间:
2016-5-4 15:13
标题:
TSP算法小软件要考虑的问题很多
本帖最后由 释永思 于 2016-5-10 14:12 编辑
2 D& T* n( S8 _7 X
. J3 W/ H& L% z4 ^. ^
TSP算法小软件要考虑的问题很多。
; ]# M; |6 N8 y c/ D8 u0 a
选择遗传算法,蚁群算法,动态规划算法三种算法,
6 D! h: G' M! V
如何让这三种算法有公共的参数,如顶点数,顶点坐标,用户自定义坐标,随机生成坐标。
, @6 ?- W7 t5 ?, ~) Y8 b! M
又如何三种算法有各自不同的参数,如遗传次数,蚁群蚂蚁数。。。
% ^+ S* o L" l5 y) K! s d
显示的顶点与坐标,如果超出屏幕如何滚动,顶点如何标号,如何显示最后路径标号。。。
; u( `- }* m: ]! D
这三种算法,要如何显示动态求解过程,而不是仅仅显示一个结果。。。
7 f* W1 R* P$ Y3 z- ]
最后决定,不作为压力任务,有空时搞下,没空时算了,不理了。。。
) s* M; B" K+ t+ O
# u* T2 {4 L" ^3 t0 }0 Y
TSPv20.rar
(222.11 KB, 下载次数: 1)
2016-5-10 14:12 上传
点击文件名下载附件
下载积分: 体力 -2 点
{9 E& i' g6 `# h- w% X
O6 S! s' C u9 q* Z& o& I
2016-5-10 11:56 上传
下载附件
(22.54 KB)
2016-5-10 11:13 上传
下载附件
(22.86 KB)
P. j+ Y3 ]. y; D
2016-5-4 17:23 上传
下载附件
(136.95 KB)
! S( [, f8 T- Y- e9 P) I
* D n, H/ ]+ z" g) Y
2016-5-7 09:57 上传
下载附件
(75.54 KB)
/ A' a8 q# M0 H8 k0 N
8 \8 E0 Q N. E6 X
2016-5-7 09:58 上传
下载附件
(91.11 KB)
x) A! g$ m$ o8 N
2016-5-7 09:58 上传
下载附件
(16.66 KB)
/ X4 J% w5 c$ k2 a$ h
' a) c% o: q5 k- j H3 K- X/ x7 q
8 Z- J1 f8 X$ x7 a/ f0 E; v
3 F# H+ [9 U5 g& U" `9 N1 d, Y
i1 Y& H! x# A- [( x) A0 C
* r$ u! K. _. V6 `0 G( F- p
5 j C: H+ d; g# |7 q
- {/ J v; `1 {4 J3 x
% D2 G# _; z6 @5 t) y1 m
( U, h/ O9 ~+ P* _
8 C$ r4 t3 ^( r) C0 I7 X& M9 a
& @) @( J p7 U* K$ c
8 F0 |; q2 v; V! f7 c5 g
: t$ n* Z {) Z K, G1 i
% W9 H' A h5 ^1 o
% o% F1 x4 b% W1 c$ [; H
作者:
释永思
时间:
2016-5-7 11:31
我开发的TSP算法小软件(未完成),暂时如此,下载网址:
http://pan.baidu.com/s/1geZdh2F
4 D2 _" b9 D! k( P
作者:
释永思
时间:
2016-5-7 15:09
我开发的TSP算法小软件(未完成),暂时如此,下载网址:
0 j9 X) I2 Y0 u- Y
http://pan.baidu.com/s/1o8y7sbK
d6 h4 i1 h8 _+ {/ L' N
比刚才的改正了一些BUG。基本上DELPHI的遗传算法与蚁群算法都可行的了。
$ {) C+ A- w" t/ t& X5 G6 o; J
现在周末放松下先,下周开始专攻DELPHI的TSP的动态规划算法代码了。
% |' k0 {6 n4 x
小软件,玩下而已,不必太过认真,兴趣玩下。
7 r3 H2 `& S8 f
作者:
释永思
时间:
2016-5-9 15:37
首先解决TSP的DP的数据存储问题,所以称为状态压缩法。也就是用二进制字符串表示子集的方法
% W9 ~, o' K6 p& L# C1 B5 B
- g6 _9 w: q9 w) K: ]
。一个TStringList,一行代表一列,即一行本是这样的: 01011101001,P1,P2,,,Pn,
1 R( b# ]6 E4 X: u$ i$ p( `
这样用TStringList来做是可能正确的方法。
; x* [4 U- w2 c7 a) O4 c; E4 m
由于不可能太大量,所以不用TStringList来做,改用数组来做,这样一样用二进制字串代表表示
. D. k$ K8 m% W( X
% l( K; H; w$ C& F6 p; o
子集的方法,就成为方向了。
6 p& r1 Z' L3 u& s8 v
作者:
释永思
时间:
2016-5-10 10:17
本帖最后由 释永思 于 2016-5-10 16:32 编辑
* `2 m, L/ H9 v( [/ ]1 B
3 A4 c2 ~; e: K; l0 T
经过一段时间的辛苦研究开发,TSP问题算法小软件V1.0终于开发完成了,先发出来让大家使用下
: J% Z" G, N6 M3 T( k
先,有什么BUG以后再理了。有遗传算法,蚁群算法,动态规划算法,三种算法同时求解,GUI图
% O; t7 u* ]4 W
形路径显示,方便大家学习研究。
, s# g& N- o- ?! J/ ]: ]) c
下载网址:
http://pan.baidu.com/s/1nveqIV3
1 D0 \, s+ q$ d% A" c" d K/ D, K: F5 w
作者:
释永思
时间:
2016-5-11 14:36
我现在开始学习思考,遗传算法,蚁群算法,动态规划,在求连续函数的极值中的应用。
/ L5 s9 V1 `7 z2 @7 `) S' u' u
在TSP中的应用我已经知了,在连续函数中求极值,又要学习一番了。
, j& b$ w# Q9 U) k
作者:
释永思
时间:
2016-5-12 10:49
自思自悟:
! H/ ~* p+ z- }8 Y8 u
蚁群求极值:
; ^8 M; R9 Y# h6 d" _
一开始M个蚂蚁,平均取值,得到M个适应值。
2 L( P( r: p( }+ t* c
由M个适应值,按比例比重调整信息素,
* e$ {4 }8 Z) z, |2 }/ f4 g
下次产生随机点时,不是平均产生,是按信息素产生,
% o6 C' G/ ]9 p0 _. `! _( p
就是这么简单。
5 u# w# I8 b U1 t) Q _
不理什么路径。蚁群在求函数极值时路径对应什么,实在想不出来。
0 x! K e3 `8 Y9 c/ v# ~0 D
. N( B7 a! e1 V6 V4 S
遗传算法求极值:
/ D0 Z `8 s3 c5 o9 N
一开始M个种群,平均取值,得到M个适应值。
- a; }9 K* X- i2 R
交叉变异,又得N个适应值,排序筛选种群。重复。
f& T0 e% l! |
如何交叉变异,这是数字游戏。
$ ~1 G, d5 c% W5 T
+ H$ U* G9 U9 q
作者:
释永思
时间:
2016-5-12 13:37
本帖最后由 释永思 于 2016-5-12 15:34 编辑
' N& ^ D# v( D3 r9 X Y
2 Q) [- T; @3 C# u# L6 p4 b5 h8 M
关于思考一个数字与一条路径的对应关系,又令我一个午睡没法睡着。
* p8 v5 c# f6 L8 p1 Q( I9 u$ ?
我这样想,一个数字,假定是固定的N位数,则每位数是十进制,就是N重循环,每重循环取十个数字。
& t3 ] M! f+ A; A- S _; Y2 G. w
这如同一个图,有N个点,每个点十条边,穷举历遍所有路径,就是N位数字的全部数字。这样,就可以和蚁群中的路径对应上了,就可以用蚁群中的节点信息素来运用到函数求极值上来了。这样,不用一个蚁点一个信息素,而是一位数字一个信息素,与TSP路径可以对应上了。为思考此,我又一个午睡没有睡着了。
5 T9 d& Y1 k; g
1 @% |% X) ?& T, r% [
2016-5-12 15:34 上传
下载附件
(29.57 KB)
7 _4 ^- ^& L# I `3 |; s
. W q: s" P- C1 U2 H
1 }8 X; ?1 U9 S8 I z1 L. a( q
2 T1 s' s, g0 ]4 B& r
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5