Skip to content

Scenario Directory

Cundo Arellano edited this page Jul 6, 2020 · 5 revisions

A travel model scenario consists of both application and data files organized in a specific directory structure. A SANDAG travel model scenario contains following directories: application, bin, conf, emme_project, input, input_truck, logFiles, output, sql, python, uec, visualizer and report (as shown in the figure below).

  • The application directory contains ABM model jar file sandag_abm.jar and third-party libraries.
  • The bin directory contains command line batch files to run ABM from DOS, a batch file to set environmental variables, and the stand-alone executables like psexec and pskill.
  • The conf directory contains the model configuration files, Java instructions and properties files, and the Java logging files.
  • The emme_project directory contains the Emme-related data and settings, as well as the scripts to run the model, including highway, transit skims, and assignment, as well as commercial vehicle model, the external model, and the truck model.
  • The uec directory contains the Utility Expression Calculator (UEC) files that specify the choice models.
  • The input directory contains the input files required to run the specific scenario.
  • The input_checker directory contains the configuration files used by the Input Checker and the output summary file.
  • The input_truck directory contains all truck model input files.
  • The logFiles contains all logging files created during a model run, including logging from the client, logging for each computing node, and logging for specific ABM modules. These files will contain debugging information in case of an error; the same information is also logged in the Modeller Logbook.
  • The output directory contains all ABM outputs, including both intermediate and final outputs, such as trip lists, trip tables by mode, highway, transit and bike assignment results, highway and transit skimming results, and EMFAC summaries.
  • The sql directory contains all SQL scripts for creating ABM database structure and data loading. At the end of each model run, results in the output directory are loaded into a SQL database, which serves as the foundation for system performance summary and statistical analysis.
  • The python directory contains all Python scripts used for running the Emme components of the model along with scripts for other model features.
  • The report directory contains the network and matrix results at the end of the model run for processing by the data loader.

Emme Project Directory

Prior to a model run, the emme_project directory is a template project with a pre-configured Emme database and project settings, but not yet populated with data. This template Emme project, configured for use with the SANDAG model, can be generated using the init_emme_project.py script found under the emme directory in the SANDAG ABM github repository. This script can be run from a command line with the Emme libraries installed under python. Use python init_emme_project.py –h or --help for usage instructions.

Below is a complete list of the Emme project directories and a description of their contents. Note that most of the content and structure is standard for an Emme project, except the Database_transit directory which is a custom for the SANDAG model.

  • The Database directory contains the main Emme data (Emmebank, matrix files, network attribute and shape files) with both traffic and transit input data, and the traffic results and matrices.
  • The Database_transit directory contains the transit results and matrix data (using the TAP zone system). Created during a model run (not present in template project).
  • The Logbook directory contains the Modeller Logbook and associated files.
  • The Media directory contains image files, shapefiles and DBF files.
  • The Network_builds directory contains the saved build files from the Network editor.
  • The Scripts directory contains the sandag_toolbox.mtbx script and Emme Notebook scripts.
  • The Specifications directory contains project specific tool specifications.
  • The Views directory contains network views created with Emme.
  • The Worksheets directory contains links to General worksheets and tables, plus any saved worksheets or tables. Custom worksheet files can be added here to be available in the Emme Desktop.
  • The data_tables.db file is the data tables database.
  • The emme_project.emp file is the main Emme project settings file. Open (double-click) to launch the Emme Desktop with this project.

The sandag_toolbox.mtbx contains the Python scripts which implement the assignments, aggregate demand models, master run and other auxiliary model steps. The toolbox must be present under the emme_project/Scripts directory to run the model (this step is included in the init_emme_project.py script). A separate script, which generates the toolbox file build_toolbox.py, can be found under the toolbox directory in the SANDAG ABM github repository. Use python build_toolbox.py –h or --help for more.

Emme comes with a distribution of Python 2.7 that is configured to work with Emme APIs. If third-party Python libraries are required, the Python path (under Application Options) may be changed to use a different Python installation. The Emme libraries must also be installed in this Python installation using the Install Modeller Package button. For further details on configuring a custom installation see Python path in Emme help.

Input Directory

The input directory contains the input files required to run the specific scenario, including a MGRA-based land use input file, synthetic population files, highway network files, transit network files, bike network files, network access files such as walk and bike time/logsums between MGRAs and TAZs, special market model input files, as well as warm start trip tables. More specifically, the input directory contains the following types of data (see Input Files for details on each file):

  • MGRA-based land use inputs
  • PopSyn data
  • Network: highway
  • Network: transit
  • Network: bike
  • Network: auxiliary
  • Intermediate: calculated accessibilities data and shadow pricing files
  • Special market: Airport Model data
  • Special market: Commercial Vehicle Model data
  • Special market: Cross Border Model data
  • Special market: External Model data
  • Special market: Special Event Model data
  • Special market: Visitor Model data
  • Warm start trip tables from previous model runs

UEC Directory

Under normal circumstances, users would not need to edit any of these files.

The uec files are used by the CT-RAMP UEC Java package to both locate input variables and specify utility equations that describe each discrete choice. The input variables and specifications are defined and stored in a Microsoft Excel workbook. The use of Excel enhances the flexibility and transparency of the model system (utility coefficients, model structures, etc.) can be edited via Excel (rather than via difficult to follow text files or source code). Each UEC workbook (i.e. Excel file) consists of at least two worksheets. One must be the UEC datasheet, which defines the input files used in the utility expressions, including zonal (vector) data and level-of-service "skims" (matrix data). The second, third, fourth, etc. page specifies one or more multinomial or nested logit models via a unique UEC utility sheet. The utility sheet consists of three sections, as follows:

  • The first section specifies the nesting structure of the logit model -- if omitted, a multinomial structure is assumed;
  • Next, variable names, or tokens, are defined for use in subsequent (moving down rows) utility equations; and,
  • The final section defines the utility terms, typically a variable and a coefficient for each of the logit model's alternatives.
    The CT-RAMP Java code controls model flow handles output files (e.g., trip tables, tour records), facilitates debugging, and allows for the UECs to access variables stored in memory (e.g., the results from upstream logit models). The UEC solve method returns an array of doubles dimensioned to the number of alternatives specified in the utility sheet. The array contains the sum-product of each of the formulas and coefficients for each alternative, which is the utility for each alternative. This array can then be used with a logit model object to first compute alternative probabilities and then simulate choices.

Go To Top

Next Section: Run the Model