Distributed model predictive control using optimality condition decomposition and community detection. (March 2021)