I developed a path planning algorithm for autonomous sailboats that prevents collisions with obstacles under shifting wind conditions as my computer science honors thesis.
An adaptive Kalman filter is used to place probabilistic bounds on the predicted wind direction. A CC-RRT* based path planner includes contraints on the sailboat’s motion, and probabilistically guarantees that the boat will not enter the no-go zone, while also trying to minimize travel time.
I modified a remote control sailboat to operate autonomously, and have been using it to test the planning algorithm. The sailboat uses a Pixhawk controller running ArduPilot, and has an anemometer to measure wind speed and direction.
This work has been submitted to the 2020 International Symposium on Experimental Robotics (ISER). See below for the accompanying video: