This repository contains the implementation for solving the problem of separating multiple polygonal sets with the minimum number of line segments.
The evaluation and details of the algorithm is published at ICRA 2022 at our paper titled "Barrier Forming: Separating Polygonal Sets with Minimum Number of Lines" available at arXiv, and the presentation video is available at youtube.
The main implementation uses Gurobi, and the link
and include
folder locations in the makefile need to be the same locations as where Gurobi is installed.
To run the code for separating random polygons with random obstacles
$make all
$python gen_random.py
$python visualize.py
for separating cubes
$python gen_cube.py
$python visualize.py
for separating points with polygonal obstacles
$python gen_points_poly.py
$python visualize.py
for separating points
$python gen_points.py
$python visualize.py
Here are some example results of separating green, purple, orange, blue objects or points, with gray obstacles which do not matter.