  We present graph-based modeling abstractions to represent cyber-physical
dependencies arising in complex systems. Specifically, we propose an algebraic
graph abstraction to capture physical connectivity in complex optimization
models and a computing graph abstraction to capture communication connectivity
in computing architectures. The proposed abstractions are scalable and are used
as the backbone of a Julia -based software package that we call Plasmo.jl . We
show how the algebraic graph abstraction facilitates the implementation,
analysis, and decomposition of optimization problems and we show how the
computing graph abstraction facilitates the implementation of optimization and
control algorithms and their simulation in virtual environments that involve
distributed, centralized, and hierarchical computing architectures.
