交通地理信息系统实习教程(二)

 这篇文章服务于GIS背景用户以及有志于GIS的朋友

操作源数据位置:【免费】交通地理信息系统实习二源数据资源-CSDN文库

软件安装包位置:【免费】TransCad-交通地理信息系统软件资源-CSDN文库


  • 一、最短路径分析

1.1软件启动说明

这里需要给出一个必要的说明,TransCAD6.0软件在重启后会出现概率的闪退或无法打开现象,这里给出如下解决方案:

我们需要将同时放在TransCAD压缩包中的《TC6.0补丁》文件夹下的所有文件复制到TransCAD6.0的安装目录下,替换掉原文件即可。

接下来我们打开TCW软件即可以运行TransCAD6.0软件,TCW应用程序如图1-1所示:

图1-1 TCW应用程序

这里需要说明的是,若未重启也无法打开软件,也可以尝试将放在TransCAD压缩包中的《TC6.0补丁》文件夹下的所有文件复制到TransCAD6.0的安装目录下替换掉原文件。

1.2数据导入

在第一次实习中,我们便已大体上清楚TransCAD6.0的操作逻辑,这里我们参照实习指导书以及此前的操作进行本次的数据导入,在Procedures中勾选Network/Path和Routing/Logistics,如图1-2所示:

图1-2 Procedures勾选

接下来,打开以下地理文件:BOSTON.CDF,DEPOTS.DBD和STOPS.DBD,文件类型下拉框中选择Geographic File (* .cdf, * .dbd),如图1-3所示:

图1-3 选择Geographic File文件

1.3图例显示

接下来,我们需要将站点和仓库显示出来。这里,我们首先点击Map--Scale,将地图的显示比例改为1:40000,接下来点击STOPS层(即Customers)的显示符号,将其改为红色点状符号,大小为6;再将DEPOTS层的显示符号改为蓝色方形符号,大小为10;最后点击工具栏中的​对STOPS层的ID和DEPOTS层的NAME进行标注;操作如图1-4,结果如图1-5所示:

图1-4 图例显示操作

图1-5 图例实现结果

1.4保存文件

进行完如上操作后,我们便完成了一个阶段性的小目标,接下来我们只需要按照规定操作Save Workspace as到Lab3Data文件夹中,并命名为Lab3NetworkA.wrk,操作结果如图1-6所示:

图1-6 保存操作

1.5插入网络图层

为了在TransCAD中执行网络相关功能,需要有一个网络文件。我们首先激活Streets图层,然后点击Networks/Paths--Settings,打开Lab3Data中的MYBOSTON.NET网络文件;插入操作如图1-7所示:

图1-7 插入街道图层

1.6分析最短路径

进行完如上插入操作后,我们需要进行最短路径分析,接下来,点击Networks/Paths--Shortest Path,在弹出的窗口中点击​工具,选择两个仓库所对应的节点。点击右侧​工具,将LENGTH和TIME(min)的Skim Method都设置为All Links,然后依次设置Minimize为最短距离和最短时间,最后点击​工具即可求解;最短路径操作结果如图1-8所示,最短时间操作结果如图1-9所示:

图1-8 最短路径操作结果

图1-9 最短时间操作结果

1.7问题解答(first)

现在假设你在快递公司担任GIS-T分析员。你的第一个任务是找到街道网络中从第一仓库到第二仓库的最短路径,同时回答下列问题:

①两个仓库之间沿最短距离条件下的最短路径的总旅行时间和旅行距离是多少?(2分)

②沿着最短时间条件下的最短路径,两个仓库之间的总旅行时间和距离是多少?(2分) (注意:须写下测量单位)

③这两条最短路径使用的街道段是否相同?(2分)

解答:

如图1-10可知,沿最短距离条件下的最短路径的总旅行时间为8.4013mins,旅行距离为2.5884Miles

图1-10 最短距离条件下最短路径分析结果图

如图1-11可知,沿着最短时间条件下的最短路径的总旅行时间为7.0499mins,旅行距离为2.6941Miles

图1-11 最短时间条件下最短路径分析结果图

如图1-12可知,这两条最短路径使用的街道段并不相同,但在某些街道有重叠(最短距离条件下的路径为绿色,最短时间条件下的路径为

图1-12 路径分析对比图

1.8清除操作

这里为了不对后续操作步骤产生影响,我们需要对业已完成部分进行清除操作,即清除显示屏上的最短路径。


  • 二、TSP问题分析

这里我们的实际操作依旧是参照王老师给定的实习指导书中的内容。进行TSP即“履行推销员分析”。

2.1数据导入

为了进行后续分析,我们仍需要继续导入数据。首先点击Map—Layers,把街道网络(CDF Nodes Layer)的节点层在地图上显示出来;如图2-1所示:

图2-1 节点层显示

2.2创建数据集

接下来我们需要创建一个新的选择集,包括TSP之旅的所有站点。点击Tool–Selection选项,以交互方式选择第一仓库和ID为1至10的网络节点,将该选择集命名为"TSPstops",这里需要注意的是必须将第一仓库作为选择集的第一个条目;操作如图2-2所示,结果如图2-3所示:

图2-2 建立TSPstops数据集

图2-3 数据集建立完成视图

2.3保存文件

进行完如上操作后,我们便完成了一个阶段性的小目标,接下来我们只需要按照规定操作Save Workspace as到Lab3Data文件夹中,并命名为Lab3NetworkB.wrk,操作结果如图2-4所示:

图2-4 保存结果示意图

2.4隐藏CDF Nodes layer图层

为了进行TSP分析操作,这里我们需要隐藏CDF Nodes layer图层,操作示意如图2-5所示:

图2-5 隐藏CDF Nodes layer图层

2.5 TSP分析

接下来我们直接借助TransCAD的Traveling Salesman Problem分析工具进行TSP分析。首先,点击Networks/Paths–Traveling Salesman Problem,在Stops框中选择TSPstops,在Minimize框中选择[TIME (min)],并勾选Display directions框;最后点击ok,即可得到输出结果;操作示意如图2-6所示,操作结果如图2-7所示:

图2-6 TSP分析操作示意图

图2-7 TSP分析操作结果图

2.6分析XML文件

接下来,关闭Traveling Salesman Problem窗口,TransCAD将在Internet Explorer窗口或TXT窗口中显示驾驶指南。将这个XML文件(V6.0)或TXT文件(V4.5)保存并命名为"TSPdirections.xml"或"TSPdirecions.txt";这里我使用的是TransCAD6.0,故打开的是.xml文件,如图2-8所示:

图2-8 在Excel中打开的TSPdirections.xml文件

2.7删除TSP路线

为了进行后续VRP问题分析,这里我们需要删除已有的TSP路线,直接右键点击删除即可。操作如图2-9所示:

图2-9 删除TSP路线

2.8问题解答(second)

这个TSP之旅的总行程时间是多少?(2分)

阅读文件"TSPdirections.xml",上面的行驶路线表明,最后一个行程段是"从第11站到第12站"。为什么在旅行推销员问题的结果中会出现第12站?什么是第12站? (3分)

解答:

如图2-10可知,总行程时间为32.3881mins

图2-10 TSP总时间视图

如图2-11可知,第1站和最终的第12站都是第一仓库First Depot,从Excel文件表即行驶路线表里可以看到,出发的第一站fromnode 编号为108139,最后一个行程段中的tonode编号仍是108139,因此第12站就是出发的第一仓库。推测可能由于该车走一圈后最终还是会回到起点第一仓库。

图2-11 Excel分析图

2.9文件保存

进行完如上操作后,我们便又完成了一个阶段性的小目标,接下来我们只需要按照规定操作Save Workspace as到Lab3Data文件夹中,并命名为Lab3NetworkC.wrk,操作结果如图2-12所示:

图2-12 保存Lab3NetworkC.wrk文件

  • 三、VRP分析

3.1数据导入

首先,我们需要更新DEPOTS层的属性表中,即输入开放时间,由题已知第一仓库(ID=26)经营一辆运载能力为40个单位,成本为200美元的送货车,第二仓库(ID=27)经营一辆运载能力为70个单位,成本为300美元的送货车。接下来只需创建一个车辆表并输入相关数据,将此表保存在Lab3Data文件夹中,然后命名为VehicleTable1.bin;操作示意如图3-1、图3-2、图3-3和图3-4所示:

图3-1 在DEPOTS层的属性表中更新时间

图3-2 创建新的车辆表

图3-3 添加车辆表信息

图3-4 保存操作

3.2创建矩阵

接下来点击Routing/Logistics—Vehicle Routing,点击Matrix File框右侧的"..."按钮,打开Lab3Data文件夹中的VRP_MAT.MTX矩阵文件,作为该车辆路径问题中使用的路径规划矩阵(见下图);同时在Vehicle选项中选择上一步建立的VehicleTable1.bin文件;操作示意如图3-5和图3-6所示:

图3-5 Vehicle Routing建立操作

图3-6 Cities属性表视图

3.3 VRP操作

接下来,我们可以使用已经加载/创建的数据解决VRP。将输出的路线表保存在Lab3Data中,并命名为VRP_RouteTable1.bin,然后看到Internet Explorer窗口中显示的VRP行程报告,这里我使用的是TransCAD6.0,故保存此报告并命名为"VRP_ItineraryReport1.xml";操作示意如图3-7、图3-8和图3-9所示:

图3-7 创建路线示意图

图3-8 选择示意图

图3-9 保存操作示意图

3.4问题解答(third)

①从第一车厂派出的车辆的"总时间"和"Depart Load"是多少?从第一车厂派出的车辆为哪些客户提供服务?(注意:按照该车所服务的客户的顺序,列出车站的编号) (5分)

②该车辆在第二仓库的"总时间"和"Depart Load"是多少?这辆车在第二仓库的出发时间和返回时间是什么?这辆车为多少客户提供服务?(6分)

③是否有客户没有被这两辆车所服务?如果有,有多少?(3分)

解答:

由图3-10及图3-11可知,第一仓库的总时间为4h35mins;Depart Load是40.0。从第一车厂派出的车辆提供服务的站点依次是:Stop 24,Stop 1,Stop 2,Stop 22(共4个客户)

图3-10 route2视图

图3-11 first站点视图

由图3-12及图3-13可知,第二仓库的总时间为7h23min;Depart Load是60.0。这辆车在第二仓库的出发时间为1:23pm,返回时间为8:46pm,服务次序分别为:Stop12、 Stop11、Stop14、Stop15、Stop8、Stop18(6个客户)

图3-12 route1视图

图3-13 second站点视图

还有未被这两辆车服务的客户,共计15个客户。

3.5增加车辆VRP分析

接下来,修改车辆表,重新解决VRP。将新输出的路线表命名为VRP_RouteTable2,并将其保存在Lab3Data文件夹中。然后,将新的输出行程文件保存并命名为VRP_ItineraryReport2;操作示意如图所示:

图3-14 属性表添加车辆信息操作示意图

图3-15 输出示意图

图3-16 保存到作业文件夹

3.6问题解答(forth)

①这三辆车从两个仓库出发,是否有可能为所有25个客户提供服务?列出这三辆车各自服务的站点编号。另外请列出这三辆车都不提供服务的站点ID(如果存在这种站点)。(5分)

解答:

由图3-17可知,增加一辆车后仍不能为所有客户提供服务。

第一辆车服务的站点为(按服务次序):Stop 9Stop10(共2个)

第二辆车服务的站点为:Stop 14Stop15Stop17Stop16Stop11(共5个)

第三辆车服务的站点为:Stop 1Stop2Stop25Stop5Stop21Stop22Stop4Stop3Stop6Stop12(共10个)

这三辆车都不提供服务的站点为:Stop 7Stop8Stop13Stop18Stop19Stop20Stop23Stop24(共8个)

图3-17 三车路线示意图

四、实习总结

这次实习不仅是对我课堂学习的检验,更是对我实践能力的锻炼和提升。这次实习主要是利用TransCAD软件进行最短路径分析(SPA)、交通网络路径分析(TRP)和车辆路径问题(VRP)的实践操作。这些分析方法是交通规划、物流管理和地理信息系统应用中的重要工具,对于提高交通效率和优化资源配置具有重要意义。

在最短路径分析中,通过TransCAD构建了交通网络模型,并设置了起始点和终点。通过软件的分析功能,得到了网络中的最短路径及其相关属性,如距离、时间等。

在TRP分析中,考虑了更多的约束条件,如道路通行能力、车辆类型等。通过设定不同的参数和条件,得到了更加符合实际需求的路径分析结果。

在VRP分析中,则更为复杂。需要综合考虑多个配送点、车辆数量、装载量等因素,以找到最优的车辆路径方案。这要求我们不断地调整参数和尝试不同的策略,最终得到了满意的解决方案。

在实习过程中,我也遇到了很多挑战和困难。有时候,我会因为模型构建不当或参数设置不合理而导致分析结果不准确。但是,通过不断地试错和向助教学姐请教,我逐渐克服了这些困难,并提高了自己的操作能力。

这次GIS-T实习让我深刻体会到了理论与实践相结合的重要性。感谢老师和学姐的悉心指导和帮助!在未来的学习和实践中,我将继续努力,争取取得更好的成绩。

最近更新

  1. TCP协议是安全的吗?

    2024-05-13 22:32:09       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-13 22:32:09       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-13 22:32:09       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-13 22:32:09       20 阅读

热门阅读

  1. 格式化容量或速度

    2024-05-13 22:32:09       12 阅读
  2. tp8 设置空控制器和空方法

    2024-05-13 22:32:09       10 阅读
  3. NeoVim配置文件基本的

    2024-05-13 22:32:09       9 阅读
  4. spring boot常用的filter

    2024-05-13 22:32:09       9 阅读
  5. B树(B-Tree)

    2024-05-13 22:32:09       11 阅读
  6. 你写代码,会关注时间复杂度吗?

    2024-05-13 22:32:09       11 阅读