  The goal of this paper is to provide a survey and application-focused atlas
of collective behavior coordination algorithms for multi-agent systems.
  We survey the general family of collective behavior algorithms for
multi-agent systems and classify them according to their underlying
mathematical structure. In doing so, we aim to capture fundamental mathematical
properties of algorithms (e.g., scalability with respect to the number of
agents and bandwidth use) and to show how the same algorithm or family of
algorithms can be used for multiple tasks and applications.
  Collectively, this paper provides an application-focused atlas of algorithms
for collective behavior of multi-agent systems, with three objectives:
  1. to act as a tutorial guide to practitioners in the selection of
coordination algorithms for a given application;
  2. to highlight how mathematically similar algorithms can be used for a
variety of tasks, ranging from low-level control to high-level coordination;
  3. to explore the state-of-the-art in the field of control of multi-agent
systems and identify areas for future research.
