1、12011 高教社杯全国大学生数学建模竞赛承 诺 书我们仔细阅读了中国大学生数学建模竞赛的竞赛规则.我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等) 与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题 .我们知道,抄袭别人的成果是违反竞赛规则的, 如果引用别人的成果或其他公开的资料 (包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出.我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性.如有违反竞赛规则的行为,我们将受到严肃处理.我们参赛选择的题号是(从 A/B/C/D 中选择一项填写): B 我们的参赛报名号为
2、(如果赛区设置报名号的话 ): 所属学校(请填写完整的全名 ): 参赛队员 (打印并签名) :1. 2. 3. 指导教师或指导教师组负责人 (打印并签名): 日期: 2011 年 9 月 11 日赛区评阅编号(由赛区组委会评阅前进行编号):22011 高教社杯全国大学生数学建模竞赛编 号 专 用 页赛区评阅编号(由赛区组委会评阅前进行编号):赛区评阅记录(可供赛区评阅时使用):评阅人评分备注全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):1交巡警服务平台的设置与调度摘 要由于警务资源是有限的,所以根据城市的实际情况与需求,合理地设置交巡警服务平台、分配各
3、平台的管辖范围、调度警务资源是有关部门面临的一个实际课题.本文着力于通过所给资料,寻找最优化的交巡台设置与调度方案. 按照设置交巡警服务平台的原则和任务,我们首先对问题 1 用 Floyd 算法,提出最佳的交巡警服务平台管辖区域划分方案,缩短了出警时间,平衡了工作量,然后采用回溯法,给出了应对突发事件的警力比较合理调度方案;对于问题 2,我们将其归结为全局的配置问题,首先用优化后的Floyd 算法对该市现有六城区的交巡警服务平台设置进行改进,其次以时间最短、围堵区域最小为原则,提出了应对重大刑事案件的最佳围堵方案.对于问题 1,本文将最短时间问题转化为单向最短路径问题.我们没有运用经典的求最短
4、距的 Dijkstra 算法,采取时间复杂度更简便的 Floyd 算法,应用 Matlab 编程,以出警时间最短为原则,将 72 个交通节点分配给 20 个交巡警服务平台;对于出现突发事件,本文采用回溯法,以最节省警力、实现全区封锁联动时间(即封锁路口最长时间)最短为目标,成功的实现了应对突发事件时警力的合理调度;对于某些交巡警服务平台工作量大、出警时间过长等问题,本文利用 Mathematica 对附表 2 中的数据进行分析,整理分析 A 区各节点事故发生率后,利用图论的相关知识,提出应增设 4 个服务平台,基本实现警力的最优配置.最后,借助于 Matlab 和 Mathematica 软件
5、,对附件中所提供的数据进行了筛选,去除异常数据,对残缺数据进行适当补充,并从中随机抽取了 3 组数据(每组8 个采样)对理论结果进行了数据模拟,结果显示,理论结果与数据模拟结果吻合良好.而对于问题 2,我们对附件中所提供的 A,B,C,D,E,F 六城区的数据进行了整合与分析,并做出了直观的图表.遵循警情主导警务原则、快速出警原则、方便与安全原则,并结合辖区地域特征、人口分布、交通状况、治安状况和未来城市发展规划等实际情况,在充分考虑现有警力和财力并确保安全的条件下,科学分析现有平台的数量和具体位置的合理性.数据显示 C 区和 F 区的事故发生率较高、交巡警服务平台工作量高于全市平均水平、交巡
6、警服务平台平均每天出警时间过长,针对以上问题我们再次利用均衡二分法,并考虑区域边界处的设点拥挤问题,提出了在 C 区增设 5 个交巡平台、F 区增设 1 个交巡平台.对于该市地点 P(第 32 个节点)处发生了重大刑事案件的围堵问题,本文将其归结为资源调配问题.本文合理假设了犯罪嫌疑人的车行驶速度(分三种情况考虑:等于警车速度,警车速度的二倍,警车速度的一半),确定三分钟后犯罪嫌疑人逃逸的可能覆盖范围,从而利用回溯法的思想采用 Matlab 编程确定犯罪嫌疑人的车的所有可能位置.以时间最短、围堵区域最小为原则,采用改进的穷举算法,快速地形成围堵区域,并实现了围堵区域最小的目的.实现了资源调配问
7、题的优化决策.考虑到该城市未来发展规划,只需对本文所建模型进行适当改进即可,在此不进行详细解答.关键词 最短路径 Floyd 算法 回溯法 穷举法 优化决策1目 录交巡警服务平台的设置与调度 1摘 要 .11.问题重述 12.问题分析 12.1 对于问题一的分析 .12.2 对问题二的分析 .13.模型假设 24.定义与符号说明 25.模型的建立与求解 25.1 问题一的模型 .25.1.1 模型建立 .25.1.2 模型求解 .35.2 问题二的模型 .85.2.1 模型建立 .85.2.2 模型求解 .97.模型的评价与推广 .108. 附件 10附件 1:用 Floyd 算法分配个服务平
8、台管辖区域 .10附件 2:邻接矩阵的 matlab 实现程序 22附件 3:围堵方案的 java 实现程序 29附件 4:全区的交巡警平台有效覆盖范围(有效代表三分钟内可以到达) .30附件 5:用 Mathmatica 求数据均值与方差 30附件 6:输入任意两点的坐标,输出两点间距离 30附件 7:A 区各线路距离 3111.问题重述“有困难找警察”,是家喻户晓的一句流行语.警察肩负着刑事执法、治安管理、交通管理、服务群众四大职责.为了更有效地贯彻实施这些职能,需要在市区的一些交通要道、人员密集区和重要部位设置交巡警服务平台.每个交巡警服务平台的职能和警力配备基本相同.由于警务资源的有限
9、性,根据城市的实际情况与需求,合理地设置交巡警服务平台、分配各平台的管辖范围、调度警务资源是警务部门面临的一个实际课题.本文着力于寻找最优化的设置与调度方案.问题 1 要求合理分配交巡警服务平台的管辖范围,使其在所管辖的范围内出现突发事件时,尽量能在 3 分钟内有交巡警(警车的时速为 60km/h)到达事发地;对于重大突发事件,给出该区交巡警服务平台警力合理的调度方案,尽快封锁道路;拟在该区内再增加 2 至 5 个平台,以减少出警时间、平均工作量,确定需要增加平台的具体个数和位置.问题 2 要求分析研究该市现有交巡警服务平台设置方案的合理性并给出解决方案;如果该市地点 P(第 32 个节点)处
10、发生了重大刑事案件,在案发 3 分钟后接到报警,犯罪嫌疑人已驾车逃跑.为了快速搜捕嫌疑犯,给出调度全市交巡警服务平台警力资源的最佳围堵方案.2.问题分析本题所要解决的是 A 区以及全市的安巡警服务平台设置与调度问题,根据现实生活状况,我们首先要考虑的是警力资源的限制,即要使得所布置的警力尽可能的少.其次是在交巡台数量最少的情况下,力求警员到达现场的时间在 3 分钟以内,解决突发状况.2.1 对于问题一的分析该市中心城区 A 的交通网络有 92 个节点和 20 个交巡警服务平台,要求当突发事件发生时,尽量能在 3 分钟内有交巡警到达事发地,已知警车的时速为 V=60km/h,我们将最短时间转化为
11、最短路问题,应用 Floyd 算法,求解出 A 区距离每一节点最近的交巡台,即将该节点分配给该交巡台.对于重大突发事件,要实现对进出该区的 13 条交通要道进行快速封锁,即需调度交巡台尽快到达 13 个节点,重复 Floyd 算法,找出最近交巡台,即可找出调配方案.但需注意的是,有的出入口本来就有交巡台,但为了达最优化,需进行重新分配,故应用回溯法,找到调度方案.现有交巡台工作量不均衡和有些地方出警时间过长,统计 A 区各个交巡台案发率,计算均值与方差,在案发率较高地带增设交巡台,平衡工作量,尽量缩短出警时间.2.2 对问题二的分析对于问题二,是对问题一的进一步改进与推广,在遵循警情主导警务原
12、则,快速出警原则与方便与安全原则,结合辖区地域特征、人口分布和治安状况等实际情况,充分考虑现有警力和财力并确保安全的条件下,设置交巡平台,重复上一问的做法,评估交巡平台的合理性.对于改进方案,应考虑城区内部工作量,城区之间的联系以及城市边界的警力调度.对于突发状况的围堵方案,应在最短时间内对可能逃逸区域进行合围,最小范围内缩小包围圈.23.模型假设1.假设题中所给数据均真实可靠.2.出警时道路恒畅通(无交通事故、交通堵塞等发生),警车行驶正常,警车及肇事车辆行驶时均以 60km/h 匀速行驶,转弯处不需要花费时间.3.事故均发生在路口节点,两节点连线上认为没有事故发生.4.每条线路行驶都是双向
13、的.5.考虑肇事车辆在 P 点向各个方向逃逸的概率相等.6.在整个行驶中,车辆只在主要干道行驶.7.发生事故时,忽略反应调度时间.4.定义与符号说明 ijm任意两个标志点 与 之间的距离ij标志点间的距离组成的距离矩阵n标志点的邻接矩阵ij邻接矩阵的元素D相邻标志点间的距离矩阵ij相邻标志点 与 间的距离ijW标志点的权值矩阵d标志点间的最短距离矩阵ij标志点 与 之间的最短距离ij1v肇事车辆逃逸速度5.模型的建立与求解5.1 问题一的模型5.1.1 模型建立此问是关于最短路径的模型分析及 MATLAB 的实现 A 区道路状况及交巡台的设置如图 1 所示.本文应用 Floyd 算法,通过构造
14、距离矩阵,依次找出距离每一节点最近的交巡台,使得有事故发生时,交巡警在最短时间内到达事故现场,以此为依据分配管辖区域.3如果道路不通时,认为两端节点的距离为无穷.图 1 A 区各节点及服务平台示意图当有重大突发事件时,要对进出该区的 13 条交通要道进行快速封锁,固定 13 个出入口,应用回溯法,找到距离节点最近的交巡平台.封锁时间决定于最后到达节点的时间,由于一个平台的警力最多封锁一个路口,至少需调动 13 个平台的警力.为达到工作量的均衡和出警时间尽可能的短,需进行优化决策.考虑每一节点案发率的不同,在 A 区增设 2 到 5 个平台,使得每一平台的工作量均衡,平均出警时间大体相同.5.1
15、.2 模型求解首先我们可以根据题中所给的各个标志点的坐标,用 matlab 计算出任意两点之间的直线距离,得到 92*92 的距离矩阵: 11nnm 根据题中的分布图,我们可以得到各标志点的邻接矩 11nn 即如果两个点相邻,则邻接矩阵中相对应的元素的值为 1,否则为 0;例如:3 和 44 这两个点相邻,那么 .13,4,3n根据 Floyd 算法,我们是要求出任意两节点之间的距离,所以我们需要得到相邻两个结点的直线距离.我们可以利用距离矩阵的4元素 ijm与 ijn的点乘积得到相邻标志点间的距离矩阵: 11.*nnDm 对于 D 中不相邻点间距离 0 改为无穷大(Inf)从而得到节点与节点
16、间的权值矩阵: 11nnW 即如果 15 和 10 之间不相邻,也即不能直接到达,那么 D 中的 和 都将变01,515,D成 和 等于无穷大(Inf), 否则则等于 D 中相应元素的数据.10,5W15,运用 Floyd 算法求出任意两点间最短距离,得到最短距离矩阵 d:11nnd 由 Floyd 算法,运行 MATLAB 程序,可统计出距离每一节点最近的交巡台的位置,MATLAB 运行结果如表 1 所示.带括号的节点为发生事故时任意交巡台都不能在三分钟内赶到节点.交巡台节点 距离 交巡台节点 距离1321 27.0831 457 18.68151322 9.0554 658 23.8414
17、1323 5.0000 659 16.03121324 23.8537 460 17.92401225 17.8885 4(61) 52.10551126 9.0000 462 3.50001127 16.4330 463 10.308715(28) 47.5184 464 9.363215(29) 57.0052 365 15.2398730 5.8310 366 18.4012931 20.5572 167 14.9158732 11.4018 17568 10.7927833 8.2765 169 5.0000934 5.0249 270 8.6023935 4.2426 17471 1
18、1.26501636 6.0828 272 16.40311637 11.1818 1873 19.723116(38) 34.0588 174 6.26502(39) 36.8219 175 6.2650240 19.1442 176 9.800551741 8.5000 1977 9.84891742 9.8489 178 6.4031243 8.0000 1979 4.4721244 9.8468 1880 8.0623945 10.9508 1881 6.7082846 9.3005 1882 10.7935747 12.8062 1883 5.3852748 12.9021 2084
19、 11.7522549 5.0000 2085 4.4721550 8.4853 2086 3.6050551 12.8932 2087 14.6511552 17.1944 2088 12.9464553 11.7082 2089 14.7522354 22.7089 1890 19.5256355 12.6590 2091 16.0060556 21.4370 20(92) 36.0060表 1 该市 A 区指定节点到交巡警服务平台最短距离由上表可初步确定 A 区 20 个交巡台的管辖范围,如表 2 所示.带括号的节点为发生事故时任意交巡台都不能在三分钟内赶到节点.交巡台序号辖区内节点 辖
20、区内案发率 交巡台 序号 辖区内节点 辖区内案发率1 67 68 69 71 74 75 76 78 9.4 2 40 43 44 70 72 39 9.73 54 55 65 66 5.6 4 57 60 62 63 64 6.65 49 50 51 52 53 56 7.7 6 58 59 4.57 30 32 47 48 61 9 8 33 46 59 31 34 35 45 8.2 10 1.611 26 27 4.6 12 25 413 21 22 23 24 8.5 14 2.515 (28) (29) 4.8 16 36 37 (38) 517 41 42 5.3 18 73 8
21、0 81 82 83 719 77 79 3.4 20 84 85 86 87 88 89 91 90 (92) 11.5表 2 该市 A 区交巡警服务平台所管辖交叉路口清单6图 2 A 区各交巡台管辖区域示意图需要说明的是,同一条路整体归一个交巡台管理.当有重大突发事件时,固定 13 个进出 A 区的节点,运用回溯法,结合上表,找到距离节点最近的交巡台,以此来达到总体时间的最短,我们一共可以得到四个方案,在这个过程中可以发现,有些交巡台要避免去最近的节点封锁而去较远的节点,以此来节省警力.具体封锁方案如表 3、表 4 所示.最短调度时间均为 8.0155.方案一:交巡台 过程 出入口节点号路
22、径 40 392时间 3.9822min38路径4时间 0.3500min 62路径 47 486时间 3.1829min30路径 307时间 8.0154min 29路径 478时间 3.0995min 48路径 35369时间 1.5083min1610 路径 26 27 127时间 7.5863min路径11时间 3.2696min 22路径 2512时间 3.5916min 24路径13时间 0.5000min 23路径14时间 3.2649min 21路径15时间 4.7518min 28路径16时间 6.7417min 14表 3 A 区突发事件封锁方案一方案二 方案三 方案四路口
23、标号 平台号 路口标号 平台号 路口标号 平台号12 13 12 13 12 1014 16 14 23 14 1616 6 16 9 16 621 14 21 11 21 1422 10 22 10 22 1223 11 23 14 23 1324 12 24 12 24 1128 15 28 15 28 1529 7 29 7 29 730 8 30 6 30 938 19 38 17 38 148 5 48 9 48 862 20 62 20 62 2表 4 A 区突发事件封锁方案二、三、四在对交巡台均衡工作量,加快出警时间方面,综合各节点的案发率、交巡台到其辖区内任一节点的路程进行综合
24、评估,做出优化决策.在案发率较高地带增设交巡台,以缓解周围交巡台的工作压力,为达均衡工作量的目的,将 32 号节点从 7 号交巡台归到 8 号交巡台,44 号节点从 2 号交巡台归到 3 号交巡台,39 号节点从 2 号交巡台归到 16 号交巡台,47 号节点从 6 号交巡台归到 7 号交巡台,61 号节点从 7 号交巡台归到 4 号交巡台.这样,A 区每交巡台平均每天处理案件数从6.1950 件、方差 6.8289 降到每天处理 5.1917 件、方差 2.2182,极大的协调了工作量.对于个别节点的重新划分,会增加出警时间,但在总体上平均每天的出警时间大大缩短了.综上考虑,共增设 4 个交
25、巡台,重新分配的结果如表 4 所示.交巡台序号 负责区域内的节点 管辖区域内的案发率 平均每天出警时间1 69 71 74 75 78 6.6 3.50692 40 43 70 72 7.2 6.673683 54 55 44 5.2 4.93144 57 60 61 62 63 6.4 7.70155 49 50 51 52 53 567.7 5.94566 58 59 47 6.1 6.39497 30 48 5.9 3.52588 33 46 5.0 2.27489 35 45 4.9 2.127110 1.611 26 27 4.6 2.394612 25 4.0 2.862213 2
26、3 24 5.7 3.823914 2.515 (28) (29) 4.8 14.158016 36 37 (38) (39) 6.4 10.056217 41 42 5.3 2.568918 73 80 81 83 5.9 3.843819 77 79 3.4 1.145720 85 86 87 (92) 6.4 5.535421 22 2.8 2.523931 32 34 4.9 4.396266 64 65 67 68 76 5.1 2.665590 82 84 88 89 91 6.2 3.2171表 5 优化后的 A 区交巡台管辖区域示意图9图 3 A 区增设平台示意图图中方块所示节
27、点即为增设平台处.5.2 问题二的模型5.2.1 模型建立对于问题 2,对附件中所提供的 A,B,C,D,E,F 六城区的数据进行整合,做出直观的图表.遵循警情主导警务原则、快速出警原则、方便与安全原则,结合辖区地域特征、人口分布、交通状况、治安状况和未来城市发展规划等实际情况,充分考虑现有警力和财力并确保安全,科学分析现有平台的数量和具体位置的合理性.对于该市地点 P(第 32 个节点)处发生了重大刑事案件的围堵问题,本文将其归结为资源调配问题.本文合理假设了犯罪嫌疑人的车行驶速度(分三种情况考虑:等于警车速度,警车速度的二倍,警车速度的一半),并确定三分钟后犯罪嫌疑人的车行驶的最远距离,从
28、而利用回溯法的思想采用 Matlab 编程确定犯罪嫌疑人的车的所有可能位置.以时间最短、围堵区域最小为原则,采用改进的双层 Floyd 算法,快速地形成围堵区域,并使围堵区域尽可能的小.5.2.2 模型求解全市整体状况如表 5 所示,数据显示 C 区和 F 区的事故发生率较高、交巡警服务平台工作量高于全市平均水平且交巡警服务平台平均每天出警时间过长,针对以上问题本文再次利用问题 1 的 Floyd 算法,并考虑区域边界处的设点拥挤问题,本文提出了在 C 区增加 5 个服务平台、在 F 区增加 1 个服务平台.全市六个城区 城区面积 城区人口 平台数 平均人口全区案发率各区平台案发率均值A 22
29、 60 20 2.727 124.5 6.625B 103 21 8 0.204 66.4 8.3C 221 49 17 0.223 187.2 11.012D 383 73 9 0.191 67.8 7.533E 432 76 15 0.176 119.4 7.96F 274 53 11 0.193 109.2 9.927均值 53.3333 13.3333 0.619 112.4167 8.5595表 6 全市整体状况10图 4 全市增设交巡台位置示意图(方块所示区域)对于 P 点发生重大刑事案件,动用全市警力进行围堵,我们希望使得包围圈尽可能的小,由于犯罪嫌疑人的车速度未知,我们分以下三
30、种情况进行考虑:1)当犯罪嫌疑人的车速与警车速度同,即 .hkmv/601运用穷举法,对肇事车辆可能的逃逸路线进行分析,以 3 分钟路程为半径,找到肇事车辆逃逸的覆盖范围,如图 5 所示,其中实线表示可能路径,在此范围内有 8、9、10、15号共 4 个交巡平台,保证这 4 个平台警力不动,组成第一范围包围圈.11图 5 肇事车逃逸 3 分钟内覆盖区域示意图进一步分析可能的逃逸路线,调度 16 号交巡台到 36 号节点,2 号交巡台到 3 号节点,3号交巡台到 55 号节点,6 号交巡台到 47 号节点,组成第二组半包围,保证对 A 区的封锁.若肇事车辆经 36 号节点逃往 16 号节点,则会
31、与 16 号交巡台在途中相遇.对于从 32 号节点经 7 号节点逃逸到 30 号和 47 号节点,存在从 A 区逃往其他城区的可能,需调动其他城区交巡台的支援.将 C 区 119 号交巡台调度到 237 号节点,将 D 区 320号交巡台调度到 371 号节点,321 号交巡台经 368 号、369 号节点到 370 号节点,至此,在全市范围内实现全面封锁.2)当犯罪嫌疑人的车速比警车车速小,即 ,我们令hkmv/601hkmv/301方法同 1),寻找分钟逃逸范围内所覆盖的全部交巡台,经过整合分析,保持 7 号、8号、9 号、15 号共 4 个交巡台原地封锁,10 号交巡台到 34 号节点封
32、锁,6 号交巡台到 47号节点封锁,16 号交巡台到 36 号节点封锁,3 号交巡台经 55 号节点到 46 号节点进行封锁,2 号交巡台经 3 号节点到 45 号节点封锁,在此过程中,10 号、2 号和 3 号交巡台会在途中与肇事车辆相遇.3)当犯罪嫌疑人的车速比警车车速大,即 ,我们令hkmv/601hkmv/10由于肇事车辆逃逸速度较快,可能会逃逸到 C 区和 F 区,故需调动 C 区和 F 区警力进行围堵.A 区将 20 号交巡台调到 62 号节点,16 号交巡台调到 36 号节点,2 号交巡台经 40 号到 39 号节点,17 号交巡台调到 41 号节点,15 号、10 号、4 号、
33、3 号、5 号、7 号、8 号、9 号交巡台原地封锁,其余交巡台向其邻近的路口节点进行增援.经过分析,肇事车辆可12能由 28 号、48 号、30 号进入 C 区及 A、D 两区的交汇地带,或由 16 号节点逃逸到 F 区,在此,对 C 区、D 区、F 区交巡台进行如下调配,实现全市封锁:C 区:240 号交巡台调到 239 号节点,170 号交巡台调到 225 节点,167 号交巡台调到259 节点.D 区:320 号交巡台调度到 371 号节点,321 号交巡台经 368 号、369 号节点到 370 号节点.F 区:477 号交巡台调度到 501 号节点,518 号交巡台调到 521 号
34、节点,478 号节点调到 527 号节点,484 号节点到 571 号节点.7.模型的评价与推广本文避免了时间复杂度较复杂的 Dijkstra 算法,选用 Floyd 算法,在求最短路径上提高了效率,代码编写简单.模型的建立思路清晰,遵循可操作性、科学性、可比性原则,该模型建立出了在较理想状态下交巡警平台的最优设置,减少出警时间,均衡工作量,提高工作效率,在遇突发事件时,可尽快实现道路封锁,给生活中交巡警平台的设立予参考,具有一定的实际应用价值,也可以应用于其他适用区域.模型的运算由矩阵、向量的运算组成,易于用数学软件求解和验证.本模型较好的解决了交巡警平台的最优选址问题,当事故发生时,交巡警
35、可以第一时间到达事发地点,有效的改善了交巡警在执行任务中的效率,在经济迅猛发展的今天,城市加速扩张,人口迅速增长,交巡警平台的设置是平安城市的最好保障.该模型也可运用到其他最优选址问题中去,比如关于消防救援工作最优路径问题、重大生产安全事故应急救援问题、公共交通的最优路径问题等. 同时也可利用该模型算法拓展模型在其他领域的适用范围.该模型也有一定的局限性,如现实中不能时刻都保证道路的畅通性.既不能保证出警的时间总是维持在 3 分钟之内.忽略了实际地形对于车速的影响以及实际生活中存在的不定因素.参考文献1 徐孝凯,王凤禄,数据结构简明教程第二版,北京:清华大学出版社,2005 年 4月 1 日2
36、 李建中,骆吉洲,华章数学译丛第二版,北京:机械工业出版社,2002 年 6 月3 陈庆华等,组合最优化技术及其应用第 1 版,北京:国防科技大学出版社,1989年 8 月4 W.T.Tutte,Graph Theory,英国:Cambridge University Press,2001 年 3 月1 日8.附件附件 1:用 Floyd 算法分配个服务平台管辖区域area_a _x,area_a _y=find (location_all _daolu line% String argument is an unknown option.for i=1:140tt=c (i);uu=loca
37、tion_all _daolu (tt,:);uu1=uu (1);uu2=uu (2);vv1=location_a _zuobiao (uu1,:);vv2=location_a _zuobiao (uu2,:);ww1=vv1 (1),vv2 (1);ww2=vv1 (2),vv2 (2);line (ww1,ww2,Color,.8 .8 .8)endsave data_b _problem14% A 区节点间的邻接矩阵load data_b _problem;matric_lingjie=zeros (92,92);xx,yy=find (matric_lingjie=0);matr
38、ic_lingjie (xx,yy)=inf;for i=1:92matric_lingjie (i,i)=0;endfor i=1:140tt=c (i);uu=location_all _daolu (tt,:);uu1=uu (1);uu2=uu (2); % 端点序号vv1=location_a _zuobiao (uu1,:); % 第一个端点坐标vv2=location_a _zuobiao (uu2,:); % 第二个端点坐标% 计算端点间距离distance=sqrt (vv1 (1)-vv2 (1)2+(vv1 (2)-vv2 (2)2);matric_lingjie (uu
39、1,uu2)=distance;matric_lingjie (uu2,uu1)=distance; % 赋值给邻接矩阵endD,R=floyd (matric_lingjie);matric_fenkuai=D (1:20,:);for i=1:20for j=1:92if matric_fenkuai (i,j)30matric_fenkuai (i,j)=0;endendendti=zeros (1,92);ti (1)=text (location_a _zuobiao (1,1),location_a _zuobiao (1,2)+1.5,1);ti (2)=text (locati
40、on_a _zuobiao (2,1),location_a _zuobiao (2,2)+1.5,2);ti (3)=text (location_a _zuobiao (3,1),location_a _zuobiao (3,2)+1.5,3);ti (4)=text (location_a _zuobiao (4,1),location_a _zuobiao (4,2)+1.5,4);ti (5)=text (location_a _zuobiao (5,1),location_a _zuobiao (5,2)+1.5,5);ti (6)=text (location_a _zuobia
41、o (6,1),location_a _zuobiao (6,2)+1.5,6);ti (7)=text (location_a _zuobiao (7,1),location_a _zuobiao (7,2)+1.5,7);ti (8)=text (location_a _zuobiao (8,1),location_a _zuobiao (8,2)+1.5,8);ti (9)=text (location_a _zuobiao (9,1),location_a _zuobiao (9,2)+1.5,9);ti (10)=text (location_a _zuobiao (10,1),lo
42、cation_a _zuobiao 15(10,2)+1.5,10);ti (11)=text (location_a _zuobiao (11,1),location_a _zuobiao (11,2)+1.5,11);ti (12)=text (location_a _zuobiao (12,1),location_a _zuobiao (12,2)+1.5,12);ti (13)=text (location_a _zuobiao (13,1),location_a _zuobiao (13,2)+1.5,13);ti (14)=text (location_a _zuobiao (14
43、,1),location_a _zuobiao (14,2)+1.5,14);ti (15)=text (location_a _zuobiao (15,1),location_a _zuobiao (15,2)+1.5,15);ti (16)=text (location_a _zuobiao (16,1),location_a _zuobiao (16,2)+1.5,16);ti (17)=text (location_a _zuobiao (17,1),location_a _zuobiao (17,2)+1.5,17);ti (18)=text (location_a _zuobiao
44、 (18,1),location_a _zuobiao (18,2)+1.5,18);ti (19)=text (location_a _zuobiao (19,1),location_a _zuobiao (19,2)+1.5,19);ti (20)=text (location_a _zuobiao (20,1),location_a _zuobiao (20,2)+1.5,20);ti (21)=text (location_a _zuobiao (21,1),location_a _zuobiao (21,2)+1.5,21);ti (22)=text (location_a _zuo
45、biao (22,1),location_a _zuobiao (22,2)+1.5,22);ti (23)=text (location_a _zuobiao (23,1),location_a _zuobiao (23,2)+1.5,23);ti (24)=text (location_a _zuobiao (24,1),location_a _zuobiao (24,2)+1.5,24);ti (25)=text (location_a _zuobiao (25,1),location_a _zuobiao (25,2)+1.5,25);ti (26)=text (location_a
46、_zuobiao (26,1),location_a _zuobiao (26,2)+1.5,26);ti (27)=text (location_a _zuobiao (27,1),location_a _zuobiao (27,2)+1.5,27);ti (28)=text (location_a _zuobiao (28,1),location_a _zuobiao (28,2)+1.5,28);ti (29)=text (location_a _zuobiao (29,1),location_a _zuobiao (29,2)+1.5,29);ti (30)=text (locatio
47、n_a _zuobiao (30,1),location_a _zuobiao (30,2)+1.5,30);ti (31)=text (location_a _zuobiao (31,1),location_a _zuobiao (31,2)+1.5,31);ti (32)=text (location_a _zuobiao (32,1),location_a _zuobiao 16(32,2)+1.5,32);ti (33)=text (location_a _zuobiao (33,1),location_a _zuobiao (33,2)+1.5,33);ti (34)=text (l
48、ocation_a _zuobiao (34,1),location_a _zuobiao (34,2)+1.5,34);ti (35)=text (location_a _zuobiao (35,1),location_a _zuobiao (35,2)+1.5,35);ti (36)=text (location_a _zuobiao (36,1),location_a _zuobiao (36,2)+1.5,36);ti (37)=text (location_a _zuobiao (37,1),location_a _zuobiao (37,2)+1.5,37);ti (38)=text (location_a _zuobiao (38,1),location_a _zuobiao (38,2)+1.5,38);ti (39)=text (location_a _zuobiao (39,1),location_a _zuobiao (39,2)+1.5,39);ti (40)=text (location_a _zuobiao (40,1),location_a _zuobiao