Close this search box.



DiscoPygal is a suite of tools that enables rapid development of, and experimentation with, solutions for multi-robot motion planning problems in 2D and the visualization and verification of the resulting plans. It is written in Python and uses CGAL (Computational Geometry Algorithm Library) among other components. In Particular, it exploits the CGAL Python bindings of 2D arrangements, 2D Minkowski sums, and 2D Regularized Boolean Set Operations needed for the implementation of fundamental motion-planning algorithms. The DiscoPygal scene editor enables the creation of scenes with polygonal or disk-shaped obstacles and robots; the DiscoPygal solver solves motion planning problems, and the DiscoPygal viewer displays the input scene, output paths, and configuration spaces and other intermediate states of the motion planning process; it can also simulate the solution. DiscoPygal enables the dynamic loading of motion-planning algorithms in the form of Python scripts during run time. It allows users to easily swap and compare between different motion-planning algorithms, and even modify an existing implementation of an algorithm while the program is running. (There is no need to recompile the code or restart the program.)

The code was originally developed by Nir Goren. Then, it was enhanced by Michael Bilevich, who is currently maintaining it.

(b) Output paths.
(b) Output paths

(a) Input problem.
(a) Input problem
An example of an input motion planning problem (a) and the output paths computed by DicoPygal (b). The input scene consists of four robots drawn in distinct colors. The solid shapes indicate the starting positions of the robots and the translucent shapes indicate the corresponding target positions. The objective is to plan a path for each robot from the starting position to the target position while avoiding collisions with the obstacles, drawn in gray, and with the other robots in the scene. The resulting paths are drawn in purple.


Michael Bilevich

Yair Oz - Webcreator


Skip to content