收藏 分享(赏)

数学建模讲座(谢金星).ppt

上传人:yjrm16270 文档编号:8037011 上传时间:2019-06-05 格式:PPT 页数:33 大小:349.50KB
下载 相关 举报
数学建模讲座(谢金星).ppt_第1页
第1页 / 共33页
数学建模讲座(谢金星).ppt_第2页
第2页 / 共33页
数学建模讲座(谢金星).ppt_第3页
第3页 / 共33页
数学建模讲座(谢金星).ppt_第4页
第4页 / 共33页
数学建模讲座(谢金星).ppt_第5页
第5页 / 共33页
点击查看更多>>
资源描述

1、数学建模讲座 CUMCM-2007B (乘公交,看奥运) 赛题分析,谢金星 100084北京清华大学数学科学系 Tel: 010-62787812,Fax: 010-62785847 Email: http:/ 社会关注) 让运动员及时到达场馆(车辆调度,路径安排等) 应急管理(紧急疏散,应急调度等) 赛程安排(单一项目,多个项目) 成绩排名(如循环赛,体操或跳水等) 技术类,如“刘翔的运动鞋”乘公交,看奥运:原名“自动问路机” 方沛辰(吉大),吴孟达(国防科大)提出 原拟作乙组题,似乎难度太大,命题背景,定位:公交路线选择(查询)模型与算法如何给数据? 抽象数据实际数据?(减小规模,不给地理

2、信息)貌似简单,实则不然 数据处理(转换)方面有一定难度 换乘次数多时简单搜索不易(计算复杂度高) 换乘时间步行时间等需要考虑周全 标准的最短路算法(如Dijkstra算法)并不适用,乘公交,看奥运,公交线路选择问题的自主查询计算机系统:核心是线路选择的模型与算法 应该从实际情况出发考虑,满足查询者的各种不同需求 1: 仅考虑公汽线路,给出任意两公汽站点之间线路选择问题的一般数学模型与算法 2: 同时考虑公汽与地铁线路,解决以上问题 3: 假设又知道所有站点之间的步行时间,给出任意两站点之间线路选择问题的数学模型,【附录1】基本参数设定 相邻公汽站平均行驶时间(包括停站时间): 3分钟 相邻地

3、铁站平均行驶时间(包括停站时间): 2.5分钟 公汽换乘公汽平均耗时: 5分钟(其中步行时间2分钟) 地铁换乘地铁平均耗时: 4分钟(其中步行时间2分钟) 地铁换乘公汽平均耗时: 7分钟(其中步行时间4分钟) 公汽换乘地铁平均耗时: 6分钟(其中步行时间4分钟) 公汽票价:分为单一票价与分段计价两种,标记于线路后;其中分段计价的票价为:020站:1元;2140站:2元;40站以上:3元 地铁票价:3元(无论地铁线路间是否换乘) 推论:换乘公汽等待分钟,换乘地铁等待分钟【附录2】公交线路及相关信息 (见数据文件),线路数据中的问题,线路数据中的异常或不明确之处,同学可根据自己的理解作出假设和处理

4、,一般不会影响实例的计算结果个别线路相邻站点名相同,可去掉其中一点或不作处理等L406未标明是环线,是否将其当作环线处理均可L290标明是环线,但首尾站点分别为1477与1479,可将所有线路中1477与1479统一为1477后计算。同学也可以按照各自认为合理的方式处理,包括不当作环线,或将1479改为1477,或在1479后增加1477,等等如果在假设中有明确约定,则环线单向或双向发车均应认可(按单向发车作假设,计算结果可能差些),对通过地铁换乘的理解,“假设同一地铁站对应的任意两个公汽站之间可以通过地铁站换乘(无需支付地铁费)” 步行:公汽站地铁站(通道)公汽站换乘耗时11min:步行4+

5、4=8min; 等车3min第问(只考虑公汽):可不考虑以上换乘 有同学也考虑了如上换乘,只是不坐地铁,应该也可以 此样处理时,第问和第问的难度相近,模型的目标,多目标优化问题(至少考虑三方面) 换乘次数最少(N)、费用最省(M)、时间最短(T)从该问题的实际背景来看,加权太合适 不少同学用层次分析法确定权 不少同学计算时间的价值(平均收入工作时间)不同目标组合的模型 三个目标按优先级排序,组合成六个模型 也可将某些目标作为约束,多数队仅采用搜索法(70-80%?),直达; 一次换乘; 二次换乘; ,st,st,st,求出所有线路;评价其目标(容易计算);选优,多数队仅采用搜索法,总体来看,技

6、术含量较低(基本上是枚举) 几乎没有建模,完全只有算法实现,算法也没什么创新一般只考虑不超过两次换乘 不少文章引用参考文献作为依据,实用中似乎够用 题目难度大大降低,模型不够一般换乘作为了第一目标,或作为一个最重要的约束任意次换乘时算法复杂度提高,难以处理 结果不佳(如:从省时考虑,有些需次换乘),图论模型与最短路算法,用图论做的队也不少,但往往考虑不周 弧上赋权方式交代不清 套用Dijkstra或Floyd-Warshall算法,却不清楚其原理及适用的问题需要建立一个带权有向图,节点表示站点,有向弧表示前一站点能够直达后一站点,弧上的权表示前一站点直达后一站点所需付出的代价(时间或费用)图(

7、网络)如何描述和表示? 基本要素:节点,有向弧(边),弧上赋权 邻接矩阵;关联矩阵(数学上处理方便,存储量较大) 链表(存储量较小,计算机上处理方便),关联矩阵(Incidence Matrix)表示法,在线路选择问题中,当从i可直达j时,定义弧(i,j);其上的权可为或成本(时间或费用);多重弧可只保留一条(弧上的权可取最小的成本,如时间或费用),G=(V,A)是一个简单有向图;|V|=n,|A|=m,重要数学性质:关联矩阵是全幺模矩阵,图G=(V,A)的邻接矩阵C是如下定义的:C是一个 的矩阵,即,邻接矩阵(Adjacency Matrix)表示法,图G=(V,A)的邻接矩阵C是如下定义的

8、:C是一个 的0-1矩阵,即,在线路选择问题中,当从i可直达j时,定义弧(i,j);其上的权可为或成本(时间或费用),G=(V,A)是一个简单有向图;|V|=n,|A|=m,有向图的“传递闭包算法” (可用于一般二元关系) 权取0-1时,C(0)=C可称为直达矩阵 ;C(1)=C*C 为次可达矩阵;C(2)=C(1)*C 为2次可达矩阵;,链表(邻接表)表示法,单向链表(指针数组),A(1)=2,3,A(2)=4,A(3)=2,A(4)=3,5,A(5)=3,4,Dijkstra算法(标号算法,1959),STEP1. 如果S=V, 则uj为节点s到节点j的最短路路长(最短路可以通过数组pre

9、d所记录的信息反向追踪获得), 结束.否则继续.,STEP0. (初始化) 令S= ,=V, ;对V 中的顶点j(j s)令初始距离标号 .,STEP2. 从 中找到距离标号最小的节点i,把它从 删除,加入S. 对于所有从i出发的弧 , 若 ,则令转STEP1.,特点:1. 算法求出从源点s到所有点的最短路长2. 每点给一对标号 (uj, predj),uj是从s到j的最短路长;predj是从s到j的最短路中j点的前一点,Example,Dijkstra算法(标号设定算法),适用于正费用网络:“分层”设定标号 永久标号:S中的点,uj是最短路长 临时标号;其他点, uj是只通过S中的点的最短路

10、长,对于稠密网络,这是求解最短路问题可能达到的最小的复杂度,因为任何算法都至少必须对每条弧考虑一次. 对于稀疏网络,利用各种形式的堆(Heap),其复杂度可降为 或 等,特点:求所有点对间最短路基本思想:逐步逼近,迭代求解最短路方程: O(n3),Floyd-Warshall算法 (标号修正算法,1962),临时标号 是不通过k,k+1,,n 节点(i,j 除外)时从节点i到节点j的最短路路长.,Floyd-Warshall算法的具体实现: O(n3),由于要记录所有节点之间最短路的信息, 所以这里我们要用一个二维数组P; 可依据P, 采用“正向追踪”的方式得到最短路.,STEP2:如果k=n

11、, 结束; 否则转STEP1.,STEP0: k=0. 对于所有节点i和j: 令 , ,( ,若节点i和j之间没有弧, 认为 ) .,STEP1: k=k+1. 对于所有节点i和j: 若 , 令, ; 否则令 , .,Floyd-Warshall算法的 矩阵迭代法实现:O(n4),令D为权矩阵(直达最短路长) Dm为正好经过m条弧从i到j的最短路长,问题1和2的一种具体建模方法(赋权),在线路选择问题中,当从i可直达j时(同为公汽或地铁站点),定义弧(i,j);其上的权为,lij表示由i直达j付出的代价,可以为时间或费用 (不包括换乘代价;多条线路可达时只保留最小代价) 初始等车时间2(3)m

12、in也不包括在内,最后结果可加上 注意:D=D(0)不是对称矩阵(“直达矩阵”),dij(0)=dij,问题的一种具体建模方法,i站点是公汽站点,j站点为地铁站点:,(1)若j站点对应的所有换乘(公汽)站点k,均不能从i直达(不在i站点所在公汽线路L上),则dij(0) =.,(2)若j站点对应的换乘站点(k), 可从i站点直达k,则费用为dij(0) = dik(0);对于时间则需要加上k到j的步行时间. (若有多种选择,取最小成本者即可),i,k,j,问题的一种具体建模方法,j站点是公汽站点,i站点为地铁站点:,(1)若从i站点对应的任何换乘(公汽)站点k,均不能直达j站点,则dij(0)

13、 =.,(2)若从i站点对应的换乘(公汽)站点k,能直达j站点, 则费用为dij(0) = dkj(0);对于时间则需要加上i到k的步行时间.,i,k,j,问题:最小费用或时间,定义矩阵算子“”如下:设A、B均为n阶方阵,C = A B (考虑换乘代价),D(k)= D(k-1) D 表示k次换乘的最低代价(费用或时间)该算法大体相当于求最短路的Floyd-Warshall算法,但考虑了换乘因素,可称为改进Floyd-Warshall算法类似地, 通过修改Dijkstra算法求解也可,问题:最小费用或时间,i,j,k表示换乘时间,i = j 或k = i,j时,i,j,k = 0 其他情形:若

14、不可换乘(当i ,j为公汽站点而k为地铁站点,或者i ,j为地铁站点而k为公汽站点时),则 i,j,k = 0若可换乘,则,k,这只是等待时间,因为步行时间已在D中考虑了,i,j,第问:已知所有站点间步行时间,多数队没有给出一般模型, 而只考虑最多一次换乘 多数队的想法:假设“起点步行”,“换乘步行”,“终点步行”三种模式,限定步行最大时间后搜索,i,k,j,其他:最短路问题的线性规划模型,xij表示弧(i,j)是否位于s-t路上:当xij =1时,表示弧(i,j)位于s-t路上,当xij =0时,表示弧(i,j)不在s-t路上.,关联矩阵是全么模矩阵,因此0-1变量可以松弛为区间0,1中的实

15、数,不含负圈,变量直接松弛为所有非负实数,思考:为什么xij 可以不限定为0,1 (0-1规划) ?,最短路问题的线性规划模型,线性规划模型,应该可以计算到比较大规模的问题有些队写出了上述模型,但并未用该模型求解可能需要强大的优化软件,数据输入工作量也较大换乘代价不易考虑(网络上的权不易定义,或不具可加性)有些同学提到动态规划, 但要么与这里介绍的最短路算法等价, 要么处理有误, 或只是搜索法的变种,有些队讨论“交通阻抗”:“文不对题”,道路阻抗在交通流分配中可以通过路阻函数来描述所谓路阻函数是指路段行驶时间与路段交通负荷,交叉口延误与交叉口负荷之间的关系在具体分配过程中,由路段行驶时间及交叉

16、口延误共同组成出行交通阻抗交通网络上的路阻,应包含反映交通时间、交通安全、交通成本、舒适程度、便捷性和准时性等等许多因素,同学论文中存在的主要问题,2. 目标不当,或不完整,3. 换乘时间处理不当尤其地铁站与公汽站之间,以及通过地铁通道换乘的公汽站之间,1. 几乎没有模型,只有算法(一般是搜索法),4. 算法使用不当,或滥用,5. 对第问,很少认真进行讨论和建模,6. 全文表达不清,思路混乱,小结: CUMCM评阅标准,模型完整明确模型/算法创新软件使用恰当,假设的合理性,建模的创造性, 结果的正确性,表述的清晰性。,深入思考/分析表达规范严谨严禁作弊抄袭,部分资料下载说明,清华大学大学数学实验、数学模型等课程课件:http:/ LINGO程序、课件下载地址:http:/ 2008 湖南培训班课件下载地址:http:/ (密码:清华大学),Thats all. Any Questions?,Thank you for your attendance!最后,祝大家在数学建模活动中取得优异成绩!,谢金星, 清华大学数学科学系, 2008.,

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报