This page lists some of the projects that I have worked on. Feel free to contact me for more information.

  • ATFM MILP Python Solver: More information on this coming soon…

  • Dubins Path Planner Library (DPPL) for C++: An offline path planner for unmanned aerial vehicles (UAVs). The tool is capable of solving two types of path planning problems. The first is to find an efficient order for visiting a set of points, which is a nonholonomic variant of the Traveling Salesman Problem (TSP). The second goal is to determine a path for efficient coverage of an area for a vehicle equipped with a sensor or actuator of specified coverage. This is known as the Coverage Planning Problem (CPP). The tool was implemented as an open source software library, and currently includes support for Dubins’ vehicles, which have an upper–bounded path curvature, such as cars and aircraft. An interface was created for QGroundControl: an open source ground station software for small UAVs. Experimental data was collected with a fixed-wing UAV validating the approach. See this post for more information.

  • Santa Cruz Low-cost UAV GNC System (SLUGS): The Santa Cruz Low-cost Unmanned Aerial Vehicle (UAV) Guidance and Control (GNC) System is a reprogrammable UAV autopilot that is currently under development by the Autonomous Systems Lab at the University of California Santa Cruz. Although not quite ready for prime time, the photo log and the video library show some significant progress towards a fully functional platform. David inherited SLUGS from a previous Ph.D. student, and contributed significantly to development and testing between 2013 and 2015, including: integrating new sensors and controls, L2+ guidance logic visualization in FlightGear, QGroundControl interface for SLUGS, and improvements to MAVLink protocol logic.
    Links to SLUGS source code on GitHub:
  • Autonomous Lifeguard Project from Lifeguard Robotics: The Autonomous Lifeguard Project is an autonomous service vessel (ASV) designed to help rescue drowning individuals by acting as a “smart life preserver” capable of autonomously navigating to a spot designated by a lifeguard on the shore. Lifeguard Robotics is the name of the robotics company David helped found with three other UC Santa Cruz graduates. David acted as the lead software engineer for the project, developing a large majority of the embedded code and analysis software. Things sputtered out after the four team members entered grad. school in 2013. You can still find the old website in the Wayback Machine.


You can find source code for more of David’s projects on GitHub: dagoodma / dagoodma