Software Development
Plasmo.jl
Plasmo.jl (Platform for Scalable Modeling and Optimization) is a modeling interface that facilitates modeling cyber-physical systems using graph-based approaches. The package provides component style modeling by providing algebraic and computing graph abstractions defined in supporting packages. A key guiding concept of Plasmo.jl is to provide an intuitive modeling interface that makes it easy to construct and manage complex optimization models and simulate distributed cyber-physical systems.
Plasmo.jl has been developed in conjunction with the Scalable Systems Laboratory at the University of Wisconsin-Madison and Argonne National Laboratory.
- Plasmo.jl https://github.com/jalving/Plasmo.jl
- AlgebraicGraphs.jl https://github.com/jalving/AlgebraicGraphs.jl
- ComputingGraphs.jl https://github.com/jalving/ComputingGraphs.jl
Other Supporting Software
PlasmoSolverInterface.jl https://github.com/jalving/PlasmoSolverInterface.jl
An interface to the PIPS-NLP, DSP decomposition-based parallel optimization solvers.
KaHyPar.jl https://github.com/jalving/KaHyPar.jl
An interface to the KaHyPar hypergraph partitioning package. This interface was developed to exploit hypergraph partitioning approaches for optimization problems but will work with any hypergraph representation.