一、简介
TransCAD软件是进行综合交通规划、公交线路规划、交通影响评价项目时交通模型建立的主要技术手段。本文是结合工作实践抽取的主要技术要点。详细操作请还需参考Caliper公司的两个手册:即《TransCAD使用手册》(以下简称使用手册)和《TransCAD交通需求模型手册》(以下简称模型手册)。
TransCAD 界面整合了很多其它的Windows 应用程序,用户从菜单(Menus) 中选择TransCAD 命令,单击工具栏(Toolbar)上的命令按钮,或选择工具箱(Toolbox)中要使用的工具。TransCAD用户界面如下图所示。
图 1‑1 TransCAD用户界面
在计算机屏幕上,TransCAD 以下面五种窗口类型显示信息:
地图
数据窗
矩阵
图形
布局窗
每一种信息在屏幕上以单独的窗口显示,而且均可以文档的形式存储在硬盘上,以备将来使用。用户可以创建多个地图、数据窗、图形和布局窗,数量不限。
TransCAD文件类型比较多,主要的类型包括地理文件,地图文件、数据视图文件和数据表等。见下表:
表格 1‑1 TransCAD文件类型表
文件类型 |
中文名 |
图标 |
扩展名 |
归类 |
说明 |
|
Geographic |
地理文件 |
.dbd |
数据 |
储存点、线、面形式的空间数据 |
||
Map |
地图 |
.map |
视图 |
储存地理文件、路线系统等的外观 |
||
Dataview |
数据视图 |
.dvw |
视图 |
储存普通数据表的外观 |
||
Matrix |
矩阵 |
.mtx |
数据 |
储存矩阵形式的表格数据 |
||
Table |
数据表 |
.bin |
数据 |
储存一般形式的表格数据 |
||
Chart/figure |
图表 |
.fig |
视图 |
储存基于数据表的统计图表 |
||
Layout |
布局 |
.lay |
视图 |
将多种视图集合在一起 |
||
Route system |
路线系统 |
.rts |
数据 |
储存公交线路和站点数据 |
||
Matrix view |
矩阵视图 |
.mvw |
视图 |
储存矩阵数据表的外观 |
||
Workspace |
工作空间 |
.wrk |
其他 |
同时储存多个窗口以便于管理 |
此外TransCAD还可以导入多种文件类型,如图形(.tif)文件、AutoCAD(.dxf)文件、ESRI Shape(.shp)文件、MINUTP(*.dat)路网文件等。
TransCAD各主要文件类型的关系如下图所示:
图 1‑2 文件类型关系图
创建交通模可以用手工方式或导入其它电子数据两种方式。手工方式就是使用使用位图做为底图,使用TransCAD的编辑功能建立模型;导入数据创建模型,就是利用TransCAD的转换工具,直接导入可识别的电子地图,然后再利用TransCAD的编辑功能添加需要的属性。
将底图存成TIFF格式(其它格式的位图需要适应相应软件转存为TIFF格式)。
点选菜单File/Open,打开Open File对话框,选择文件类型为TIFF Image(*.tif);选择文件名,按Open,系统可自动建立一个图层。
点选菜单File/New,打开New File窗口,选择Geographic File点击OK按钮;弹出New Geographic File对话框,选择Line Geographic File, 点击OK按钮。
点击Add Field按钮,在Name框内输入AB_CAP,在Type框选择Integer(2bytes);再次点击Add Field按钮,输入下表其它项目。
表格 2‑1 路段属性表
名字 |
类型 |
注释 |
AB_CAP |
Integer(4 bytes) |
AB路段通行能力(pcu/h) |
BA_CAP |
Integer(4 bytes) |
BA路段通行能力(pcu/h) |
AB_SPEED |
Integer(2 bytes) |
AB路段速度(km/h) |
BA_SPEED |
Integer(2 bytes) |
BA路段速度(km/h) |
AB_TIME |
Real(8 bytes) |
AB路段行驶时间(min) |
BA_TIME |
Real(8 bytes) |
BA路段行驶时间(min) |
SECTION_LENGTH |
Real(8 bytes) |
路段长度(m) |
AB_LANE_CAP |
Integer(4 bytes) |
AB单车道通行能力(pcu/h) |
BA_LANE_CAP |
Integer(4 bytes) |
BA单车道通行能力(pcu/h) |
AB_L_NUM |
Integer(2 bytes) |
AB路段车道数 |
BA_L_NUM |
Integer(2 bytes) |
BA路段车道数 |
TYPE |
Integer(2 bytes) |
路段类型 |
ROADWAY |
Character(1 char) |
道路断面形式 |
NAME |
Character(20 char) |
路段名称(长度二十个字节) |
系统会自动建立ID、Length和Dir三个字段。其中ID为系统提供的连线ID号,不可改变;Length为连线的长度,Dir为连线的方向编码。
点击OK按钮,弹出Save As对话框,由于TransCAD会为一个Geographic File产生许多相关文件,建议新建一个目录存储新建的模型。
(使用手册P577)
点选菜单Tools/Map Editing/Toolbox或点选快捷按钮 ,弹出工具栏。
点选 即可添加路段;点选 可删除路段。
点选 存储所做的编辑;点选 放弃所做的编辑。
路段属性编辑可以通过点选Tools工具栏的 ,再选择需要编辑的路段,在Link Info窗口中进行;也可点击 快捷键,在图层的数据窗中进行。
当把一个路段打断,形成两个路段的时候,新生成的道路属性的方式可以通过点选 按钮设置。
小区面层用于定义交通小区,步骤基本如建立道路层,只不过文件类型类型选择Area Geographic File。
小区面层需要建立以下字段。
表格 2‑2 交通小区属性表
名字 |
类型 |
注释 |
DISTRICT_AREA |
Real(8 bytes) |
小区实际面积(sq.m) |
NO |
Integer(2 bytes) |
小区编号 |
FAR |
Real(8 bytes) |
容积率 |
TYPE |
Integer(2 bytes) |
用地性质类型 |
DISTRICT_P |
Integer(4 bytes) |
小区交通产生(pcu) |
DISTRICT_A |
Integer(4 bytes) |
小区交通吸引 |
P_RATE |
Real(8 bytes) |
小区交通产生率 |
A_RATE |
Real(8 bytes) |
小区交通吸引率 |
NAME |
Character(20 char) |
小区名称 |
(使用手册P599)
将AutoCAD图存为AutoCAD R12/LT2 DXF (*.dxf)格式文件。
在TransCAD中打开文件,选择文件类型为AutoCAD DXF (*.dxf),选择准备好的DXF文件,弹出导入AutoCAD文件对话框。
选择导入的AutoCAD图层为中线(或快速路+主干路+次干路+支路+连杆),输入层名字为Line,选择导入层类型为Line。
点击坐标系 按钮。弹出导入坐标系对话框。选择Class为Asia;选择Zone为China CIESIN Grid。
按OK按钮,弹出Save As对话框,设定存储的地理文件名字。导入完成,同时显示相应的地图文件。
此外,导入道路边线(Line)、交通小区(Area)、路名(Point)等图层,采用同样的方式,分别存入不同名字的地理文件。这些地理文件可以加入到地图文件的不同层上。
选择打开文件或点击按钮 ,选择文件类型为MINUTP(*.dat),选择一个准备好的MINUTP 路网(21)文件。
弹出如下对话框。点击坐标系 按钮。
弹出坐标系设定对话框。选择Class为Asia;选择Zone为China CIESIN Grid。点击OK,系统进入Save As对话框;选择存放路网图的路径,系统自动将路网文件转化为TransCAD的地理文件。
选择打开文件或点击按钮 ,选择文件类型为ESRI Shapefile(.shp),选择路径,找到一个准备好的shp文件。
选择适当的坐标系。系统将打开Shape 文件,使用此图层绘制一个新的地图。
(使用手册P74)
在标准工具栏上选择Map-Layers 或单击工具栏图标
单击 Add Layer 显示 File Open 对话框。
从 Files of Type 下拉列表中选择ESRI Shape 文件格式。
设定适当的坐标系后,系统将打开shape 文件,并将其作为新的图层添加到地图。
(使用手册P75)
完成了基本道路网和道路属性的输入后,需要对道路网进行进一步处理,包括划分交通小区、生成小区型心、添加型心连杆等。
完成道路层的检验后,可以使用道路层的数据生成以道路为分割的小区层,然后根据需要合并小区,形成交通小区划分。
选择Tool/Geographic Utilities/Line/Area Conversion…;
选择Add Layer to Map,填写Name栏的层名字;
在新建的小区层上打开面层编辑工具,合并相应的小区。
交通小区划分好以后,小区ID号是软件自动产生的。为了便于识别,可对小区进行重新编号。
打开小区面层及数据视窗,添加一个新的字段NewNo;
按习惯重新编好小区编号;
选择Tools/Export,选择NewNo填入ID Field。按OK保存到一个新的文件中;
点选 添加保存的文件到一个新层上。
小区面层下打开Tools/Export,选择Export as Centriod Points,存储为小区形心文件。
修改Point层数据表,添加一个index字段;
小区层选择Tools/Map Editing/connect
Settings下选择连接到路网层,设置连杆数量;
Fill填充选项中Node field一定选择在节点数据中新添加的index字段,Fill with中勾选IDS from Zone layer
结果路网添加了连杆,节点和连线数据库都增加了新的数据。而且节点数据建立了一个新的形心节点和小区编号的联系。
为了能够正确地识别新建的连杆,在添加连杆前需要确定某个连线属性字段(如TYPE)都已经填充。这样建立在添加完连杆以后,可以通过判定该属性字段建立连杆选择集。
选定连杆选择集后可用填充命令,一并填充AB_CAP、BA_CAP、AB_TIME、BA_TIME。
删除连杆只需要在连线层打开数据视窗,全选连杆选择集,按 后确认删除。
(使用手册P223)
(使用手册P226)
(使用手册P261)
选择路线层
Tool ->Map Editing ->Check Link Layer Connectivity…
检测门限值设置可为10米。
(使用手册P310)
(略)
在Streets线层上选择Networks/Paths/Multiple Paths…;
选择Minimize为*_TIME,存储结果到Matrix File;
点击Network按钮,勾选Centroids。
生成的阻力矩阵如下:
标定重力模型需要的参数有基年OD矩阵以及阻抗矩阵;
可以看到基年OD与阻力矩阵的编号不统一。需要通过建立矩阵索引统一编号。
道路网的矩阵索引是以建立小区形心连杆时在节点层添加的新节点为基础的。新节点ID对应道路层,用于网络计算操作;新生成的index对应小区ID号,用于基于小区的计算。
对于下面以小区编码为编号的基年OD矩阵,转换成以节点ID为编号的矩阵。
打开矩阵,按 ,弹出对话框,按Add Index…按钮;
原始行ID号栏内,Dateview采用建立索引的节点层,Field选择现在使用的index值;
为索引起个名字New;用于行列Both;
行ID号使用ID,使用选址集Selection,点击OK,添加了一个新叫做New的新的索引;
行采用新的索引,矩阵行号改为节点ID号。
基年OD矩阵编号调整好以后,进行重力模型标定,操作步骤如下:
选取菜单Planning/Trip Distribution/Gravity Calibration;
选取Function为Inverse Power,选取Impedance Matrix为打开的阻力矩阵(若勾选K-Factor则生成一个K因子矩阵);
运行结果b=0.0878;
在节点层上建立空白摩擦因子矩阵Friction Factors
Planning/Trip Distribution/Synthetic Friction Factors填入标定的模型参数,选择阻抗矩阵;
点击OK后便更新了摩擦系数矩阵。
以上各步操作得到了如下各个参数:
重力模型b值;
摩擦因子矩阵(Friction Factors)
阻抗矩阵(Shortest Path Matrix)
结合预测的未来年小区交通产生吸引量即可预测为来年的OD。
这个计算实在小区层(或小区型心层)上操作。因此各个矩阵的行列号需与小区的ID号对应。这需要建立和使用对小区编号(index)的索引。
在小区层上选择菜单Planning/Trip Distribution/Gravity Application;
在Purpose Information for Forecast OD 选择小区产生和吸引(对于不平和的PA需要做平衡处理);
在摩擦因子栏内选择标定的Inverse函数参数b,选址阻力矩阵;
得出未来年OD矩阵。
主要采用类似区域已经调查的数据。
打开或创建包含需要进行交通分配的线形图层(line layer)的地图,打开对应的网络,流量矩阵,并把line layer 作为当前图层。
选择 Planning-Traffic Assignment 弹出 Traffic Assignment 交通分配对话框。
从 Method 下拉菜单选择交通分配的方法。
从 Matrix File 下拉菜单选择交通需求矩阵文件,从Matrix 下拉菜单选择需要进行分配的需求矩阵。
根据所选方法的不同,选择时间、通行能力及预分配等网络字段。
若各路段需要使用自己的alpha 和 beta 值,从Alpha 和 Beta 下拉列表中选择相应的网络字段。
根据所选方法的不同,作出 Globals 全局设置,其中包括再有关编辑框中分别输入最大迭代次数(iterations)、收敛标准(convergence)、流量延误函数的参数alpha 和beta、及误差项(error ),在Function 下拉列表中选择一个函数。
单击 Options 显示 Options 选项对话框。
在 Create Themes 选项打勾,在 Max V/C 编辑框输入最大V/C 值,type an interval value 在Interval Size 编辑框输入一个分级值,在下拉菜单选择起始、结束和中间颜色。
单击 OK 返回 Traffic Assignment 交通分配对话框:
单击 OK。TransCAD 显示Store Flow Table In 对话框。输入一个文件名后,点击Save 存储结果。
若用户选择了输出路段流量和V/C 比的评价(valuations)、执行关键路段分析、或报告节点的转弯流量,TransCAD 则会显示 Output File Settings 输出文件设置对话框。根据下表列出的情况,对各输出文件作出使用(use)、改名(rename)、或覆盖( overwrite)的选择,并点击OK。
当分配程序成功地运行之后,产生如下输出文件:
一个表文件,保存着估算的路段流量和路段费用
表格 3‑1 交通分配路段输出结果表
路段的输出字段 |
内容 |
AB_flow, BA_Flow |
从A到B和从B到A的路段流量 |
Total_Flow |
路段双向的总流量 |
AB_Time, BA_Time |
从A 到B 和从B 到A 的路段出行时间(费用) |
Max_Time |
双向路段中最大的出行时间(费用) |
AB_voc, BA_voc |
从A 到B 和从B 到A 的路段V/C 比 |
Max_voc |
双向路段最大的V/C 比 |
AB_speed, BA_speed |
最后一次迭代时,从A 到B 和从B 到A 的路段速度 |
一个文本文件(DRIVE:\Users\用户\AppData\Roaming\Caliper\TransCAD),保存着关于用户输入和模型输出的摘要汇总信息
表格 3‑2 交通分配系统输出结果表
系统输出 |
内容 |
Total VHT |
分配给出的车小时总量 |
Total VMT |
分配给出的车公里总量 |
参照项目研究区域内已做项目交通量(需向规划院要资料)以及现状调查结果,对模型中进行适当调整,调整的内容主要有:
修改路段属性参数
路段属性中与分配主要参数为V_time,而V_time由Length和V_ffspeed计算得来,因此一般步骤为修改路段V_ffspeed属性,重新填充V_time列(V_time=Length/V_ffspeed*100),重新创建网络并进行分配。
修改OD量
参见附件《OD修改》增加OD小区,参照研究范围内已做项目,使这些项目的OD量对项目OD表进行修正,使这些地块产吸量与已做项目相同,建议对OD矩阵进行的修改在新建的Matrix 1空白矩阵中,以方便日后查对修改。
调整质心连杆
为了方便数据管理,建议在路网文件上添加以下几个字段,分别存放背景(b)、项目(x)、和合并(h)的流量(FLOW)、负荷度(VOC)。
AB_FLOWb、BA_FLOWb、AB_VOCb、BA_VOCb
AB_FLOWx、BA_FLOWx、AB_VOCx、BA_VOCx
AB_FLOWh、BA_FLOWh、AB_VOCh、BA_VOCh
选择菜单Map>Color Theme或单击 按钮,进行负荷度图设置。设置可按Save按钮存储为显示设置文件,供以后调用。
选择菜单Map>Scaled Symbol Theme或单击 按钮,进行流量图设置。设置可按Save按钮存储为显示设置文件,供以后调用。
在节点层上选择Tools/Geographic Utilities/Desire Lines;
选址输入层和起点和终点;
选择矩阵;
打开阻力矩阵和出行OD矩阵;
选择菜单Planning/Planning Utilities/Trip Length Distribution;
选择矩阵文件;
输出结果如下
打开一个路线和分配流量链接的数据视图,选择连线图层;
选择Planning/Planning Utilities/Screenline Analysis;
选择新建或者打开已有的数据表;
新建数据表需要选流量数据、流量字段,然后输入要存储的查核线文件名;
弹出查核线编辑器,可以添加 、删除 查核线设定的区域,最终可以 存贮查核线分析结果;
见本章“交通分配标准结果”一节;
TransCAD在运行Procedures结束时,会弹出一个运行结果,报告运行是否成功。同时还会产生一个文本报告文件和一个日志文件。
该文件存储位置通常为:
DRIVE:\Users\用户\AppData\Roaming\Caliper\TransCAD\
日志文件tcw_log.txt,通常记录运行过程。
报告文件tcw_rep.txt,通常包括一些重要的运行结果数据。
(略)
设置单向道路有两种方法:
直接修改记录字段
Tools > map edting > Set One-way Segments
按着以下方法可以检查单向道路的方向:
选择路线层为当前层 > 图层按钮 > 图层对话框中Style按钮 > Style对话框中Arrowhead选择direction of flow。
(使用手册P588)
(用户手册P319)
打开转向处罚工具箱
从地图工具栏的下拉列表中选择用户希望定义处罚的线图层。
选择 Network/Paths > Turn Penalty Toolbox,弹出Penalty Dataview 对话框。
New Table-limitleft.bin(自定)
增加转向限制,缺省表示禁用转向(点击添加,依此选择第1条路段和第2条路段即为1到2禁行)
5. 单击 Turn Penalty 工具箱中的 。
6. 选择 Networks/Paths-Settings,弹出Network Settings 对话框。
选中 Turn Penalties 单选按钮。如果Turn Penalties 单选按钮没有选中,则TurnPenalties 项中的转向处罚设置将不被激活。
单击 Turn Penalties 项,弹出Turn Penalties 页。单击 选择limitleft.bin文件。
OK
(使用手册P330)
从地图工具条上的下拉菜单中选择交叉路口图层或街道图层。
单击主工具框中 的激活Intersection 工具。
单击想要检查的交叉路口来显示Intersection Diagram对话框。
(使用手册P353)
(使用手册P422)
为使模型分配结果更加准确,需根据已做项目分配结果和现状调查结果进行模型修正,有时需添加OD小区,添加步骤如下:
1.路网中加入小区
参见用户指南ch24-创建和编辑地理文件-编辑线要素(P577)加入小区连杆,增加属性,并将小区节点的属性添加。
2.OD表中加入新小区
选择内部小区节点,创建新OD表,与原OD表合并,具体步骤如下:
(1)打开路网,空白处右键-Layers,选择节点层(Intersections),点击Show Layer,将节点层显示。
(2)关闭对话框,选择点层,Selection-Select by Condition,选择全部内部小区(zoneID不为空),即包括新增OD节点在内。
(3)创建新OD表,File-New-Matrix,行列均选择Selection集数据,保存为一个新矩阵。
(4)打开上一步中保存的矩阵和模型中所给矩阵MMA_sub_OD,将两个矩阵合并:点击Matrix-Combine…
将两个矩阵同时选择,保留所有行和列,确定保存。
新和成的矩阵中新增Matrix 1一表,其余各表中也已包含新增小区,至此新小区已加入OD矩阵表中。
因为项目提供了基本OD矩阵,因此项目交通预测只需要根据相应的交通调查数据对路网参数和OD矩阵做相应的校正,使得分配的结果与调查结果相符合。
(略)
(略)
五、小结
TransCAD软件是一款上手快,实用性强的交通规划软件,也是国内交通规划行业最流行的交通规划软件。此外,结合TransModeler(Caliper公司开发的混合交通仿真模型)可以提供城市交通仿真的从宏观到微观的基本模型。是国内智能交通仿真平台使用较为广泛的模型。