Skip to content

RunModel

Binny Mathew Paul edited this page Nov 25, 2020 · 13 revisions

RunModel.bat DOS script

The RunModel.bat DOS batch script orchestrates the ABM run. Before running any modeling procedures, software paths, and scenario properties are set for the model run. These settings are automatically determined and are logged to the console. This allows a model setup (i.e. scenario) to be easily copied from one scenario to another, and from one machine to another. The outputs folder and the subfolders are emptied to ensure model steps do not run with old input files. For each model step, the batch file either calls the main Python script (Master_Runner.py), Java process, or an R script. The Master_Runner.py script handles all VISUM-based calculations. The Master_Runner.py starts VISUM via the Python win32 COM server. The Master_Runner.py script has been designed to be called with a command line entry point token. For each entry point token, a specific VISUM-based modeling task is performed. For example, to create TAZ-level network, the RunModel.bat file call the Master_Runner.py script with a “taz_initial” entry point token. The table below shows the list of entry point tokens and the modeling task it triggers.

Attribute Description
taz_initial Creates the initial TAZ network used for generating auto skims
maz_initial Creates the initial MAZ network, which is used to calculate non-motorized times and distances, including access and egress walking times between MAZs and boarding\alighting TAPs, and walk\bike times between close MAZs
tap_initial Creates the TAP network, which is used for transit skims from boarding TAP through any potential transfer TAPs, to alighting TAP
taz_skim_speed Creates TAZ-level auto skims using TomTom speeds
maz_skim Create MAZ-level non-motorized skims
tap_skim_speed Creates TAP (transit stop-to-stop) skims
build_trip_matrices Aggregates demand matrices by time-period for assignment in VISUM
taz_skim Assigns trip demand matrices to the network and re-generate TAZ skims as a function of congestion
tap_skim Re-creates TAP skims
nm_assignment Assigns walk and bike demand matrices to the all streets network
generate_html_inputs Generate inputs for HTML dashboard creation
generate_final_summary Generate assignment summaries and copy to final summary version file

Configuring RunModel.bat script

The RunModel.bat DOS script is designed to run without much user configuration. Software paths and IP addresses are set on the fly. The user can set the number of feedback runs and CTRAMP sample rate for each feedback run. To edit the batch file, right-click on the file and then select a text editor to open the file. Alternatively, the batch file can be dragged and dropped into an open text editor window.

Number of iterations and sample rate

By default, the ABM is setup to run 5 feedback iteration with the following sample rates for each run - 10%, 20%, 40%, 70%, and 100%. The user can set the maximum number of iterations and sample rate for each iteration as shown below:

Software paths and directories

The next group of instructions sets the software paths and project directories. The ABM directory structure allows all software paths to be set on the fly. The RunModel.bat script fetches the IP address of the machine which is used by the Java processes. The last line in this group of properties deletes any existing files in the outputs folder.

Input checker

Next, the Input Checker Tool is called.

Create skims

The next set of instructions calls the Master_Runner.py Python script to create skims using the TomTom link speed data.

CVM and External Model

In this step, the CVM and external models are run via their respective R script.

Feedback Loop

These sets of instructions start the loop to run the maximum number of feedback iterations set by the user at the beginning of the script.

Run OR-RAMP ABM

In each iteration, ORRAMP is run using the sample rate specified for that run. The RunModel.bat script calls the appropriate Java processes to launch the OR-RAMP run. All Java processes are closed at the end of the run as shown below.

Assign trip tables and create skims

For each iteration, trip tables are generated, assigned to the network, and skims are created as shown below

The control is returned to the beginning of the feedback loop until the maximum number of iterations are completed.

Assign walk and bike demand

The walk and bike demand is assigned to the all-streets network.

Generate final summaries

At the end of the model run, assignment summaries are generated.

Next, the HTML Dashboard is generated. By default, the RunModel.bat script is configured to generate the HTML dashboard comparing the model outputs to OHAS and Census data as shown below:

The user can update the above settings to compare the model run to a base scenario.

Input checker summary

At the end of a successful run, the input checker summary is displayed using the instructions below

Clone this wiki locally