1 / 15

COIN-SMI 2006

COIN-SMI 2006. Alan King IBM TJ Watson Research Center. Optimization and Uncertainty. Many practical applications involve aspects of uncertainty and optimization. Examples just from EURO 2006: Hydropower Management (MA-43) Pension Fund Management (ME-43 and TB-43) Risk Functionals (TA-43)

ashlyn
Télécharger la présentation

COIN-SMI 2006

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. COIN-SMI 2006 Alan King IBM TJ Watson Research Center DIMACS 2006

  2. Optimization and Uncertainty • Many practical applications involve aspects of uncertainty and optimization. • Examples just from EURO 2006: • Hydropower Management (MA-43) • Pension Fund Management (ME-43 and TB-43) • Risk Functionals (TA-43) • Gas Retail, Labor Market, Mobile Telcom (TD-43) • Asset Allocation (TD-44) • Optimal portfolio growth (TE-43) • Equilibrium constraints (WA-43) • Workforce Capacity planning (WB-44) • Minefield navigation, portfolio selection, supply chain optimization, energy systems optimization (WE-44) • A framework is needed • To combine uncertainty and optimization data types • To support model formulations DIMACS 2006

  3. Stochastic Modeling Interface • SMI is intended to take care of common programming issues • handling probability distributions, • managing problem generation, • interfacing between modeling environments and solvers • Many modeling and algorithmic approaches can belong here: • Stochastic programming with recourse • Chance constrained programming • Robust optimization • Risk functionals DIMACS 2006

  4. Example: SmiScnModel Stochastic Linear Programming object • Accept SLP data: • LP data • Time data • Stochastic data • Process SLP data: • Generate “Deterministic Equivalent” LP • Access SLP solution data for display and reporting Note – “scenario tree” is most general discrete distribution so we call this an “Scn” model DIMACS 2006

  5. objective col lower T=0 T=1 T=0 row lower matrix row upper T=1 col upper Time Partition Data + LP Data = T=0 Core Data Node 0 T=1 Node 1 DIMACS 2006

  6. scen 1 Core Data Scenarios + scen 2 scen 3 = Deterministic Equivalent LP DIMACS 2006

  7. Deterministic Equivalent LP OSI Solver T=1 Scen=1 T=1 Scen=2 T=1 Scen=3 T=0 Primal Solution Dual Solution T=0 T=1 Scen=1 T=1 Scen=2 T=1 Scen=3 DIMACS 2006

  8. SMPS driver // initialize with solver object SmiScnModel smi(new OsiClpSolverInterface()); // read SMPS model from files // <name>.core, <name>.time, and <name>.stoch smi.readSmps(name); // load solver data // this step generates the deterministic equivalent OsiSolverInterface *osiStoch = smi.loadOsiSolverData(); // solve osiStoch->initialSolve(); DIMACS 2006

  9. Direct Methods • User input “Core Data” SmiCoreData *smiCore = new SmiCoreData(&osi,nstg,cstg,rstg); • Discrete Distribution SmiDiscreteRV *smiRV = new SmiDiscreteRV(nper); smiRV->addEvent(SmiCore, matrix,dcup,dclo,dcobj,drlo,drup, prob); • Scenario Input smiModel->generateScenario(smiCore, matrix,dcup,dclo,dcobj,drlo,drup, branch_period,ancestor_scen,prob); DIMACS 2006

  10. Helper classes • SmiLinearData • Organizes LP data by Node • SmiCoreData • Partitions Core LP by time period mappings • SmiNodeData • Node information, offsets within det eq LP, Tree relationships • SmiCoreCombineRule • How scenario data is combined with core data (Add, Replace, User specified …multiply?) • SmiDiscreteDistribution • Events (values of certain LP data elements) & Probabilities (prob of event) • SmiScenarioTree • Template class for handling tree structures DIMACS 2006

  11. Smi/example/stoch.cpp • SmpsIO("../../Data/Stochastic/wat_10_C_32") • solves a sample from the one of the Watson-Cambridge Asset Liability problems in SMPS format • ModelScenario() • demonstrates use of scenario generation methods on Dantzig-Ferguson's Aircraft Allocation problem. • ModelDiscrete() • demonstrates use of discrete distribution generation methods DIMACS 2006

  12. COIN-SMI Status • SmiScnModel object • built on Coin-Utilities & Coin-Open Solver Interface • Good start … but not enough action • Most action is from folks who find a problem when they try to process SMPS files • …that works with some other package • …that any reasonable person would agree should work fine • … • Some “lukewarm” requests for decomposition solver, but: • No-one has an urgent actual application to solve • No-one has offered any real assistance • So – how do we get more action? • Will “real” users try Stochastic Modeling? DIMACS 2006

  13. Try something different (1) • Make something from information that “normal optimization users” can provide • LP problem (no special features) • Std Deviation error range for some LP elements • SMI models we can generate with this information • Probabilistic Robust Optimization (Bertsimas-Sim) • Feasibility with given probability • Simple Recourse (Wets) • Penalized row variation from feasibility with given recourse weightings DIMACS 2006

  14. Try something different (2) • A modeling language that incorporates stochastics • Roadmap • Start with COIN-FlopC++ • Add “parameter” class • Create “LP data” generator class with parameter as input. • Parameters become distributions • Main problem: Complex dependence! • generate parser to record LP data dependence on parameters DIMACS 2006

  15. Try something different (3) <your contribution goes here> DIMACS 2006

More Related