6. Trip Purposes Home based work (Blue Collar) Home based work (White Collar) Home based education (school) Home based education (uni/ tafe) Home based shopping Home based other Work based work Other non-home based
7. Private Vehicle Loading Links divided into various types based on Max Capacity of a lane (600 cars to 2100 cars) Free Flow Speed (20kmph to 100kmph) J Factor Congested time on links is found by Akcelik function t = to + 0.25 Tf[(V/C-1) + {(V/C-1)2 + 8 J (V/C) / (C Tf)}0.5]
8. Public Transport User Loading Frequency of a service to guess wait time Commuters using trains and ferries ‘doubly’ familiar than those using buses Wait time 2 times more onerous than travelling in the vehicle Commuters use walk (or bike) to reach a station/bus stop but walking is 1.4 times more onerous than travelling in the vehicle It takes 6 sec to board a train/ ferry but 9 sec to board a bus
9. Model Structure Basic Structure Sub-models: Commercial Vehicle Model External Movement Model Household Segmentation Model Based on workers & students Accessibility Model PT/ Walk to Work Vehicle Availability Model Park & Ride/ Kiss & Ride Time Period Split Trip Generation Trip Distribution Mode Split Assignment
10. Original Implementation in EMME Uses EMME’s network and matrix calculator through a series of macros A wrapper macro calls various other macros for different modules/ sub-models Multiple level of nesting: harnesses historical work done by recycling classical macros Uses multi-class equilibrium assignment for highway and multi-modal assignment for transit with user defined ‘volume delay’ and ‘transit time’ functions
11. Adaptation in VISUM A combination of VISUM’s off-the-shelf procedures and Custom scripts in Python Two levels of wrapping Various operations and scripts are bundled as ‘Procedure Parameter’ files Various ‘parameter files’ are loaded and ‘executed’ through a wrapper script Also used for convergence tests and A solution for RAM Fragmentation problems leading to ‘Memory Errors’
12. Folder Setup Model can be run at any location in the computer but A pfd needs to be designed and saved (as std.pfd) and copied at <../PTV_Vision/VISUM10/Exe> folder Folder carrying the model has two sub-folders matrices: (to keep most of the output matrices) tpfmatrices: (to keep time period factor matrices)
13. Files Parameter files (7) 00.par 01.par 02_MCP_AM_TD.par 03_MS.par 04_PNRLogit_KNRLogit.par 05_TP.par 06_Ass.par Filter files T2.fil T3.fil Normal bus roads.fil Normal buses_t2_t3.fil Version file (1) bstm.ver Time period factor matrix files (48) Six character name First two character for time period (am) Third character to mark if it is for Production or Attraction (a/p) Last two characters for the mode Cd (car driver) Cp (car passenger) Om (other modes)
14. Outputs Loads and paths in VISUM version file Matrices by purpose and mode A text log providing start and end time of every module Matrix sums Status of convergence criteria for every loop Continuously updated...can be opened and checked while model run is on
17. Procedures 00 Initialisation/ TG Edit Attribute (link costs) Assignment Calculate Skim Matrix 01 Submodals CV Main zone modification Levelling/ Smoothening heavy truck productions/ attractions PnR Matrix Convolution (to find the best station) External Model Edit Attribute?
18. Procedures 03 Mode Split Set run and dwell times (turned off: only run in case of network changes) 06 Assignment Assignment Calculate Skim Matrix Read filters Edit Attributes (link PT run times) Set run and dwell times (only for segments which are NOT ferry, rail or busways)
19. Procedures/ Scripts to be run only when model is being modified 00 00a Initialisation Procedure 2-4: “Edit Attribute” to recalculate link costs 00c PT Fare matrix and Airtrain adjustments Procedure 11: PT Assignment with Fare matrix calculation Procedure 12: A script to adjust for Airtrain fares 03 Mode Split Procedure 2: Set PT runtime from EMME3 data Procedure 3: Set PT dwell times from EMME3 data
20. Pending Issues Station Choice sub-model (part of Park & Ride sub-model) is limited to two iterations Instead of original five A simplified script is available which bypasses station choice and dumps all trips marked for a station to it Calculation of fare matrix for PT is time consuming and is recycled at the moment Not a major issue as zonal fares do not change with change in the network Runtime for each iteration is 6 hours Time reduces to 3 hours if station choice model for PnR/ KnR is bypassed
25. How to use? Code new network Zones, connectors, links, lines, stops Recalculate fare matrix Recalculate link costs Split base matrices Time period factor matrices Truck seed matrix Relatively simple operation Mostly, values will be repeated Can be automated EI.IE proportion matrix
26. Acquire data for new zones Households Population Children Total School Age Children Post Secondary Students Residents employed Total In blue collar industries In white collar industries Dependents per household aged 0-17 18-65 >65 Special Generators School Enrolments Primary/ Pre-primary Secondary Tertiary Employment Retail Service Professional Industrial Other Vehicles per household
30. Python Object oriented programming/ scripting language Open source language Easily extensibel Interpreted language/ JITC Cross Platform Strong user base Often used to teach programming to non-programmers Easy to write and maintain code
31. Why use Python? Easy to learn Quick – written in C/C++ Abundance of libraries Matrices Graphics Simulation etc Popular ESRI Google Nokia NASA, etc Excellent for scientific applications Networks Data analysis Land use modelling, etc Guido van Rossum
32. Learning Python Easy to learn Clean syntax PTV Vision Tutorial Using Python with VISUM All files (with examples) included with VISUM PythonWin interactive shell Lots of web resources – www.python.org
33. Basic interaction with VISUM Visum object exposed when running script Access to just about everything in VISUM VisumPy import numpy as np import win32com.client import VisumPy.helpers as h import VisumPy.matrices as m z = np.array(h.GetMulti(Visum.Net.Zones,"No")) onhtrp=m.readBIMatrix(Visum.GetPath(69)+"onhtrp.mtx") np1=m.readBIMatrix(Visum.GetPath(69)+"wnp1.mtx") np2=m.readBIMatrix(Visum.GetPath(69)+"wnp2.mtx") np3=m.readBIMatrix(Visum.GetPath(69)+"wnp3.mtx")
35. NumPy: Numerical Python An array/ matrix package for Python Well suited for demand modelling – one function can operate on the entire array Slicing by dimensions and applying functions to these slices – concise and straightforward Nearly 400 methods defined for use with NumPy arrays (e.g. Type conversions, mathematical, logical etc) Resources NumPy homepage: http://numpy.scipy.org/ NumPy download: http://www.scipy.org/Download NumPy tutorial (not complete): http://www.scipy.org/Tentative_NumPy_Tutorial NumPy Example List: http://www.scipy.org/Numpy_Example_List_With_Doc
45. VISUM Junction Editor? VISUM started as a strategic travel demand modelling software Classical node-link topology (or a graph of vertices and edges) A junction essentially remains abstracted as a node (a point) More demanding assignment algorithms required more precise junction delay assessments Dynamic User Equilibrium / Stochastic Dynamic etc Blocking Back Analysis Export to VISSIM for micro-simulation Need felt to let users manage junction attributes graphically Lets users view and manipulate a junction’s attributes Also lets manipulation of other network objects directly related to the junction Links, Turns, Legs, Lanes, Laneturns, Signal Controllers, Signal Groups, Signal Timings 44
62. Assignment algorithm with more details Blocking – back calculations (pseudo dynamic assignment) Static assignment with HCM 2010 Dynamic assignments Dynamic stochastic Dynamic user equilibrium Bi-criterion equilibrium assignments for toll investigations
63. Signal investigations Visualise signal settings through time-space diagrams Signal cycle and split optimisation Signal coordination
64. Public Transportation Improvements Incorporate the full time table (all systems) Visualise the timetable in its entirety Improve headway based assignment Headway calculation based on time table data Less volatility due to departure time variation in case of infrequent services
66. Perform time-table based assignment Take into account time-table coordination Precise PT performance indicator calculation Search connections for each OD pair Two alternative algorithms available for connection search Branch and bound Shortest path
67. Further improve headway based assignment Incorporate a choice model for boarding decision No information and exponentially distributed headways No information and constant headways Information on the elapsed wait times Information on the next departure times of the lines from the stop Complete information This can potentially incorporate behavioural effect of the ‘passenger information system’
68. Consolidate your stops Group stops as per the ground situation / real life modelling Manage walk connectors and walk times between group stopped easily Make do with less precise information System to system instead of stop to stop
69. Example: Queen St/ King George Sq All stops close-by / sharing platform grouped Connectors created Zero transfer time assumed All grouped stops can be further grouped if in vicinity Connector created Individual walk-times/ transfer times can be supplied....OR Generalised transfer times can be supplied
70. Incorporate more PT details Line coordination A headway of 20min means a wait of about 10min Effect of introducing a second line will depend on the exact departure time vis-a-vis the first line Line coupling/ split Managing coupled line route is made easier Changing one changes all other
72. Harness ticket data SEQ’s zone based fares and smart card deployment present a big opportunity A stop X stop (~ zone X zone) matrix can be generated Selected data can be used to improve matrices Enhanced PT specific matrix estimator Can use stop boarding, stop alighting or line load data
73. Other possible PT improvements... Not directly beneficial to ITP/TMR but... Can increase models usability for sister organisations... Operational Indicator calculations Line costing (line by line) Revenue analysis (line by line) Profitability analysis (line by line) Time table optimisation Depot location/ dead kilometerage minimisation/ maximising fleet utilisation Vehicle Scheduling
74. Emission Modelling A set of emission factors from Germany, Switzerland and Austria (HBEFA 3.1) More countries joining-in Systematic descriptors for traffic situation (ARTEMIS) Assessment and Reliability of Transport Emission Models and Inventory Systems Simplifies mapping from transport models to emission models Urban/Rural, road hierarchy, free flow speed and LOS Readymade as well as customisable fleet composition Enables localisation Cold/ warm start distinction also possible Output can be exported as shape file for more detailed modelling
Editor's Notes
Our big and coarse model is know as BSTM...stands for Brisbane Strategic Transportation Model. Its for the BSD...which the city and some full and part councils around it.
This ‘study area’ is divided into 1500 internal zones. In addition to that it has 15 ‘gateway’ zones and about 170 special purpose zones (mostly rail and bus terminals).Network is made up of about 10,000 nodes and 25,000 links. It also has about 800 pt routes.
Travel is described in terms of eight modes. Notice that Car appears twice and PT thrice. Also notice that PT is made up component systems (rail, bus, ferry etc).
Also, and independently, travel is described in terms of its intent (or purpose). Notice how frequently the word ‘Home’ appears. Also notice that workers are divided by the colour of their collar....and student are divided between school and uni.
Roads are grouped according some obvious attributes such as lanes and central divisionAnd some not so obvious ones such as .....how many cars can flow on each of its lane.....and how fast they will go unhindered....and how quickly this speed will fall with increasing volume.The complicated looking function ensures that time taken by a vehicle on a link increases with increasing volume (notice that every symbol except v is a constant). The complications of iterative procedures are taken care by modern day tools.
Remember that PT is a single mode (Rail or Bus or Ferry is not an independent mode). A journey is made up of walk, in-vehicle travel and wait. Complications are taken care by modern day tools.Lot of these assumptions might sound very coarse but they are better than not having them at all.
Basic structure is traditional and simple but many of the constituent sub-models are very modern.
Has its own toolbar
Demonstrate VISSIM Preview and ICA LOS analysis
Line transfers for feeder services/ coordinated services