Shared Mobility Fleet Model File

Shared Mobility Fleet Model File#

The shared mobility operator file defined by tnc_fleet_model_file points to the file that contains all essential attributes and functionalities of the operator(s). This includes each operator’s strategy and parameters that control operation.

The current file input allows users to set the number of operators that serve the region, spatial restrictions on where the operate, and what control strategies they adhere to.

Each operator is able to use a collection of existing strategies defined by a user-specified name such as ‘Strat_1’, in the example below. A separate section under this user-specified strategy name needs to exist in the input file.

A strategy collection supports the definition of the following controls:

  • init_vehicle_state_strategy

  • assignment_strategy

  • fare_strategy

  • reposition_strategy

  • charging_strategy

  • maintenance_strategy

  • parking_strategy

If control strategies are not defined for any of the above supported strategies, the default strategy provided by POLARIS will be assumed for the operator that uses this user-defined ‘Strat_1’ collection.

An example input for the shared fleet model looks like the following:

{
  "TNC_Fleet_Model": 
  {
    "NO_OF_OPERATORS": 2,
    "OP_1": "Operator_1",
    "OP_2": "Operator_2"
  },
  "Operator_1": 
  {
    "TNC_FLEET_SIZE": 300,
    "delivery_type": "person",
    "TNC_MAX_WAIT_TIME": 10.0,
    "TNC_WAIT_ASSIGNMENT_TIME": 10.0,
    "TNC_MAX_SEATED_CAPACITY": 4,
    "TNC_LOGGING_INTERVAL": 15,

    "strategy_name": "Strat_1",

    "ZONE_BASED_ASSIGNMENT": true,

    "geofence_flag": false,
    "geofence_zonebased_flag": true,
    "geofence_areatype_limit": 2,
    "geofence_exclusion_zones": [22,25,293,296,297],
    "EV_INITIAL_SoC_RANGE_FLAG": true,
    "EV_INIT_SoC_MEAN": 40,
    "EV_INIT_SoC_SD": 2,

    "force_tnc_over_auto": false,

    "use_fmlm": true,
    "bus_fmlm_ratio": 1.0
  },
  "Strat_1": 
  {
    "DRS_FLAG": true,
    "DRS_MAX_ALLOWABLE_DELAY_SECONDS": 900,
    "DRS_MAX_PERC_DELAY": 25.0,  
    "CUTOFF_BATTERY_LEVEL": 90.0,
    "MIN_EV_SoC": 15.0,
    
    "directionality_threshold_degrees": 10,
    "repositioning_flag": false,
    "zones_multiplier": 0.25,
    "demand_window_size": 0.5,
    "time_tradeoff": 5000,
    "alpha": 1.0,
    
    "EV_CHARGE_IF_IDLE_FLAG": false,
    "EV_CHARGE_IF_IDLE_MINUTES": 15,
    "EV_SERVE_IF_CHARGING_FLAG": false,
    "EV_SERVE_IF_CHARGING_SoC": 60.0
  },

  "Strat_2": 
  {
    "assignment_strategy": "c2c",
    
    "DRS_FLAG": false,
    "DRS_MAX_ALLOWABLE_DELAY_SECONDS": 900,
    "DRS_MAX_PERC_DELAY": 25.0,  
    "CUTOFF_BATTERY_LEVEL": 90.0,
    "MIN_EV_SoC": 15.0,
    
    "repositioning_flag": false,
    "zones_multiplier": 0.25,
    "demand_window_size": 0.5,
    "time_tradeoff": 5000,
    "alpha": 1.0,
    
    "EV_CHARGE_IF_IDLE_FLAG": false,
    "EV_CHARGE_IF_IDLE_MINUTES": 15,
    "EV_SERVE_IF_CHARGING_FLAG": false,
    "EV_SERVE_IF_CHARGING_SoC": 60.0
  },
  "Operator_2": 
  {
    "TNC_FLEET_SIZE": 10,
    "delivery_type": "person",
    "TNC_MAX_WAIT_TIME": 10.0,
    "TNC_MAX_SEATED_CAPACITY": 4,
    "TNC_LOGGING_INTERVAL": 15,

    "strategy_name": "Strat_2",

    "ZONE_BASED_ASSIGNMENT": true,

    "geofence_flag": false,
    "geofence_zonebased_flag": false,
    "geofence_areatype_limit": 2,
    "geofence_inclusion_zones": [11],

    "force_tnc_over_auto": false,

    "use_fmlm": false
  }
}