Data Generation Manual
1. Introduction
1.1 Purpose of this manual
Demonstrates Optimal Shared Mobility Deployment's ability to upload files and create data for API data registration.
1.2 Prerequisites
- Have a FUJITSU Research Portal account
1.3 Sample Data
The demo simulation results and the data used in the demo simulation are published to the demo application. Please use this data when creating data.
- Demo Simulation Results
You can view the demo simulation results from the top screen.
- List of sample data
Sample data used in the demo simulation is available. Click theUpload Data Filesbutton to view the data list.
2. Procedure
2.1 Creating Data Using Data Generation Tools
From the FUJITSU Research Portal, select Technology Browser - > Optimal Shared Mobility Deployment. You can use this service by clicking the Try Data Generation Tools button at the bottom of the page. The top screen of Optimal Shared Mobility Deployment is shown below.
2.1.1 Map Data Generation: OSM Converter
OSM Converter generates map data at any point.
- Enter the city you want in Geocoding
- Adjust the parameters as necessary.
- Press the Generate button
- Press the Download button
2.1.2 OD Data Generation
You can generate data on people's movements by setting the movement start and destination locations.
Method 1: Manual Registration Using OD Builder
- Open OD Builder
- Register your starting point and destination on the map
- Adjust the parameters as necessary
- Press the Download button
Method 2: Automatic generation using OD Generator
- Open Synthetic OD Generator
- Set the number of people with the slider
- Adjust the parameters as necessary
- Press the Download button
2.1.3 Shared e-Scooter Station Settings
Method 1 Manual Registration Using Stations Builder
- Open Stations Builder
- Register station location on map
- Adjust the parameters as necessary.
- Press the Download button
Method 2 Automatic generation using Stations Generator
- Opens the Synthetic Stations Generator
- Set the number of stations with the slider
- Adjust the parameters as necessary.
- Press the Download button
Note: The stations.csv data generated by this tool is missing the following columns required by the latest simulator engine and must be added manually:
price,per_min_pricing_rate,per_min_pricing_start,per_min_pricing_interval. See the stations.csv specification for details. Note: In the latest simulator engine, replaceSOARS_STATIONS_FILEwithSTATIONS_FILE. For details, refer to the env.json specification.
2.1.4 model.json Settings
This is a configuration file for when you want to specify an arbitrary selection probability as a human behavior choice model.
- Open model.json Generator
- Adjust the parameters as necessary.
- Press the Download button
2.1.5 precondition.json Settings
Generates the JSON data needed to upload on the demo app (web app) and perform digital Rehearsal.
- Open precondition.json Builder
- Adjust the parameters as necessary.
- Press the Download button
{
"USECASE":"dynamic-discount"
"ASSIMIL_PERSON_FILE":"simdata-your-simdataId-of-od/od.csv.gz"
"SOARS_STATIONS_FILE":"simdata-your-simdataId-of-stations-csv/stations.csv"
"SUMO_NET_FILE":"simdata-your-simdataId-of-net-file/map.net.xml.gz"
"DMM_MODEL_INFO_FILE":"simdata-your-simdataId-of-model-file/model.json"
"MAP_CENTER_LATITUDE":"35.444395"
"MAP_CENTER_LONGITUDE":"139.636773"
"CURRENCY_SYMBOL":"¥"
"CURRENCY_RATE":"189.1800"
"START_HOUR":"10"
"END_HOUR":"12"
}
Note:
CURRENCY_RATEare ignored by the latest simulator engine.
2.1.6 road-closure.csv road-pricing.csv Settings
road-closure.csv
A CSV file that sets the roads to be closed.
road-pricing.csv
A CSV file that sets the roads to be charged.
- Open closure.csv road-pricing.csv Generator
- Adjust the parameters as necessary.
- Press the Download button
2.2 Use Case: Dynamic Discount
Overview
It is a use case where people have the option of driving, walking, or scooter to get to a destination, and each person chooses the means of transportation depending on the cost and time, and then rehearses digitally. When renting an scooter, discounts based on the status of the scooter station will impact costs and change people's transportation choices. That way, you can see what the changes to scooter utilization and user fee revenue are. You can also modify the initial deployment of the scooter.
Digital Rehearsal Input/Output
Digital rehearsal input/output is defined for each use case. Dynamic Discount provides input files in the following formats: The output is in the "File output as a result of digital rehearsal" format described below.
Input Files Required for Digital Rehearsal
(Common)
- stations.csv
- map.net.xml.gz
- od.csv.gz
- (model.json)
- (fuel-cost.csv)
- (park-charge-dst.csv)
map.net.xml.gz and od.csv.gz must be gzip.
(WebApp)
- precondition.json
(API)
- (condition.json)
- env.json
precondition.json
{
"USECASE":"dynamic-discount",
"ASSIMIL_PERSON_FILE":"simdata-your-simdataId-of-od/od.csv.gz",
"STATIONS_FILE":"simdata-your-simdataId-of-stations-csv/stations.csv",
"SUMO_NET_FILE":"simdata-your-simdataId-of-net-file/map.net.xml.gz",
"DMM_MODEL_INFO_FILE":"simdata-your-simdataId-of-model-file/model.json",
"FUEL_COST_FILE": "simdata-your-simdataId-of-fuel-cost/fuel-cost.csv",
"PARK_CHARGE_DST_FILE": "simdata-your-simdataId-of-park-charge-dst/park-charge-dst.csv",
"MAP_CENTER_LATITUDE":"35.444395",
"MAP_CENTER_LONGITUDE":"139.636773",
"CURRENCY_SYMBOL":"¥",
"START_HOUR":"10",
"END_HOUR":"12"
}
condition.json
{
"name":"09/11_14:59:08",
"seed":0,
"start":5,
"end":6,
"usecases":{"batteryBased":{"enabled":true,"discount":10,"lowBatteryPercent":15},"numberBased":{"enabled":true,"discount":25,"scooterNumberThreshold":1}},
"usecase":"dynamic-discount",
"vtypes":{"car":true,"pedestrian":true,"escooter":true},
"dmmmodel":{},
"currencySymbol":"¥","createdAt":"2023-09-11T05:59:18.403Z","mapcenter":[139.645,35.584],
"stations":[{"id":"bay0","initial":2,"pos":[35.438606,139.642578],"zone":"b"},{"id":"bay1","initial":0,"pos":[35.449786,139.642196],"zone":"a"},{"id":"bay2","initial":1,"pos":[35.440275,139.645568],"zone":"a"},...]
}
A JSON-formatted file that registers the conditions under which the digital rehearsal was performed. Refer to the above for the property names. The sample web server uses this file to display digital rehearsal results.
env.json
A JSON-formatted file that contains information that is input to the digital rehearsal when the digital rehearsal is executed. Specify this env.json to indicate the execution of the digital rehearsal.
{
"USECASE":"dynamic-discount",
"CONDITION_JSON_ID":"simdata-d2d0e1b3-7f78-4939-affc-939d712b15d7",
"ASSIMIL_PERSON_FILE":"simdata-272c8229-5a50-48c1-b0db-771c46e3b5d3/od.csv.gz",
"ASSIMIL_ALIGNER_MAX_STEPS":"3600",
"ASSIMIL_ALIGNER_START_TIME":"5",
"STATIONS_FILE":"simdata-1c480139-c8d5-4d24-a551-af10f008339a/stations.csv",
"SUMO_NET_FILE":"simdata-4467079a-fbd0-440e-8505-a8c518e94562/map.net.xml.gz",
"DMM_MODEL_INFO_FILE":"simdata-feaf5067-43c2-4673-a229-43e0d7d5dc6d/model.json",
"RANDOM_SEED":"0",
"VTYPES":"car,pedestrian",
"USECASE_BATTERY_ENABLED":"false",
"USECASE_BATTERY_DISCOUNT":"0",
"USECASE_BATTERY_LOW_PERCENT":"15",
"USECASE_NUMBER_ENABLED":"false",
"USECASE_NUMBER_DISCOUNT":"0",
"USECASE_NUMBER_THRESHOLD":"1",
"NAME":"02/05_09:59:07",
"SHARED_VTYPES":"escooter",
"FUEL_COST_FILE": "simdata-f0920147-324b-45da-8c74-21b906b5fbf0/fuel-cost.csv",
"PARK_CHARGE_DST_FILE": "simdata-6a642247-38fa-47c9-b985-61642a170df6/park-charge-dst.csv"
}
| key | value example | Required | Description |
|---|---|---|---|
| USECASE | "dynamic-discount" | Required | Specifies the digital rehearsal use case to perform. |
| CONDITION_JSON_ID | "simdata-d2d0e1b3-7f78-4939-affc-939d712b15d7" | Specifies the simdataId of "condition.json." | |
| ASSIMIL_PERSON_FILE | "simdata-272c8229-5a50-48c1-b0db-771c46e3b5d3/od.csv.gz" | Specifies that the registered OD file is used for digital rehearsal. simdataId/filename. If not specified, the OD file provided as a sample is used. | |
| ASSIMIL_ALIGNER_MAX_STEPS | "3600" | Specifies the time (in seconds) to perform the digital rehearsal. If not specified, it is 14400. | |
| ASSIMIL_ALIGNER_START_TIME | "5" | The start time of the digital rehearsal in hours. The OD file timestamp is greater than or equal to this time and digitally rehearses for the OD for the period ASSIMIL_ALIGNER_MAX_STEPS. If not specified, it is 6. | |
| STATIONS_FILE | "simdata-1c480139-c8d5-4d24-a551-af10f008339a/stations.csv" | Specifies the initial deployment file for the registered station. simdataId/filename. If not specified, the station is none. | |
| SUMO_NET_FILE | "simdata-4467079a-fbd0-440e-8505-a8c518e94562/map.net.xml.gz" | Specify this if you want to perform digital rehearsal using the net file of the registered SUMO. simdataId/filename. If not specified, the netfile provided as a sample is used. | |
| DMM_MODEL_INFO_FILE | "simdata-feaf5067-43c2-4673-a229-43e0d7d5dc6d/model.json" | Specify this if you want to perform a digital rehearsal for action selection by specifying the selection probability. simdataId/filename. | |
| RANDOM_SEED | "0" | Sets the seed of the random number. Digital rehearsal results may differ even if the seeds are the same. If not specified, it is 0. | |
| VTYPES | "car,pedestrian" | Specifies the transportation options for digital rehearsal. The settings are car, pedestrian, escooter, and bicycle. If not specified, there is no choice. | |
| USECASE_BATTERY_ENABLED | "false" | "true" to enable a discount policy for returning to a station with a low battery scooter. | |
| USECASE_BATTERY_DISCOUNT | "0" | The percentage to discount. | |
| USECASE_BATTERY_LOW_PERCENT | "15" | Specifies the percentage of battery remaining that is considered low. | |
| USECASE_NUMBER_ENABLED | "false" | "true" to enable a discount policy for returning to stations with fewer available escorts. | |
| USECASE_NUMBER_DISCOUNT | "0" | The percentage to discount. | |
| USECASE_NUMBER_THRESHOLD | "1" | Specifies the number of units that are considered low. | |
| NAME | "02/05_09:59:07" | Name the digital rehearsal. If not specified, the name is empty. | |
| SHARED_VTYPES | "escooter" | Specifies the shared mobility choices for digital rehearsal. The settings are car, escooter, bicycle, and aircar. If not specified, there is no choice. | |
| FUEL_COST_FILE | "simdata-f0920147-324b-45da-8c74-21b906b5fbf0/fuel-cost.csv" | Specifies the configuration file for the transportation fuel cost calculation. | |
| PARK_CHARGE_DST_FILE | "simdata-6a642247-38fa-47c9-b985-61642a170df6/park-charge-dst.csv" | A file that sets the parking fee for traveling to a destination by a single means of transportation. |
File output as a result of digital rehearsal
- states.txt
- output.txt
- current-usage.txt
- total-usage.txt
- choice.txt
These files can be obtained using the digital rehearsal result file acquisition API.
2.3 Use Case: Road Closure
Summary
It is a use case in which a person has the option of driving, walking, biking, or scooter to get to a destination, and each person chooses the means of transportation depending on the cost and time, and rehearses it digitally. By closing roads by time of day for each mode of travel, travel routes change, affecting travel times and changing people's choice of mode of travel.
As with the dynamic discount and initial deployment use cases, you can also see the impact of:
- When renting an scooter, discounts based on the status of the escooter's station will impact costs and change people's transportation choices. That way, you can see what the changes to scooter utilization and user fee revenue are.
- You can also modify the initial deployment of the scooter, similar to the initial deployment use case.
Trucks also exist as a means of transportation. However, the truck will always appear in the digital rehearsal as someone who travels by truck, rather than as a mode of transportation of choice.
Digital rehearsal input/output
Digital rehearsal input/output is defined for each use case. Road Closure provides input files in the following formats:
The output is in the "File output as a result of digital rehearsal" format described below.
Input files required for digital rehearsal
(Common)
- stations.csv
- road-closure.csv
- map.net.xml.gz
- od.csv.gz
- (model.json)
- (fuel-cost.csv)
- (park-charge-dst.csv)
map.net.xml.gz and od.csv.gz must be gzip.
(WebApp)
- precondition.json
(API)
- (condition.json)
- env.json
precondition.json
{
"USECASE": "road-closure",
"ASSIMIL_PERSON_FILE": "simdata-your-simdataId-of-od/od.csv.gz",
"STATIONS_FILE": "simdata-your-simdataId-of-stations-csv/stations.csv",
"SUMO_NET_FILE": "simdata-your-simdataId-of-net-file/map.net.xml.gz",
"DMM_MODEL_INFO_FILE": "simdata-your-simdataId-of-model-file/model.json",
"ROAD_CLOSURE_FILE": "simdata-your-simdataId-of-road-closure-file/road-closure.csv",
"FUEL_COST_FILE": "simdata-your-simdataId-of-fuel-cost/fuel-cost.csv",
"PARK_CHARGE_DST_FILE": "simdata-your-simdataId-of-park-charge-dst/park-charge-dst.csv",
"MAP_CENTER_LATITUDE":"35.444395",
"MAP_CENTER_LONGITUDE":"139.636773",
"MAP_ZOOM": "14",
"CURRENCY_SYMBOL": "¥",
"START_HOUR": "10",
"END_HOUR": "12"
}
condition.json
{
"name":"09/11_14:59:08",
"seed":0,
"start":5,
"end":6,
"usecases":{"batteryBased":{"enabled":true,"discount":10,"lowBatteryPercent":15},"numberBased":{"enabled":true,"discount":25,"scooterNumberThreshold":1}},
"usecase":"road-closure",
"vtypes":{"car":true,"pedestrian":true,"escooter":false,"bicycle":false,"truck":false},
"dmmmodel":{},
"currencySymbol":"¥","createdAt":"2023-09-11T05:59:18.403Z","mapcenter":[139.645,35.584],
"stations":[{"id":"bay0","initial":2,"pos":[35.438606,139.642578],"zone":"b"},{"id":"bay1","initial":0,"pos":[35.449786,139.642196],"zone":"a"},{"id":"bay2","initial":1,"pos":[35.440275,139.645568],"zone":"a"},...]
}
A JSON-formatted file that registers the conditions under which the digital rehearsal was performed. The format is up to you. The sample web server uses this file to display digital rehearsal results.
env.json
{
"USECASE":"road-closure",
"CONDITION_JSON_ID":"simdata-d2d0e1b3-7f78-4939-affc-939d712b15d7",
"ASSIMIL_PERSON_FILE":"simdata-272c8229-5a50-48c1-b0db-771c46e3b5d3/od.csv.gz",
"ASSIMIL_ALIGNER_MAX_STEPS":"3600",
"ASSIMIL_ALIGNER_START_TIME":"5",
"STATIONS_FILE":"simdata-1c480139-c8d5-4d24-a551-af10f008339a/stations.csv",
"SUMO_NET_FILE":"simdata-4467079a-fbd0-440e-8505-a8c518e94562/map.net.xml.gz",
"DMM_MODEL_INFO_FILE":"simdata-feaf5067-43c2-4673-a229-43e0d7d5dc6d/model.json",
"RANDOM_SEED":"0",
"ROAD_CLOSURE_FILE":"simdata-f261a82b-dac2-4034-a765-7e4d56901c12/road-closure.csv",
"VTYPES":"car,pedestrian",
"USECASE_BATTERY_ENABLED":"false",
"USECASE_BATTERY_DISCOUNT":"0",
"USECASE_BATTERY_LOW_PERCENT":"15",
"USECASE_NUMBER_ENABLED":"false",
"USECASE_NUMBER_DISCOUNT":"0",
"USECASE_NUMBER_THRESHOLD":"1",
"NAME":"02/05_09:59:07",
"SHARED_VTYPES":"",
"FUEL_COST_FILE": "simdata-f0920147-324b-45da-8c74-21b906b5fbf0/fuel-cost.csv",
"PARK_CHARGE_DST_FILE": "simdata-6a642247-38fa-47c9-b985-61642a170df6/park-charge-dst.csv"
}
A JSON-formatted file that contains information that is input to the digital rehearsal when the digital rehearsal is executed. Specify this env.json to indicate the execution of the digital rehearsal.
| Key | Value example | Description |
|---|---|---|
| USECASE | "road-closure" | Specifies the use case for the digital rehearsal to be performed. |
| CONDITION_JSON_ID | "simdata-d2d0e1b3-7f78-4939-affc-939d712b15d7" | Specifies the simdataId of "condition.json". |
| ASSIMIL_PERSON_FILE | "simdata-272c8229-5a50-48c1-b0db-771c46e3b5d3/od.csv.gz" | Specifies that the registered OD file will be used for digital rehearsal. Specifies in simdataId/filename. If not specified, the sample OD file is used. |
| ASSIMIL_ALIGNER_MAX_STEPS | "3600" | Specifies the time (in seconds) for the digital rehearsal. An example is an hour. |
| ASSIMIL_ALIGNER_START_TIME | "5" | Specifies the start time of the digital rehearsal (in hours). Digitally rehearses the OD of the timestamp for the period of ASSIMIL_ALIGNER_MAX_STEPS after the start time. |
| STATIONS_FILE | "simdata-1c480139-c8d5-4d24-a551-af10f008339a/stations.csv" | Specifies the registered initial deployment file of the station. Specifies in simdataId/filename. If not specified, the station is none. |
| SUMO_NET_FILE | "simdata-4467079a-fbd0-440e-8505-a8c518e94562/map.net.xml.gz" | Specify this to execute digital rehearsal using a registered SUMO net file. Specifies in simdataId/filename. If not specified, the sample net file is used. |
| DMM_MODEL_INFO_FILE | "simdata-feaf5067-43c2-4673-a229-43e0d7d5dc6d/model.json" | Specify this to execute digital rehearsal using a registered behavior choice model file. Specifies in simdataId/filename. If not specified, the behavior choice model learned from the London data is used. |
| RANDOM_SEED | "0" | Sets the seed for the random number. Digital rehearsal results may differ even if the seeds are the same. If not specified, it is 0. |
| ROAD_CLOSURE_FILE | "simdata-f261a82b-dac2-4034-a765-7e4d56901c12/road-closure.csv" | Specifies the registered road closure configuration file. Specifies in `simdataId/filename. |
| VTYPES | "car,pedestrian" | Specifies the transportation options for digital rehearsals. You can configure car, pedestrian, escooter, bicycle, and truck. However, truck is not selected as the mode of travel. If not specified, there is no choice. |
| USECASE_BATTERY_ENABLED | "false" | Set to true to enable the discount policy for returning to stations with low battery scooters. |
| USECASE_BATTERY_DISCOUNT | "0" | The percentage to discount (%). |
| USECASE_BATTERY_LOW_PERCENT | "15" | Specifies the amount of battery remaining to be considered low (%). |
| USECASE_NUMBER_ENABLED | "false" | Set to true to enable the discount policy for returning to stations with fewer scooters available. |
| USECASE_NUMBER_DISCOUNT | "0" | The percentage to discount (%). |
| USECASE_NUMBER_THRESHOLD | "1" | Specify the number of units for which you want to determine that the number of available units is small. |
| NAME | "02/05_09:59:07" | Name the digital rehearsal. If not specified, the name is empty. |
| SHARED_VTYPES | "" | Specifies the shared mobility choices for digital rehearsal. The settings are car, escooter, bicycle, and aircar. If not specified, there is no choice. |
| FUEL_COST_FILE | "simdata-f0920147-324b-45da-8c74-21b906b5fbf0/fuel-cost.csv" | Specifies the configuration file for the transportation fuel cost calculation. |
| PARK_CHARGE_DST_FILE | "simdata-6a642247-38fa-47c9-b985-61642a170df6/park-charge-dst.csv" | A file that sets the parking fee for traveling to a destination by a single means of transportation. |
| USECASE_BATTERY_ENABLED | "false" | Set to true to enable the discount policy for returning to stations with low battery scooters. |
| USECASE_BATTERY_DISCOUNT | "0" | The percentage to discount (%). |
| USECASE_BATTERY_LOW_PERCENT | "15" | Specifies the amount of battery remaining to be considered low (%). |
| USECASE_NUMBER_ENABLED | "false" | Set to true to enable the discount policy for returning to stations with fewer scooters available. |
| USECASE_NUMBER_DISCOUNT | "0" | The percentage to discount (%). |
| USECASE_NUMBER_THRESHOLD | "1" | Specify the number of units for which you want to determine that the number of available units is small. |
File output as a result of digital rehearsal
- states.txt
- output.txt
- current-usage.txt
- total-usage.txt
- choice.txt
These files can be obtained using the digital rehearsal result file acquisition API.
2.4 Use Case: Road Pricing
Summary
It is a use case in which a person has the option of driving, walking, biking, or scooter to get to a destination, and each person chooses the means of transportation depending on the cost and time, and rehearses it digitally. By charging roads by time of day for each mode of travel, costs are affected, and when detours are made, travel times are affected, and people's choice of mode of travel is changed.
As with road closures, dynamic discounts, and initial deployment use cases, the following impacts can also be observed:
- By closing roads by time zone for each mode of travel, travel routes change, affecting travel times and changing people's choice of mode of travel.
- When renting an scooter, discounts based on the status of the scooter's station will impact costs and change people's transportation choices. That way, you can see what the changes to scooter utilization and user fee revenue are.
- You can also modify the initial deployment of the scooter, similar to the initial deployment use case.
Trucks also exist as a means of transportation. However, the truck will always appear in the digital rehearsal as someone who travels by truck, rather than as a mode of transportation of choice.
Digital rehearsal input/output
Digital rehearsal input/output is defined for each use case. Road Pricing provides input files in the following formats:
The output is in the "File output as a result of digital rehearsal" format described below.
Input files required for digital rehearsal
(Common)
- stations.csv
- road-closure.csv
- road-pricing.csv
- map.net.xml.gz
- od.csv.gz
- (model.json)
- (fuel-cost.csv)
- (park-charge-dst.csv)
map.net.xml.gz and od.csv.gz must be gzip.
(WebApp)
- precondition.json
(API)
- (condition.json)
- env.json
precondition.json
{
"USECASE": "road-pricing",
"ASSIMIL_PERSON_FILE": "simdata-your-simdataId-of-od/od.csv.gz",
"STATIONS_FILE": "simdata-your-simdataId-of-stations-csv/stations.csv",
"SUMO_NET_FILE": "simdata-your-simdataId-of-net-file/map.net.xml.gz",
"DMM_MODEL_INFO_FILE": "simdata-your-simdataId-of-model-file/model.json",
"ROAD_CLOSURE_FILE": "simdata-your-simdataId-of-road-closure-file/road-closure.csv",
"ROAD_PRICING_FILE": "simdata-your-simdataId-of-road-pricing-file/road-pricing.csv",
"FUEL_COST_FILE": "simdata-your-simdataId-of-fuel-cost/fuel-cost.csv",
"PARK_CHARGE_DST_FILE": "simdata-your-simdataId-of-park-charge-dst/park-charge-dst.csv",
"MAP_CENTER_LATITUDE":"35.444395",
"MAP_CENTER_LONGITUDE":"139.636773",
"MAP_ZOOM": "14",
"CURRENCY_SYMBOL": "¥",
"START_HOUR": "10",
"END_HOUR": "12"
}
condition.json
{
"name":"09/11_14:59:08",
"seed":0,
"start":5,
"end":6,
"usecases":{"batteryBased":{"enabled":true,"discount":10,"lowBatteryPercent":15},"numberBased":{"enabled":true,"discount":25,"scooterNumberThreshold":1}},
"usecase":"road-pricing",
"vtypes":{"car":true,"pedestrian":true,"escooter":false,"bicycle":false,"truck":false},
"detour":{"car":true,"pedestrian":false,"bicycle":false},
"dmmmodel":{},
"currencySymbol":"¥","createdAt":"2023-09-11T05:59:18.403Z","mapcenter":[139.645,35.584],
"stations":[{"id":"bay0","initial":2,"pos":[35.438606,139.642578],"zone":"b"},{"id":"bay1","initial":0,"pos":[35.449786,139.642196],"zone":"a"},{"id":"bay2","initial":1,"pos":[35.440275,139.645568],"zone":"a"},...]
A JSON-formatted file that registers the conditions under which the digital rehearsal was performed. The format is up to you. The sample web server uses this file to display digital rehearsal results.
env.json
{
"USECASE":"road-pricing",
"CONDITION_JSON_ID":"simdata-d2d0e1b3-7f78-4939-affc-939d712b15d7",
"ASSIMIL_PERSON_FILE":"simdata-272c8229-5a50-48c1-b0db-771c46e3b5d3/od.csv.gz",
"ASSIMIL_ALIGNER_MAX_STEPS":"3600",
"ASSIMIL_ALIGNER_START_TIME":"5",
"STATIONS_FILE":"simdata-1c480139-c8d5-4d24-a551-af10f008339a/stations.csv",
"SUMO_NET_FILE":"simdata-4467079a-fbd0-440e-8505-a8c518e94562/map.net.xml.gz",
"DMM_MODEL_INFO_FILE":"simdata-feaf5067-43c2-4673-a229-43e0d7d5dc6d/model.json",
"RANDOM_SEED":"0",
"ROAD_CLOSURE_FILE":"simdata-f261a82b-dac2-4034-a765-7e4d56901c12/road-closure.csv",
"ROAD_PRICING_FILE":"simdata-f0917da6-4a9b-4e24-99f4-909f240be14d/road-pricing.csv",
"VTYPES":"car,pedestrian",
"DETOUR_VTYPES":"car",
"USECASE_BATTERY_ENABLED":"false",
"USECASE_BATTERY_DISCOUNT":"0",
"USECASE_BATTERY_LOW_PERCENT":"15",
"USECASE_NUMBER_ENABLED":"false",
"USECASE_NUMBER_DISCOUNT":"0",
"USECASE_NUMBER_THRESHOLD":"1",
"NAME":"02/05_09:59:07",
"SHARED_VTYPES":"",
"FUEL_COST_FILE": "simdata-f0920147-324b-45da-8c74-21b906b5fbf0/fuel-cost.csv",
"PARK_CHARGE_DST_FILE": "simdata-6a642247-38fa-47c9-b985-61642a170df6/park-charge-dst.csv"
}
A JSON-formatted file that contains information that is input to the digital rehearsal when the digital rehearsal is executed. Specify this env.json to indicate the execution of the digital rehearsal.
| Key | Value example | Description |
|---|---|---|
| USECASE | "road-pricing" | Specifies the use case for the digital rehearsal to be performed. |
| CONDITION_JSON_ID | "simdata-d2d0e1b3-7f78-4939-affc-939d712b15d7" | Specifies the simdataId of "condition.json". |
| ASSIMIL_PERSON_FILE | "simdata-272c8229-5a50-48c1-b0db-771c46e3b5d3/od.csv.gz" | Specifies that the registered OD file will be used for digital rehearsal. Specifies in simdataId/filename. If not specified, the sample OD file is used. |
| ASSIMIL_ALIGNER_MAX_STEPS | "3600" | Specifies the time (in seconds) for the digital rehearsal. An example is an hour. |
| ASSIMIL_ALIGNER_START_TIME | "5" | Specifies the start time of the digital rehearsal (in hours). Digitally rehearses the OD of the timestamp for the period of ASSIMIL_ALIGNER_MAX_STEPS after the start time. |
| STATIONS_FILE | "simdata-1c480139-c8d5-4d24-a551-af10f008339a/stations.csv" | Specifies the registered initial deployment file of the station. Specifies in simdataId/filename. If not specified, the station is none. |
| SUMO_NET_FILE | "simdata-4467079a-fbd0-440e-8505-a8c518e94562/map.net.xml.gz" | Specify this to execute digital rehearsal using a registered SUMO net file. Specifies in simdataId/filename. If not specified, the sample net file is used. |
| DMM_MODEL_INFO_FILE | "simdata-feaf5067-43c2-4673-a229-43e0d7d5dc6d/model.json" | Specify this to execute digital rehearsal using a registered behavior choice model file. Specifies in simdataId/filename. If not specified, the behavior choice model learned from the London data is used. |
| RANDOM_SEED | "0" | Sets the seed for the random number. Digital rehearsal results may differ even if the seeds are the same. If not specified, it is 0. |
| ROAD_CLOSURE_FILE | "simdata-f261a82b-dac2-4034-a765-7e4d56901c12/road-closure.csv" | Specifies the registered road closure configuration file. Specifies in `simdataId/filename. |
| ROAD_PRICING_FILE | "simdata-f0917da6-4a9b-4e24-99f4-909f240be14d/road-pricing.csv" | Specifies the registered road charging configuration file. Specifies in simdataId/filename. |
| VTYPES | "car,pedestrian" | Specifies the transportation options for digital rehearsals. You can configure car, pedestrian, escooter, bicycle, and truck. However, truck is not selected as the mode of travel. If not specified, there is no choice. |
| DETOUR_VTYPES | "car" | Specifies the means of travel to bypass. You can configure car, pedestrian, and bicycle. |
| USECASE_BATTERY_ENABLED | "false" | Set to true to enable the discount policy for returning to stations with low battery scooters. |
| USECASE_BATTERY_DISCOUNT | "0" | The percentage to discount (%). |
| USECASE_BATTERY_LOW_PERCENT | "15" | Specifies the amount of battery remaining to be considered low (%). |
| USECASE_NUMBER_ENABLED | "false" | Set to true to enable the discount policy for returning to stations with fewer scooters available. |
| USECASE_NUMBER_DISCOUNT | "0" | The percentage to discount (%). |
| USECASE_NUMBER_THRESHOLD | "1" | Specify the number of units for which you want to determine that the number of available units is small. |
| NAME | "02/05_09:59:07" | Name the digital rehearsal. If not specified, the name is empty. |
| SHARED_VTYPES | "" | Specifies the shared mobility choices for digital rehearsal. The settings are car, escooter, bicycle, and aircar. If not specified, there is no choice. |
| FUEL_COST_FILE | "simdata-f0920147-324b-45da-8c74-21b906b5fbf0/fuel-cost.csv" | Specifies the configuration file for the transportation fuel cost calculation. |
| PARK_CHARGE_DST_FILE | "simdata-6a642247-38fa-47c9-b985-61642a170df6/park-charge-dst.csv" | A file that sets the parking fee for traveling to a destination by a single means of transportation. |
| USECASE_BATTERY_ENABLED | "false" | Set to true to enable the discount policy for returning to stations with low battery scooters. |
| USECASE_BATTERY_DISCOUNT | "0" | The percentage to discount (%). |
| USECASE_BATTERY_LOW_PERCENT | "15" | Specifies the amount of battery remaining to be considered low (%). |
| USECASE_NUMBER_ENABLED | "false" | Set to true to enable the discount policy for returning to stations with fewer scooters available. |
| USECASE_NUMBER_DISCOUNT | "0" | The percentage to discount (%). |
| USECASE_NUMBER_THRESHOLD | "1" | Specify the number of units for which you want to determine that the number of available units is small. |
File output as a result of digital rehearsal
- states.txt
- output.txt
- current-usage.txt
- total-usage.txt
- choice.txt
These files can be obtained using the digital rehearsal result file acquisition API.
2.5 Use Case: Park and Ride
Summary
This is a use case where people can choose to travel to a destination by car, by foot, by escooter, by bicycle, or by a public common authority, and then digital rehearsal each person's choice of transportation based on cost and time.
By installing a parking lot, transferring to public transport becomes an option, affecting costs and travel times, and changing people's choice of transportation.
As with the dynamic discount and initial deployment use cases, you can also see the impact of:
- When renting an scooter, discounts based on the status of the escooter's station will impact costs and change people's transportation choices. That way, you can see what the changes to scooter utilization and user fee revenue are.
- You can also modify the initial deployment of the scooter, similar to the initial deployment use case.
Digital rehearsal input/output
Digital rehearsal input/output is defined for each use case. Park and Ride provides input files in the following formats:
The output is in the "File output as a result of digital rehearsal" format described below.
Input files required for digital rehearsal
(Common)
- stations.csv
- map.net.xml.gz
- od.csv.gz
- parking.csv
- osm.pbf
- (model.json)
- (gtfs.zip)
- (fuel-cost.csv)
- (park-charge-dst.csv)
- (public-transport.csvn)
- (stops.csvn)
- (coupon.csvn)
map.net.xml.gz and od.csv.gz must be gzip.
(WebApp)
- precondition.json
(API)
- (condition.json)
- env.json
precondition.json
{
"USECASE": "park-and-ride",
"ASSIMIL_PERSON_FILE": "simdata-your-simdataId-of-od/od.csv.gz",
"STATIONS_FILE": "simdata-your-simdataId-of-stations-csv/stations.csv",
"SUMO_NET_FILE": "simdata-your-simdataId-of-net-file/map.net.xml.gz",
"FUEL_COST_FILE": "simdata-your-simdataId-of-fuel-cost/fuel-cost.csv",
"PARK_CHARGE_DST_FILE": "simdata-your-simdataId-of-park-charge-dst/park-charge-dst.csv",
"MAP_CENTER_LATITUDE":"35.444395",
"MAP_CENTER_LONGITUDE":"139.636773",
"MAP_ZOOM": "14",
"CURRENCY_SYMBOL": "¥",
"START_HOUR": "10",
"END_HOUR": "12",
"DATE": "2024-05-13",
"TIMEZONE": "Asia/Tokyo",
"PARKING_FILE": "simdata-your-simdataId-of-parking-csv/parking.csv",
"OTP_OSM_FILE": "simdata-your-simdataId-of-otp-osm-pbf/osm.pbf",
"PUBLIC_TRANSPORT_FILE": "simdata-your-simdataId-of-public-transport/public-transport.csv",
"STOPS_FILE": "simdata-your-simdataId-of-stops/stops.csv",
"COUPON_FILE": "simdata-your-simdataId-of-coupon/coupon.csv",
"OTP_GTFS_USE_DEFAULT": true
}
condition.json
{
"name":"03/15_16:17:44",
"seed":0,
"date":{"year":2024,"month":3,"day":14},
"start":5,
"end":6,
"usecases":{"batteryBased":{"enabled":false,"discount":0,"lowBatteryPercent":15},"numberBased":{"enabled":false,"discount":0,"scooterNumberThreshold":1}},
"usecase":"park-and-ride",
"vtypes":{"car":true,"pedestrian":true,"escooter":false,"bicycle":true,"pt":true},
"dmmmodel":{},
"currencySymbol":"¥",
"createdAt":"2024-03-15T07:17:58.470Z",
"mapcenter":[139.645,35.584],
"parking":[{"id":"parking1","total":5,"pos":[139.64652349472,35.58208039592385],"type":"car","charge":100},{"id":"parking2","total":5,"pos":[139.64478542327885,35.58114675367203],"type":"bicycle","charge":100},{"id":"parking3","total":5,"pos":[139.64345504760655,35.581207833404605],"type":"car","charge":100},{"id":"parking4","total":5,"pos":[139.64252163887005,35.58129509008397],"type":"car","charge":100}]
}
A JSON-formatted file that registers the conditions under which the digital rehearsal was performed. The format is up to you. The sample web server uses this file to display digital rehearsal results.
env.json
{
"USECASE":"park-and-ride",
"CONDITION_JSON_ID":"simdata-79e4b04f-532e-43b5-8898-22b71e0b3aa4",
"ASSIMIL_PERSON_FILE":"simdata-272c8229-5a50-48c1-b0db-771c46e3b5d3/od.csv.gz",
"ASSIMIL_ALIGNER_MAX_STEPS":"3600",
"ASSIMIL_ALIGNER_START_TIME":"5",
"STATIONS_FILE":"simdata-1c480139-c8d5-4d24-a551-af10f008339a/stations.csv",
"SUMO_NET_FILE":"simdata-4467079a-fbd0-440e-8505-a8c518e94562/map.net.xml.gz",
"DMM_MODEL_INFO_FILE":"simdata-feaf5067-43c2-4673-a229-43e0d7d5dc6d/model.json",
"RANDOM_SEED":"0",
"VTYPES":"car,pedestrian,bicycle,pt",
"USECASE_BATTERY_ENABLED":"false",
"USECASE_BATTERY_DISCOUNT":"0",
"USECASE_BATTERY_LOW_PERCENT":"15",
"USECASE_NUMBER_ENABLED":"false",
"USECASE_NUMBER_DISCOUNT":"0",
"USECASE_NUMBER_THRESHOLD":"1",
"DATE":"2024-03-14",
"TIMEZONE":"Asia/Tokyo",
"PARKING_FILE":"simdata-10f56ac9-9296-4c9b-ba34-7db6ddda809d/parking.csv",
"NAME":"02/05_09:59:07",
"SHARED_VTYPES":"",
"PUBLIC_TRANSPORT_FILE": "simdata-a82086cb-dda5-44db-8a05-f89da971ce44/public-transport.csv",
"STOPS_FILE": "simdata-397ffe05-da3d-40c8-b0da-1ec8f3a4490a/stops.csv",
"COUPON_FILE": "simdata-d3862a7f-5c0f-4b54-84c3-c7a37d72d311/coupon.csv",
"FUEL_COST_FILE": "simdata-f0920147-324b-45da-8c74-21b906b5fbf0/fuel-cost.csv",
"PARK_CHARGE_DST_FILE": "simdata-6a642247-38fa-47c9-b985-61642a170df6/park-charge-dst.csv"
}
A JSON-formatted file that contains information that is input to the digital rehearsal when the digital rehearsal is executed. Specify this env.json to indicate the execution of the digital rehearsal.
| Key | Value example | Description |
|---|---|---|
| USECASE | "park-and-ride" | Specifies the use case for the digital rehearsal to be performed. |
| CONDITION_JSON_ID | "simdata-d2d0e1b3-7f78-4939-affc-939d712b15d7" | Specifies the simdataId of "condition.json". |
| ASSIMIL_PERSON_FILE | "simdata-272c8229-5a50-48c1-b0db-771c46e3b5d3/od.csv.gz" | Specifies that the registered OD file will be used for digital rehearsal. Specifies in simdataId/filename. If not specified, the sample OD file is used. |
| ASSIMIL_ALIGNER_MAX_STEPS | "3600" | Specifies the time (in seconds) for the digital rehearsal. An example is an hour. |
| ASSIMIL_ALIGNER_START_TIME | "5" | Specifies the start time of the digital rehearsal (in hours). Digitally rehearses the OD of the timestamp for the period of ASSIMIL_ALIGNER_MAX_STEPS after the start time. |
| STATIONS_FILE | "simdata-1c480139-c8d5-4d24-a551-af10f008339a/stations.csv" | Specifies the registered initial deployment file of the station. Specifies in simdataId/filename. If not specified, the station is none. |
| SUMO_NET_FILE | "simdata-4467079a-fbd0-440e-8505-a8c518e94562/map.net.xml.gz" | Specify this to execute digital rehearsal using a registered SUMO net file. Specifies in simdataId/filename. If not specified, the sample net file is used. |
| DMM_MODEL_INFO_FILE | "simdata-feaf5067-43c2-4673-a229-43e0d7d5dc6d/model.json" | Specify this to execute digital rehearsal using a registered behavior choice model file. Specifies in simdataId/filename. If not specified, the behavior choice model learned from the London data is used. |
| RANDOM_SEED | "0" | Sets the seed for the random number. Digital rehearsal results may differ even if the seeds are the same. If not specified, it is 0. |
| VTYPES | "car,pedestrian,escooter,pt" | Specifies the transportation options for digital rehearsals. You can configure car, pedestrian, escooter, bicycle, and pt. If not specified, there is no choice. |
| USECASE_BATTERY_ENABLED | "false" | Set to true to enable the discount policy for returning to stations with low battery scooters. |
| USECASE_BATTERY_DISCOUNT | "0" | The percentage to discount (%). |
| USECASE_BATTERY_LOW_PERCENT | "15" | Specifies the amount of battery remaining to be considered low (%). |
| USECASE_NUMBER_ENABLED | "false" | Set to true to enable the discount policy for returning to stations with fewer scooters available. |
| USECASE_NUMBER_DISCOUNT | "0" | The percentage to discount (%). |
| USECASE_NUMBER_THRESHOLD | "1" | Specify the number of units for which you want to determine that the number of available units is small. |
| DATE | "2024-03-14" | Specifies the date of the digital rehearsal. ISO_LOCAL_DATE format. |
| TIMEZONE | "Asia/Tokyo" | Specifies the timezone of the digital rehearsal. Specifies the time zone defined by Time Zone Database. |
| PARKING_FILE | "simdata-10f56ac9-9296-4c9b-ba34-7db6ddda809d/parking.csv" | Specifies a file for the parking. Specifies in simdataId/filename. |
| OTP_OSM_FILE | "simdata-b5824fa3-97e5-45a3-b087-fa7b5bb9c6b0/osm.pbf" | Specifies the map information used by OpenTripPlanner. Specifies in simdataId/filename. If not specified, the sample osm file is used. |
| OTP_GTFS_USE_DEFAULT | "true" | true if OpenTripPlanner uses a pre-set file as the GTFS file to use. The sample files include Kawasaki City Bus, JR(Nambu Line, Yokosuka Line, Tsurumi Line), and Tokyu (Toyoko Line, Meguro Line, Denentoshi Line, Oimachi Line). |
| OTP_GTFS_FILE_0 | "simdata-59d4f411-8fc8-411d-a882-c5e9e233cdcf/0_.gtfs.zip" | Specifies the GTFS file used by OpenTripPlanner. Specifies in simdataId/filename. |
| OTP_GTFS_FILE_1 | "simdata-59d4f411-8fc8-411d-a883-c5e9e233cdcf/1_.gtfs.zip" | Specifies the GTFS file used by OpenTripPlanner. Specifies in simdataId/filename. |
| OTP_GTFS_FILE_2 | "simdata-59d4f411-8fc8-411d-a884-c5e9e233cdcf/2_.gtfs.zip" | Specifies the GTFS file used by OpenTripPlanner. Specifies in simdataId/filename. |
| OTP_GTFS_FILE_3 | "simdata-59d4f411-8fc8-411d-a885-c5e9e233cdcf/3_.gtfs.zip" | Specifies the GTFS file used by OpenTripPlanner. Specifies in simdataId/filename. |
| OTP_GTFS_FILE_4 | "simdata-59d4f411-8fc8-411d-a886-c5e9e233cdcf/4_.gtfs.zip" | Specifies the GTFS file used by OpenTripPlanner. Specifies in simdataId/filename. |
| OTP_GTFS_FILE_5 | "simdata-59d4f411-8fc8-411d-a887-c5e9e233cdcf/5_.gtfs.zip" | Specifies the GTFS file used by OpenTripPlanner. Specifies in simdataId/filename. |
| OTP_GTFS_FILE_6 | "simdata-59d4f411-8fc8-411d-a887-c5e9e233cdc6/6_.gtfs.zip" | Specifies the GTFS file used by OpenTripPlanner. Specifies in simdataId/filename. |
| OTP_GTFS_FILE_7 | "simdata-59d4f411-8fc8-411d-a887-c5e9e233cdc7/7_.gtfs.zip" | Specifies the GTFS file used by OpenTripPlanner. Specifies in simdataId/filename. |
| OTP_GTFS_FILE_8 | "simdata-59d4f411-8fc8-411d-a887-c5e9e233cdc8/8_.gtfs.zip" | Specifies the GTFS file used by OpenTripPlanner. Specifies in simdataId/filename. |
| OTP_GTFS_FILE_9 | "simdata-59d4f411-8fc8-411d-a887-c5e9e233cdc9/9_.gtfs.zip" | Specifies the GTFS file used by OpenTripPlanner. Specifies in simdataId/filename. |
| NAME | "02/05_09:59:07" | Name the digital rehearsal. If not specified, the name is empty. |
| SHARED_VTYPES | "" | Specifies the shared mobility choices for digital rehearsal. The settings are car, escooter, bicycle, and aircar. If not specified, there is no choice. |
| PUBLIC_TRANSPORT_FILE | "simdata-a82086cb-dda5-44db-8a05-f89da971ce44/public-transport.csv" | Specifies the registered public transport configuration file. Specifies in simdataId/filename. |
| STOPS_FILE | "simdata-397ffe05-da3d-40c8-b0da-1ec8f3a4490a/stops.csv" | Specifies the registered stops configuration file. Specifies in simdataId/filename. |
| COUPON_FILE | "simdata-d3862a7f-5c0f-4b54-84c3-c7a37d72d311/coupon.csv" | Specifies the registered coupon distribution condition configuration file. Specifies in simdataId/filename. |
| FUEL_COST_FILE | "simdata-f0920147-324b-45da-8c74-21b906b5fbf0/fuel-cost.csv" | Specifies the configuration file for the transportation fuel cost calculation. |
| PARK_CHARGE_DST_FILE | "simdata-6a642247-38fa-47c9-b985-61642a170df6/park-charge-dst.csv" | A file that sets the parking fee for traveling to a destination by a single means of transportation. |
GTFS files must be specified in order, starting with 0. If it is not specified in the middle, it is not used thereafter. For example, if you specify 0 and 2, only 0 is used.
File output as a result of digital rehearsal
- states.txt
- output.txt
- current-usage.txt
- total-usage.txt
- choice.txt
These files can be obtained using the digital rehearsal result file acquisition API.
2.6 Input/output File Specifications
Digital Rehearsal Input File
Does not convert currency rates. Set the amount by matching the currency units of each file. The default is Yen.
condition.json
This file is used to register the conditions under which digital rehearsal was performed. As long as it's JSON, you can format it.
{
"name":"02/05_09:59:07",
"seed":0,
"start":5,
"end":6,
"mapcenter":[139.65339660644534,35.587806006729444],
"mapzoom":13,
"usecase":"initial-location",
"vtypes":{"car":true,"pedestrian":true,"escooter":true},
"dmmmodel":{},
"currencySymbol":"¥",
"createdAt":"2025-02-05T00:59:09.157Z",
"stations":[
{"id":"station-1","initial":5,"pos":[139.65688347811465,35.5821084092067],"zone":"a"},
{"id":"station-2","initial":5,"pos":[139.6258342265674,35.57889733338234],"zone":"a"}
]
}
stations.csv
A CSV file that sets the initial placement of shared mobility stations.
name,zone,latitude,longitude,initial,type,capacity,price,per_min_pricing_rate,per_min_pricing_start,per_min_pricing_interval
station-1,a,35.5821084092067,139.65688347811465,5,escooter,-1,200,20,0,1
| Item | Example values | Required | Description |
|---|---|---|---|
| name | station-1 | Required | Name of the station. Must be a unique ID. |
| zone | a | Required | Zone to which the station belongs. You can only move between stations in the same zone. |
| latitude | 35.5821084092067 | Required | Latitude of the station. |
| longitude | 139.65688347811465 | Required | Longitude of the station. |
| initial | 5 | Required | Initial deployment count. |
| type | escooter | Type of shared mobility. Possible values are escooter, car, bicycle, and aircar. If nothing is specified, it will be escooter. | |
| capacity | -1 | Maximum number of units that can be deployed. -1 is no limit. | |
| price | 200 | Required | Base rate. |
| per_min_pricing_rate | 20 | Required | Rate per unit hour. |
| per_min_pricing_start | 0 | Required | The number of minutes at which time billing starts. |
| per_min_pricing_interval | 1 | Required | The unit of time in minutes for hourly billing. |
road-closure.csv
CSV file that sets the roads to be closed.
oid,start,end,type,polygon,lanes
948feb22aa309eda98f5f36cee428b4b,05:00:00,06:00:00,car,"139.66056921784974,35.57560496598741,139.66658309933842,35.57404537981951,139.66449131447303,35.56879927623754,139.66056921784974,35.57560496598741",""
| Item | Example values | Required | Description |
|---|---|---|---|
| oid | 948feb22aa309eda98f5f36cee428b4b | Required | ID of the road closure setting. |
| start | 05:00:00 | Required | Time to start the road closure. ISO_LOCAL_TIME format. |
| end | 06:00:00 | Required | Time to end the road closure. ISO_LOCAL_TIME format. |
| type | car | Required | The means of transportation that will become impassable. (car, pedestrian, escooter, bicycle, truck) |
| polygon | "139.66056921784974,35.57560496598741,139.66658309933842,35.57404537981951,139.66449131447303,35.56879927623754,139.66056921784974,35.57560496598741" | Specifies the area as a pair of longitude and latitude, separated by ,. Enclose in ". |
|
| lanes | "" | Lane IDs separated by ,. |
road-pricing.csv
CSV file for setting roads to be charged.
oid,start,end,type,price,polygon
2ac5dc629aebf5a9077c2a77178a0b84,05:00:00,06:00:00,car,200,"139.6512009048468,35.579720773775605,139.6559554628551,35.5770538920699,139.65275843247736,35.57592044045461,139.6512009048468,35.579720773775605"
| Item | Example values | Required | Description |
|---|---|---|---|
| oid | 2ac5dc629aebf5a9077c2a77178a0b84 | Required | ID of the road billing setting. |
| start | 05:00:00 | Required | Time to start road charging. ISO_LOCAL_TIME format. |
| end | 06:00:00 | Required | Time at which to end road billing. ISO_LOCAL_TIME format. |
| type | car | Required | The mode of transportation to be charged. (car, pedestrian, escooter, bicycle, truck) |
| price | 200 | Required | The charge amount. |
| polygon | "139.66056921784974,35.57560496598741,139.66658309933842,35.57404537981951,139.66449131447303,35.56879927623754,139.66056921784974,35.57560496598741" | Area specified as a pair of longitude and latitude, separated by ,. Enclose in ". |
parking.csv
CSV file that sets the parking lot layout.
name,latitude,longitude,total,type,charge
parking1,35.58139979797416,139.64179207801715,5,car,100
| Item | Example values | Required | Description |
|---|---|---|---|
| name | parking1 | Required | Name of the parking lot. |
| latitude | 35.58139979797416 | Required | The latitude of the parking lot. |
| longitude | 139.64179207801715 | Required | The longitude of the parking lot. |
| total | 5 | Required | Number of parking spaces. |
| type | car | Required | Parking type. car or bicycle |
| charge | 100 | Required | Parking fee. |
public-transport.csv
File for setting the capacity of public transportation.
oid,transportName,agencyId,agencyName,tripId,routeId,capacity,maxOccupancy
| key | value example | Required | Description |
|---|---|---|---|
| oid | "123:456" | Required | Created from the agencyId and tripId set in GTFS. agencyId + ":" + tripId |
| transportName | "bus" | Required | Type of public transportation. bus, rail, subway, tram |
| agencyId | "123" | Required | agencyId set in GTFS |
| agencyName | "XX" | Required | Any name you want. Can be agencyName set in GTFS |
| tripId | "456" | tripId configured in GTFS | |
| routeId | "302" | routeId configured in GTFS | |
| capacity | 50 | Required | Number of capacity for this tripId |
| maxOccupancy | 200 | Required | Permissible ridership (%) |
If tripId is not set, capacity is set for agencyId and routeId. If tripId and routeId are not set, capacity is set for agencyId. When tripId is set, capacity is set only for tripId.
If capacity is not set, capacity defaults to 20 and maxOccupancy defaults to 200. Therefore, the maximum number of passengers is 40.
stops.csv
File used to set the names of public transportation stops.
oid,name,transportName,lat,lon
| key | value example | Required | Description |
|---|---|---|---|
| oid | "123:456" | Required | Create from the agencyId set in GTFS and the gtfsId of stop. agencyId + ":" + gtfsId |
| name | "XX" | Required | Any name you want |
| transportName | "bus" | Required | Type of public transportation. bus, rail, subway, tram |
| lat | 35.577139 | Required | Stop latitude |
| lon | 139.62693 | Required | Stop longitude |
coupon.csv
This CSV file sets the conditions for using public transportation to distribute coupons.
id,start,end,requirements,amount
coupon-1,05:00:00,06:00:00,":::",200
| Item | Example value | Required | Description |
|---|---|---|---|
| id | coupon-1 | Required | The ID of the coupon distribution setting. |
| start | 05:00:00 | Required | The time to start coupon distribution. [ISO_LOCAL_TIME] (https://docs.oracle.com/javase/jp/17/docs/api/java.base/java/time/format/DateTimeFormatter.html#ISO_LOCAL_TIME) format. |
| end | 06:00:00 | Required | The time to end coupon distribution. [ISO_LOCAL_TIME] (https://docs.oracle.com/javase/jp/17/docs/api/java.base/java/time/format/DateTimeFormatter.html#ISO_LOCAL_TIME) format. |
| requirements | ":::" | Required | Enter the conditions for distributing coupons. Enclose in ". Details are as follows. |
| amount | 200 | Required | Amount of the coupon. |
requirements
Set conditions for using public transportation. Specify agencyId, routeId, tripId, and gtfsId (stopId) of stop that are set in GTFS, separated by a colon (:).
<agencyId>:<routeId>:<tripId>:<stopId>
You can also specify conditions using and and or.
0:1:: and 1:2:: or 1:3::stop
and takes precedence.
() is also available. The above is described with () as follows.
(0:1:: and 1:2::) or 1:3::stop
fuel-cost.csv
File for setting up fuel cost calculation.
The following is what is used when it is not set: The amount is set in yen.
name,type,per_meter_cost,per_mg_cost
fuel-cost-car,car,0.018,0.00024
fuel-cost-escooter,escooter,0.0005,0
| Item | Example values | Required | Description |
|---|---|---|---|
| name | fuel-cost-car | Required | Must be a unique ID. |
| type | car | Required | The mode of transportation. Possible values are escooter, car. |
| per_meter_cost | 0.018 | Required | Fuel cost per mileage (m). |
| per_mg_cost | 0.00024 | Amount per fuel consumed. |
park-charge-dst.csv
This file sets the charge for a parking lot assuming that you park in a parking lot when you travel by one means of transportation.
The following is what is used when it is not set: The amount is set in yen.
name,type,charge
bicycle_dst,bicycle,100
car_dst,car,500
escooter_dst,escooter,100
| Item | Example values | Required | Description |
|---|---|---|---|
| name | car_dst | Required | Must be a unique ID. |
| type | car | Required | The mode of transportation. Possible values are escooter, car, and bicycle. |
| charge | 500 | Required | Parking fee. |
map.net.xml.gz
Net file used by SUMO. For the creation method, refer to SUMO net file creation method.
osm.pbf
Map information used by OpenTripPlanner. Refer to here for the creation method.
gtfs.zip
The GTFS used by OpenTripPlanner. For information on GTFS, see here.
od.csv.gz
A file that specifies a person's travel as a departure and arrival point.
oid,timestamp,origin_lon,origin_lat,dest_lon,dest_lat,type,age,gender_type,driving_license,car_ownership
person-0,05:00:00,-1.2987283570204764,50.762434607015,-1.3250637544733517,50.75024253566608,car,52,1,1,2
| Item | Example values | Required | Description |
|---|---|---|---|
| oid | person-0 | Required | Must be a unique ID. |
| timestamp | 05:00:00 | Required | ISO_LOCAL_TIME format. |
| origin_lon | -1.2987283570204764 | Required | The longitude of the origin. |
| origin_lat | 50.762434607015 | Required | The latitude of the departure point. |
| dest_lon | -1.3250637544733517 | Required | The longitude of the arrival point. |
| dest_lat | 50.75024253566608 | Required | The latitude of the destination. |
| type | car | Specifies to fix the means of movement. Possible values are car, pedestrian, escooter, bicycle, truck, pt, bus, rail, subway, and tram. pt is a combination of bus, rail, subway, and tram. If none is specified, select a transport. If the use case does not support it, the move will fail. | |
| age | 52 | Actual age. | |
| gender_type | 1 | Gender. 1 for women, 0 for others. | |
| driving_license | 1 | Do you have a driver's license? 1 if it has, 0 otherwise. | |
| car_ownership | 2 | Status of household car ownership. 0 if not, 1 if not more than one car per adult, and 2 if more than one car per adult. | |
| household_carvan | 1 | Number of private cars. Valid only if car_ownership is not specified. | |
| sex_type | 1 | 1 is male. 2 is female. Valid only if gender_type is not specified. | |
| age_type | 1 | 1: 0~15 years old, 2: 16~24 years old, 3: 25~34 years old, 4: 35~49 years old, 5: 50~64 years old, 6: 65 years old or older. Valid only if age is not specified. |
Rows must be sorted in ascending order by timestamp value.
If you omit an item, omit it on all lines. For mandatory items only:
oid,timestamp,origin_lon,origin_lat,dest_lon,dest_lat
person-0,05:00:00,-1.2987283570204764,50.762434607015,-1.3250637544733517,50.75024253566608
model.json
This file is useful when you want to specify an arbitrary selection probability as a model of human behavior selection.
Fixed Probability
{
"rulebase_model": "fixed",
"fixed_weights": {
"CAR": 1,
"WALKING": 1,
"CYCLING": 1,
"PT": 1,
"bicycle": 1
}
}
For specifying the selection probability (weight) of each movement.
| key | value example | Description | |
|---|---|---|---|
| rulebase_model | "fixed" | Fixed probability specification | |
| fixed_weights | CAR | 1 | Weight of car. If not specified, 0 is assumed. |
| WALKING | 1 | Weight of the pedestrian. If not specified, 0 is assumed. | |
| CYCLING | 1 | Weight of the escooter. If not specified, 0 is assumed. | |
| PT | 1 | Weight of public transportation. If not specified, 0 is assumed. | |
| bicycle | 1 | Weight of the bicycle. If not specified, 0 is assumed. |
If you want to select only -escooter, "fixed_weights": {"CYCLING": 1}
If you want to select only -car, "fixed_weights": {"CAR": 1}
-If you want only pedestrian to be selected, "fixed_weights": {"WALKING": 1}
Random
{"rulebase_model": "random"}
For randomizing the selection probability of each means of transportation.
Time and cost weighting factor specification
{
"rulebase_model": "linear",
"w_time": 1,
"w_cost": 1
}
For specifying time and cost weights for each choice during a move.
| key | value example | Description |
|---|---|---|
| rulebase_model | "linear" | |
| w_time | 1 | Time weight. If not specified, 1 is assumed. |
| w_cost | 1 | The cost weight. If not specified, 1 is assumed. |
"w_time": 1, "w_cost": 0if you want to select a method of transportation only by time (a method of transportation with a shorter time)"w_time": 0, "w_cost": 1if you want to select a mode of transportation based on cost only (select a mode of transportation that costs less)
Digital Rehearsal Output File
states.txt
It is output in JSON Lines format. It shows where a person is in latitude and longitude using what means of travel every minute. co2 is the amount of co2 emissions at that time. speed is the speed at that point. wayId is the SUMO road ID for that point.
{"name":"states","time":180,"data":{"oid":"person-12","value":{"wayId":"254070103#2","co2":0.0,"lon":-1.177771521711512,"type":"pedestrian","lat":50.644622474368944,"speed":1.39,"ec":0.0}}}
| key | value example | Description | ||
|---|---|---|---|---|
| name | "states" | |||
| time | 180 | Elapsed digital rehearsal time (seconds) | ||
| data | oid | "person-12" | ID of the person appearing in the digital rehearsal | |
| value | co2 | 0.0 | CO2 emissions (mg/s) | |
| lon | -1.177771521711512 | Current position longitude | ||
| type | "pedestrian" | Transportation (pedestrian, car, escooter, bicycle, aircar, truck, bus, rail, subway, tram) | ||
| lat | 50.644622474368944 | Current position latitude | ||
| speed | 1.39 | Speed at current position (m/s) | ||
| ec | 0.0 | Power consumption (Wh/s) | ||
| wayId | "254070103#2" | Road ID | ||
| tripInfo | "222_111" | Name of public transportation |
output.txt
It is output in JSON Lines format. Outputs the movement history of the person who arrived at the destination every 10 seconds. For a person, information about that person is output only once, when that person arrives.
{"name":"output","time":8700,"data":{"oid":"person-695","value":{"move":{"travelTime":330,"carFuelCost":54.833810134163656,"carParkCharge":558.0,"carDistance":2939.5950000000003,"totalCo2":804645.4112034136,"travelRoute":{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"mode":"car"},"geometry":{"type":"LineString","coordinates":[[139.6663565,35.5956173],[139.6494531,35.6088534]]}}]},"park_dst":558.0,"type":"car","carTime":330,"fuelCost":54.833810134163656}}}}
{"name":"output","time":980,"data":{"oid":"person-9","value":{"move":{"pedestrianTime":750,"travelTime":750,"pedestrianDistance":1004.0500000000001,"totalCo2":0.0,"travelRoute":{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"mode":"pedestrian"},"geometry":{"type":"LineString","coordinates":[[139.6758158,35.6039659],[139.6678026,35.6030643]]}}]},"type":"pedestrian"}}}}
{"name":"output","time":8780,"data":{"oid":"person-557","value":{"move":{"pedestrianTime":1690,"escooterFee":390.6,"travelTime":2030,"escooterCost":390.6,"pedestrianDistance":2221.3799999999997,"totalCo2":0.0,"travelRoute":{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"mode":"pedestrian"},"geometry":{"type":"LineString","coordinates":[[139.6432041,35.5893203],[139.64313983916975,35.59300591030757]]}},{"type":"Feature","properties":{"mode":"escooter"},"geometry":{"type":"LineString","coordinates":[[139.64313983916975,35.59300591030757],[139.63704586028888,35.585746891164035]]}},{"type":"Feature","properties":{"mode":"pedestrian"},"geometry":{"type":"LineString","coordinates":[[139.63704586028888,35.585746891164035],[139.6295781,35.5803826]]}}]},"escooterDistance":1499.86,"escooterTime":340,"type":"pedestrian-escooter-pedestrian"}}}}
{"name":"output","time":8670,"data":{"oid":"person-564","value":{"move":{"reason":"escooterEmpty","opportunityLoss":409.20000000000005},"move2":{"pedestrianTime":1810,"travelTime":1810,"pedestrianDistance":2249.7899999999995,"totalCo2":0.0,"travelRoute":{"type":"FeatureCollection","features":[{"type":"Feature","properties":{"mode":"pedestrian"},"geometry":{"type":"LineString","coordinates":[[139.6307184,35.5844267],[139.6429601,35.5702724]]}}]},"type":"pedestrian"}}}}
| key | value example | Description | |||
|---|---|---|---|---|---|
| name | "output" | ||||
| time | 1010 | Elapsed digital rehearsal time (seconds) | |||
| data | oid | "person-269" | ID of the person appearing in the digital rehearsal | ||
| value | move | travelTime | 500 | Time spent moving (s) | |
| totalCo2 | 11818.295182953709 | CO2 emissions (mg) | |||
| type | "car" | Transportation (Combination of pedestrian, car, escooter, bicycle, aircar, truck, bus, rail, tram, and subway) | |||
| carTime | 380 | Time traveled by car (s) | |||
| carDistance | 330 | Distance traveled by car (m) | |||
| carFeeCost | 240 | Car usage fee | |||
| carFuelCost | 201.1 | car fuel charge | |||
| carParkCharge | 200.0 | Parking fee | |||
| pedestrianTime | 380 | Time moved in pedestrian (s) | |||
| pedestrianDistance | 330 | Distance traveled in pedestrian (m) | |||
| escooterTime | 380 | Time moved by escooter (s) | |||
| escooterDistance | 330 | Distance moved by the scooter (m) | |||
| escooterFeeCost | 210 | Escooter usage fee | |||
| escooterFuelCost | 201.1 | Escooter fuel charge | |||
| escooterParkCharge | 200.0 | Parking fee | |||
| bicycleTime | 380 | Time traveled by bicycle (s) | |||
| bicycleDistance | 330 | Distance traveled by bicycle (m) | |||
| bicycleFeeCost | 180 | Bicycle Fee | |||
| bicycleParkCharge | 200.0 | Parking fee | |||
| aircarTime | 380 | Aircar travel time (s) | |||
| aircarDistance | 330 | Distance traveled by aircar (m) | |||
| aircarFeeCost | 300 | Aircar Fee | |||
| carToll | 200 | Charges | |||
| pedestrianToll | 200 | Charges | |||
| escooterToll | 200 | Charges | |||
| bicycleToll | 200 | Charges | |||
| truckToll | 200 | Charges | |||
| busTime | 390 | Time traveled by bus (s) | |||
| busDistance | 765.0 | Distance traveled by bus (m) | |||
| busFare | 200.0 | Fares | |||
| railTime | 880 | Time spent by train (s) | |||
| railDistance | 3012.0 | Distance traveled by train (m) | |||
| railFare | 200.0 | Fares | |||
| tramTime | 880 | Tram travel time (s) | |||
| tramDistance | 3012.0 | Distance travelled by tram (m) | |||
| tramFare | 200.0 | Fares | |||
| subwayTime | 880 | Time spent by subway (s) | |||
| subwayDistance | 3012.0 | Distance traveled by subway (m) | |||
| subwayFare | 200.0 | Fares | |||
| escooterFeeDiscount | 0.0 | Amount discounted (negative) | |||
| detour | true | true if a toll road is bypassed | |||
| fare | 200.0 | Fares | |||
| fee | 300 | Fee | |||
| toll | 200 | Charges | |||
| fuelCost | 201.1 | Fuel charge | |||
| park_dst | 200.0 | Destination parking fee | |||
| park_api | 200.0 | Parking fee | |||
| travelRoute | Travel path including means of travel | ||||
| escooterEmpty | 240.0 | If you can't rent an escooter, the fee if you did | |||
| carEmpty | 240.0 | If the car cannot be rented, the charge if it was rented | |||
| bicycleEmpty | 240.0 | If you can't rent a bicycle, the charge if you did | |||
| aircarEmpty | 240.0 | Fee if you could not rent an aircar | |||
| carParkingFull | 200.0 | If the car is full, the charge if the car is rented | |||
| bicycleParkingFull | 200.0 | If the car is full, the charge if the car is rented | |||
| busFull | 200.0 | The fare if the bus is full | |||
| railFull | 200.0 | The fare if the bus is full | |||
| tramFull | 200.0 | The fare if the bus is full | |||
| subwayFull | 200.0 | The fare if the bus is full | |||
| tripDiscount | -1000.0 | Amount discounted, such as by coupons, throughout the move (negative value) | |||
| tripMeasures | ["coupon"] | List of applied measure IDs | |||
| escooterFeeMeasures | ["lowbattery-discount", "return-discount"] | List of applied measure IDs for fee |
If it is not possible to move using the chosen move method, one of the following is output:
{"name":"output","time":150,"data":{"oid":"person-18","value":{"move":{"message":"Could not create plan."}}}}
{"name":"output","time":160,"data":{"oid":"person-19","value":{"move":{"message":"Could not choice plan."}}}}
current-usage.txt
It is output in JSON Lines format. The status of stations etc. is output at one-minute intervals.
The station status output format is as follows:
{"name":"current-usage","time":60,"data":{"oid":"station-18","value":{"reserved":0,"minBattery":100.0,"type":"station","low":0,"available":4}}}
| key | value example | Description | ||
|---|---|---|---|---|
| name | "current-usage" | |||
| time | 60 | Elapsed digital rehearsal time (seconds) | ||
| data | oid | "station-18" | Station ID | |
| value | available | 4 | Number of units available at the station | |
| reserved | 0 | Number of units reserved at the station | ||
| low | 0 | Number of low battery cells in the station | ||
| minBattery | 100.0 | Minimum battery charge (%) deployed on the station | ||
| type | "escooter-station" | Shared mobility type +"-station" |
An escooter that is considered low is one that is below the level specified by USECASE_BATTERY_LOW_PERCENT in env.json, or when the battery is below 15%.
Park & Ride also outputs parking, public transportation, and stop status.
The output format of the parking situation is as follows:
{"name":"current-usage","time":1320,"data":{"oid":"parking5","value":{"reserved":1,"available":1,"type":"car-parking","details":{"reserved":["person-87"],"parked":[{"oid":"person-6","start":400},{"oid":"person-41","start":840},{"oid":"person-76","start":1280}]}}}}
| key | value example | Description | ||
|---|---|---|---|---|
| name | "current-usage" | |||
| time | 1320 | Elapsed digital rehearsal time (seconds) | ||
| data | oid | "parking5" | Parking ID | |
| value | available | 1 | Number of parking spaces available | |
| reserved | 1 | Number of reserved parking spaces | ||
| type | "car-parking" | car-parking or bicycle-parking | ||
| details | Reservation and parking details |
The public transport status output format is as follows:
{"name":"current-usage","time":1320,"data":{"oid":"123:456","value":{"type":"rail","tripInfo":"456","lat":35.6063,"lon":139.6568,"speed":6.7583}}}
| key | value example | Description | ||
|---|---|---|---|---|
| name | "current-usage" | |||
| time | 1320 | Elapsed digital rehearsal time (seconds) | ||
| data | oid | "123;456" | Public transportation ID | |
| value | type | "rail" | Type of public transport | |
| tripInfo | "456" | tripInfo in GTFS | ||
| lat | 35.6063 | Current location latitude | ||
| lon | 139.6568 | Current location longitude | ||
| speed | 6.7583 | Speed (m/s) |
The output format of the status of the bus stop is as follows:
{"name":"current-usage","time":720,"data":{"oid":"123:789","value":{"in":0,"type":"rail-stop","services":{"456":{"waiting":1,"in":0,"out":0}},"out":0}}}
| key | value example | Description | ||||
|---|---|---|---|---|---|---|
| name | "current-usage" | |||||
| time | 1320 | Elapsed digital rehearsal time (seconds) | ||||
| data | oid | "123;789" | ID of the public transport stop | |||
| value | type | "rail-stop" | Public transport type + "-stop" | |||
| in | 0 | Number of passengers from this stop | ||||
| out | 0 | Number of passengers getting off at this stop | ||||
| services | "456" | Public transit service name. Information for each flight | ||||
| waiting | 1 | Number of people waiting | ||||
| in | 0 | Number of people on board | ||||
| out | 0 | Number of people who got off |
total-usage.txt
It is output in JSON Lines format. At the end of the digital rehearsal, the station and other results are output.
The output format of the station rental result is as follows.
{"name":"total-usage","time":0,"data":{"oid":"station-14","value":{"rentCount":2,"type":"station","returnCount":1}}}
| key | value example | Description | ||
|---|---|---|---|---|
| name | "total-usage" | |||
| time | 0 | 0 fixed | ||
| data | oid | "station-14" | Station ID | |
| value | rentCount | 2 | Number of escooters rented at the station | |
| returnCount | 1 | Number of scooters returned to the station | ||
| type | "escooter-station" | Shared mobility type +"-station" |
Park & Ride also outputs results for parking, public transportation, and stops.
The output format of the rental result of the parking lot is as follows.
{"name":"total-usage","time":0,"data":{"oid":"parking5","value":{"type":"car-parking","rentCount":8,"returnCount":4}}}
| key | value example | Description | ||
|---|---|---|---|---|
| name | "total-usage" | |||
| time | 0 | 0 fixed | ||
| data | oid | "parking5" | Parking ID | |
| value | rentCount | 8 | Number of cars in the parking lot | |
| returnCount | 4 | Number of cars left from the parking lot | ||
| type | "car-parking" | car-parking or bicycle-parking |
The output format for the number of passengers on public transportation is as follows:
{"name":"total-usage","time":0,"data":{"oid":"123:456","value":{"type":"rail","stops":[{"arrival":0,"departure":840,"id":"789","name":"XX","in":1,"on":0,"out":0},{"arrival":960,"departure":960,"id":"790","name":"YY","in":1,"on":1,"out":0},{"arrival":1140,"departure":0,"id":"791","name":"ZZ","in":0,"on":0,"out":2}],"agencyId":"123","capacity":20,"agencyName":"XYZ","tripId":"456","maxOccupancy":200}}}
| key | value example | Description | |||
|---|---|---|---|---|---|
| name | "total-usage" | ||||
| time | 0 | 0 fixed | |||
| data | oid | "123:456" | Public transportation ID | ||
| value | type | "rail" | Type of public transport | ||
| agencyId | "123" | agencyId in GTFS for this flight | |||
| agencyName | "XYZ" | agencyName in GTFS for this flight | |||
| tripId | "456" | tripId in GTFS for this flight | |||
| capacity | 20 | Capacity | |||
| maxOccupancy | 200 | Maximum riding rate (%) | |||
| stops | arrival | 0 | Simulated time of arrival at the stop (seconds) | ||
| departure | 840 | Simulation time to depart from the stop (seconds) | |||
| id | "789" | gtfsId in GTFS of the stop | |||
| name | "XX" | Name of the stop | |||
| in | 1 | Number of passengers from the bus stop | |||
| on | 0 | Number of passengers | |||
| out | 0 | Number of people getting off at the bus stop |
The output format of the boarding and alighting result at the bus stop is as follows.
{"name":"total-usage","time":0,"data":{"oid":"123:789","value":{"name":"XX","services":{"456":{"arrival":3360,"departure":3360,"in":[2920],"out":0}},"lat":35.565647,"type":"bus-stop","lon":139.63945}}}
| key | value example | Description | ||||
|---|---|---|---|---|---|---|
| name | "total-usage" | |||||
| time | 0 | 0 fixed | ||||
| data | oid | "123:789" | Stop ID | |||
| value | type | "bus-stop" | Public transport type + "-stop" | |||
| name | "XX" | Name of the stop | ||||
| lat | 35.565647 | Stop Latitude | ||||
| lon | 139.63945 | Stop longitude | ||||
| services | "456" | ID of the public transport using the stop | ||||
| arrival | 3360 | Simulated time (in seconds) at which this public transit arrived | ||||
| departure | 3360 | Simulation time (in seconds) at which this public transport departed | ||||
| in | [2920] | How long the person who boarded this public transport was waiting at this stop (array of seconds) | ||||
| out | 0 | Number of people getting off this public transport at this stop |
choice.txt
It is output in JSON Lines format. Printed when a means of transportation is selected. The choices and selection results are printed.
{"name": "choice," "time": 3560, "data": {"oid": "person-298," "value": {"plans": {"alternative_attributes": [{"alternative": "drive," "attributes": {}, "nested_alternatives": [{"alternative": "drive," "attributes": {"Time": -0.002125621296651265, "Time_std": 0.0, "Cost": -0.0055169897702107016, "Cost_std": 0.0}}]}, {"alternative": "walk," "attributes": {}, "nested_alternatives": [{"alternative": "walk," "attributes": {"Time": -0.02176516454458408, "Time_std": 0.0, "Cost": -0.0, "Cost_std": 0.0}}]}, {"alternative": "cycle," "attributes": {}, "nested_alternatives": [{"alternative": "cycle," "attributes": {"Time": -0.007963595280411781, "Time_std": 0.0, "Cost": -0.0, "Cost_std": 0.0}}]}], "individual_characteristics": {"driving_license": 1.0, "car_ownership": 1.0, "female": 0.0, "age": 0.5050505050505051}, "environment_attributes": {"distance": 0.017476198408906202}}, "probabilities": [0.0989997481591047, 0.8343262552561719, 0.06667399658472349], "order": [0, 1, 2]}}}
{"name":"choice","time":3570,"data":{"oid":"person-298","value":{"choice":[1]}}}
The choices are output in the following format:
| key | value example | Description | |||||
|---|---|---|---|---|---|---|---|
| name | "choice" | ||||||
| time | 3560 | Elapsed digital rehearsal time (seconds) | |||||
| data | oid | "person-298" | ID of the person appearing in the digital rehearsal | ||||
| value | plans | alternative_attributes | alternative | "drive" | Choice with the longest travel distance (By default drive, cycle, pt, walk) | ||
| attributes | {} | Fixed | |||||
| nested_attributes | alternative | "drive" | Second longest choice (By default drive, cycle, pt, walk) | ||||
| attributes | {...} | The behavior selection model determines the output. | |||||
| individual_characteristics | {...} | The behavior selection model determines the output. | |||||
| environment_attributes | {...} | The behavior selection model determines the output. | |||||
| probabilities | [...] | Array of probabilities per choice | |||||
| order | [...] | Correspondence with Order of Action Plan |
alternative_attributes and nested_attributes are arrays.
The selection results are output in the following format:
| key | value example | Description | ||
|---|---|---|---|---|
| name | "choice" | |||
| time | 120 | Elapsed digital rehearsal time (seconds) | ||
| data | oid | "person-4" | ID of the person appearing in the digital rehearsal | |
| value | choice | [0, 2] | Array of indexes of the selected plans. If it is not possible to move because of a reservation failure, it is arranged to select from other options. |
If it is not possible to move because of a reservation failure, etc., the selection result may be output multiple times for the same ID.
When an arbitrary probability is set, the choices are output in the following format:
| key | value example | Description | |||
|---|---|---|---|---|---|
| name | "choice" | ||||
| time | 110 | Elapsed digital rehearsal time (seconds) | |||
| data | oid | "person-4" | ID of the person appearing in the digital rehearsal | ||
| value | plans | mainMode | "CAR" | Longest travel distance (CAR, WALKING, CYCLING, PT) | |
| subMode | "CAR" | The second longest traveling means (CAR, WALKING, CYCLING, PT) | |||
| time | 285 | Time to move (in seconds) | |||
| cost | 3.425899683600594 | Cost of move (£) | |||
| distance | 3047.582709127686 | Travel distance (m) | |||
| type | "car" | type | |||
| normalized_time | 1807.0 | Leveled time. Leveling to within 10% of the mean of the alternatives | |||
| normalized_cost | 1.0 | The leveled cost. Leveling to 0~1 | |||
| probability | 0.925650575652241 | Probability that this choice is selected | |||
| people_features | [ 40, 1, 0, 1 ] | List of person attributes. List of age, gender_type, driving_license, and car_ownership in od.csv.gz | |||
| environment_features | [ 3047 ] | List of environment attributes. Distance from O to D (m) |
plans is an array of choices.
2.7 Map Data Registration Procedure
SUMO Site
For instructions, see HERE.
Procedure for creating sample data
The procedure for creating a net file for Kawasaki City, which is provided as a sample, is shown for reference.
Retrieve the OSM file from the Open Street Map Site.
Click Export to export the specified range. The following ranges are specified:
- Latitude: 35.5667000 -35.5955000
- Longitude: 139.6178000 -139.6760000
The export results in an error, so we are using the Overpass API to download.
Convert the OSM file with the SUMO netconvert command.
netconvert --osm-files osmfile -o map.net.xml --speed-in-kmh --junctions.join --sidewalks.guess.from-permissions --crossings.guess --lefthand
These options are different from the options on the SUMO site, but they cause an error when loading into SUMO.
Load the map.net.xml that you created in SUMO and verify that there are no errors.
Finally, gzip makes map.net.xml.gz.
For information about how to install and use SUMO, see SUMO Site.