Greedy Perspectives: Multi-Drone View Planning for Collaborative Perception in Cluttered Environments | Website
Krishna Suresh1, Aditya Rauniyar2, Micah Corah3, Sebastian Scherer2
1Olin College, 2CMU, 3Colorado School of Mines
Multi-Agent Planning algorithm that generates waypoints for Drone Fleet to maximize coverage over dynamic targets.
This repository has been developed and tested on Ubuntu 22.04.
C++20 support is required (this means at least g++-10)
You can install g++-10 by running the following (on an Ubuntu system):
sudo apt install g++-10You will also need to configure your system to use this compiler such as by
adding the following to your .bashrc file (substituting the installation path):
export CC=<path to>/gcc-10
export CXX=<path to>/g++-10This repo uses vcpkg as a dependency manager and primary build tool. Vcpkg can be installed by following: https://vcpkg.io/en/getting-started.html.
cd <your preferred installation directory>
git clone https://github.com/microsoft/vcpkg.git
# You may remove the flag from the following if you wish to enable telemetry
cd vcpkg && ./bootstrap-vcpkg.sh -disableMetrics
# Add the installation directory to your ~/.bashrc file
# Else export the installation directory before building:
export VCPKG_ROOT=$PWD
export PATH=$VCPKG_ROOT:$PATHTo build this repository all of the dependencies for Svalorzen/AI-Toolbox are required:
- cmake >= 3.12
- the boost library >= 1.67
- the Eigen 3.4 library.
- the lp_solve library (a shared library must be available to compile the Python wrapper).
On a Ubuntu system, you can install these dependencies with the following command:
sudo apt install cmake libboost-all-dev liblpsolve55-dev lp-solve libeigen3-dev pkg-configIn addition, this repo provides imgui, cnpy, and OpenGL 4.
These will be automatically included during the build.
Clone this repo and submodules:
git clone --recurse-submodules git@github.com:GreedyPerspectives/GreedyPerspectives.git
Build planner (the first build will take longer):
cmake -B build/ -S . -DCMAKE_TOOLCHAIN_FILE="${VCPKG_ROOT}/scripts/buildsystems/vcpkg.cmake"
cd build && make -j8Run the formation planning demo (from within the build folder) to verify build:
./coverage-planner experiments/merge/form.yaml -vAll of the raw data for the experiments found in the paper can be found here: IROS and ICRA data.
The following are a few demo examples across the various test scenarios we evaluated (In all cases, the goal is to film the red and blue boxes which represent actors moving about in the scene):"
@inproceedings{suresh2024greedy,
title={Greedy Perspectives: Multi-Drone View Planning for Collaborative Perception in Cluttered Environments},
author={Suresh, Krishna and Rauniyar, Aditya and Corah, Micah and Scherer, Sebastian},
journal={Proc. of the {IEEE/RSJ} Intl. Conf. on Intell. Robots and Syst.},
month=oct,
year={2024},
}





