Welcome to the MOOS-IvP Home Page
MOOS-IvP is a set of open source C++ modules for providing autonomy on robotic platforms, in particular autonomous marine vehicles.
Project Objectives and Philosophy:
The primary objective is the development of software for highly capable autonomy systems, able to accept well-defined mission plans, but also able to adapt to their sensed environment, respond to field-control communications, and collaborate with other vehicles. To this end, there are three themes that run deep in this project:
- Platform Independence: The MOOS-IvP software typically runs on a dedicated computer for autonomy and sensing in the vehicle "payload" section. This is referred to as the "Backseat Driver" paradigm. The vehicle manufacturer provides a navigation and control system on the main vehicle computer, capable of streaming vehicle position and trajectory information to the payload computer, and accepting a stream of autonomy decisions such as heading, speed and depth in return. The primary benefits of this approach are (a) an autonomy software system that may be used nearly identically on platforms from several manufacturers, and (b) the decoupling of procurement decisions between the autonomy and sensing software and the decision of the platform hardware.
- Module Independence: MOOS and the IvP Helm provide two architectures that enable the autonomy and sensing system to be built from distinct and independent modules. MOOS is publish-and-subscribe middleware, and the IvP Helm is a behavior based architecture. The primary benefits of this approach are (a) the autonomy and sensing system may be comprised of modules (MOOS Apps and Helm Behaviors) from several organizations with minimal coordination, and (b) no module is sacred - one is free to take the best of the best modules as he or she sees fit.
- Nested Capabilities: The MOOS and IvP Helm architectures both allow a system to be readily extended without any modification to (or recompilation of) the core, publicly available free software. The primary benefit is that it is possible to develop a uniquely capable payload autonomy system augmented with software not available to one's competition.
Project Organization:
The project is situated at MIT, in the Department of Mechanical Engineering and the Center for Ocean Engineering as part of the Laboratory for Autonomous Marine Sensing Systems (LAMSS). Core developers are also part of the MIT Computer Science and Artificial Intelligence Laboratory, (CSAIL), as well as NAVSEA Division Newport RI, (NUWC-DIVNPT). The core MOOS software is maintained and distributed by the Oxford Mobile Robotics Group (MRG).
MOOS stands for "Mission Oriented Operating Suite". IvP stands for "Interval Programming". MOOS-IvP is pronounced "moose i-v-p".