gams’ extended mathematical programming framework
TRANSCRIPT
![Page 1: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/1.jpg)
GAMS’ Extended Mathematical
Programming Framework
Jan-Hendrik Jagla [email protected]
Michael Ferris [email protected]
Alex Meeraus [email protected]
GAMS Software GmbH
www.gams.de
GAMS Development Corp.
www.gams.com
![Page 2: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/2.jpg)
Agenda
General Algebraic Modeling System
2
General Algebraic Modeling System
New Solution Concepts
Extended Mathematical Programming
![Page 3: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/3.jpg)
Agenda
General Algebraic Modeling System
3
General Algebraic Modeling System
New Solution Concepts
Extended Mathematical Programming
![Page 4: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/4.jpg)
GAMS at a Glance
General Algebraic Modeling System
• Roots: World Bank, 1976• Went commercial in 1987• GAMS Development Corp.• GAMS Software GmbH
• Broad academic & commercial user community and network
4
![Page 5: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/5.jpg)
GAMS at a Glance
General Algebraic Modeling System
• Algebraic Modeling Language• 25+ Integrated Solvers• 10+ Supported MP classes• 10+ Supported Platforms• Connectivity- & Productivity Tools
• IDE• Model Libraries• GDX, Interfaces & Tools• Grid Computing• Benchmarking• Compression & Encryption• Deployment System• …
5
![Page 6: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/6.jpg)
Agenda
General Algebraic Modeling System
6
General Algebraic Modeling System
New Solution Concepts
Extended Mathematical Programming
![Page 7: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/7.jpg)
Different layers with separation of
• model and data• model and solution methods
Traditional but fundamental concept of AMLs
• model and solution methods• model and operating system• model and interface
7
Interface Data Model Solver Interface
![Page 8: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/8.jpg)
• Traditional problem format
Current state: Model-Side
2211 )(,)(..)(min bxAbxAtsxcx
=≤
• Support for complementarity constraints
• Interactions between models possible• Series of models• Scenario analyses / parallelized model runs• Iterative sequential feedback• Decomposition8
2211 )(,)(..)(min bxAbxAtsxcx
=≤
![Page 9: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/9.jpg)
CNS
MCP
Support of a wide collection of established MP classes through solver cluster!
���� Tremendous algorithmic and computational progress
Current state: Solver-Side
CNS
LP
NLP
QC
P
MIP
DNLP
computational progress
LP
in fact only restricted by available memory
MIP- Some (academic) problems still
unsolvable- Commercial problems mostly docile
NLP/MINLP- Predictions are problem and data
specific, global vs. local solutions 9
![Page 10: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/10.jpg)
Non-traditional solution concepts
• MP with Equilibrium Constraints (MPEC)� NLPEC
• Solves MPECs through reformulation into NLPs
• Solving non-integer models as MCPs• Solving non-integer models as MCPs� PATHNLP
• reformulation via KKT conditions (1st and 2nd order deriv.)
• Mathematical Programming System for General Equilibrium analysis � MPSGE
• Indicator Constraints (CPLEX)– Alternative to conventional BigM formulations
10
![Page 11: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/11.jpg)
Non-traditional solution concepts
• Global Optimization� BARON, LINDOGLOBAL
• Proven global optimum
� LGO, OQNLP • Stochastic convergence to global optimum• Stochastic convergence to global optimum
• Stochastic Programming � DECIS– solves two-stage stochastic linear programs with recourse– two-stage decomposition (Benders)– stores only one instance of the problem and generates scenario sub-
problems as needed– solution Strategies (Universe problem/Importance sampling)
• …11
![Page 12: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/12.jpg)
• Extended Nonlinear Programs• Embedded Complementarity Systems• Bilevel Programs• Disjunctive Programs
New solution concepts
• Disjunctive Programs• …
� Breakouts of traditional MP classes� No conventional syntax � Limited support with common model representation� Incomplete/experimental solution approaches� Lack of reliable/any software
12
![Page 13: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/13.jpg)
Do not:• overload existing GAMS notation right away !• attempt to build new solvers right away !
But:
What now?
But:• Use existing language features to specify additional
model features• Distribute information as part of the production system• Express extended model in symbolic form and apply
existing matured solution technology
���� Extended Mathematical Programming (EMP)
13
![Page 14: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/14.jpg)
Agenda
General Algebraic Modeling System
14
General Algebraic Modeling System
New Solution Concepts
Extended Mathematical Programming
![Page 15: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/15.jpg)
• Translation services
• Uses existing language features to specify additional model features
GAMS “Solver” EMP
model features
• Expresses extended model in symbolic form and passes it to existing solution methods via embedded GAMS calls
• Reads solution back into original space
• Facilitates to write out the reformulated model
15
![Page 16: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/16.jpg)
Soft penalization of constraints
• Model:
Extended Nonlinear Programming
• Additional information:
• EMP Tool creates the NLP model (or the MCP via KKT) :
16
![Page 17: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/17.jpg)
• Models with side constraints/variables:
Embedded Complementarity Systems
• Additional Information:
• EMP Tool creates the MCP model:
17
$onecho > %emp.info%
dualequ H y
dualvar λ g
$offecho
![Page 18: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/18.jpg)
• Rutherford, Thomas F. (http://www.mpsge.org/nlptarget/)
ECS Example
18
![Page 19: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/19.jpg)
EMP Formulation
19
![Page 20: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/20.jpg)
• Bilevel Program:
Hierarchical Models
• Additional Information:
• EMP Tool automatically creates an MPEC by expressing the lower level optimization problem through its optimality conditions
20
$onecho > %emp.info%
Bilevel x min v h
$offecho
![Page 21: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/21.jpg)
Bilevel Model
Conejo A J, Castillo E, Minguez R, and Garcia-Bertrand R; Decomposition Techniques in Mathematical Programming, Springer,Berlin, 2006.
21
Outer Problem
Inner Problem 1
Inner Problem 2
![Page 22: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/22.jpg)
EMP Information File + EMP Summary Log
22
![Page 23: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/23.jpg)
Raman & Grossmann, Comp. & Chem. Eng., 18, 7, p.563-578, 1994.
• Three jobs (A,B,C) must be executed sequentially in three steps, but not all jobs require all the stages. Once a job has started it cannot be interrupted.
Disjunction Example
• The objective is to obtain the sequence of task, which minimizes the completion time.
23
StageJob
1 2 3
A 5 - 3
B - 3 2
C 2 4 -
![Page 24: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/24.jpg)
Data Definition
24
![Page 25: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/25.jpg)
Basic Model Definition
Above equation is incomplete!
If (j,jj) is active then (jj,j) should be relaxed
25
![Page 26: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/26.jpg)
Traditional BigM Formulation
26
![Page 27: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/27.jpg)
CPLEX Indicator Formulation
27
![Page 28: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/28.jpg)
EMP Disjunction Formulation
28
![Page 29: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/29.jpg)
• AdjustEQU equ abs|sqr|maxz|huber|... {
weight { param } }
• DualEqu {equ var}
EMP Info Syntax Summary
• DualEqu {equ var}
• DualVar {var equ}
• BiLevel {var} { MAX|MIN obj {equ} }
• Disjunction [NOT] var|* {equ} { ELSEIF
[NOT] var|* {equ} } [ ELSE {equ} ]
29
![Page 30: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/30.jpg)
EMP is
– a framework for automated symbolic reformulations– non-exhaustive and experimental – free
Conclusion
– free
EMP needs
– Input from other researchers !!• Automate further reformulation strategies
– More of the same, boring to some, exiting to others– Concurrent strategies
• Examples from existing publications – EMP Library
30
![Page 31: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/31.jpg)
EMP promotes non-traditional MP classes
– Automates symbolic reformulations to avoid error-prone and time-consuming manual algebra (re)writing
Conclusion
and time-consuming manual algebra (re)writing– Offers solutions through established and powerful solution
engines– makes theoretical benefits available to users from a wide
variety– provides nonstandard model information to solver
developers � new algorithms/software?
EMP bridges the gap between academia and industry !31
![Page 32: GAMS’ Extended Mathematical Programming Framework](https://reader031.vdocuments.net/reader031/viewer/2022012415/6170614c7b198e5c5431a12b/html5/thumbnails/32.jpg)
Thank you !
Europe
GAMS Software GmbHEupener Str. 135-13750933 Cologne
USA
GAMS Development Corp. 1217 Potomac Street, NW
50933 CologneGermany
Phone: +49 221 949 9170Fax: +49 221 949 9171http://www.gams.de
[email protected]@gams-software.com
1217 Potomac Street, NW Washington, DC 20007USA
Phone: +1 202 342 0180 Fax: +1 202 342 0181http://www.gams.com
[email protected]@gams.com
32