Skip to content
Go to file

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