交通網絡的建立是交通模型開發的重要工作之一。道路網絡、軌道交通網絡、形心連線,軌道出入口步行邊、換乘邊等輔助性的路段,以及公交線網和站點等,構成了完整的交通模型網絡。很多情況下,模型初始建立需要根據AutoCAD圖紙或SHP等GIS文件導入,并編輯拓撲和屬性,繪制公交線路等復雜環節,工作量非常大。有些情況下,老的模型已經有一定的網絡工作基礎,可以進行導入使用。本文介紹TransCAD軟件的網絡存儲特點,以及如何導入EMME、Cube和VISUM等常用交通規劃軟件的網絡數據。
1 交通網絡拓撲基本知識
交通網絡是有向圖,例如道路網,大多數路段雙向成對出現,也有部分單向交通組織的路段(單行道、高快速路單向行駛的匝道等),以及交通建模需要將雙向道路編輯為分離的兩個方向的單向行駛路段,例如高速公路主線一般在建模中需要兩個方向分別繪制分離(節點不在一起)的路段。
TransCAD的路網圖層中自帶了DIR方向字段,表示路段(Link)可以的行駛方向。DIR的值為0時,表示路段可以雙向通行;DIR的值為1時,表示只有拓撲方向可以通行;DIR的值為-1時,表示只有反拓撲方向可以通行。拓撲方向是指路段存儲的起點到終點的方向,例如AutoCAD中,從左到右繪制一個線段,從左到右就是拓撲方向。TransCAD可以設置路段顯示拓撲方向(Topology)箭頭,也可以顯示交通流可以通行的方向(Direction of Flow)箭頭(雙向可通行則不顯示箭頭)。
交通規劃軟件中,路段的存儲模式可以分為兩種:分散模式和集中模式。EMME、Cube和VISUM等軟件均為分散模式存儲維護。TransCAD兩種模式兼有,它對路段表(包括GIS圖形對象)的處理按集中模式進行,也就是我們常見的map中顯示的線要素,以及對應的路段數據表Dataview。TransCAD在計算網絡模型時則經過創建網絡命令,將GIS數據庫編譯成二進制.net文件,用分散模式數據庫管理(創建網絡.net文件的另外一個好處是,隨時在方案管理中選擇必要的路網子集合進入.net網絡,減少計算判斷的網絡規模)。軟件通過.net文件得到計算結果,然后將結果數據對應到GIS圖層的線要素,并采用AB/BA字段來表示一個路段兩個方向上的數據(例如流量、飽和度)。交通地理信息系統GIS-T的一個特殊之處,就是交通是分方向的,路段的雙向屬性,例如車道數、流量、車速等各種數據通常都是不一樣的,需要分開存儲。
例如LinkID=1的路段,方向值為0,表示可以雙向通行,編譯為二進制.net文件后,產生了表2中新的LinkID=1和LinkID=3兩個路段用于計算網絡路徑等。表1中LinkID=3的路段為單向通行(DIR=1表示拓撲方向通行),在表2中對應的路段為LinkID=5。
分散模式的優勢是在網絡計算時容易實現,如進行最短路徑算法時,在路段依起始節點編號排序后,可以直接進行計算。分散模式增加了數據冗余度和數據維護的難度,例如路段長度、路段起始節點編號等具有共性的數據。同時,也大大增加了繪圖工作量(雙向路段的形狀點空間信息重復存儲),導致軟件繪制大型交通網絡工作量加倍。集中模式可以減少數據冗余,適合GIS的圖形對象管理。很多TransCAD初學者覺得路網編輯好以后,不明白為何還要創建網絡.net文件這個步驟,這是因為TransCAD使用集中模式管理數據,不能直接進行網絡計算。
TransCAD綜合應用了分散模式和集中模型管理的優勢,是有其精心設計的,它既減少了數據冗余和繪圖效率,也滿足了網絡計算的要求。EMME、Cube和VISUM等采用分散式管理的軟件,導入單線的shp文件時,也可以根據DIR方向字段,在軟件中產生對向路段,以表示路段是雙向通行的。GIS數據導入這些交通規劃軟件后,軟件的路網編輯模塊為用戶提供了方便之處,即在編輯路段形狀時,總是成對的編輯雙向路段的形狀。這是必需的,試想如果讓用戶去重復編輯對向路段的形狀,既雙倍增加工作量,又無法完全編輯一致的形狀。
日常工作中,也有不少用戶喜歡在ArcGIS等GIS軟件中編輯好路網GIS文件,再導入到Cube和EMME等軟件中。但數據導入后恐怕是“只進不出”了,也許您會說:不是可以導出為SHP文件嗎?是的,可以導出為SHP文件,但原先一個雙向通行的GIS路段,產生了重復形狀的兩條成對路段。他們再要在ArcGIS等GIS軟件中同步編輯,就非常困難了。VISUM導出,可以選擇分方向(雙向導出)和不分方向(單線導出),具有靈活性,不存在“只進不出”的問題。
最后,補充一下,VISUM、Cube和EMME軟件的很多路徑基礎算法是基于節點的,而TransCAD則是綜合路段和節點數據結構計算的。因此,TransCAD允許路網中存在起點和終點相同的兩個平行路段存在(現實世界也有很多這種情況),但VISUM、Cube和EMME軟件則不允許存在,一般可以打斷其中一個路段。原因是基于節點的路徑算法,起點和終點決定了唯一路段,同一個起終點不能有兩個路段,否則無法區分了。為了使軟件數據互通,TransCAD開發了自動打斷平行路段工具。
2 特殊的公交網絡數據
TransCAD的公交網絡數據,存儲在特殊的數據格式中,稱為路線系統Route System。TransCAD和VISUM軟件允許公交站點位于路段的任意位置,位于路網節點上是一種特例,這種數據結構來源于GIS中的動態分段技術。EMME和CUBE軟件采用路網節點設置站點,即通過公共汽車走過的節點來描述線路的走向,站點只能放在道路網絡的節點上。這些節點既包括真實的交叉口,也包括虛擬的節點,為了提高模型的精度,位于較長路段中間位置的站點需要打斷,以適應軟件只支持“站點位于路網節點上”的特點。
綜合交通網絡在邏輯上分為不同交通方式的路段,如軌道交通路段,小汽車路段,公交網絡和列車運行交路在按照路線系統Route System存儲。在物理上,軌道交通和道路網是彼此分離的,公交車、小汽車和貨車可能使用的是同一對象路段,彼此相互影響。具有獨立路權的BRT或者地面有軌電車,則更復雜一些。一般來說,鐵路、城市軌道交通等線路需要單獨對路徑建模,節點用于設置站點,并繪制站點和路網連接的輔助步行邊,軌道樞紐站換乘邊等。
路線系統Route System采用GIS的動態分段技術,建立公交路線(Route)、路徑段(Section)、物理站臺(Physical Stop)和線路站點(Stop)表。鐵路、軌道交通的列車運行交路也一樣采用路線系統Route System,只不過他們是走在鐵路、軌道路段上。公交分配和路徑分析,需要使用超級網絡進行計算,TransCAD需要用戶根據物理路網和Route System建立超級網絡文件.tnw文件。超級網絡是通過計算機內部存儲的,用戶不需要關心起構建過程,只要維護好物理路網(道路路網和軌道線等)即可。
下面是EMME軟件手冊中對公交模型超級網絡構建的示意圖。圖2表示網絡中有4條公交線路,線路1從節點A直接到節點B,AB為首末站,中間不停站。線路3則表示在X,Y,B都停站。要進行公交路徑分析和公交客流分配,需要將路上的公交線路建立虛擬的超級網絡。圖3則表示了該網絡的組成:包括上車線,下車線,公交運行線等,實際公交線走過的道路被列入步行的網絡,每個步行路段映射了一條公交線路的運行虛擬路段(現實世界中同一路段的步行時間OVT和公交車車行時間IVT的一一映射關系)。在上車虛擬路段上,往往可以設置等待時間等變量(也是軟件后臺做的事情)。
3 TransCAD導入交通規劃軟件的網絡數據方法
TransCAD可以支持很多種交通規劃軟件的網絡數據,包括導入MINUTP ASCII網絡文件、MINUTP二進制網絡文件、TRANPLAN ASCII網絡文件、TRANPLAN 二進制網絡文件、TP+和Cube/Voyager二進制網絡文件、Trips網絡文件、QRSII網絡文件、TMODEL網絡文件、SATURN網絡文件、直線網絡(Stick Networks)、導入和導出EMME網絡文件等。可以說其數據接口是非常強大的,同時也得益于其數據結構的普適性。具體可以參考《TransCAD交通需求模型手冊V8.0》相關內容。這里主要介紹常用的EMME、Cube和VISUM軟件的網絡數據導入方法。
3.1 EMME網絡數據導入和導出
(1)EMME路網和公交數據.IN的導入
EMME路網存儲在一個單獨的ASCII文件中,它包括節點和路段數據。EMME公交網存儲在兩個文件中,一個定義節點和路段文件,另一個定義線路。路網和公交件都在EMME“batchout”文件中使用“punch”命令創建。這些ASCII文件需要有一個.IN擴展名,這樣TransCAD可以將它們識別為EMME ASCII文件。另外,用戶不能在同一個文件夾中存儲多于兩個EMME.IN網絡文件。
如果您的EMME數據庫包含了路段形狀的ASCII文件,導入器可以使用這些信息來定義路段的形狀。路段形狀文件列出了路段ANODE-BNODE之間的所有坐標。下面是是一個例子:
路段形狀文件也需要有一個.IN文件,并放在和路網.IN文件的同一個文件夾位置。
導入一個EMME路網
(1)選擇File-ImportPlanning Data-EMME Files來顯示Import EMME Files對話框。
(2)選擇一個EMME文件(帶有一個.IN擴展名),然后單擊Open。TransCAD顯示ImportEMME Files對話框,在文件夾中列出了所有的.IN文件,讀取它們的標題,從標題中判斷.IN文件的類型。
(3)單擊Network單選按鈕。
(4)在Layer Name和Node LayerName編輯框中為線和節點圖層定義名稱。
(5)若想將X-Y坐標轉化成真實地理坐標,單擊Coordinates,然后在CoordinateSystem對話框中導入轉換設置。單擊OK來返回到ImportNetwork File對話框。
(6)單擊OK。TransCAD顯示Save As對話框。
(7)為新的地理文件定義名字,然后單擊Save。
TransCAD讀取導入文件,建立地理文件,將其在一個新的地圖窗口中心顯示。
導入一個EMME公交網絡
(1)選擇File-Import PlanningData-EMME Files來顯示Import EMME Files對話框。
(2)選擇一個EMME文件(帶有一個.IN擴展名),然后單擊Open。TransCAD顯示Import EMMEFiles對話框,在文件家中列出了所有的.IN文件,讀取它們的標題,從標題中判斷.IN文件的類型。確信道路和公交文件在同一個目錄。
(3)單擊Route System單選按鈕。
(4)在Layer Name、Node LayerName、Route System Name和Stops Layer Name編輯框中為新圖層定義名稱。
(5)若想將X-Y坐標轉化成真實地理坐標,單擊Coordinates,然后在CoordinateSystem對話框中導入轉換設置。單擊OK來返回到ImportNetwork File對話框。
(6)單擊OK。TransCAD顯示Save As對話框。
(7)為路網地理文件定義名字,然后單擊Save。TransCAD顯示Save NetworkAs對話框。
(8)為TransCAD網絡文件定義文件名字,然后單擊Save。TransCAD顯示Save Route System As對話框。
(9)為公交系統定義一個文件名,單擊Save。
TransCAD讀取導入文件,建立地理文件,將其在一個新的地圖窗口中心顯示。
實際上,導入公交即導入了路網,因此EMME的路網和公交是可以同時導入完成的。
用戶還可以將TransCAD線地理文件和公交系統導出到EMME批處理節點、路段和線路文件中。由于EMME批處理文件包含每個路段、節點和路線的標準屬性字段,用戶需要在TransCAD路段、節點和公交系統中有這些屬性,而且用戶在運行導出程序時還需要指出這些字段。
另外,節點批文件為每一個形心節點包含一個特殊的標志。如果用戶想要將導出的節點文件包含制定的標志,首先創建一系列的形心節點,然后指出導出對話框中的選擇設置。
關于導出為EMME路網數據的內容,這里不再給出,可參考《TransCAD交通需求模型手冊V8.0》。
3.2 CUBE網絡數據導入
TransCAD支持導入TP+和Cube/Voyager路網文件。如果公交路段作為TP+導出的DABSE選項,TransCAD也支持導入TP+公交網絡。DBASE文件可以在TP+公交網絡生成器或者分配程序中產生。
如果Cube/TP+網絡附加了一個Shape文件或者其他更加精確線形的地理文件,您可以使用這些文件在導入過程中來糾正網絡線形。網絡數據庫每個路段需要有“From Node ID” 和“To Node ID” 字段。如果包含公交數據,相應的公交線路也會隨道路線形調整。
導入 TP+或Cube/Voyager二進制網絡
(1)選擇File-ImportPlanning Data-Import CUBE/TP+ Binary Networks顯示Import CUBE/TP+ NetworkFile對話框。
(2)選擇一個CUBE/TP+二進制網絡文件點擊Open。TransCAD顯示ImportCUBE/TP+ Binary Network File對話框。
(3)在編輯框輸入路網圖層名字和節點名字。
(4)如果要導入公交網絡,點擊“Add Transit”并選擇包含公交路段和支持路段的DBASE文件。
(5)如果要調整線形,勾選Conflate確認框,選擇參照線圖層以及From Node和To Node 字段并點擊OK。
(6)如果網絡的坐標系統不是經緯度,點擊Coordinates按鈕設置坐標系統和單位。
(7)點擊OK,輸入標準地理文件,可選公交系統文件。
TransCAD讀取導入文件,建立地理文件、網絡和/或路線系統,然后將它們在一個新的地圖中顯示出來。
3.3 VISUM網絡數據導入
TransCAD沒有直接做導入VISUM數據的接口,不過通過VISUM數據的導出轉換,也可以實現對VISUM數據的轉換。
路網的導入(適用于三個軟件的導入)
如果想導入路網數據,則可以通過VISUM、EMME或Cube導出的SHP文件進行導入。步驟如下:
(1)使用VISUM的“文件-輸出-Shape文件。。.”導出SHP文件。Visum導出shp有兩種模式,單線和雙線。這里說的是雙線模式(即導出時選擇Directed)。雙線模式下單向通行的Link對向也會生成一個Link,需要先刪除這些多余的Link,這可能是軟件輸出設計不周全(對VISUM本身使用不影響)。可以通過TYPENO字段來選擇為自定義的禁止通行Link類型的值(例如為0)加以區分,并批量刪除。或使用EMME命令行導出SHP文件,具體命令為:~《emme2shp.mac。得到的是路段和節點兩個圖層對應的兩個SHP文件。前面說過,導出的SHP,雙向可通行的路段,會產生重疊兩根對向路段。Cube也可以導出相應的SHP文件供TransCAD導入。
(2)使用TransCAD的SHP文件導入功能,同時導入路段和節點文件,保證了原有網絡的各種拓撲結構和屬性。只有TransCAD 6.0后期及以上的版本,具有同時導入路段和節點文件功能。節點同時導入必須選擇節點SHP文件的相應字段。針對VISUM/EMME導出數據會產生重疊兩根對向路段的特點,必須勾選Match upreverse links(如果不是有重疊兩根對向路段的其他軟件數據情況,可以不勾選,例如TransCAD本身的數據導出為路段和節點兩個SHP文件,或VISUM的單線導出模式)。如下圖:
需要說明的是,TransCAD導入Visum網絡時,Link和Connector也是需要分開執行,最后合并。
VISUM比較特殊的情況是,還可以按照單線模式導出(即雙向通行的路段只導出一根線),這時他會生成新“R_”開頭的對向屬性字段。仍然可以通過TYPENO字段來選擇為自定義的禁止通行Link類型的值(例如為0)加以區分,路段是否雙向通行。雙向通行的TYPENO和R_TYPENO的值都不是0。下圖中左邊的路段反向R_TYPENO=0,表示禁止通行,導入TransCAD后,DIR=0改為DIR=1即可;右邊的路段TYPENO=0,導入TransCAD后,DIR=0改為DIR=-1即可。這個通過選擇集很容易批量操作。當然,上面導入方法不需要勾選Match upreverse links。
公交線路的導入
VISUM可以導出公交數據為SHP文件,或者MDB和MS SQL數據庫。如果要導入SHP文件的公交數據到Route System,可以參考TransCAD快速創建公交模型數據庫的方法一文中的利用TransCAD二次開發工具導入。需要說明的是,理論上這是一種有損導入,但參數設置嚴格的情況下,幾乎可以實現無損導入。另外,如果采用MDB和MS SQL數據庫做一些二次開發導入,則相對容易實現無損導入。順便說一下,目前VISUM有一個導入TransCAD網絡數據的插件,沒有應用TransCAD本身的路網和公交網絡的數據關系,僅僅是依靠空間關系導入,屬于效果較差的有損導入。
4 結語
TransCAD是基于GIS的交通規劃軟件,更是一個專業的GIS-T軟件,因此在數據的兼容性上有較大的優勢。基于TransCAD的交通網絡數據庫,實際上可以很方便通過二次開發導出其他常用交通規劃軟件的網絡數據。還有很多TransCAD維護公交數據的二次開發工具,例如Cube文件的導入導出、線路寫成特殊的表格形式等等,如果您遇到困難可以聯系我們。另外一點不同的是,TransCAD把形心、形心連線當做網絡中特殊的節點和路段,用戶可以靈活方便地通過集合和查詢去定義,但要求對軟件操作較為熟練并熟悉原理。其他幾個軟件,對形心、形心連線采取單獨的管理,用戶容易理解,但靈活性不如TransCAD。例如矩陣,交通小區的擴容等情況,或是一張網絡中可以TransCAD隨時定義全市模型的形心,或是現狀軌道網客流分配的形心,或是高速公路出入口流量分配的形心等。當然,如此靈活定義形心,離不開配套的矩陣的索引技術。關于矩陣索引,請參考深入理解TransCAD中的矩陣ID索引轉換。
責任編輯:lq6
-
節點
+關注
關注
0文章
217瀏覽量
24386 -
網絡數據
+關注
關注
1文章
44瀏覽量
10073 -
交通網絡
+關注
關注
0文章
8瀏覽量
7022
原文標題:TransCAD導入常用交通規劃軟件網絡數據
文章出處:【微信號:TransCADTransModeler,微信公眾號:TransCAD和TransModeler交通軟件】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論