An XML-based schema for stochastic programs H.I. Gassmann, R. Fourer, J. Ma, R.K. Martin EURO XXI, June 2006, Reykjavik.

Slides:



Advertisements
Similar presentations
Construction process lasts until coding and testing is completed consists of design and implementation reasons for this phase –analysis model is not sufficiently.
Advertisements

Modeling and Simulation By Lecturer: Nada Ahmed. Introduction to simulation and Modeling.
Solver and modelling support for stochastic programming H.I. Gassmann, Dalhousie University Happy Birthday András, November 2009.
Fast Algorithms For Hierarchical Range Histogram Constructions
Chapter 1 Introduction to Modeling DECISION MODELING WITH MICROSOFT EXCEL Copyright 2001 Prentice Hall.
CSCI 347 / CS 4206: Data Mining Module 07: Implementations Topic 03: Linear Models.
1 Dynamic portfolio optimization with stochastic programming TIØ4317, H2009.
Chapter 1 Introduction to Modeling DECISION MODELING WITH MICROSOFT EXCEL Copyright 2001 Prentice Hall Publishers and Ardith E. Baker.
Budapest May 27, 2008 Unifying mixed linear models and the MASH algorithm for breakpoint detection and correction Anders Grimvall, Sackmone Sirisack, Agne.
Decision Making: An Introduction 1. 2 Decision Making Decision Making is a process of choosing among two or more alternative courses of action for the.
Stochastic Differentiation Lecture 3 Leonidas Sakalauskas Institute of Mathematics and Informatics Vilnius, Lithuania EURO Working Group on Continuous.
Math443/543 Mathematical Modeling and Optimization
Lecture outline Support vector machines. Support Vector Machines Find a linear hyperplane (decision boundary) that will separate the data.
VB in Context Michael B. Spring Department of Information Science and Telecommunications University of Pittsburgh Pittsburgh, Pa 15260
Basic Definitions Data Structures: Data Structures: A data structure is a systematic way of organizing and accessing data. Or, It’s the logical relationship.
Getting rid of stochasticity (applicable sometimes) Han Hoogeveen Universiteit Utrecht Joint work with Marjan van den Akker.
Optimization Services (OS) Framework and OSP Protocols (OSxL) “Combining Operations Research with Computing Technology” Jun Ma 10/24/2004.
Introduction to Array The fundamental unit of data in any MATLAB program is the array. 1. An array is a collection of data values organized into rows and.
Modern Navigation Thomas Herring
1 LPFML: A W3C XML Schema for Linear and Integer Programming Robert Fourer Northwestern University Leonardo Lopes University.
An Introduction to Support Vector Machines Martin Law.
ENGR. SHOAIB ASLAM Computer Programming I Lecture 02.
Robert Fourer, Jun Ma, Kipp Martin, Optimization Services, January 18, 2005 Optimization Services (OS) Jun Ma Motorola, Schaumburg 01/18/2005 Robert Fourer.
Robert Fourer, Jun Ma, Kipp Martin Optimization Services Instance Language (OSiL), Solvers, and Modeling Languages Kipp Martin University of Chicago
Computational Stochastic Optimization: Bridging communities October 25, 2012 Warren Powell CASTLE Laboratory Princeton University
Midterm Review Rao Vemuri 16 Oct Posing a Machine Learning Problem Experience Table – Each row is an instance – Each column is an attribute/feature.
ECES 741: Stochastic Decision & Control Processes – Chapter 1: The DP Algorithm 1 Chapter 1: The DP Algorithm To do:  sequential decision-making  state.
Recent Changes to the Optimization Services Project H.I. Gassmann, Faculty of Management J. Ma, Northwestern University R.K. Martin, The University of.
General Polynomial Time Algorithm for Near-Optimal Reinforcement Learning Duke University Machine Learning Group Discussion Leader: Kai Ni June 17, 2005.
4 4.2 © 2012 Pearson Education, Inc. Vector Spaces NULL SPACES, COLUMN SPACES, AND LINEAR TRANSFORMATIONS.
Extensions to the OSiL schema: Matrix and cone programming Horand I. Gassmann, Dalhousie University Jun Ma, Kipp Martin, Imre Polik.
Statistical Analysis of Loads
D Nagesh Kumar, IIScOptimization Methods: M1L3 1 Introduction and Basic Concepts (iii) Classification of Optimization Problems.
Benjamin Gamble. What is Time?  Can mean many different things to a computer Dynamic Equation Variable System State 2.
General Database Statistics Using Maximum Entropy Raghav Kaushik 1, Christopher Ré 2, and Dan Suciu 3 1 Microsoft Research 2 University of Wisconsin--Madison.
Applied stochastic programming models and computation H.I. Gassmann Dalhousie University.
New developments in OSiL, OSoL and OS H.I. Gassmann R.K. Martin,J. Ma INFORMS Annual meeting, Washington, DC, October 2008.
Some Probability Theory and Computational models A short overview.
17 July 2006DIMACS 2006 COIN-SMI 2006 Alan King IBM TJ Watson Research Center.
Modeling and simulation of systems Model building Slovak University of Technology Faculty of Material Science and Technology in Trnava.
Design of an Evolutionary Algorithm M&F, ch. 7 why I like this textbook and what I don’t like about it!
Linear Programming Copyright © 2015 McGraw-Hill Education. All rights reserved. No reproduction or distribution without the prior written consent of McGraw-Hill.
An Introduction to Support Vector Machines (M. Law)
Looping and Counting Lecture 3 Hartmut Kaiser
An introduction to stochastic programming H.I. Gassmann.
Fourer, Ma, Martin, An Open Interface for Hooking Solvers to Modeling Systems INFORMS International, Puerto Rico, July 8-11, INFORMS International.
Robert Fourer, Jun Ma, Kipp Martin, Optimization Services, May 06, 2005 Optimization Services (OS) Jun Ma Industrial Engineering and Management Sciences.
Conformant Probabilistic Planning via CSPs ICAPS-2003 Nathanael Hyafil & Fahiem Bacchus University of Toronto.
XML Access Control Koukis Dimitris Padeleris Pashalis.
TU Graz – Institute for Software Technology 1 Iulia Nica SOFSEM, Špindlerův Mlýn, SiMoL The SiMoL Modeling Language for Simulation and (Re-)Configuration.
A comparison between PROC NLP and PROC OPTMODEL Optimization Algorithm Chin Hwa Tan December 3, 2008.
1 Assertions. 2 A boolean expression or predicate that evaluates to true or false in every state In a program they express constraints on the state that.
OSiL: An XML-based schema for stochastic programs H.I. Gassmann, R. Fourer, J. Ma, R.K. Martin SP XI Vienna, August 2007.
Introduction to Integer Programming Integer programming models Thursday, April 4 Handouts: Lecture Notes.
Data requirements for stochastic solvers H.I. Gassmann Dalhousie University Halifax, Canada.
LINEAR MODELS AND MATRIX ALGEBRA
Robert Fourer, Jun Ma, Kipp Martin Copyright 2005 Optimization Services (OS) Jun Ma Annapolis, 01/07/2005 Robert Fourer Jun Ma Northwestern University.
Computer Programming – Grammar – data types – Variables – Keywords – Operators – decision making – Loops – Arrays – Functions – files Programming Environment.
1 jcmt Summer 2003Programming Languages CSE3302 Programming Languages Summer 2003 Dr. Carter Tiernan.
Lecture 7: Constrained Conditional Models
SysML v2 Formalism: Requirements & Benefits
Machine Learning Basics
Optimization Services Instance Language (OSiL)
LPSAT: A Unified Approach to RTL Satisfiability
Collaborative Filtering Matrix Factorization Approach
A Mathematical Programming Language
Presented by: Jacky Ma Date: 11 Dec 2001
Introduction to Data Structure
An XML-based schema for stochastic programs
NULL SPACES, COLUMN SPACES, AND LINEAR TRANSFORMATIONS
Presentation transcript:

An XML-based schema for stochastic programs H.I. Gassmann, R. Fourer, J. Ma, R.K. Martin EURO XXI, June 2006, Reykjavik

© 2006 H.I. Gassmann Outline Motivation and review Dynamic and stochastic structure A four-stage investment problem Instance representations OSiL format Conclusions and future work

© 2006 H.I. Gassmann Why a standard? Benchmarking Archiving Algorithm development Distributed computing Sharing of problem instances

© 2006 H.I. Gassmann Why XML? Easy to accommodate new features Existing parsers to check syntax Easy to generate automatically Trade-off between verbosity and human readability Arbitrary precision and name space Stochastic extensions for dynamic and stochastic structure

© 2006 H.I. Gassmann Stochastic programs Any data item with nonzero subscript may be random (including dimensions where mathematically sensible) ~ stands for arbitrary relation ( , =,  ) “ ”

© 2006 H.I. Gassmann Constraints involving random elements  means ~ with probability 1 or with probability at least  or with expected violation at most v or …

© 2006 H.I. Gassmann Problem classes Recourse problems –All constraints hold with probability 1 Chance-constrained problems –Typically single stage Hybrid problems –Recourse problems including features such as chance constraints or integrated chance constraints Distribution problems –Determine distribution of optimum objective and/or decisions

© 2006 H.I. Gassmann Example (Birge) … S0S0 S2S2 S1S1 I = 2, T = 3, B = 55, R = 80,  t1 = {1.25, 1.06},  t2 = {1.14, 1.12}

© 2006 H.I. Gassmann Dynamic and stochastic structure Dynamic structure –Periods/stages Stochastic structure –Nonanticipativity –Independent random variables –Period-to-period independence –Scenario tree –Factor models –ARMA processes –Trap states and stochastic problem dimensions

© 2006 H.I. Gassmann What is an instance? Role and number of constraints, objectives, parameters and variables must be known Every parameter’s value(s) must be known Continuous entities vs. discretization –Decision variables –Objective and constraints –Distribution of random variables –Time domain

© 2006 H.I. Gassmann Instance representation Internal representations SMPS format –Limited precision –Limited to linear problems Algebraic modelling languages –Discrete distributions only –Limited consistency checks OSiL format

© 2006 H.I. Gassmann What is a stage? Stages form a subset of the time structure Stages comprise both decisions and events Events must either precede all decisions or follow all decisions Should a stage be decision – event or event – decision?

© 2006 H.I. Gassmann Why is there a problem? AMPL-like declarations: set time ordered; param demand{t in time} random; Production_balance {t in time}: Inv[t-1] + product[t] >= demand[t] + Inv[t]; Is the constraint well-posed? At least two possible interpretations –Inv[t] set after demand[t] known: recourse form, well- posed –Inv[t] set before demand[t] known: undeclared chance constraint

© 2006 H.I. Gassmann SMPS format Three files based on MPS format –Core file for deterministic problem components –Time file for dynamic structure –Stoch file for stochastic structure Disadvantages –Old technology –Limited precision (12 digits, including sign) –Limited name space (8 characters) –Direction of optimization (min/max) ambiguous –Linear constraints, quadratic objective only

© 2006 H.I. Gassmann Example (SMPS) I = 2, T = 3, B = 55, R = 80,  t1 = {1.25, 1.06},  t2 = {1.14, 1.12} Core file ROWS Budget0 Object Budget1 Budget2 Budget3 COLS X01 Budget0 1.0 X01 Budget RHS rhs1 Budget0 55. rhs1 Budget3 80. ENDATA Stoch file BLOCKS DISCRETE BL Block1 0.5 X01 Budget X02 Budget BL Block1 0.5 X01 Budget X02 Budget BL Block2 0.5 X11 Budget X12 Budget ENDATA

© 2006 H.I. Gassmann Algebraic modelling languages Characteristics –Similar to algebraic notation –Powerful indexing capability –Data verification possible Disadvantages –Discrete distributions only –Limited consistency checks for stochastic structure

© 2006 H.I. Gassmann AMPL model param T; param penalty; param budget; param target; set instruments; set scenarios; param prob{scenarios}; set slice{t in 0..T} within scenarios; param ancestor {t in 1..T, s in slice[t]}; var over {slice[T]}; var under{slice[T]}; param return {t in 1..T, i in instruments,s in slice[t]}; var invest {t in 0..T-1,i in instruments,s in slice[t]}; maximize net_profit: sum{s in scenarios} prob[s]*(over[s] - penalty*under[s]); subject to wealth{t in 0..T, s in slice[t]}: (if t < T then sum{i in instruments} invest[t,i,s]) = (if t = 0 then budget else sum {i in instruments} return[t,i,s]*invest[t-1,i,ancestor[t,s]] + if t = T then under[s] - over[s] + target);

© 2006 H.I. Gassmann OSiL Schema Written in XML Very flexible Intended to handle as many types of mathematical programs as possible –Linear and integer –Nonlinear –Stochastic –…

© 2006 H.I. Gassmann OSiL Schema – Header information

© 2006 H.I. Gassmann Header information – Example <osil xmlns="os.optimizationservices.org“ xmlns:xsi= xsi:schemaLocation="OSiL.xsd"> FinancialPlan_JohnBirge Birge and Louveaux, Stochastic Programming Three-stage stochastic investment problem...

© 2006 H.I. Gassmann OSiL Schema – Deterministic data …

© 2006 H.I. Gassmann Instance data – Constraints, objectives, variables

© 2006 H.I. Gassmann Instance data – Core matrix (sparse matrix form) <linearConstraintCoefficients numberOfValues=“14">

© 2006 H.I. Gassmann OSiL Schema – Dynamic structure

© 2006 H.I. Gassmann Dynamic information – Example

© 2006 H.I. Gassmann Explicit and implicit event trees

© 2006 H.I. Gassmann Scenario trees

© 2006 H.I. Gassmann Scenario tree – Example …

© 2006 H.I. Gassmann Node-by-node representation for stochastic problem dimensions

© 2006 H.I. Gassmann Node-by-node – Example …

© 2006 H.I. Gassmann Distributions (implicit tree)

© 2006 H.I. Gassmann Discrete random vector …

© 2006 H.I. Gassmann Transformations – p = f(v)

© 2006 H.I. Gassmann Linear transformation – Example <stochasticElements numberOfElements="6"> <matrixCoefficients numberOfElements="6">

© 2006 H.I. Gassmann Penalties and probabilistic constraints

© 2006 H.I. Gassmann Capabilities Arbitrary nonlinear expressions Arbitrary distributions Scenario trees Stochastic problem dimensions Simple recourse Soft constraints with arbitrary penalties Probabilistic constraints Arbitrary moment constraints

© 2006 H.I. Gassmann Nonlinear expression – (x 0 – x 1 2 ) 2 + (1 – x 0 ) 2

© 2006 H.I. Gassmann Further work Readers Internal data structures Solver interfaces Library of problems Buy-in

© 2006 H.I. Gassmann QUESTIONS?