{"id":24741199,"url":"https://github.com/hybridrobotics/cbf","last_synced_at":"2025-10-10T09:31:50.212Z","repository":{"id":47955256,"uuid":"359266880","full_name":"HybridRobotics/cbf","owner":"HybridRobotics","description":"An open source repository for control, planning and navigation about control barrier functions.","archived":false,"fork":false,"pushed_at":"2024-02-22T02:02:54.000Z","size":4862,"stargazers_count":187,"open_issues_count":6,"forks_count":28,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-03T19:07:45.277Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HybridRobotics.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-04-18T22:35:17.000Z","updated_at":"2025-04-03T02:07:00.000Z","dependencies_parsed_at":"2022-08-12T15:01:32.005Z","dependency_job_id":null,"html_url":"https://github.com/HybridRobotics/cbf","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/HybridRobotics/cbf","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HybridRobotics%2Fcbf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HybridRobotics%2Fcbf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HybridRobotics%2Fcbf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HybridRobotics%2Fcbf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HybridRobotics","download_url":"https://codeload.github.com/HybridRobotics/cbf/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HybridRobotics%2Fcbf/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279003405,"owners_count":26083581,"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","status":"online","status_checked_at":"2025-10-10T02:00:06.843Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2025-01-27T23:49:30.969Z","updated_at":"2025-10-10T09:31:49.812Z","avatar_url":"https://github.com/HybridRobotics.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# cbf\nThis repo serves as a toolkit for testing different algorithm for control barrier functions.\n\n**Status:** This repository is still under development, expecting new features/papers and a complete tutorial to explain it. Feel free to raise questions/suggestions through GitHub Issues, if you want to use the current version of this repository. Please watch and star for subscribing further updates which will be related to our latest preprints and published papers.\n\n### Citing\nIf you find this repository useful in your work, please consider citing following work:\n\n```\n@inproceedings{thirugnanam2022safety,\n  title={Safety-Critical Control and Planning for Obstacle Avoidance between Polytopes with Control Barrier Functions},\n  author={Thirugnanam, Akshay and Zeng, Jun and Sreenath, Koushil},\n  booktitle={2022 IEEE International Conference on Robotics and Automation (ICRA)},\n  year={2022}\n}\n```\n\n### Environments\n* Create your environment via `conda env create -f environment.yml`. The default conda environment name is `cbf`, and you could also choose that name with your own preferences by editing the .yml file.\n\n### Maze navigation with duality-based obstacle avoidance\nThis represents the implementation of the following paper:\n* A. Thirugnanam, J. Zeng, K. Sreenath. \"Safety-Critical Control and Planning for Obstacle Avoidance between Polytopes with Control Barrier Functions.\" *2022 IEEE International Conference on Robotics and Automation (ICRA)*. [[arXiv]](https://arxiv.org/abs/2109.12313) [[Video]](https://youtu.be/2hKlihdERog)\n\nRun `python models/kinematic_car_test.py`. This simulates maze navigation (two maze setups) with duality-based obstacle avoidance (four robot shapes including rectangle, pentagon, triangle and l-shape) in the discrete-time domain. The animations and snapshots can be found in folder `animations` and `figures`. An example animation video can be generated as follows,\n\nhttps://user-images.githubusercontent.com/27001847/147999361-faf3557a-3c87-48ab-aa3a-8830b3d565d5.mp4\n\n### Contributors\nJun Zeng, Akshay Thirugnanam.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhybridrobotics%2Fcbf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhybridrobotics%2Fcbf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhybridrobotics%2Fcbf/lists"}