This project aims to explore effective mechanisms for autonomous vehicles to negotiate travel agreements when they meet on a road or at an intersection and encounter unforeseen, dynamic situations. The main objectives are:
1. Design scenarios that require negotiation for travel agreements.
2. Design automated negotiation protocols.
3. Implement and evaluate the proposed negotiation protocols in real autonomous mobile robots.
This project is carried out in both simulated and real environments. Proposed solutions are first developed and evaluated in a simulated environment before being applied to a real environment. While the simulated environment is created in Gazebo, which is part of the Robot Operating System (ROS), the real environment features two Scout robots, and four-wheel mobile robots equipped with LIDAR sensors.
This project utilizes other components from ROS, such as RViz for data visualization, Simultaneous Localization and Mapping (SLAM) for making a map, and move_base for autonomous navigation. Additionally, C++ and Python are used to implement the proposed negotiation protocols.
This project identified a scenario in which two robots move from each end of a narrow road, not wide enough for two robots to pass, to reach a goal on the other side. The project proposed and evaluated two effective protocols to ensure that only one robot is in the narrow road. In the first one, two robots start negotiating when they meet within the narrow road to decide which one should reverse to let the other one pass first. In the second one, two robots