Skip to content

SetupConfiguration

Lisa Zorn edited this page Nov 30, 2022 · 9 revisions

Home > TravelModel > UsersGuide > SetupConfiguration


Setup and Configuration

This page provides details on setting up the travel model to run on a cluster of computers, including descriptions of the necessary configuration files.

Step 1: Create the required folder structure

To run the MTC travel model, a model run directory needs to be created with two directories, CTRAMP and INPUT and one MS DOS batch file, RunModel.bat. In recent years, MTC staff have been using a setup script to perform this step, as it creates transparency regarding the source of these files. CTRAMP contains the model code, which can be copied from the GitHub source, while the INPUT needs to be developed specifically for the scenario that is being run. These files can be placed in any directory on a computer designated as the main controller of the program flow. On MTC's set up, these files are placed on the mainmodel computer (see SystemDesign page for more details).

The CTRAMP directory contains all of the model configuration files, Java instructions, and Cube scripts required to run the travel model, organized in the following three folders:

  • model -- contains all of the UtilityExpressionCalculator files that specify the choice models;
  • runtime -- contains all of the Java configuration and JAR (executable) files, as well as the files necessary for Java to communicate with Cube;
  • scripts -- contains all of the Cube scripts and associated helper files.

The INPUT directory contains all of the InputFiles required to run a specific scenario. When configuring the model on a new computing system, one should make sure that the results from an established scenario can be recreated before developing and analyzing a new scenario. The INPUT directory contains the following folders:

  • hwy -- contains the input free flow highway network, which is named, by convention, freeflow.net (see the HighwayNetworkCoding page for details);
  • trn -- contains all of the input transit network files organized across three directories, namely: transit_lines, transt_fares, and transit_support (see the TransitNetworkCoding page for details);
  • landuse -- contains the socio-economic input land use file (described on the TazData page) and walk shares file;
  • nonres -- contains the fixed, year-specific internal/external trip tables, the fixed, year-specific air passenger trip tables, and files used to support the commercial vehicle model;
  • popsyn -- contains the synthetic population files per the formats described on the PopSynHousehold and PopSynPerson pages. The RunModel.bat contains a list of MS-DOS instructions that control model flow.

Update: In order to track the sources of INPUT files and CTRAMP files, MTC staff has begun using a setup script to setup the model to run. The current version of this is SetUpModel_PBA50.bat.

Verify and update paths in SetPath.bat

Configuration specific to the locations of libraries and executables have been consolidated in the SetPath.bat file. The version on GitHub is the current version that we use.

Note that the TPP_PATH includes the location that [Cube Voyager] is installed as well as the VoyagerFileAPI, which is a DLL library needed by the CTRAMP core so that its Matrix Manager can read Cube matrix files.

Setup your python environment in Conda

While there is an environment file for reference (tm15-python310.yml), in practice, it doesn't work because python packages for windows don't tend to install well. The following steps work for setting up an environment (as of 2022-11-30 on Windows 10.

conda create --name tm15-python310 python=3.10
conda activate tm15-python310

rem install packages for NetworkWrangler 
rem https://github.com/BayAreaMetro/modeling-website/wiki/Network-Building-with-NetworkWrangler#step-3-install-the-required-python-packages-into-your-conda-environment
pip install M:\Software\Python\SimpleParse-2.2.2-cp310-cp310-win_amd64.whl 
pip install M:\Software\Python\pywin32-304.0-cp310-cp310-win_amd64.whl 
pip install M:\Software\Python\pandas-1.4.3-cp310-cp310-win_amd64.whl
pip install xlrd

rem install NetworkWrangler (ran `git pull` in here to make sure it's up to date)
cd C:\Users\mtcpb\Documents\GitHub\NetworkWrangler
pip install -e .

rem for notify-slack
pip install requests

rem for RuntimeConfiguration.py
pip install xlwt xlutils

rem for csvToDbf.py
pip install dbfpy3

rem for transitcrowding.py
pip install simpledbf

rem for RunResults.py
pip install xlwings xlsxwriter openpyxl

RuntimeConfiguration.py

RuntimeConfiguration.py is meant to do the remainder of the runtime-setup automatically, so that all the configuration is in one place and done automatically. See the script for details.

Now that the model is configured, the user can run the model; the steps required to do so are described on the RunModel page.  

Clone this wiki locally