VISSIM - Dynamic Assignment
Introduction
Welcome to the first Modelling Group blog post!
This is the first in a series of technical articles, providing some of our thoughts, hints and tips on various elements associated with microsimulation modelling and in particular, VISSIM.
You may ask, who are Modelling Group and what experience do we have? Well, our team is made up of five specialists who have 90 years’ combined experience in traffic modelling projects, so we have plenty of wisdom to share!
This first post focuses on Dynamic Assignment and provides some discussion on a variety of modelling elements and parameters. We hope you find this useful.
What is Dynamic Assignment?
So first up, what is dynamic assignment and how is this different from static assignment? The simplest way to describe the differences is that dynamic assignment uses origin-destination (O-D) matrices to assign traffic around the network and is often used where route choice is available, whereas static assignment uses manually assigned vehicle inputs and routes.
Whilst it may sound simple to just assign flows to an O-D matrix and then your network assignment is finalised, there’s a bit more to it than that. Your network needs to be set up with origins and destinations, represented in the model with virtual parking lots and nodes to create a series of edges. These edges need to be checked to ensure that all movements in the network are suitable and realistic. Once you have done that, to route traffic around the network, cost and path files need to be created - these contain information on all of the available routes and their associated costs. Having obtained a set of cost and path files, you then need to undertake something called convergence. This is a process of running the model with the same fixed seed multiple times until the costs on each path ‘converge’ on the same (or very similar values) for each run. At this point, the model is considered stable and ‘converged’ and can be run for your required outputs.
If you’re wondering what a ‘seed’ is, this is a number that assigns a value to each of the various distributions within VISSIM (for example, desired speed, flow profiles from a parking lot) when the model is run. If you change the random seed number, then the value assigned to the distributions will change. This is to replicate day-to-day variations in elements such as driver behaviour and traffic flow patterns.
Network Set-Up
Entry/Exits
When adding the parking lots and nodes to each entry and exit link on the network, some tips are shown in Figure 1.
Tip 1: Remember to update the Relative Flow values for the entry and exit parking lots – entry parking lots should have a value of 1.0 and exit parking lots have a value of 0.0.
Tip 2: Make sure your node covering the entry and exit links does not overlap the parking lots, otherwise you’ll get an error message pop up when trying to load.
Tip 3: It’s useful to include a desired speed marker after the entry parking lot, so that you can ensure that vehicles are travelling at the correct speed when they enter the network. Whilst these speeds can be configured within the Parking Lot menu itself, the use of Desired Speed Markers adds an extra measure to ensure speeds for all classes are updated.
Tip 4: If you are collecting entry and exit flows for model calibration and/or validation, place a set of data collection points (or another node) close to the entry and exit parking lots. This allows these flows to be collected for analysis.
Tip 5: When configuring the Parking Lot, it’s useful to name all of zones so that they can be easily assigned to the correct Parking Lot.
Junctions
When configuring the junctions for dynamic assignment, a couple of tips are shown in Figure 2.
Tip 6: After adding a node around each junction, check that this is placed so that it includes any links and connectors inside it that are associated with the movements at the junction. does not overlap any connectors and only intersects links.
Tip 7: Ensure that after adding the node, the Turns for dynamic assignment are reviewed and any unrealistic movements are closed.
Folder Set-Up in Scenario Management
When we set up and run a model using dynamic assignment, we use a folder structure that complements the three main stage we undertake:
1) Paths & Costs – this is used for storing the BEW, WEG and Error files associated with running the model initially for Paths & Costs.
2) Convergence – this is used for storing the BEW, WEG, CVA, Error and Path files associated with running the model for Convergence.
3) Outputs – this is used for storing the files associated with the outputs (e.g., Network Performance, Travel Times, Queues, Nodes etc.) from the model.
An example of this folder structure for a model under Scenario Management is shown in Figure 3.
Dynamic Assignment Parameters
The most critical part of configuring a model in dynamic assignment is choosing the correct parameters for each model. The choice of parameters changes depending on which stage in the dynamic assignment process you are at. Figures 4-8 go through each of the tabs and provides some guidance on what needs considering for the different stages.
‘Scale total volume to’
This parameter is updated depending on whether the model is run for paths/costs or convergence, results. When running the model initially for paths/costs, we scale the volume back to 50% and work upwards to 100% through different seed runs. This allows the BEW and WEG files to be collated with costs and paths in a free flow, uncongested network to start with, before increasing up to 100% of the traffic demand. The number of runs required to find all the necessary costs and paths largely depends on the size and complexity of the network, but it should be enough to pick up the variance between the seed runs over a large sample size.
When running for convergence, there are a couple of options with the percentage chosen. If the network is small and not too congested, then convergence can normally be achieved by using 100% of the demand. However, if you have a large and/or very congested model, then convergence at 100% of the demand may not be able to be achieved. If this is the case, PTV suggest reducing the demand down to 70% for convergence running. We would suggest aiming for 80-95% of the demand, which will depend on the complexity of your modelled network.
Further tips on model convergence can be found in PTV’s VISSIM FAQ webpage under Dynamic Assignment (#VIS29421)
https://www.ptvgroup.com/en/solutions/products/ptv-vissim/knowledge-base/faq/
‘Evaluation interval’
The evaluation interval used in dynamic assignment models is usually in the range of 15-60 minutes (900-3600 simulation seconds). Our default starting value is usually 900s. This is to account for different traffic demands and network states over the simulation period, which is a result of the network being more dynamic as opposed to static (use of O-D pairs to assign traffic, as opposed to static routes through junctions). The evaluation interval is therefore needed to be a suitable interval to understand these changes and adjust the vehicle paths as necessary.
Further details on the evaluation interval are provided within the VISSIM Help File.
‘Create archive files’ & ‘Store costs’
These options are used when undertaking the initial path/cost runs and also for running the model for convergence. By saving each BEW and WEG file (using our folder set-up), we can track the size of the files to understand how stable the files are after a multi-run (for path/cost file running), as well as to pick out the most appropriate files after analysing the convergence outputs.
Once you have a converged model, these parameters can be un-ticked as you will already have a stable model and suitable BEW and WEG files to use.
‘Cost for path distribution with Kirchhoff – Measured path travel times’
This option is chosen for our models as the networks we develop tend to include multiple lanes and feature varying levels of congestion. The ‘Measured path travel times’ produces more accurate results as the total travel time is taken over the whole route and isn’t obscured by local areas of congestion in the model (unlike ‘Sum of edge travel times’).
Further details on the two options are provided within the VISSIM Help File.
‘Smoothing method – MSA (Method of Successive Averages)’
In our experience of dynamic assignment models, we have found that convergence is achieved more successfully using the Method of Successive Averages (MSA) over Exponential Smoothing.
MSA allows more control over the number of runs that feed into the calculation of the arithmetic mean and the number of iterations assigned can correlate with the number of runs that have been undertaken at 100% demand in the initial cost/path batch run. The MSA value can also be adjusted once convergence has been achieved to match the number of runs needed to ensure a suitably stable model.
‘Path Search’ parameters
The options ‘search new paths’ and ‘search alternative paths’ are only required when undertaking the initial runs for paths and costs. After that, these options can be unticked.
We tend to tick the option for ‘keep paths for O-D pairs with zero volume’ as this is useful if any changes are needed to be made to the matrices as part of the model calibration. Otherwise, if flows are added to an O-D pair with zero flows without this option ticked, then a new set of paths are needed to be run.
‘Path pre-selection’ parameters
The ‘Avoid long detours’ and ‘Limit number of paths per parking lot relation’ can be updated to suit the size of the network and the amount of route choice.
If you have a large network with a lot of route choice, then limiting the number of paths from 999 to a more representative figure (e.g. 5, 10) could ensure that all of the likely routes are still picked up.
For the ‘Avoid long detours’, an initial assessment of the paths identified is needed to understand if the routes found are suitable. If there are still unrealistic routes being used, even with a lower limit on the number of paths, then reducing the factor from 2.50 to a range of 1.2-1.5 may be more suitable.
‘Path choice model’
Our preference for this is to use ‘Stochastic assignment (Kirchhoff)’. The ‘Equilibrium assignment’ option is a fairly recent addition to VISSIM and whilst we understand the premise behind it (proportioning the paths according to the costs on a route), we have found that the ‘Stochastic assignment (Kirchhoff)’ option produces a suitable set of paths for our models (which in turn helps with convergence).
‘Convergence conditions’ parameters
When running the model for convergence, we use criteria as set out in the Department for Transport’s (DfT’s) Transport Analysis Guidance (TAG), Unit M3.1 and Transport for London’s (TfL’s) Model Audit Process, v4.0 documents.
Within VISSIM, the travel time on paths (95% within 20% difference) and volume on edges (95% within 5 vehs) are selected as the criteria to meet. The network performance is also collected and output separately to check the percentage differences of the Total Travel Time for each run (which should be within 1%).
As well as using the CVA and Network Performance outputs from VISSIM, we also undertake a separate check of the convergence by extracting and analyse the raw Path files, to ensure convergence is met.
Summary
You’ve made it to the end, thanks for sticking with it!
We hope this post has helped to provide a bit of insight on we approach dynamic assignment models and hopefully there are some elements you can apply to your own models.
If you are after further information, PTV have produced a series of ‘Getting to know VISSIM’ videos and Videos 15, 16 and 17 cover all aspects of Dynamic Assignment in more detail. The link for these videos is here: https://company.ptvgroup.com/en-us/getting-to-know-ptv-vissim
Thanks for reading!