System Level Synthesis (SLS) parametrization facilitates controller synthesis
for large, complex, and distributed systems by incorporating system level
constraints (SLCs) into a convex SLS problem and mapping its solution to stable
controller design. Solving the SLS problem at scale efficiently is challenging,
and current attempts take advantage of special system or controller structures
to speed up the computation in parallel. However, those methods do not
generalize as they rely on the specific system/controller properties.
We argue that it is possible to solve general SLS problems more efficiently
by exploiting the structure of SLS constraints. In particular, we derive
dynamic programming (DP) algorithms to solve SLS problems. In addition to the
plain SLS without any SLCs, we extend DP to tackle infinite horizon SLS
approximation and entrywise linear constraints, which form a superclass of the
locality constraints. Comparing to convex program solver and naive analytical
derivation, DP solves SLS 4 to 12 times faster and scales with little
computation overhead. We also quantize the cost of synthesizing a controller
that stabilizes the system in a finite horizon through simulations