\documentclass[onecolumn,letterpaper,11pt]{article}

%===================================================================
\input{common_latex/common_latex_packages}
\input{common_latex/common_latex_definitions}
\input{common_latex/common_latex_lab_format}
%===================================================================

\begin{document}

\begin{labcover}
\labtitle{Syllabus: Introduction to Adaptive and Collaborative}
\labtitle{Marine Autonomy with MOOS-IvP}
\vspace{0.1in}
\labtitle{University of Pisa}
\vspace{0.1in}
\labdate{November 2025}
\vspace{0.1in}
\labauth{Michael Benjamin, mikerb@mit.edu}
\labauth{Mohamed Saad Ibn Seddik, ms.ibnseddik@gmail.com}
\labauth{Department of Mechanical Engineering}
\labauth{MIT, Cambridge MA 02139}
\end{labcover}

\wikidoc{file=Site.Syllabus}
\wikidoc{auth=mikerb@mit.edu}

%========================================================================
\section{About This Course}
%========================================================================

This short intensive course provides a introduction to the emerging
field of marine autonomy, using the MIT open-source MOOS-IvP software
framework. Participants will learn the fundamentals of decision making
for autonomous control of a single marine platform and teams of
platforms.  This course is conducted with examples and exercises in
simulation. We will present variations of marine autonomy problems and
missions often found on marine robots, and discuss why certain
approaches to autonomy are more appropriate than others depending on
the mission. The concept of robot middleware software is introduced
along with basic and advanced methods for engaging with the software
at run time through low-level injection and scoping methods as well as
through a command-and-control (C2) interface.  Decision-making with a
behavior-based architecture is presented, along with methods for
action selection for behavior reconciliation, including the use of
multi-objective optimization used in the MIT software stack.  Students
will then be introduced to methods for constructing autonomous
capabilities using the behavior building block for switching modes
based on mission milestones, sensed events or C2 messages. Finally,
collaborative multi-vehicle autonomy is introduced through the core
topics of inter-vehicle messaging, decentralized decision-making and
the use of multi-vehicle protocol-based autonomy. The class will
culminate by covering the mechanics of construction of new
applications and applying an application to an autonomy mission.

%========================================================================
\section{Learning Objectives}
%========================================================================

\subsection{High-level Learning Objectives}

\vspace{0.1in}
\noindent
Understand:

\input{common/objectives_high}

\subsection{Component Level Learning Objectives}

\vspace{0.1in}
\noindent
Understand:

\input{common/objectives_components}

%========================================================================
\section{Class Mechanics}
%========================================================================

This course will be taught over five days, with the fifth day being
primarily a final lab challenge problem. Each of the five days will be
comprised of two half-day sessions, roughly 3-3.5 hours each. Each
session begins by introducing new slide material for about an 45
minutes, followed by a lab preview discussion, followed by a two hour
self-contained lab.

\vspace{0.1in}
\noindent
The lab exercises require either a Linux or MacOS system provided by
each participant. Guidance will be provided on how to download and
install the MOOS-IvP autonomy software and autonomy tools on
participant laptops. External network connectivity is strongly
preferred to allow for downloading of course material, labs and lab
solutions. 

%========================================================================
\section{Schedule}
%========================================================================

The mini-course is comprised of ten sessions. Each session is
approximately 3-3.5 hours with the first 45-60 minutes being a slide
discussion, followed by a 2-3 hour self-contained set of lab
exercises. The labs are structured to build upon previous labs, but
are also structured to be doable even if the prior labs were not
totally completed. Likewise, if participants are moving faster than
normal, additional challenge exercises are provided for each lab.

%========================================================================
\subsection{Session 1: Overview of Marine Autonomy and Setup of Lab Sim Tools}

\noindent
{\bf Lecture:}
\input{common/lecture_01}

\noindent
{\bf Lab:}
\input{common/lab_01}


%========================================================================
\subsection{Session 2: MOOS Middleware }

\noindent
{\bf Lecture:}
\input{common/lecture_02}

\noindent
{\bf Lab:}
\input{common/lab_02}


%========================================================================
\subsection{Session 3: Helm Autonomy}

\noindent
{\bf Lecture:}
\input{common/lecture_03}

\noindent
{\bf Lab:}
\input{common/lab_03}


%========================================================================
\subsection{Session 4: Behaviors Generally and Specifically}

\noindent
{\bf Lecture:}
\input{common/lecture_04}

\noindent
{\bf Lab:}
\input{common/lab_04}


%========================================================================
\subsection{Session 5: Multi-Vehicle Operations}

\noindent
{\bf Lecture:}
\input{common/lecture_05}

\noindent
{\bf Lab:}
\input{common/lab_05}

%========================================================================
\subsection{Session 6: Inter-vehicle Messaging}

\noindent
{\bf Lecture:}
\input{common/lecture_06}

\noindent
{\bf Lab:}
\input{common/lab_06}

%========================================================================
\subsection{Session 7: Writing MOOS App Extensions}

\noindent
{\bf Lecture:}
\input{common/lecture_07}

\noindent
{\bf Lab:}
\input{common/lab_07}

%========================================================================
\subsection{Session 8: Analyzing and Debugging MOOS Apps}

\noindent
{\bf Lecture:}
\input{common/lecture_08}

\noindent
{\bf Lab:}
\input{common/lab_08}

%========================================================================
\subsection{Session 9: Final Challenge Problem Part One}

\noindent
{\bf Lecture:}
\input{common/lecture_09}

\noindent
{\bf Lab:}
\input{common/lab_09}

%========================================================================
\subsection{Session 10: Final Challenge Problem Part Two}

\noindent
{\bf Lecture:}
\input{common/lecture_10}

\noindent
{\bf Lab:}
\input{common/lab_10}


\end{document}


