This repository provides an open MATSim transport model for Berlin, provided by the Transport Systems Planning and Transport Telematics group of Technische Universität Berlin.
Currently, there are two versions of the MATSim Open Berlin model:
This scenario contains a 10pct sample of the Greater Berlin population; road capacities are accordingly reduced. The scenario is calibrated taking into consideration the traffic counts, modal split and mode-specific trip distance distributions.
This scenario contains a 1pct sample of the Greater Berlin population; road capacities are accordingly reduced. This scenario was not (!) calibrated and should only be used for testing purposes or pre-studies.
The MATSim program code in this repository is distributed under the terms of the GNU General Public License as published by the Free Software Foundation (version 2). The MATSim program code are files that reside in the src
directory hierarchy and typically end with *.java
.
The MATSim input files, output files, analysis data and visualizations are licensed under a Creative Commons Attribution 4.0 International License.
MATSim input files are those that are used as input to run MATSim. They often, but not always, have a header pointing to matsim.org. They typically reside in the scenarios
directory hierarchy. MATSim output files, analysis data, and visualizations are files generated by MATSim runs, or by postprocessing. They typically reside in a directory hierarchy starting with output
.
Other data files, in particular in original-input-data
, have their own individual licenses that need to be individually clarified with the copyright holders.
Handling of large files within git is not without problems (git lfs files are not included in the zip download; we have to pay; ...). In consequence, large files, both on the input and on the output side, reside at https://svn.vsp.tu-berlin.de/repos/public-svn/matsim/scenarios/countries/de/berlin .
- Go to https://svn.vsp.tu-berlin.de/repos/public-svn/matsim/scenarios/countries/de/berlin/
- Decide for a scenario that you find interesting (e.g.
berlin-v5.x-10pct
) and go into that directory. - Inside there, look for an
output-*
directory that you find interesting and go into that directory. - Inside there, look for
movie-*
files. You can't view them directly, but you there are various ways to download them, and you can view them then. Try that.
- Get VIA from https://www.simunto.com/via/. (There is a free license for a small number of agents; that will probably work but only display a small number of vehicles/agents.)
- Go to https://svn.vsp.tu-berlin.de/repos/public-svn/matsim/scenarios/countries/de/berlin/ .
- Decide for a scenario that you find interesting (e.g.
berlin-v5.x-1pct
) and go into that directory. - Inside there, look for an
output-*
directory that you find interesting and go into that directory. - Download
*.output_network.xml.gz
and*.output_events.xml.gz
. Best make sure that they do not uncompress, e.g. by "Download linked file as ...". - Get these files into VIA. This can be achieved in various ways; one is to open VIA and then drag the files from a file browser into VIA.
- Run VIA and enjoy.
- Click on
Clone or download
and then onDownload ZIP
. - Unzip the repository.
- Go to "Run the MATSim Berlin scenario" below.
- Install git for the command line.
- Type
git clone https://github.com/matsim-scenarios/matsim-berlin.git
in the command line.
(Or use your IDE, e.g. Eclipse, IntelliJ, to clone the repository.)
This will result in a new matsim-berlin
directory. Memorize where you have put it. You can move it, as a whole, to some other place.
- Go into the
matsim-berlin
directory. - Type
git pull
(Or use your IDE, e.g. Eclipse, IntelliJ, to update the repository.)
This will update your repository to the newest version.
(Requires either cloning or downloading the repository.)
- There should be a file directly in the
matsim-berlin
directory with name approximately asmatsim-berlin-5.x-jar-with-dependencies.jar
. - Double-click on that file (in a file system browser). A simple GUI should open.
- In the GUI, click on the "Choose" button for configuration file. Navigate to one of the
scenario
directories and load one of the configuration files. - Increase memory in the GUI.
- Press the "Start MATSim" button. This should run MATSim. Note that MATSim accepts URLs as filenames in its config, so while the config files are part of the git repo, running them will pull additional material from our server.
- "Open" the output directory. You can drag files into VIA as was already done above.
- "Edit..." (in the GUI) the config file. Re-run MATSim.
... using an IDE, e.g. Eclipse, IntelliJ - Alternative 1: use cloned/downloaded matsim-berlin repository
(Requires either cloning or downloading the repository.)
- Set up the project in your IDE.
- Make sure the project is configured as maven project.
- Run the JAVA class
src/main/java/org/matsim/run/RunBerlinScenario.java
orsrc/main/java/org/matsim/gui/RunBerlinScenarioGUI.java
. - "Open" the output directory. You can drag files into VIA as was already done above.
- Edit the config file or adjust the run class. Re-run MATSim.
- Clone the matsim-example-project: https://github.com/matsim-org/matsim-example-project
- Add a maven dependency to the open berlin project by writing the following to the pom file:
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
<dependency>
<groupId>com.github.matsim-scenarios</groupId>
<artifactId>matsim-berlin</artifactId>
<version>5.4</version>
</dependency>
- Write your own run class and make sure to execute the required public methods in RunBerlinScenario:
Config config = RunBerlinScenario.prepareConfig( args ) ;
// possibly modify config here
Scenario scenario = RunBerlinScenario.prepareScenario( config ) ;
// possibly modify scenario here
Controler controler = RunBerlinScenario.prepareControler( scenario ) ;
// possibly modify controler here, e.g. add your own module
controler.run
For more information about the scenario generation, see VSP working paper # 19-01, here: https://www.vsp.tu-berlin.de/publications/vspwp .
For more information about MATSim, see here: https://www.matsim.org/.