GobySoft has extensive experience implementing autonomy algorithms on a variety of marine vehicles (robots) and supporting these autonomous vehicles at sea. This includes development, simulation/testing, and implementation of autonomy algorithms and behaviors that allow for dynamically-configurable and/or adaptive motion of the autonomous marine vehicles. A few of our former and current major autonomy projects are further described below.

Jaiabot Micro-UUV

GobySoft performed the initial prototype development of the Jaiabot software system and continues to play a key role in the project as a consultant to JaiaRobotics, Inc. This micro unmanned autonomous vehicle (UUV) system uses fully open source software (based on the Goby, DCCL and MOOS-IvP projects). The Jaiabots are lightweight, low cost, and easily deployed in swarms, making them suitable for a wide range of applications including environmental monitoring, research, offshore renewables, and more. The autonomy system (based around hierarchical state machines and MOOS-IvP) provides a flexible behavior-based waypoint engine paired with a set of user customizable tasks (dive, station keep, surface drift, etc.).

Unmanned Surface Vehicles

GobySoft has provided software engineering experience to the development of two independent projects with a similar aim: the development of novel unmanned surface vehicles. These vehicles are designed to carry a comprehensive suite of payload instruments for oceanographic, surveillance, and mapping missions.

These projects require a comprehensive approach, including tasks ranging from writing sensor drivers, deploying MOOS-IvP autonomy and the Goby3 middleware, and creating a reliable communications link back to shore, based on LTE cellular data, satellite, and short range wireless Ethernet (wifi).

Mission configuration structure for MOOS & IvP Helm autonomy on marine vehicles

Configuration management is a significant task for deployments of multiple vehicles for different tasks. We developed a mission configuration system that works on a class-based inheritance design to rapidly and portably switch between different vehicles and different applications (or cruises). See this paper for more details and the LAMSS project page for the missions-lamss repository.

Adaptive oceanographic feature tracking

Researchers in the oceanographic community are often limited in their shipboard data collection time due to the high cost of available ship time. Thus, it is important to perform sampling of oceanographic features both efficiently and accurately to gather the necessary data sets. This is often complicated further by the spatiotemporally dynamic nature of hydrographic features from one location to the next based on the local environment.

An alternative approach to the traditional oceanographic feature sampling methods of towing instruments behind a ship or deploying instruments off the side of a stationary vessel in pre-planned transects is to deploy one or more AUVs to preform the sampling. To even further improve the efficiency of AUV sampling beyond pre-planned survey patterns, environmentally adaptive autonomy behaviors may be employed. Using adaptive autonomy, an AUV can autonomously survey an area initially, determine where the desired feature is located, and actively track the feature as it moves and/or changes shape in space and time without a human operator in the loop. We have experience developing and implementing such environmentally adaptive behavior algorithms using the MOOS middleware and IvP Helm autonomy.