数学建模获奖作品.docx

上传人:b****6 文档编号:4324582 上传时间:2022-11-29 格式:DOCX 页数:16 大小:128.36KB
下载 相关 举报
数学建模获奖作品.docx_第1页
第1页 / 共16页
数学建模获奖作品.docx_第2页
第2页 / 共16页
数学建模获奖作品.docx_第3页
第3页 / 共16页
数学建模获奖作品.docx_第4页
第4页 / 共16页
数学建模获奖作品.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

数学建模获奖作品.docx

《数学建模获奖作品.docx》由会员分享,可在线阅读,更多相关《数学建模获奖作品.docx(16页珍藏版)》请在冰豆网上搜索。

数学建模获奖作品.docx

数学建模获奖作品

走遍全中国——基于蚂蚁算法的解决方案

摘要:

本文是解决一个旅行商问题(TSP),这里我们基于蚂蚁算法,对“走遍全国”这一具体问题建立了相应的TSP数学模型,并且基于Matlab软件编写了相应的程序,从而找出“走遍全中国”中34个城市的最短路。

对于第一问:

由已知的地理位置(经纬度)设计并计算出了最短路旅行方案:

哈尔滨—长春—沈阳—上海—杭州—南京—合肥—武汉—长沙—南昌—福州—台北—香港—澳门—广州—海口—南宁—贵州—重庆—成都—昆明—拉萨—乌鲁木齐—西宁—兰州—银川—西安—郑州—济南—天津—北京—石家庄—太原—呼和浩特—哈尔滨。

对于第二、三问:

考虑到实际旅行线路的制约,本问基于上问设计的最短线路,对特定两城市之间加以分析,为此本文制定了相应的乘车规则,分别就省钱、省时、方便建立了数学模型。

第四问:

本文应用程序运行时间的增长率,来刻画该算法的时间复杂性,即

,从而通过对比说明了蚂蚁算法的可行性。

第五问:

蚂蚁算法当接近最优解时收敛速度快,而开始时收敛速度很慢。

所以想到使蚂蚁算法去和其他一些开始收敛速度快的算法(如粒子群算法)结合,这样使蚂蚁算法得到优化。

 

关键词:

蚂蚁算法旅行商问题

 

1问题分析:

由于人们在旅游方式、时间安排、经济状况等诸多因素的不同导致了,对于旅游线路的设计与选取变得更加迫切。

对于旅行社而言,不同的线路设计直接影响到旅行社的发展。

而对于旅行者而言,不同的路线使我们更能充分利用现有的经济、时间等来安排自己的旅行路线。

对于模型的建立本文将旅行者分为经济型、省时和方便三方面建立了模型。

在设计最短路问题当中,本文仅从我国省会的地理位置(经纬度)方面加以设计,即不考虑实际当中的铁路、航空里程。

假设旅行者周先生能通过互联网订到从A市到B市的火车票(飞机票),那么在对于解决第二问的关键就转变为对第一问结果在现实背景下的“修订”。

本文所采用的算法为ACO算法,其多样性和正反馈的特点不仅保证了系统的多样性,而且保证了优良性能得到强化,

 

2符号说明

城市规模,即城市的数目;

城市数目的增量;

某个时刻;

乘坐火车时间;

当城市数

增大时,运行时间的增长量;

算法执行的时间增长率;

某两城市间距离;

选取交通工具的距离参数。

 

3模型假设:

假设旅行者在旅游过程中未出现突发事件(例如身体状况、恶劣天气等)打断其旅游;

假设在旅行当中不存在飞机票与火车票的打折的情况;

假设任意两城市之间可以直接到达,即出发城市到目的城市之间存在铁路或航空线路;

假设忽略铁路或航空里程与实际里程的误差;

假设所乘列车或航班均准时到站,不存在晚点等因素;

假设在旅行当中都可购买到相应的火车票与机票;

 

4模型的建立及求解

第一问求解:

求解全国34个省市地区的最短路是一个旅行商问题,这里我们运用蚂蚁算法来求解。

在该问方案设计中本文忽略了出发城市与目的城市之间是否存在火车线路与飞机航线。

首先把经纬度坐标投影到了平面上的直角坐标(见附表)

运行程序,最终结果——最短路径如下所示:

>>ACO('liye003.tsp')

ASisreadinginputnodesfile...

34nodesinatt48hasbeenreadin

ASstartat04-May-201014:

32:

37

ShowingIterativeBestSolution:

ASstopat04-May-201014:

36:

59

Drawingtheiterativecourse'scurve

我们发现乌鲁木齐、拉萨的相对位置在球面和平面上有所不同。

最终得出了最短路旅行方案:

哈尔滨—长春—沈阳—上海—杭州—南京—合肥—武汉—长沙—南昌—福州—台北—香港—澳门—广州—海口—南宁—贵州—重庆—成都—昆明—拉萨—乌鲁木齐—西宁——兰州——银川—西安—郑州—济南—天津—北京—石家庄—太原—呼和浩特—哈尔滨。

 

第二、三问求解:

考虑到实际情况(火车线路、航空线路)的制约,本问基于第一问的设计基础上,对特定的两城市之间的乘车或乘飞机的选择方案上制定了相应的规则。

分析如下:

1.若在两地之间无快车或动车的情况下,选择乘坐飞机;

2.当两地间距离(特指铁路里程)大于某个设定的值,即在某段中如果我们选取乘坐火车,不仅解决不了时间上的浪费,而且甚至会提高费用时:

(1)

将乘坐飞机。

这里的本文规定

3.当乘车时间

,本文规定此情况乘坐飞机;与2.是“或”的关系;

4.本文规定

为一个临界点。

在白天的时规定乘坐动车;而当乘车时间

落在区间

时乘坐卧铺,这样不仅节省白天的旅行时间,而且不影响周先生的休息;

5.当乘火车时间

,本文规定乘坐动车。

6.在设置省时方案当中,将乘坐快车的情况尽可能的换为乘坐飞机,从而达到更加节省时间的目的;

7.设置省钱的方案中,尽可能的少乘坐飞机,多安排乘坐火车。

在旅游过程当中,我们建议周游先生:

从香港乘坐其他交通工具到澳门旅游,例如:

轮船。

而从澳门到达广州的这段旅行当中建议乘坐汽车。

 

由以上规则,我们给出,分别为省钱、省时和方便的三种方案,相应数据见附录,先给出路线如下表:

表1—省钱方案具体安排

时间

始发地

目的地

工具

出发

到达

耗时

金额

5.1

哈尔滨

长春

D28

9:

02

10:

48

1小时46分

77

5.3

长春

沈阳

D26

17:

26

19:

31

2小时5分

92

5.6

沈阳

上海

MU5610

17:

10

19:

20

2小时10分

1300

5.9

上海

杭州

D5681

19:

03

20:

21

1小时18分

54

5.12

杭州

南京

T34

14:

00

20:

28

6小时28分

137

5.15

南京

合肥

D3014

19:

15

20:

23

1小时8分

48

5.18

合肥

武汉

D3052

14:

40

16:

44

2小时4分

113

5.21

武汉

长沙

G1057

17:

10

18:

38

1小时28分

175

5.24

长沙

南昌

D207

11:

33

14:

46

3小时13分

130

5.27

南昌

福州

K8716

20:

36

6:

20

9小时44分

162

5.30

福州

台北

MF883

13:

40

15:

00

1小时20分

1000

6.2

台北

香港

CI917

15:

40

17:

25

1小时45分

2398

6.11

广州

海口

CZ6790

17:

35

18:

35

1小时

705

6.14

海口

南宁

HU7442

19:

30

20:

20

50分

610

6.17

南宁

贵阳

GS7519

14:

30

15:

25

55分

650

6.20

贵阳

重庆

K1036

20:

33

8:

13

11小时40分

83

6.23

重庆

成都

D5115

18:

48

20:

52

2小时4分

98

6.26

成都

昆明

8L9976

16:

20

17:

30

1小时10分

990

6.30

昆明

拉萨

MU5837

7:

00

10:

35

3小时35分

1960

7.5

乌鲁木齐

西宁

CZ6881

9:

15

11:

20

2小时5分

1100

7.8

西宁

兰州

T210

15:

08

17:

23

2小时15分

50

7.11

兰州

银川

K916

22:

40

7:

30

8小时50分

97

7.14

银川

西安

MU9606

19:

05

20:

15

1小时10分

600

7.17

西安

郑州

G2012

17:

50

20:

03

2小时13分

240

7.20

郑州

济南

K206

20:

33

5:

51

9小时18分

170

7.23

济南

天津

D162

15:

15

17:

57

2小时42分

112

7.26

天津

北京

C2074

18:

25

18:

55

30分

58

7.29

北京

石家庄

D4527

16:

31

18:

31

2小时

86

8.1

石家庄

太原

D2015

18:

24

19:

30

1小时6分

70

8.4

太原

呼和浩特

8L9945

18:

40

19:

35

55分

430

8.7

呼和浩特

哈尔滨

CA1112

13:

00

17:

55

4小时55分

1425

总计

93.7小时

15220

 

表2—省时方案具体安排

时间

始发地

目的地

工具

出发

到达

耗时

金额

5.1

哈尔滨

长春

D28

9:

20

10:

48

1小时46分

77

5.3

长春

沈阳

D26

17:

26

19:

31

2小时5分

92

5.6

沈阳

上海

MU5610

17:

10

19:

20

2小时10分

1300

5.9

上海

杭州

D5681

19:

03

20:

21

1小时18分

54

5.12

杭州

南京

D5590

11:

42

16:

10

4小时28分

155

5.15

南京

合肥

D3014

19:

15

20:

23

1小时8分

48

5.18

合肥

武汉

D3052

14:

40

16:

44

2小时4分

113

5.21

武汉

长沙

G1057

17:

10

18:

38

1小时28分

175

5.24

长沙

南昌

D207

11:

33

14:

46

3小时13分

130

5.27

南昌

福州

CZ8149

16:

30

17:

40

1小时10分

450

5.30

福州

台北

MF883

13:

40

15:

00

1小时20分

1000

6.2

台北

香港

CI917

15:

40

17:

25

1小时45分

2398

6.11

广州

海口

CZ6790

17:

35

18:

35

1小时

705

6.14

海口

南宁

HU7442

19:

30

20:

20

50分

610

6.17

南宁

贵阳

GS7519

14:

30

15:

25

55分

650

6.20

贵阳

重庆

CZ3476

12:

05

12:

55

50分

495

6.23

重庆

成都

D5115

18:

48

20:

52

2小时4分

98

6.26

成都

昆明

8L9976

16:

20

17:

30

1小时10分

990

6.30

昆明

拉萨

MU5837

7:

00

10:

35

3小时35分

1960

7.5

乌鲁木齐

西宁

CZ6881

9:

15

11:

20

2小时5分

1100

7.8

西宁

兰州

T210

15:

08

17:

23

2小时15分

50

7.11

兰州

银川

HU7825/ZH9987

8:

35

13:

10

4小时35分

1120

7.14

银川

西安

MU9606

19:

05

20:

15

1小时10分

600

7.17

西安

郑州

G2012

17:

50

20:

03

2小时13分

240

7.20

郑州

济南

CA4966

13:

45

14:

35

50分

530

7.23

济南

天津

D162

15:

15

17:

57

2小时42分

112

7.26

天津

北京

C2074

18:

25

18:

55

30分

58

7.29

北京

石家庄

D4527

16:

31

18:

31

2小时

86

8.1

石家庄

太原

D2015

18:

24

19:

30

1小时6分

70

8.4

太原

呼和浩特

8L9945

18:

40

19:

35

55分

430

8.7

呼和浩特

哈尔滨

CA1112

13:

00

17:

55

4小时55分

1425

总计

59.58小时

17321

 

表3—方便的方案

时间

始发地

目的地

工具

出发

到达

耗时

金额

5.1

哈尔滨

长春

D28

9:

02

10:

48

1小时46分

77

5.3

长春

沈阳

D26

17:

26

19:

31

2小时5分

92

5.6

沈阳

上海

MU5610

17:

10

19:

20

2小时10分

1300

5.9

上海

杭州

D5681

19:

03

20:

21

1小时18分

54

5.12

杭州

南京

T34

14:

00

20:

28

6小时28分

137

5.15

南京

合肥

D3014

19:

15

20:

23

1小时8分

48

5.18

合肥

武汉

D3052

14:

40

16:

44

2小时4分

113

5.21

武汉

长沙

G1057

17:

10

18:

38

1小时28分

175

5.24

长沙

南昌

D207

11:

33

14:

46

3小时13分

130

5.27

南昌

福州

K8716

20:

36

6:

20

9小时44分

162

5.30

福州

台北

MF883

13:

40

15:

00

1小时20分

1000

6.2

台北

香港

CI917

15:

40

17:

25

1小时45分

2398

6.11

广州

海口

CZ6790

17:

35

18:

35

1小时

705

6.14

海口

南宁

HU7442

19:

30

20:

20

50分

610

6.17

南宁

贵阳

GS7519

14:

30

15:

25

55分

650

6.20

贵阳

重庆

K1036

20:

33

8:

13

11小时40分

83

6.23

重庆

昆明

MU2985

17:

30

18:

40

1小时10分

710

6.27

昆明

拉萨

MU5837

7:

00

10:

35

3小时35分

1960

6.29

拉萨

成都

CA4111

16:

00

17:

50

1小时50分

1500

7.2

成都

乌鲁木齐

CZ6942

13:

40

17:

10

3小时30分

2050

7.6

乌鲁木齐

西宁

CZ6881

9:

15

11:

20

2小时5分

1100

7.9

西宁

兰州

T210

15:

08

17:

23

2小时15分

50

7.12

兰州

银川

K916

22:

40

7:

30

8小时50分

97

7.15

银川

西安

MU9606

19:

05

20:

15

1小时10分

600

7.18

西安

郑州

G2012

17:

50

20:

03

2小时13分

240

7.21

郑州

济南

K206

20:

33

5:

51

9小时18分

170

7.24

济南

天津

D162

15:

15

17:

57

2小时42分

112

7.27

天津

北京

C2074

18:

25

18:

55

30分

58

7.30

北京

石家庄

D4527

16:

31

18:

31

2小时

86

8.3

石家庄

太原

D2015

18:

24

19:

30

1小时6分

70

8.7

太原

呼和浩特

8L9945

18:

40

19:

35

55分

430

8.10

呼和浩特

哈尔滨

CA1112

13:

00

17:

55

4小时55分

1425

总计

96.97小时

18392

 

第四问求解:

本文运用的算法为蚂蚁算法。

其复杂性,我们是从两个方面来考虑:

时间复杂性和空间复杂性。

两者结合可以更有效的说明了算法的优劣性。

空间复杂性,我们使用的计算机型号等基本参数如下图:

时间复杂性,一般计算机算法是问题规模

的函数

,因此问题规模

越大,算法执行的时间越长率与

的增长率成正相关[1]。

所以这里我们应用算法执行的时间增长率来刻画此算法的时间复杂性,即

遗传算法程序经过在上述计算机中运行,有以下结果

运行时间

;

,运行时间

;

,运行时间

;

,运行时间

;

从而得到

;

从以上可以看出,此算法的运算量(运算次数)在不断增加的,而且增长的越来越快。

而普通的算法或是穷举,虽然能得到精确的解,但其执行时间增长率会有很明显的增长,其可能的路径数目与城市数目n是成指数增长的,所以一般很难求出其最优解,以下表格可以看出其缺陷之所在。

 

运行时间表[2]

城市数

24

25

26

27

28

29

30

计算时间

1s

24s

10min

4.3h

4.9day

136.5day

10.8year

由此表我们很容易可以看出随着城市数的增加,穷举法的计算时间也将大幅度增加。

在解决本题目时,蚂蚁算法求解大约在4分钟左右运行出来,所以是可行的。

误差分析:

蚂蚁算法求解出的解很可能不是精确解。

第五问求解:

蚂蚁算法的两个最主要的特点就是,多样性和正反馈。

多样性保证了系统的多样性,而正反馈保证了优良性能得到强化,两者要恰到好处的结合。

蚂蚁算法当接近最优解释收敛速度快,而开始时收敛速度很慢。

所以想到使蚂蚁算法去和其他一些开始收敛速度快的算法(如粒子群算法)结合,这样使蚂蚁算法得到优化。

总结:

我们认为我们的方案可以进行商业推广,并针对不同的客户群。

对于经济不是很宽裕的消费者,我们可以推广省钱方案,并将其中部分路线调整为坐火车;对于时间繁忙的消费者,可以推广省事的方案,并做适当的调整。

也可将我们的方案推广到其他一些旅行线路中。

总之,我们的方案从不同的角度很好的解决了中国旅行商问题。

 

参考文献:

[1]殷剑宏,吴开业.图论及其算法.合肥:

中国科学技术大学出版社,2003

[2]YuehuiChen,SchoolofInform.Sci.andEng.UniversityofJinan,2009

[3]王树禾.图论.北京:

科学出版社,2009

[4]李海明,刑桂华.用MATLAB实现中国旅行商问题的求解,微计算机应用,2004-03-15

[5]孙守宇,郑君里.Hopfield网络求解TSP的一种改进算法和理论证明.电子学报,1995;23

(1)

[6]黄岚,王康平,周春光,原媛,庞巍.基于蚂蚁算法的混合方法求解旅行商问题.吉林大学学报(理学版),2002

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1