13.07.2015 Views

Christoph Dobler - MATSim

Christoph Dobler - MATSim

Christoph Dobler - MATSim

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Preferred Citation Style<strong>Dobler</strong>, C. (2012) Multi-modal simulations with <strong>MATSim</strong>, <strong>MATSim</strong>User Meeting 2012, TU Berlin, Berlin, March 2012.


Multi-modal simulations with <strong>MATSim</strong><strong>Christoph</strong> <strong>Dobler</strong>IVTETHZürichMarch 2012


Multi-modal simulations with <strong>MATSim</strong>• <strong>MATSim</strong> is applied in many interdisciplinary projects• Some of the are not only interested in vehicular traffic but also inother modes like walk and bike• Evacuation simulations• Walk legs between public transport stops• Power consumption of e-bikes• Interactions between pedestrians and vehicles3


Requirements• Several additional information has to be added to a scenariowhen performing multi-modal simulations• Network• Height information• Mode restrictions on links• Additional links for non-vehicular modes• Multi-modal travel times, respecting• mode• person specific attributes4


Adding height information to a road network• Assigning height information to each node• Add shape information to each link (future task)yx742mz612myx495m495m5


Assigning buildings to a road network• Assign each building to a road• By default the nearest link is selected and allowed mode typesare ignored• Take road attributes into account (e.g. ignore highways) toensure that a building is accessible with all modes6


Multi-modal travel times• Travel times of pedestrians and cyclists based on• Gender• Age• Statistical spreading to take further effects link an agent’sfitness into account• Steepness of links• Travel times of pt and ride trips based on car travel times7


Pedestrian speed• Pedestrian speed calculation• f Person = f Gender · f Age · f Statistical spreading• v Person, walk = v Reference, walk · f Person• v Person, walk, link = v Person, walk · f Link steepness• Reference• Weidmann, U. (1992) Transporttechnik der Fussgänger -Transporttechnische Eigenschaften des Fussgängerverkehrs,Literaturauswertung, Schriftenreihe, 90, IVT, ETH Zürich,Zürich.8


Pedestrian speed9


Pedestrian speed10


Cyclists speed• Cyclists speed calculation• f Person = f Gender · f Age · f Statistical spreading• v Person, bike = v Reference, bike · f Person• v Person, bike, link, uphill = maxv Person, bike – 0.4002 · |grade Link | ·f Person{ vPerson, walk, uphill• v Person, bike, link, downhill = min{ v Person, bike + 0.2379 · |grade Link | ·f Person9.7222 m/s (35 km/h)• Reference• Parkin, J. und J. Rotheram (2010) Design speeds and accelerationcharacteristics of bicycle traffic for use in planning, design andappraisal, Transport Policy, 17 (5) 335–341.11


Cyclists speed12


Cyclists speed13


PT and ride travel times• PT travel time• on car links: car travel time · PT speed factor (from calc routeconfig group)• on non-car links: walk travel time (it is assumed that agentswalk from one stop to another one)• Ride travel time• on car links: car travel time• on non-car links: walk travel time (it is assumed that agentswalk from or to a pickup location)14


Implementation in <strong>MATSim</strong>• Multi-modal simulation is already available org.matsim• All non-car modes are handled in one separate queue per linkwhich are attached to all links• Agents are moved within the network like car-mode agents andproduce the same link events as agents on a car trip15


Implementation in <strong>MATSim</strong>• Agents on non-car modes do not interact with each other or withcar-mode agents• Agents move with free flow speed• High traffic flows on non-car modes are very seldom,therefore assuming free flow speeds should result in a verysmall error• Travel time is calculated when an agent enters a link (linkcrowdedness could be taken into account to improve traveltime accuracy on those links)16


Implementation in <strong>MATSim</strong>• Interface MultiModalTravelTime extends PersonalizedTravelTime• getModalLinkTravelTime(link, time, transportMode)• setTransportMode(mode)• Multi-modal leg router• Uses multi modal travel time and personalized travel disutilitycalculators• Sets the transport mode restrictions in the router17


Configuration in config file via group multimodal• Parameter multiModalSimulationEnabled• Enable or disable the multi-modal simulation.• When enabled, in the Controler config group the parametermobsim has to be set to multimodalQSim.• Parameter numberOfThreads• If the value is > 1, a parallel implementation of the multimodalmobsim is used.• The parameter only affects the multi-modal part of thesimulation. The number of threads for the parallel QSim hasto be se separate!• Parameter simulatedModes• Defines which multi-modal modes are simulated.18


Configuration in config file via group multimodal• Parameters createMultiModalNetwork andcutoffValueForNonCarModes• simple approach to create a multi-modal network. All linkswith a maximum speed below the cutoff value become multimodallinks.• Parameter dropNonCarRoutes• Can be used to run a multi-modal simulation with non-multimodalinput plans.• Non-car routes are dropped and recreated when thesimulation is started (see PersonPrepareForSim).19


Problems and to do’s• Parts of the code are still in my playground, e.g. heightcoordinates and travel time calculators• Implementation is still experimental• Some decisions have to be made by the <strong>MATSim</strong> committee• So far, link events have been expected to be produced only fromvehicles, which leads to unexpected behavior (travel times,counts, …)• Some old code has been adapted (e.g. theTravelTimeCalculator), some other code still needs to beupdated20


Problems and to do’s• Performance of route generation• Checking valid modes per link is very time consuming• Using mode specific networks might be an option• Thread-safety of travel time and travel disutility calculators• At several places in the code, multiple threads access a singlecalculator instance• When adding personalized elements to those calculators, raceconditions will occur21


Questions?22

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!