Scalable Multi-Stage Stochastic Programming

Slides:



Advertisements
Similar presentations
Parallel Symbolic Execution for Structural Test Generation Matt Staats Corina Pasareanu ISSTA 2010.
Advertisements

A Discrete Adjoint-Based Approach for Optimization Problems on 3D Unstructured Meshes Dimitri J. Mavriplis Department of Mechanical Engineering University.
1 Dynamic portfolio optimization with stochastic programming TIØ4317, H2009.
Graph Laplacian Regularization for Large-Scale Semidefinite Programming Kilian Weinberger et al. NIPS 2006 presented by Aggeliki Tsoli.
Javad Lavaei Department of Electrical Engineering Columbia University Graph-Theoretic Algorithm for Nonlinear Power Optimization Problems.
All Hands Meeting, 2006 Title: Grid Workflow Scheduling in WOSE (Workflow Optimisation Services for e- Science Applications) Authors: Yash Patel, Andrew.
Scalable Stochastic Programming Cosmin Petra and Mihai Anitescu Mathematics and Computer Science Division Argonne National Laboratory Informs Computing.
Numerical Parallel Algorithms for Large-Scale Nanoelectronics Simulations using NESSIE Eric Polizzi, Ahmed Sameh Department of Computer Sciences, Purdue.
Applications of Stochastic Programming in the Energy Industry Chonawee Supatgiat Research Group Enron Corp. INFORMS Houston Chapter Meeting August 2, 2001.
Gizem ALAGÖZ. Simulation optimization has received considerable attention from both simulation researchers and practitioners. Both continuous and discrete.
OpenFOAM on a GPU-based Heterogeneous Cluster
Modern iterative methods For basic iterative methods, converge linearly Modern iterative methods, converge faster –Krylov subspace method Steepest descent.
10/11/2001Random walks and spectral segmentation1 CSE 291 Fall 2001 Marina Meila and Jianbo Shi: Learning Segmentation by Random Walks/A Random Walks View.
Stochastic Optimization of Complex Energy Systems on High-Performance Computers Cosmin G. Petra Mathematics and Computer Science Division Argonne National.
Multilevel Incomplete Factorizations for Non-Linear FE problems in Geomechanics DMMMSA – University of Padova Department of Mathematical Methods and Models.
Scalable Multi-Stage Stochastic Programming Cosmin Petra and Mihai Anitescu Mathematics and Computer Science Division Argonne National Laboratory DOE Applied.
CS 584. Review n Systems of equations and finite element methods are related.
Scientific Computing Seminar AMLS, Spectral Schur Complements and Iterative Computation of Eigenvalues * C. BekasY. Saad Comp. Science & Engineering Dept.
Classification Problem 2-Category Linearly Separable Case A- A+ Malignant Benign.
© 2005, it - instituto de telecomunicações. Todos os direitos reservados. Gerhard Maierbacher Scalable Coding Solutions for Wireless Sensor Networks IT.
Preference Analysis Joachim Giesen and Eva Schuberth May 24, 2006.
1 Combinatorial Problems in Cooperative Control: Complexity and Scalability Carla Gomes and Bart Selman Cornell University Muri Meeting March 2002.
On the convergence of SDDP and related algorithms Speaker: Ziming Guan Supervisor: A. B. Philpott Sponsor: Fonterra New Zealand.
Higher-order Confidence Intervals for Stochastic Programming using Bootstrapping Cosmin G. Petra Joint work with Mihai Anitescu Mathematics and Computer.
On parallelizing dual decomposition in stochastic integer programming
Scalable Stochastic Programming Cosmin G. Petra Mathematics and Computer Science Division Argonne National Laboratory Joint work with.
Exercise problems for students taking the Programming Parallel Computers course. Janusz Kowalik Piotr Arlukowicz Tadeusz Puzniakowski Informatics Institute.
MUMPS A Multifrontal Massively Parallel Solver IMPLEMENTATION Distributed multifrontal.
Parallel Performance of Hierarchical Multipole Algorithms for Inductance Extraction Ananth Grama, Purdue University Vivek Sarin, Texas A&M University Hemant.
Optimization Under Uncertainty: Structure-Exploiting Algorithms Victor M. Zavala Assistant Computational Mathematician Mathematics and Computer Science.
Scalable Stochastic Programming Cosmin G. Petra Mathematics and Computer Science Division Argonne National Laboratory Joint work with.
Network Aware Resource Allocation in Distributed Clouds.
THE STABILITY BOX IN INTERVAL DATA FOR MINIMIZING THE SUM OF WEIGHTED COMPLETION TIMES Yuri N. Sotskov Natalja G. Egorova United Institute of Informatics.
1 Using the PETSc Parallel Software library in Developing MPP Software for Calculating Exact Cumulative Reaction Probabilities for Large Systems (M. Minkoff.
CFD Lab - Department of Engineering - University of Liverpool Ken Badcock & Mark Woodgate Department of Engineering University of Liverpool Liverpool L69.
Efficient Integration of Large Stiff Systems of ODEs Using Exponential Integrators M. Tokman, M. Tokman, University of California, Merced 2 hrs 1.5 hrs.
The Finite Element Method A Practical Course
Stochastic optimization of energy systems Cosmin Petra Argonne National Laboratory.
The swiss-carpet preconditioner: a simple parallel preconditioner of Dirichlet-Neumann type A. Quarteroni (Lausanne and Milan) M. Sala (Lausanne) A. Valli.
Computational Aspects of Multi-scale Modeling Ahmed Sameh, Ananth Grama Computing Research Institute Purdue University.
Javad Lavaei Department of Electrical Engineering Columbia University Convex Relaxation for Polynomial Optimization: Application to Power Systems and Decentralized.
1 Efficient Parallel Software for Large-Scale Semidefinite Programs Makoto Tokyo-Tech Katsuki Chuo University MSC Yokohama.
On implicit-factorization block preconditioners Sue Dollar 1,2, Nick Gould 3, Wil Schilders 2,4 and Andy Wathen 1 1 Oxford University Computing Laboratory,
Case Study in Computational Science & Engineering - Lecture 5 1 Iterative Solution of Linear Systems Jacobi Method while not converged do { }
Engineering an Optimal Wind Farm Stjepan Mahulja EWEM Rotor Design : Aerodynamics s132545, th September 2015 SUPERVISORS: Gunner Chr. Larsen.
How the Experts Algorithm Can Help Solve LPs Online Marco Molinaro TU Delft Anupam Gupta Carnegie Mellon University.
Domain Decomposition in High-Level Parallelizaton of PDE codes Xing Cai University of Oslo.
Monte Carlo Linear Algebra Techniques and Their Parallelization Ashok Srinivasan Computer Science Florida State University
A Kernel Approach for Learning From Almost Orthogonal Pattern * CIS 525 Class Presentation Professor: Slobodan Vucetic Presenter: Yilian Qin * B. Scholkopf.
F. Fairag, H Tawfiq and M. Al-Shahrani Department of Math & Stat Department of Mathematics and Statistics, KFUPM. Nov 6, 2013 Preconditioning Technique.
Brain (Tech) NCRR Overview Magnetic Leadfields and Superquadric Glyphs.
University of Texas at Arlington Scheduling and Load Balancing on the NASA Information Power Grid Sajal K. Das, Shailendra Kumar, Manish Arora Department.
Optimally Modifying Software for Safety and Functionality Sampath Kannan U.Penn (with Arvind Easwaran & Insup Lee)
Generalization Error of pac Model  Let be a set of training examples chosen i.i.d. according to  Treat the generalization error as a r.v. depending on.
A Parallel Hierarchical Solver for the Poisson Equation Seung Lee Deparment of Mechanical Engineering
Multipole-Based Preconditioners for Sparse Linear Systems. Ananth Grama Purdue University. Supported by the National Science Foundation.
Finding Rightmost Eigenvalues of Large, Sparse, Nonsymmetric Parameterized Eigenvalue Problems Minghao Wu AMSC Program Advisor: Dr. Howard.
ANSYS, Inc. Proprietary © 2004 ANSYS, Inc. Chapter 5 Distributed Memory Parallel Computing v9.0.
Hybrid Parallel Implementation of The DG Method Advanced Computing Department/ CAAM 03/03/2016 N. Chaabane, B. Riviere, H. Calandra, M. Sekachev, S. Hamlaoui.
Conjugate gradient iteration One matrix-vector multiplication per iteration Two vector dot products per iteration Four n-vectors of working storage x 0.
Laplacian Matrices of Graphs: Algorithms and Applications ICML, June 21, 2016 Daniel A. Spielman.
A Scalable Parallel Preconditioned Sparse Linear System Solver Murat ManguoğluMiddle East Technical University, Turkey Joint work with: Ahmed Sameh Purdue.
Hui Liu University of Calgary
Xing Cai University of Oslo
Conception of parallel algorithms
Meros: Software for Block Preconditioning the Navier-Stokes Equations
Supported by the National Science Foundation.
CS5321 Numerical Optimization
Comparison of CFEM and DG methods
Ph.D. Thesis Numerical Solution of PDEs and Their Object-oriented Parallel Implementations Xing Cai October 26, 1998.
Presentation transcript:

Scalable Multi-Stage Stochastic Programming Cosmin Petra and Mihai Anitescu Mathematics and Computer Science Division Argonne National Laboratory LANS Informal Seminar March 2010 Work sponsored by U.S. Department of Energy Office of Nuclear Energy, Science & Technology

Problem formulation Multi-stage stochastic programming (SP) problem with recourse subj. to.

Deterministic approximation Discrete and finite random variables Stage t=1 0.4 0.3 0.3 Stage t=2 50 45 49 Scenario Tree 0.4 0.6 0.5 0.5 0.35 0.35 0.3 Stage t=3 6 7 4 5 5 3 3 Sample average approximation (SAA) is used for continuous or discrete infinitely supported random variables.

The Deterministic SAA SP Problem subj. to.

Two-Stage SP Problem subj. to. Block separable obj. fcn. Half-arrow shaped Jacobian

Multistage SP Problems Depth-first traversal of the scenario tree Nested half-arrow shaped Jacobian Block separable obj. func. 1 4 2 3 5 6 7 s.t.

Linear Algebra of Primal-Dual Interior-Point Methods (IPM) Convex quadratic problem IPM Linear System Min subj. to. Two-stage SP Arrow-shaped linear system (via a permutation)

Linear Algebra for Multistage SP Problems Two stages SP -> arrow shape T stages (T>2) Nested arrow shape: depth-first traversal of the scenario tree Each block diagonal has the structure 2-stage H has. For each non-leaf node a two-stage problem is solved.

The Direct Schur Complement Method (DSC) Uses the arrow shape of H Solving Hz=r Implicit factorization Back substitution Diagonal solve Forward substitution

Parallelizing the Schur Complement Scenario-based parallelization Bottlenecks from the Schur Complement Implicit factorization Back substitution Diagonal solve Forward substitution Gondzio OOPS, Zavala et.al., 2007 (in IPOPT) Solving S scenarios each with cost w, cost of SC is c, using P processes 10

The Preconditioned Schur Complement (PSC) Goal: “Hide” the term from the parallel execution flow. How? Krylov subspace iterative methods for the solution of . Solve iteratively A each iteration and are needed. A preconditioner M for C should be cheap to invert (or cheap to compute ) cluster the eigenvalues of .

The Stochastic Preconditioner The exact structure of C is IID subset of n scenarios: The stochastic preconditioner of is For C use the constraint preconditioner (Keller et. all., 2000)

But I said that … it has to be cheap to solve with the preconditioner Solve with the factors of M Factorization of M done before C is computed Cost of the Krylov solve is slightly larger than before. Even when one process is dedicated to M (separate process)

Quality of the Stochastic Preconditioner “Exponentially” better preconditioning Proof: Hoeffding inequality Assumptions on the problem’s random data Boundedness Uniform full rank of and

Quality of the Constraint Preconditioner has an eigenvalue 1 with order of multiplicity . The rest of the eigenvalues satisfy Proof: based on Bergamaschi et. al., 2004

The Krylov Methods Used for BiCGStab using constraint preconditioner M Projected CG (PCG) (Gould et. al., 2001) Preconditioned projection onto the Does not compute the basis for Instead,

Observations Real-life performance on linear SAA SP ( ) few Krylov iterations for more than half of IPM iterations several tenths of inner iterations as IPM approaches the solution PCG takes fewer iterations than BiCGStab Affected by the well-known ill-conditioning of IPMs. For convex quadratic SP the performance should improve.

A Parallel Interior-Point Solver for Stochastic Programming (PIPS) Convex QP SAA SP problems Input: users specify the scenario tree Object-oriented design based on OOQP Linear algebra: tree vectors, tree matrices, tree linear systems Scenario based parallelism tree nodes (scenarios) are distributed across processors inter-process communication based on MPI dynamic load balancing Mehrotra predictor-corrector IPM

Tree Linear Algebra – Data, Operations & Linear Systems Tree vector: b, c, x, etc Tree symmetric matrix: Q Tree general matrix: A Operations Linear systems: for each non-leaf node a two-stage problem is solved via Schur complement methods as previously described. Min subj. to. 1 4 2 3 5 6 7

Parallelization – Tree Distribution The tree is distributed across processes. Example: 3 processes Dynamic load balancing of the tree Number partitioning problem --> graph partitioning --> METIS CPU 1 CPU 2 CPU 3 1 4 4 5 6 7 2 3

Numerical Experiments Experiments on two 2-stage SP problems Economic Optimization of a Building Energy System Unit Commitment with Wind Power Generation The Building Energy System Problem The size of the problem was artificially increased There is no benefit of solving with that many CPUs The Unit Commitment Problem Original problem is using the Illinois wind farms grid Solved problems = 3 x Original pb. + up to 13 x more sampling data Strong scaling investigated

Economic Optimization of a Building Energy System Zavala et. al., 2009 1.2 mil variables, few degrees of freedom Size of Schur complement = 357 Uncertainty (in RHS of the SP only)

PIPS on the Building Energy System Problem The Direct Schur Complement – parallel scaling 97.6% parallel efficiency from 5 to 50 processors

Stochastic Unit Commitment with Wind Power Generation Constantinescu et. al., 2009 MILP (relaxation solved) Largest instance: 664k variables 1.4M constraints 400 scenarios 2.2k Schur Complement Matrix. 70% efficiency from 10 to 200 CPUs Uncertainty is also only in RHS

PIPS on a Unit Commitment Problem DSC on P processes vs PSC on P+1 process 120 scenarios Optimal use of PSC Factorization of the preconditioner can not be hidden anymore.

Conclusions The DSC method offers a good parallelism in an IPM framework. The PSC method improves the scalability. PIPS – solver for SP problems. PIPS seems to be ready for larger problems.

Future work New scalable methods for a more efficient software Linear algebra/Optimization methods that take into account the characteristics of the particular sampling method. SAA error estimate. Looking for applications parallelize the 2nd stage sub-problems in a 2-stage setup use multi-stage SP with slim nodes PIPS Continuous case: IPM hot-start, other stochastic preconditioners, etc. Use with MILP/MINLP solvers. A ton of other small enhancements.

Thank you for your attention! Questions?