Skip to content

Repository files navigation

CoHAN for Nav2

CoHAN-Nav2 is an enhanced version of the Cooperative Human-Aware Navigation framework, building on the foundations of the original CoHAN system Singamaneni et al., IROS 2021. This new iteration significantly improves the stability and robustness of the navigation pipeline in dynamic human environments. A key advancement in CoHAN-Nav2 is the integration of behavior trees for context-aware mode switching, enabling more structured and scalable decision-making during navigation.

The system maintains tight integration with the ROS navigation stack and leverages the Human-Aware Timed Elastic Band (HATEB) planner for trajectory generation, while the newly introduced behavior-based layer allows the robot to seamlessly adapt between social contexts and allows easier integration of new behaviors.

In addition to behavior-based mode switching, CoHAN-Nav2 incorporates reasoning about invisible humans in the environment, as introduced in Singamaneni et al., IROS 2022. By fusing observed human motion with static map information, the system infers the presence of humans who may be occluded or temporarily out of sensor range. This allows the planner to proactively account for hidden human activity—enhancing safety and social compliance in complex, cluttered spaces.

Full Documentation can be found at: https://cohan-nav2.readthedocs.io/

If you are using this version of any of our previous versions, please cite these papers (bibtex below):

  • Singamaneni, P.-T., Favier, A., & Alami, R. (2022). Watch out! There may be a Human. Addressing Invisible Humans in Social Navigation. In Proceedings of the 2022 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pp. 11344–11351. IEEE.

  • Singamaneni, P. T., Favier, A., & Alami, R. (2021). Human-Aware Navigation Planner for Diverse Human-Robot Interaction Contexts. In Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).

  • Singamaneni, P. T., & Alami, R. (2020). HATEB-2: Reactive Planning and Decision Making in Human-Robot Co-navigation. In Proceedings of the International Conference on Robot & Human Interactive Communication (RO-MAN).

Quick Installation on Ubuntu 22.04 and ROS Humble

Installation

git clone https://github.com/sphanit/CoHAN-Nav2.git -b main ~/
cd ~/CoHAN-Nav2
./install-deps.sh ## Install all the dependencies
./compile.sh ## Compiles the packages

Usage

You can find the sample launch and config files in cohan2.0_navigation. Here is how to launch and test on a simulated PR2.

cd ~/CoHAN-Nav2
source install/setup.bash
ros2 launch cohan_sim_navigation cohan_sim_pr2_launch.py
ros2 run teleop_twist_keyboard teleop_twist_keyboard cmd_vel:=/human1/cmd_vel

Now you can give a goal to the robot and move the human around with teleop to test the system.

Check the Required Topics here to publish all the topics: https://cohan-nav2.readthedocs.io/tutorial.html

Bibtex

@inproceedings{singamaneni2022watch,
title={Watch out! There may be a Human. Addressing Invisible Humans in Social Navigation},
author={Singamaneni, Phani-Teja and Favier, Anthony and Alami, Rachid},
booktitle={2022 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
pages={11344--11351},
year={2022},
organization={IEEE}
}

@inproceedings{singamaneni2021human,
  author = {Singamaneni, Phani Teja and Favier, Anthony and Alami, Rachid},
  title = {Human-Aware Navigation Planner for Diverse Human-Robot Ineraction Contexts},
  booktitle = {IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)},
  year = {2021},
}

@inproceedings{singamaneni2020hateb,
  author = {Singamaneni, Phani Teja and Alami, Rachid},
  title = {HATEB-2: Reactive Planning and Decision making in Human-Robot Co-navigation},
  booktitle = {International Conference on Robot \& Human Interactive Communication},
  year = {2020},
  doi = {10.1109/RO-MAN47096.2020.9223463}
}

About

No description, website, or topics provided.

Resources

Stars

8 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages