Distributed Optimization Methods for Multi-Robot Systems: Part 1—A Tutorial Tutorial | Synapse