For my dissertation, I wanted to look into A* Pathfinding as it was something I wanted to work on for a while. I also said prior to doing my Master's that I would utilise the robotic technologies that I wouldn't have been able to work with outside university. Thus, two birds with one stone - researching the pathfinding for robotic footballers. If you're wondering why football? The topic of 'Robotic football players' has contributed more to robots than you would have expected, similar to how game AI contributed to the artificial intelligence we use today.
I researched the optimal pathfinding solution for robotic football players. As such, I delved into pathfinding - particularly A* pathfinding. In my research, I found that A* pathfinding was not the most optimal solution for the specific problem of robotic football players; however, it was very accurate in precision. The issue with the A* algorithm is that it is not dynamic enough for the constant changes within a game of football (which the robots are trying to emulate). As such, there are alternatives (some of which derive from the A* algorithm), such as D* Lite, that prove to be more efficient within this specific scenario. D* Lite reuses previous path information and only changes the affected part of the path. Consequently, it is better suited for dynamic scenarios than A*.
Of course, I wrote a lot about this in detail within my dissertation, so feel free to read it below if you want the full details:
The code was created using Python and the ROS (Robotic Operating System) framework. Gazebo was used as the environment to simulate the robot and the robot itself was the TurtleBot3 Burger (I believe they called him Meaty). I implemented two pathfinding algorithms: A* Pathfinding and D* Lite.