Skip to content

Before Running the simulation

smart-fm edited this page Nov 9, 2018 · 1 revision

There are multiple configurations in the simulation.xml and simrun_MidTerm.xml or simrun_ShortTerm.xml files. Here are the list of the things one must check before start running the simulation.

simulation.xml

1. Database connection is configured correctly.

 <databases> 
          <database id="fm_hpchead" dbtype="postgres">
                <host value="172.25.xxx.xx"/>
                <port value="5432"/>
                <dbname value="simmobcity"/>
 </database>

2. Database credential is set correctly

 <plaintext-credential id="fm_hpchead_pwd">
                <username value="postgres"/>
                <password value="48db@2018"/>
            </plaintext-credential>
 </credentials>

3. Runtime configuration is set properly

Mid-term and Short-term configuration should be different in-terms of

  • base_granularity: Default time tick for MT is 5 second where as for ST it is 100 ms. User can change these values with a reasonable setting.

  • total_runtime: MT is mend to run for 24 hours hence the default value is 1439 (1440 minute = 24 hours, so the value should be 1439 as it start from 0). ST is mend to run for few hours only. Both the values can be changed but the total simulation running time will vary with this setting.

  • total_warmup: Time to stabilize the simulation when no output will be captured.

  • start_time: simulation start time. So the simulation end time = start_time + total_runtime

 <!-- Reasonable values for MidTerm -->
        <base_granularity   value="5"   units="seconds"/>
        <total_runtime      value="1439"      units="minutes" />

        <total_warmup       value="10"     units="seconds" />
        <start_time         value="00:00:00"/>
 <!-- Reasonable values for ShortTerm -->
        <base_granularity   value="100"   units="ms"/>
        <total_runtime      value="120"      units="minutes" />

        <total_warmup       value="10"     units="seconds" />
        <start_time         value="07:00:00"/>

4. Mobility Service Controller

  • If the daily_activity_schedule(DAS) has on-demand modes (e.g. SMS, Rail_SMS etc.) then this controller should be enabled. Make sure the on-demand modes present in the DAS should be supported by either one of the controller's tripSupportMode.

  • If parking is enabled parking related stored procedure must be supplied in the simrun_MidTerm.xml file

  • Fleets must be subscribed for the controller in the taxi_fleet stored procedure

simrun_MidTerm.xml

Setting Run Mode

 <mid_term_run_mode value="supply"/>

Setting proc_map and database credential

 <network_database database="fm_hpchead" credentials="fm_hpchead_pwd" proc_map="simmobcity"/>

Database and credentials values in this file will be used for the simulation. For example fm_hpchead variable will read the database connection from simulation.xml file and fm_hpchead_pwd variable will read the password from simulation.xml to access the database.

proc_map is the collection of the functions. In simrun_MidTerm.xml file multiple proc_map can exist for different simulation setup but this proc_map setup will determine which set of functions will be called during the simulation.

Pathset Config File

SimMobility path-set related configurations are in a different XML file which must be configured in this file.

<pathset_config_file value="data/pathset_config.xml" />

Output generation

Most of the output generation is configurable.

 <output_statistics>
            <journey_time file="journeytime.csv"/>
            <waiting_time file="waitingtime.csv"/>
            <waiting_count file="waitingcount.csv"/>
            <travel_time file="traveltime.csv"/>
            <pt_stop_stats file="ptstopstats.csv"/>
            <subtrip_metrics file="subtrip_metrics.csv" enabled="true" feedback="false"/>
            <screen_line_count file="screen_line_count.csv" enabled="true" interval="900"/>
            <pt_reroute file=""/>
            <link_travel_time file="link_travel_time.csv" feedback="false" alpha="0.5"/>
    </output_statistics>
  • onCallTaxiTrajectory/onHailTaxiTrajectory: These are the trajectory file generated for the on-call service vehicles and taxi.
<onCallTaxiTrajectory enabled="true"/>
<onHailTaxiTrajectory enabled="false"/>

Thread Settings

There are two places where user can set the number of threads. The first one is for processing the ages and the second one is for hourly loading the demand.

<workers>
        <person count="10" granularity="5 seconds"/> <!-- Person agents (with Roles) -->
</workers>

AND
        <thread_number_in_person_loader value="15"/>

Public Transit Configuration

There are three settings related to Public Transit

  • PT Route Choice
  • Moving Buses
  • Moving Trains
 <public_transit enabled="true"/>

If the public_transit is not enabled then agents cannot do the PT route choice hence their PT trips and the subsequent trips won't be generated. Please note that the access/egress for the rail trip will also not be simulated if the public_transit is not enabled.

<busController enabled="true" busline_control_type="headway_based"/>

If the busController is enabled then the buses will run as per their route and schedule. For more information please click here

 <generateBusRoutes enabled="false" />

This configuration should be only true if the simulation is used to generate the bus routes. For more info about generating the bus route please click here.

  <trainController enabled="true" train_control_type="moving_block">

The above configuration will enables the trains to run in the simulation. For more information about train controller please click here

Rest of the configuration can be used as the default one.

Clone this wiki locally