Skip to content

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 the Upload Data Files button 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, replace SOARS_STATIONS_FILE with STATIONS_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_RATE are 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>
Each Id is optional, and if all are omitted, any public transportation will match the criteria. You cannot omit the colon (:). stopId matches when it is a stop or station for getting on or off. Stations on the way don't match.

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": 0 if you want to select a method of transportation only by time (a method of transportation with a shorter time)
  • "w_time": 0, "w_cost": 1 if 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.