  Assembly planning is a difficult problem for companies. Many disciplines such
as design, planning, scheduling, and manufacturing execution need to be
carefully engineered and coordinated to create successful product assembly
plans. Recent research in the field of design for assembly has proposed new
methodologies to design product structures in such a way that their assembly is
easier. However, present assembly planning approaches lack the engineering tool
support to capture all the constraints associated to assembly planning in a
unified manner. This paper proposes CompositionalPlanning, a string diagram
based framework for assembly planning. In the proposed framework, string
diagrams and their compositional properties serve as the foundation for an
engineering tool where CAD designs interact with planning and scheduling
algorithms to automatically create high-quality assembly plans. These assembly
plans are then executed in simulation to measure their performance and to
visualize their key build characteristics. We demonstrate the versatility of
this approach in the LEGO assembly domain. We developed two reference LEGO CAD
models that are processed by CompositionalPlanning's algorithmic pipeline. We
compare sequential and parallel assembly plans in a Minecraft simulation and
show that the time-to-build performance can be optimized by our algorithms.
