1 / 27

October 2014

Implementing the Sydney Strategic Transport Model (STM) in Emme 4 Dr Peter Hidas Bureau of Transport Statistics, Transport for NSW. October 2014. Acknowledgements. Team Effort Model Development & Estimation RAND Europe Frank Milthorpe, BTS Implementation in Emme4 and Python

bruno-lott
Télécharger la présentation

October 2014

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Implementing the Sydney Strategic Transport Model (STM) in Emme 4 Dr Peter Hidas Bureau of Transport Statistics, Transport for NSW October 2014

  2. Acknowledgements Team Effort Model Development & Estimation RAND Europe Frank Milthorpe, BTS Implementation in Emme4 and Python Peter Hidas and Ting Yu Validation, testing The BTS Modelling Team

  3. History of STM First developed in 1970s Major Updates 1986 & 1994/95 Redesigned in late 1990s Known as STM2 Still in use Extended and re-estimated in 2012-14 Known as STM3 Implemented – validation in progress

  4. Study Area – Sydney GMA 2006 zoning (24,443 km2): 2715 Travel Zones 25,000 Nodes 90,000 Links 1,350 Transit Lines 445 Stations Rail, LR, Ferry 2011 zoning (31,407 km2) + 400 zones Newcastle Sydney 400 km 250 mi Wollongong

  5. Key Features of STM2 Tour based model system Home to Primary destination and return Disaggregate model Person and household segmentation Forecasting of licence holdings Forecasting of car ownership Segmentation: Population Synthesiser Joint mode-destination choice models Nested/Multinomial Logit choice Demand is not constant Tour frequency depends on accessibility

  6. STM3 Enhancements Use most recent travel survey data (HTS) Model base year: 2011 Explicit modelling of toll roads Toll-users, non-toll-users separate modes (STM2: only one car driver option) Explicit modelling of access mode to rail Park-&-Ride, Kiss-&-Ride, Bus, Walk (STM2: only bus and walk)

  7. STM3 Travel Purposes Home based purposes (to primary destination) Work Business Education Primary, Secondary, Tertiary Shopping Other Non-Home based purposes Work based business Business detours as part of work tour

  8. STM3 Travel Modes Modes Car Driver Toll users, Non-toll users Car Passenger Train (includes Light Rail & Ferry) Park-&-Ride, Kiss-&-Ride, Walk, Bus Bus Walk Bicycle Taxi (Crowding on PT not modelled)

  9. Segmentation Extensive segmentation Different by purpose Additional segments for frequency model Home Based work Mode Destination Models Car availability/Licence holding (8 segments) Work status (full time, part time) Income (5 segments) Frequency Models Age (3 segments) Adult status (1/5 segments)

  10. Number of Segments

  11. STM3 Values of Time Values of Time Vary Personal Income Journey Purpose Mode of Travel Use log and linear cost terms Better fit for demand estimation More difficult for economic benefit calculation

  12. STM3 - Implementation Model Development & Estimation ALOGIT software (RAND Europe) No direct linkage to Emme STM2 Implemented using Emme macros STM3 – Emme 4 available How best to utilise?

  13. STM3 - Software Platform Combination of Multiple Tools Emme-4 API + Python Python 2.7 64-bit Needed for memory requirements (min 20 Gb) Numpy Efficient matrix operations library Cpython Python library written in C (faster) For some special methods (sorting) Run from DOS Batch file

  14. STM-3 Model Structure

  15. STM3 Model Processes in Python Tour Frequency & Mode-Destination Choice 7 HB + 2 NHB trip purposes – separate models 6 purposes include car access to rail Models are similar but many differences OOP structure Shared code in base classes Differences in derived classes

  16. CarSkims Hierarchy cHWcarTollSkims_ZZ cCarTollSkims_ZZ cCarSkims_ZZ cCarNoTollSkims_ZZ cHWcarNoTollSkims_ZZ Basic properties abstract class not for use common methodsfor all sub-classes cCarAccSkims_ZS cHWcarAccSkims_ZS Input Matrices abstract class not for use Different by Purpose Specific properties daily averages

  17. Matrices in Emme vs Python TZ to TZ TZ to Stn External Zones External Zones Stn to TZ Stn to Stn • Emme: Full matrix • Travel Zones • Station Zones • External Zones • Python: • ZZ: TZ to TZ • ZS: TZ to SZ • SZ: SZ to TZ • Freq/Mode-Dest. Models: ZZ • Station choice: ZS + SZ

  18. Car Access to Rail: Station Choice ?

  19. Station Choice For each OD-pair Calculate utility (car + rail) through each station Select N (2-5) “best” stations By OD-pair (7.3 million) Select from 450 stations Run time If done by single OD-pair: ~ 9 hours 3D matrix calc: from 1 O to all D: ~ 3 hours 3D + Cpythonpartsort method: ~ 20 min ( ALOGIT: ~ 3 days )

  20. Calculate Car Access to Rail utility z o n e s Selected Station z o n e s z o n e s stations Gen. time Car time z o n e s Rail time z o n e s z o n e s = + stations • Gen.time from O to D = Car time from O to S + Rail time from S to D • Must be ZZ-matrix

  21. Calculate Utility – the easy way D z o n e s Selected Station O O O O S z o n e s D S z o n e s stations D Car time Gen. time z o n e s O Ct Gt Rail time O S z o n e s Rt stations z o n e s + = • For each OD-pair: • get S from stations matrix • Gt(OD) = Ct(OS) + Rt(SZ) • 7.3 million OD-pairs!

  22. Calculate Utility – a faster way z o n e s Selected Stations S S S z o n e s S stations S Car time Ct S z o n e s Rail time S Rt stations + z o n e s Ct Rt Ct Ct Ct Ct Ct Gen. Time Gt Gt Rt Gt Rt = Rt z o n e s Gt Rt Gt Gt Rt Rt • Process • Select all OD-pairs that use S (mask) • Get car times from All-O to S • re-shape vector to 2D (ZZ) • Get rail times from S to All-D • re-shape vector to 2D (ZZ) • Add the two matrices = Gt • Repeat for each station S • Max 450 iterations! • Masking, re-shape are standard methods in Numpy • This process is applied at several places

  23. Current Status STM3 model coded and tested Validation: ALOGIT vs Emme/Python – finished Comparison with Observed (HTS) data Key issues for further improvement Run time Use for PT Project Model (PTPM)

  24. Model Run Time STM2: ~ 19 hours (macros, without car access to rail!) STM3: Full Model (4-cycles): ~ 17 hours One-cycle: ~ 7 hours New zoning system TZ11: +400 zones Further increase in run time How to reduce? Multi-threading?

  25. STM-3 Current Model Structure Input Data Hb-Work NHb-Work Hb-Business Create CAR LOS Skims NH-Business Hb-PrimEd Hb-SecEd Hb-TerEd Hb-Shop Collate new CAR Demand Final Car/PT assignments Hb-Other

  26. STM-3 Parallel Model Structure Create CAR LOS Skims Input Data Hb-Work Hb-Business Hb-PrimEd Hb-Shop Hb-SecEd NHb-Work NH-Business Hb-TerEd Hb-Other Collate new CAR Demand Final Car/PT assignments

  27. Summary • STM3 Implemented • Emme 4 API: major benefits • Easy, user-friendly, powerful methods • Easy to combine with external code • New methods faster than macros • Python, NumPy: major benefits • User-friendly, powerful, fast methods • Run time less than for STM2 but still very long • Next challenges • Improve run time • Implement Peak Spreading

More Related