Skip to content
 
 

Repository files navigation

Visual Group Coverage Planner

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

system overview

Multi-Agent Planning algorithm that generates waypoints for Drone Fleet to maximize coverage over dynamic targets.

Table of Contents

  1. Environment Setup

  2. Build Instructions

  3. Demo (Formation Planner)

  4. Demos and Data

Environment Setup

This repository has been developed and tested on Ubuntu 22.04.

Compiler Requirements

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++-10

You 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++-10

Dependency Manager: vcpkg Setup

This 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:$PATH

External Depedencies

To build this repository all of the dependencies for Svalorzen/AI-Toolbox are required:

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-config

Included Depedencies

In addition, this repo provides imgui, cnpy, and OpenGL 4. These will be automatically included during the build.

Build Instructions

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 -j8

Demo (Formation Planner)

Run the formation planning demo (from within the build folder) to verify build:

./coverage-planner experiments/merge/form.yaml -v

Demos and Data

All 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):"

Corridor Sequential         Forest with Collisions

Large Sequential         Merge Sequential

Split Sequential

BibTeX

@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},
}

About

Multi-Agent Planning algorithm that generates waypoints for Drone Fleet to maximize coverage over dynamic targets

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages