From 07bcdebb10c8d7d49b4f81fa392d60a86af805c6 Mon Sep 17 00:00:00 2001 From: Mojtaba Yousefi Date: Sat, 27 Jul 2024 12:18:42 -0400 Subject: [PATCH] Update getting_started.rst with detailed instructions for running the simulation --- getting_started.rst | 53 ++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 48 insertions(+), 5 deletions(-) diff --git a/getting_started.rst b/getting_started.rst index 150cb80..762848b 100644 --- a/getting_started.rst +++ b/getting_started.rst @@ -1,10 +1,53 @@ Getting Started =============== -Installation Guide ------------------- -Provide step-by-step instructions for installing the project, including prerequisites. - Quick Start ----------- -A quick guide to getting a simple example up and running. +1. Prepare the input files: + - Ensure you have the following files in the `inputs` directory: + - infra.json: Infrastructure data + - slow_zones.json: Slow zone definitions + - demand/odx_demand.csv: Passenger demand data + - schedules/empirical_schedule.json: Train schedule data + +2. Configure the simulation: + - Open the `load-balance/config.yaml` file + - Adjust the following parameters as needed: + - simulation.number_of_replications + - simulation.start_time_of_day + - simulation.end_time_of_day + - demand_level + - station + - short_turning + - logger.should_log_trajectories + - logger.log_interval + +3. Run the simulation: + python -m mit_rail_sim.simulation_runner.runner + +4. Check the output: + - Look for the generated log files in the specified log folder (default: `log_folder_path`) + - You'll find CSV and JSON files with various simulation data + +Understanding the Inputs and Config +----------------------------------- +1. Infrastructure (infra.json): + - Defines blocks, stations, and path information for Northbound and Southbound directions + +2. Slow Zones (slow_zones.json): + - Specifies areas with reduced speed limits + +3. Demand Data (odx_imputed_demand_2024-04-07_2024-05-30.csv): + - Contains passenger arrival rates at stations + +4. Schedule Data (empirical_schedule_83.json): + - Defines train dispatch times and routes + +5. Configuration (config.yaml): + - simulation: Set replication count, start and end times + - demand_level: Adjust overall passenger demand. Used as a multiplier to uniformly scale demand. + - station: Specify holding station (e.g., "O-Hare" or "Clark/Lake") + - short_turning: Set short turning location ("UIC" or "Western") + - logger: Configure logging options + +By adjusting these inputs and configurations, you can simulate various scenarios and analyze the rail system's performance under different conditions.