Logo Lanfrica

duke-matrix/Matsim-simulation-

Domain:

mobility

Record type:

software
Creator:
duk
Host:
A MATSim transport simulation for Lagos, Nigeria # MATSim Simulation for Lagos, Nigeria This project provides a basic MATSim (Multi-Agent Transport Simulation) setup for Lagos, Nigeria. It includes modules for building a transport network from OpenStreetMap (OSM), generating a synthetic population, creating a basic public transit schedule, and running the simulation. ## Project Structure - `pom.xml`: Maven project file defining dependencies (MATSim 13.0). - `.gitignore`: Specifies files for Git to ignore. - `README.md`: This documentation file. - `.github/workflows/run_simulation.yml`: GitHub Actions workflow to automate the simulation. - `src/main/java/com/example/matsim/`: Java source code directory. - `NetworkBuilder.java`: Converts OSM data into a MATSim network file. - `PopulationBuilder.java`: Creates a synthetic population with daily activity plans. - `TransitBuilder.java`: Generates a simple transit schedule for BRT and informal "danfo" buses. - `SimulationRunner.java`: The main class to configure and execute the MATSim simulation. ## Prerequisites 1. **Java Development Kit (JDK)**: Version 11 or higher. 2. **Apache Maven**: To build the project and manage dependencies. 3. **Lagos OSM Data**: You need an OpenStreetMap file for Lagos in `.osm.pbf` format. For local runs, download it from Geofabrik and place it in an `input/` directory. The GitHub Action will download this automatically. ## Local Setup and Execution ### 1. Clone the Repository ```bash git clone cd matsim-lagos-simulation