Skip to main content

Library for large-scale coverage control using robot swarms

Project description

See full documentation at https://KumarRobotics.github.io/CoverageControl/

Introduction

Coverage control is the problem of navigating a robot swarm to collaboratively monitor features or a phenomenon of interest not known a priori. The library provides a simulation environment, algorithms, and GNN-based architectures for the coverage control problem.

Key features:

  • The core library is written in C++ and CUDA to handle large-scale simulations
  • There are python bindings that interface with the core library
  • Several Centroidal Voronoi Tessellation (CVT)-based algorithms (aka Lloyd's algorithms)
  • Learnable Perception-Action-Communication (LPAC) architecture for the coverage control problem is implemented in PyTorch and PyTorch Geometric

Getting Started

The library is available as a pip package. To install the package, run the following command:

pip install coverage_control

See Installation for more details on installation.

See Quick Start guide for a quick introduction to the library.


Citation

@article{agarwal2024lpac,
      title         =   {LPAC: Learnable Perception-Action-Communication Loops with
                            Applications to Coverage Control}, 
      author        =   {Saurav Agarwal and Ramya Muthukrishnan and 
                            Walker Gosrich and Vijay Kumar and Alejandro Ribeiro},
      year          =   {2024},
      eprint        =   {2401.04855},
      archivePrefix =   {arXiv},
      primaryClass  =   {cs.RO}
}

LPAC: Learnable Perception-Action-Communication Loops with Applications to Coverage Control.
Saurav Agarwal, Ramya Muthukrishnan, Walker Gosrich, Vijay Kumar, and Alejandro Ribeiro.
arXiv preprint arXiv:2401.04855 (2024).

Acknowledgements

Support and Funding

The work was performed at the GRASP Laboratory and the Alelab, University of Pennsylvania, USA.

This work was supported in part by grants ARL DCIST CRA W911NF-17-2-0181 and ONR N00014-20-1-2822.

Contributors

License

The library is licensed under the GPL-3.0 License. The documentation is not under the GPL-3.0 License and is licensed under the CC BY-NC-SA 4.0 License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

coverage_control-1.3.1.tar.gz (10.2 MB view details)

Uploaded Source

Built Distributions

coverage_control-1.3.1-cp313-cp313-manylinux_2_28_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.13 manylinux: glibc 2.28+ x86-64

coverage_control-1.3.1-cp312-cp312-manylinux_2_28_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.12 manylinux: glibc 2.28+ x86-64

coverage_control-1.3.1-cp311-cp311-manylinux_2_28_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.11 manylinux: glibc 2.28+ x86-64

coverage_control-1.3.1-cp310-cp310-manylinux_2_28_x86_64.whl (2.4 MB view details)

Uploaded CPython 3.10 manylinux: glibc 2.28+ x86-64

File details

Details for the file coverage_control-1.3.1.tar.gz.

File metadata

  • Download URL: coverage_control-1.3.1.tar.gz
  • Upload date:
  • Size: 10.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for coverage_control-1.3.1.tar.gz
Algorithm Hash digest
SHA256 47c93d79a4de5f00e893bdceb8d1b19d1d71ad265228caf7af6c2f8ba29798f2
MD5 cfc3cee3239a5f95df680229afa82409
BLAKE2b-256 e7786369d641f13cd69afe634f09c4f4350cffb8f49bb94bebe7bfbb6b80b7fb

See more details on using hashes here.

Provenance

The following attestation bundles were made for coverage_control-1.3.1.tar.gz:

Publisher: cd.yml on KumarRobotics/CoverageControl

Attestations:

File details

Details for the file coverage_control-1.3.1-cp313-cp313-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for coverage_control-1.3.1-cp313-cp313-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e11e0eb8fa90f0a6c257a8613efa1f209d95450a1d271d6b6db6bb3148150979
MD5 ef3c2f079653ded32bef2cc4821e1bd5
BLAKE2b-256 d20b8391bcbb311c74aefb0b7592c3e81e161ce6e2b2755dc5e9abe9049dbeb3

See more details on using hashes here.

Provenance

The following attestation bundles were made for coverage_control-1.3.1-cp313-cp313-manylinux_2_28_x86_64.whl:

Publisher: cd.yml on KumarRobotics/CoverageControl

Attestations:

File details

Details for the file coverage_control-1.3.1-cp312-cp312-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for coverage_control-1.3.1-cp312-cp312-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 8d8baf43f3f1c83013a86cf662279005658cdff676ef2e0bf5f1fc92e6c79c26
MD5 4b49040fa2213fe6437d9c5890a91530
BLAKE2b-256 a776a2023fdcde271924393a6371fdfcfb854c015f4ba7e77a6d2d06b843c59b

See more details on using hashes here.

Provenance

The following attestation bundles were made for coverage_control-1.3.1-cp312-cp312-manylinux_2_28_x86_64.whl:

Publisher: cd.yml on KumarRobotics/CoverageControl

Attestations:

File details

Details for the file coverage_control-1.3.1-cp311-cp311-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for coverage_control-1.3.1-cp311-cp311-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 9d776bf3aa3c323142066bae4c2fba0197fd0c21693635c7fd5f2212571b6b68
MD5 9bba8f644804a2b7284dbd8982474fad
BLAKE2b-256 e2fb9dfb99cd71713fe7d86a7aa97de82de3149d51d717eb4300a06b9f5e8b95

See more details on using hashes here.

Provenance

The following attestation bundles were made for coverage_control-1.3.1-cp311-cp311-manylinux_2_28_x86_64.whl:

Publisher: cd.yml on KumarRobotics/CoverageControl

Attestations:

File details

Details for the file coverage_control-1.3.1-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for coverage_control-1.3.1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 64ac088e571ca320ee714acf03b0bd76744b17235254134158af3f62e7d43651
MD5 3194132a9b5050140dce110df36831c8
BLAKE2b-256 c159911558268153adee5e6cbc29c4fb58dfb87dfb51103e9289f058e7e6d964

See more details on using hashes here.

Provenance

The following attestation bundles were made for coverage_control-1.3.1-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: cd.yml on KumarRobotics/CoverageControl

Attestations:

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page