Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time
COBRA -- Complete decentralized method for on-line multi-robot trajectory planning in valid infrastructures

This repository contains an implementation of COBRA algorithm and the dataset used for experimental comparision as described in the paper:

M. Čáp, J. Vokřínek, and A. Kleiner, “Complete decentralized method for on-line multi-robot trajectory planning in valid infrastructures,” in International conference on planning and scheduling, ICAPS 2015, 2015.


The following software must be installed on the machine where the experiment is executed: 
 * Java JDK 7 or higher
 * Maven
 * GNU parallel
 * R programming language with packages: plyr, ggplot2, rcolorbrewer, gridExtra

In Ubuntu 14.04, all the dependencies can be installed by running

$ sudo apt-get install -y openjdk-7-jdk maven parallel r-base r-cran-plyr r-cran-ggplot2 r-cran-rcolorbrewer
$ sudo Rscript -e "install.packages('gridExtra', repos='')"

1. Recomputing the whole experiment:

To recompute the entire experiment, run the following command:


2. Executing single simulation run:

2.1 Compiling
The dependencies are managed using Maven. To compile the project and create a jar archive with dependencies run:	

$ mvn package

The jar archive with all dependencies will be in:


Alternatively, you can open the project in your favorite IDE, i.e. in Eclipse.

2.2 Getting started

A simulation is run by executing cz.agents.map4rt.ScenarioCreator class.

  -problemfile 		Path to the xml file with problem description.
  -method			Specifies method to be used to solve the problem. One of {COBRA, ORCA}.
  -maxtime			Specifies the maximum time (in miliseconds) considered during trajectory planning.
  -timestep			The discretization of time-dimension used during trajectory planning.
  -timeout          The timeout in miliseconds after which the simulation will be terminated
  -ntasks           Number of random tasks to generate for each robot
  -seed             Random seed used to generate the random tasks for the robots
  -showvis          Turns on/off the visualization.
Detailed information can be derived from the source code, in particular from the method cz.agents.admap.creator.ScenarioCreator.createFromArgs().  


The following command will run the COBRA on the example problem instance described in file experiment/instances/ubremen-r27/28.xml with 4 tasks for each robot randomly generated with random seed 8.

$java -jar target/map4rt-1.0-SNAPSHOT-jar-with-dependencies.jar cz.agents.map4rt.creator.ScenarioCreator -method COBRA -problemfile experiment/instances/ubremen-r27/28.xml -ntasks 4 -timestep 650 -maxtime 600000 -timeout 600000 -seed 8 -showvis

2.3 Visualization control: 

When the visualization window pops-up, use the following keys to toggle various useful visualization layers:
  m - missions/tasks of agents
  t - trajectories of agents
  g - planning graph
  p - polygons representing obstacles 
Dragging with right mouse button pressed moves the viewport. Mouse wheel zooms the view.


No description, website, or topics provided.






No releases published


No packages published