基于某Floyd算法的道路优化设计问题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数学建模

基于Floyd算法的公园道路

优化设计问题

小组编号:02

小组成员:队员1 聪-建模

队员2 汪涛-建模

队员3 娜-建模

队员4 薛向龙-建模

队员5 蔡诗聂-编程

队员6 志诚-编程

2012年7月21日

基于Floyd算法的公园道路优化设计问题

摘要

本文主要研究了以公园部道路修建为背景的路径优化问题。

对于问题一,已知四个交叉点的情况下,考虑到边缘道路不计入修建道路总长的题目要求和最短道路长不大于两点连线1.4倍前提要求,首选边缘路径,将那些无需借助交叉点即可满足1.4倍前提要求的点从考虑围剔除。然后对剩余不满足条件的路径运用Kruskal算法,生成最小生成树的路径,再在此基础上,利用Floyd算法,找出其中不符合1.4倍约束的路径的边,综合对其路径进行调整并将满足条件的所有路径的边用穷举法进行筛选,最终选取最优路径,其总路程为S=393。

对于问题二,我们在第一问结果上进行改进,运用两点之间线段最短原理将第一问最短路径进行优化,然后引入费马点定义,通过数理计算分析,划分三角形区域,建立非线性规划模型进行局部优化。递增交叉点的个数,并在前一个交叉点的最优路径的基础上对后一个交叉点的取点围进行考量,用lingo对不同数目交叉点的情况下的最短路径目标函数进行规划,并以1.4倍的数学关系作为约束条件,进行局部最优解逼近全局最优解,最终确定最优交叉点个数为3个,坐标分别为(61.6965,71.7521)

E、(169.3235,40.5849)

G,计

F、(117.4411,88.8610)

S=。

算出最短路径357.9215

对于问题三,我们在对比道路穿过湖的情况下,考虑到湖边的修路计算到总路程的情况,分析得到在以湖的顶点R2、R4为道路交叉点时比以湖边其他点作为交叉点时的路径要短,所以分别以湖的顶点R2、R4为道路交叉点时进行讨论,在问题二的最短路径的基础上建立非线性规划模型,然后利用费马点逐步进行优化,比较两种不同交叉点的优化模型情况,最终确定出最优方案下的四个交叉点的坐标分别(61.6965,71.7521)

G,

F,(112.1150,79.6098)

E(161.7519,30.7320)

S=。

2(140,45)

R,计算出该情况下最优路程长为360.5394

关于模型的优化,对于问题二,我们考虑到可以通过蒙特卡洛的方法对公园矩形区域围进行撒点,并借用椭圆法来约束1.4倍的条件关系,此方法可以求出选择不同数目交叉点时的最优路径,结果更精确,但是计算量大、程序运行缓慢。

关键词:Kruskal算法Floyd算法局部优化费马点非线性规划

一、问题重述

为了美化校园环境,同时为学生提供更好的生活条件,某大学计划建一个形状为矩形或其他不规则图形的公园。该公园计划有若干个入口,让任意两个入口相连且任意的两个入口之间的最短道路长不大于两点连线的1.4倍。路线的选择可以利用公园四周的边,即默认矩形的四条边上存在已经建好的道路,此道路不计入道路总长。

矩形公园相关数据为:长200米,宽100米,1至8各入口的坐标分别为:P1(20,0),P2(50,0),P3(160,0),P4(200,50),P5(120,100),P6(35,100),

P7(10,100),P8(0,25)。

图1 公园及入口示意图

我们的任务就是结合该公园已有的计划,对其进行合理的道路安排,建立相应的数学模型,解决以下问题:

1、在公园假定要使用A(50,75),B(40,40),C(120,40),D(115,70)这4个点作为道路交叉点时,如何设计出新的道路在满足1.4倍要求的前提下使公园道路总路程最短。

2、在公园可以任意修建道路的情况下,如何确定交叉点的个数及坐标设计道路使其在满足1.4倍条件下使总路程最少。

3、在公园有一条矩形的湖的,新修的道路不能通过,但可以到达湖四周的边的前提下,如何设计交叉点的个数及坐标设计道路使其在满足1.4倍条件下使总路程最少。

注:以上问题中都要求公园新修的道路与四周的连接只能与8个路口相通,而不能连到四周的其它点。

图2 有湖的示意图

二、问题分析

本题是一个道路设计的最优化的问题,即是如何设计路径使公园部新修路总长最小,但要满足以下两个控制条件:

1、任意两个入口连通;

2、任意两个入口的最短路径不超过其直线距离的1.4倍。

对于问题一,题中已给出A(50,75),B(40,40),C(120,40),D(115,70)这4个点作为道路交叉点,由于题设中说明公园四周存在修好的道路且允许通行,所以我们先利用四周道路,找出15P P -,16P P -,18P P -,25P P -,26P P -,27P P -,

34P P -,35P P -,36P P -,37P P -这些沿边道路不能满足1.4倍关系的路径。然

后对剩余不满足第2个控制条件的路径运用Kruskal 算法,生成最小生成树,再在此基础上,利用Floyd 算法,找出其中不符合条件2的路径用穷举法进行优化。

对于问题二,我们在第一问结果上进行改进,考虑到两点之间线段最短原理我们将2P 与6P 、3P 与5P 直接相连。引入费马点定义,通过分析划分三角形区域,建立非线性规划模型进行局部优化。假设公园有m 个交叉点,从m=0开始,我们继续讨论m=1、m=2和m=3这三种情况,进行局部最优解逼近全局最优解,最终确定交叉点数及坐标并求解出最短路径。

对于问题三,首先考虑问题二中设计的道路是否不通过矩形湖,若不通过,

则问题二的结果即为问题三的结果;否则,对问题二方案中穿过湖的道路进行调整-将其调整为穿过湖的顶点。利用费马点到三个顶点的距离最短,建立出相应的非线性规划模型,求出相应的交叉点,然后再利用费马点来进行优化,直到不能再优化为止,最终可得到最优方案。

三、模型假设

1、假设所有点间道路均修建为直线,且都在同一水平面;

2、假设入口形状与路宽忽略不计,即将入口抽象为点,道路抽象为线;

3、假设交叉点位置的选取不受地理位置的限制,且交叉点的修建不会影响道路的总长

4、假设湖的四周没有修建好的道路,若要沿湖则同样需修建道路并计入道路总长。

四、符号说明

符号

说明 (,)i i x y 点i P 的坐标 ()Dis MN 点M 、N 间的距离 i j PP

点i P 与点j P 间的距离

E 、

F 、G

道路交叉点 S

最优路线长度 m

道路交叉点的个数

五、模型的建立与求解

5.1问题一的模型建立与求解

由题所给出的条件可以看出,这与最短路问题联系密切,于是考虑用Kruskal 算法和Floyd 算法来建立问题的模型。

相关文档
最新文档