Getting Started

  1. Ensure that we have installed all the pre-requisites as per the section below.
  2. Get the project files using git.stis using https://git.stis.ac.id/Nagari/MATSim-EastJakarta
  3. [Option 1] In the matsim-eastjakarta, extract the matsim-0.9.0.zip and click on the cmd runmatsim_2pt.cmd. This will launch the command prompt as shown below: cmd [Option 2] Or double click the matsim-0.9.0.jar and it will launch the GUI as shown below: gui Note that this option is compatible with Java 8 and will likely not work for Java 9. For Java 9 or later we need to add java.xml.bind when run the GUI, or use option 1 instead.
  4. If we choose option 2 in step 3, change the Memory: field to 4000 MB or more if we run the 10% case or we can leave it at 1000 MB if we want to run the 2% case, and select the Configuration file: in eastjakarta/config2pt.xml for 2% case. We can modify the material of a scenario from the config file. For example, we may want to set lastIteration first to 0 and then to 10 if everything is running smoothly.
  5. Click Start MATSim. This will run the simulation (might take a few minutes) and put the results in eastjakarta/output/output1 if we choose to run via GUI and in output/output1 if we run via command prompt.
  6. We can see many of simulation results in the output folder. For example there are picture like : modestats, scorestats, stopwatch, traveldistancestats. There are also compressed-xml file in .gz format like output_events.xml.gz and output_network.xml.gz for visualization. We can also see the output from each iteration in the folder ITERS. For example in the it.10 we can see the traffic count results, snapshoot, and leg histogram for each mode.
  7. Now we can visualize the results in Simunto Via. Please refer to the Via user manual, available from https://www.simunto.com/via/, for how to do this. A snapshot of the Via visualisation for the simulation you just ran is below: eastjakarta_visualization


  1. Java We will need Java installed on the machine to be able to run the MATSim GUI. If unsure, go to https://www.java.com/en/ to find out if we already have Java installed, and/or to get the correct version of Java for the operating system. If we are not going to be doing any development, but just want to use the tool, we only need the Java Runtime Environemnt (JRE) installed. Note that this project is compatible with Java 8 and will likely not work for Java 9. For Java 9 or later we need to add java.xml.bind when run the GUI.

  2. Visualization a. Simunto Via visualizer To be able to visualize the results, download Simunto Via together with a Free License. Note that the free version will limit the visualization to 500 vehicles though.

b. Google Earth An alternative is to use Google Earth. This will let us visualise the entire population.

Directory Organization

  • datagen contains original census and survey data.
  • eastjakarta contains MATSim scenario for East Jakarta area.
  • screenshot contains image for the MATSim GUI, command prompt run, and Via visualization.

Population Generation

  1. Open datapreprocessing.R and run the script to combine individual attributes with household attributes from SUSENAS 2015.
  2. Open Population Generation.R and run the script to make household weight using Generalized-Raking Multi-Level IPF. After we get the weight, the scipt will take 10% sample based on Sensus Penduduk 2010 contingency table as total control group for a sub-region. Repeat this step until we get synthetic population in each of 10 region.
  3. Open Creating Initial Plans.R and run the script to make plans for each individual in synthetic population. We can choose to make separate plans for each sub-region or make combined plans for synthetic population. We will also make facilities file for the location of agent’s activities. This script will also make the plans to MATSim-format.