{"id":18624631,"url":"https://github.com/kumarrobotics/coveragecontrol","last_synced_at":"2025-04-11T12:44:47.484Z","repository":{"id":225413826,"uuid":"654318741","full_name":"KumarRobotics/CoverageControl","owner":"KumarRobotics","description":"Environment for coverage control and learning using GNN","archived":false,"fork":false,"pushed_at":"2024-04-25T10:50:19.000Z","size":18308,"stargazers_count":4,"open_issues_count":2,"forks_count":2,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-04-25T20:57:41.418Z","etag":null,"topics":["coverage-control","graph-neural-networks","pytorch","robotics","robotics-control","ros","ros2"],"latest_commit_sha":null,"homepage":"https://kumarrobotics.github.io/CoverageControl/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KumarRobotics.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-15T21:41:16.000Z","updated_at":"2024-04-25T10:45:09.000Z","dependencies_parsed_at":"2024-03-10T07:28:10.330Z","dependency_job_id":"6afbd6c7-498d-401d-90af-223ba6fca768","html_url":"https://github.com/KumarRobotics/CoverageControl","commit_stats":null,"previous_names":["kumarrobotics/coveragecontrol"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KumarRobotics%2FCoverageControl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KumarRobotics%2FCoverageControl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KumarRobotics%2FCoverageControl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KumarRobotics%2FCoverageControl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KumarRobotics","download_url":"https://codeload.github.com/KumarRobotics/CoverageControl/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248402541,"owners_count":21097331,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["coverage-control","graph-neural-networks","pytorch","robotics","robotics-control","ros","ros2"],"created_at":"2024-11-07T04:29:47.800Z","updated_at":"2025-04-11T12:44:47.457Z","avatar_url":"https://github.com/KumarRobotics.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"See full documentation at [https://KumarRobotics.github.io/CoverageControl/](https://KumarRobotics.github.io/CoverageControl/)\n\n## Introduction\n\nCoverage control is the problem of navigating a robot swarm to collaboratively monitor features or a phenomenon of interest not known _a priori_.\nThe library provides a simulation environment, algorithms, and GNN-based architectures for the coverage control problem.  \n\u003cimg src=\"https://kumarrobotics.github.io/CoverageControl/LPAC.gif\" align=\"right\" width=\"300\"\u003e\n\n**Key features:**  \n- The core library is written in `C++` and `CUDA` to handle large-scale simulations\n- There are `python` bindings that interface with the core library\n- Several Centroidal Voronoi Tessellation (CVT)-based algorithms (aka Lloyd's algorithms)\n- Learnable Perception-Action-Communication (LPAC) architecture for the coverage control problem is implemented in `PyTorch` and `PyTorch Geometric`\n\n---\n## Getting Started\nThe library is available as a `pip` package. To install the package, run the following command:\n```bash\npip install coverage_control\n```\n\nSee [Installation](https://kumarrobotics.github.io/CoverageControl/installation.html) for more details on installation.\n\nSee [Quick Start](https://kumarrobotics.github.io/CoverageControl/quick_start.html) guide for a quick introduction to the library.\n\n---\n\n## Citation\n```\n@article{agarwal2024lpac,\n      title         =   {LPAC: Learnable Perception-Action-Communication Loops with\n                            Applications to Coverage Control}, \n      author        =   {Saurav Agarwal and Ramya Muthukrishnan and \n                            Walker Gosrich and Vijay Kumar and Alejandro Ribeiro},\n      year          =   {2024},\n      eprint        =   {2401.04855},\n      archivePrefix =   {arXiv},\n      primaryClass  =   {cs.RO}\n}\n```\n  \n\u003e [LPAC: Learnable Perception-Action-Communication Loops with Applications to Coverage Control.](https://doi.org/10.48550/arXiv.2401.04855)  \n\u003e Saurav Agarwal, Ramya Muthukrishnan, Walker Gosrich, Vijay Kumar, and Alejandro Ribeiro.  \n\u003e arXiv preprint arXiv:2401.04855 (2024).\n\n\n## Acknowledgements\n- [PyTorch](https://pytorch.org/)\n- [PyTorch Geometric](https://pytorch-geometric.readthedocs.io/en/latest/)\n- [Eigen](http://eigen.tuxfamily.org/index.php?title=Main_Page)\n- [pybind11](https://pybind11.readthedocs.io/en/stable/)\n- [CGAL](https://www.cgal.org/)\n- [JSON for Modern C++](https://github.com/nlohmann/json)\n- [CUDA Samples](https://github.com/NVIDIA/cuda-samples)\n- [gnuplot-iostream](http://stahlke.org/dan/gnuplot-iostream/)\n- [hungarian-algorithm-cpp](https://github.com/mcximing/hungarian-algorithm-cpp)\n- [toml++](https://marzer.github.io/tomlplusplus/index.html)\n\n\n## Support and Funding\nThe work was performed at the [GRASP Laboratory](https://www.grasp.upenn.edu/) and the [Alelab](https://alelab.seas.upenn.edu/), University of Pennsylvania, USA.\n\nThis work was supported in part by grants ARL DCIST CRA W911NF-17-2-0181 and ONR N00014-20-1-2822.\n\n\n## Contributors\n- [Saurav Agarwal](https://www.saurav.fyi/)\n- Ramya Muthukrishnan\n\n\n## License\nThe library is licensed under the [GPL-3.0 License](https://www.gnu.org/licenses/gpl-3.0.html).\nThe documentation is not under the GPL-3.0 License and is licensed under the [CC BY-NC-SA 4.0 License](https://creativecommons.org/licenses/by-nc-sa/4.0/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkumarrobotics%2Fcoveragecontrol","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkumarrobotics%2Fcoveragecontrol","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkumarrobotics%2Fcoveragecontrol/lists"}