optimization using plasmo jl
play

Optimization using Plasmo.jl Jordan Jalving & Victor M. Zavala - PowerPoint PPT Presentation

Graph-Based Modeling and Optimization using Plasmo.jl Jordan Jalving & Victor M. Zavala Department of Chemical and Biological Engineering University of Wisconsin-Madison Third Annual JuMP Development Workshop March 14 th , 2019 1


  1. Graph-Based Modeling and Optimization using Plasmo.jl Jordan Jalving & Victor M. Zavala Department of Chemical and Biological Engineering University of Wisconsin-Madison Third Annual JuMP Development Workshop March 14 th , 2019 1

  2. Motivation: Cyber-Physical Systems Physical Aspects Computing Aspects Physical Models and Connections Communication/Cyber Connections Challenges: Large-scale optimization problems Challenges: Simulating real-time systems 2

  3. Algebraic Graphs (Model Graphs) Model Graph Formulation Connectivity Matrix JuMP Model JuMP Model Link JuMP Models JuMP Model 3

  4. Algebraic Graph Example Load Packages Create a Model-Graph (Algebraic Graph) JuMP Models Solve and Query Results 4

  5. Hierarchical Algebraic Graphs Gas Infrastructure Graph Power Infrastructure Graph Link Systems 5

  6. Hierarchical Modeling Example 6

  7. Decomposition Algorithms Braulio Brunaud 7

  8. Graph Decomposition Graph Partitions Modeled System Linear Algebra Decomposition (e.g., PIPS-NLP) Lagrangean Decomposition 8

  9. Model Graph Partitioning ➢ 1 million variable nonlinear programming problem ➢ Solves with PIPS-NLP ~40 minutes 9

  10. Model Graph Community Detection 10

  11. Graph-Based Modeling Abstractions Algebraic Graphs • Exploit physical topology • Nodes =Models, Edges =Static Connections • Exploit topology to decompose large-scale optimization problems Computing Graphs • Exploit communication topology • Nodes =Tasks, Edges =Dynamic Connections • Exploit topology to simulate behavior of algorithms and computing architectures 11

  12. Computing Graphs Challenge: Capture computing aspects ( e.g., Asynchronicity, Delays, Latency) of a real-time system Key Elements Nodes: Tasks and Attributes (data) State-Space Description Tasks: Computing time Edges: Communication Clock: Scheduling & Management 12

  13. Computing Graphs ➢ Compute tasks and communication each require time ➢ A discrete-event queue coordinates simulation timings (the clock) 13

  14. Simulation of Distributed Optimization Algorithms Example: Benders Decomposition Simulate parallel algorithm variants (synchronous & asynchronous) Sub-problem Sub-problem solution solution Master solution (and scenarios) Idea: Predict Effects of Computing/Communication Delays and Failures 14

  15. Plasmo.jl Implementation 1. Create Computing Graph 2. Add Master Node with Attributes (Data) and Tasks 3. Initialize Graph 4. Add Sub-nodes and Connections 5. Execute Computing Graph 15

  16. Synchronous Benders Algorithm CPU Idle CPU time • Simulation Predicts Poor Parallel Efficiency (Idle Processors) 16

  17. Asynchronous Benders Algorithm CPU • Simulation predicts much higher parallel efficiency (but longer solution time) 17

  18. Thank You https://github.com/zavalab/Plasmo.jl 18

Recommend


More recommend