mie376 lec 1a intro

Upload: k2050896

Post on 01-Jun-2018

231 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/9/2019 MIE376 Lec 1a Intro

    1/18

    MIE376 – Mathematical Programming 1

    Mathematical Programming 

    Within the context of

    Operations Research methods

  • 8/9/2019 MIE376 Lec 1a Intro

    2/18

    MIE376 – Mathematical Programming  2

    Definition of OR 

     Operations Research, or simply OR is an

    interdisciplinary science which deploys scientific

    methods like mathematical modeling, statistics, and

    algorithms to decision making in complex real-worldproblems which are concerned with coordination

    and execution of the operations within an

    organization. The na

    ture of organization is

    essentially immaterial. The eventual intention behind

    using this science is to elicit a best possible solution

    to a problem scientifically, which improves or

    optimizes the performance of the organization.

  • 8/9/2019 MIE376 Lec 1a Intro

    3/18

    MIE376 – Mathematical Programming  3

    the name…

    Started in WWII under the name of Operational Research

     Also called Management Science

    Traditionally associated with Industrial Engineering,

    More recently as Systems Engineering

    Institute for Operations Research and the Management Sciences

    In 2005 INFORMS introduces its motto: The Science of Better.

    In 2011 INFORMS adds a Business Analytics Section to the existingOperations Research and Management Science Sections.

  • 8/9/2019 MIE376 Lec 1a Intro

    4/18

    MIE376 – Mathematical Programming  4

    Focus on Operations

    The origin and mainstay of OR

    Justifies dual “homes” for OR

    Industrial engineering in engineering schools,

    Operations management in business schools.

  • 8/9/2019 MIE376 Lec 1a Intro

    5/18

    MIE376 – Mathematical Programming  5

    Nature Of Organization Is Immaterial

    Energy,

    defence,

    healthcare,

    transportation,

    mining, forestry,

    electric utilities,

    retail,

    manufacturing,

    banking,

    financial engineering,

    security,

    etc..

  • 8/9/2019 MIE376 Lec 1a Intro

    6/18

    MIE376 – Mathematical Programming  6

    Getting to the best solution

    Each application requires a new optimization modelspecific to that situation,

    BUT, there are standard model TYPES available.

     At a high level can be categorized under

    Descriptive versus Normative (or Prescriptive) Models

    Deterministic versus Stochastic (or Probabilistic) Models

  • 8/9/2019 MIE376 Lec 1a Intro

    7/18

    MIE376 – Mathematical Programming  7

    Descriptive versus Normative Models

    Descriptive Models help you understand howthe situation will change if one makes a

    particular decision.

    Normative Models go beyond the DescriptiveModels and explicitly advise what one ought

    to do to improve the situation.

  • 8/9/2019 MIE376 Lec 1a Intro

    8/18

    MIE376 – Mathematical Programming  8

    Deterministic versus Stochastic Models

    Deterministic Models do not take into account

    uncertainty.

    Stochastic Models take into accountuncertainties modelled as probability

    distributions.

  • 8/9/2019 MIE376 Lec 1a Intro

    9/18

    MIE376 – Mathematical Programming  9

     Types of OR ModelsDeterministic Stochastic

    Descriptive

    Systems of Equations Linear 

     Non-linear 

    Differential

    Simulation Models Discrete Event

    Monte-Carlo

    Queueing Theory

    Markov Chains

     Normative

    Mathematical Programming Linear Programming (LP)

    Network Models (NP)

    Integer Programming (IP)

    Non-linear Programming (NLP)

    Quadratic Programming (QP)

    Bi-Level Linear Programming

    (BLLP)

    Dynamic Programming (DP)

    Optimal Control

    Heuristic Methods

    Multi-Criteria Models

    Stochastic Programming Chance constrained

    Recourse Models

    Stochastic DP

    Decision Analysis Models

    Stochastic Optimal Control

    Stochastic Multi-Criteria

  • 8/9/2019 MIE376 Lec 1a Intro

    10/18

    MIE376 – Mathematical Programming  10

    Mathematical Programming 

    Minimize or Maximize f(x1, x2, x3, …, xn)

    subject to constraints

    g1(x1, x2, x3,…, xn) { ≥ or ≤ or = } some constant b1

    g2(x1, x2, x3,…, xn) { ≥ or ≤ or = } some constant b2…. .

    gm(x1, x2, x3,…, xn) { ≥ or ≤ or = } some constant bm

    For example

    Minimize 3x1 + ln (x1/x2) – exp(x2 + x3)

    subject to x1 + x2 + sin x3 ≥ 5

  • 8/9/2019 MIE376 Lec 1a Intro

    11/18

    MIE376 – Mathematical Programming  11

    Linear Programming 

    General Form

    Minimize or Maximize c j x j

    subject to

    a1j x j { ≥ or ≤ or = }b1 a2j x j { ≥ or ≤ or = }b2.

    .

    .

    amj

    x j{ ≥ or ≤ or = }b

    mx j ≥ 0

    Example

    Max 3x1 + 4x2

    subject to2x1 + 5x2 ≤ 5

    3x1 + x2 ≤ 10

    7x1 + 3x2 ≤ 7

    12x1 + 10x2 ≤ 8

    x1 ≥ 0 and x2 ≥ 0

    • all relationships are LINEAR!

  • 8/9/2019 MIE376 Lec 1a Intro

    12/18

    MIE376 – Mathematical Programming  12

    Back to the 7 Step Modeling Process

    1. Formulate the Problem

    2. Observe the System

    3. Formulate the Model

    4. Verify and Validate the Model

    5. Solve the Model

    6.

    Recommend7. Implement

  • 8/9/2019 MIE376 Lec 1a Intro

    13/18

    MIE376 – Mathematical Programming  13

    Formulating and Verifying LP Models

    Formulating your model Understand the problem formulation

    LET some symbol represent some problem entity

    Repeat for all problem entities

    Derive linear mathematical relationships between symbols

    Verifying your model Postulate an arbitrary numerical “solution” to the problem

    Check its feasibility from the problem formulation

    Compare with a feasibility check using your LP model Check its objective value from the problem

    Compare with the objective value from your LP model

  • 8/9/2019 MIE376 Lec 1a Intro

    14/18

    MIE376 – Mathematical Programming  14

    LP Software

    INFORMS regularly surveys the marketplace for LP

    software systems

    For the latest 2013 survey see http://www.orms-

    today.org/surveys/LP/LP-survey.html

    ECF labs includes the following LP software:

    Excel with Solver – widely available

    CPLEX, Gurobi and GAMS – all industry standard solvers OPL and AMPL - front end software work with most solvers

    OPL/CPLEX and AMPL/Gurobi are popular choices

    http://www.orms-today.org/surveys/LP/LP-survey.htmlhttp://www.orms-today.org/surveys/LP/LP-survey.htmlhttp://www.orms-today.org/surveys/LP/LP-survey.htmlhttp://www.orms-today.org/surveys/LP/LP-survey.html

  • 8/9/2019 MIE376 Lec 1a Intro

    15/18

    MIE376 – Mathematical Programming  15

    LP System Components

    Front-end GUI/DB application

    Customized software

    Back-End Database System

     Access, Oracle, DB2, MS-SQL

    Back-End Modeling System

    OPL, AMPL, GAMS

    Usually separate model from data (.mod and .dat)

    Back-End Solver 

    CPLEX, Gurobi, MINOS

     Also see: http://www.gams.com/solvers/index.htm

  • 8/9/2019 MIE376 Lec 1a Intro

    16/18

    MIE376 – Mathematical Programming  16

     Typical LP System Diagram

    GUI/

    DB

     App

    Modeling

    system

    (.mod, .dat)

    Solver 

    Database

  • 8/9/2019 MIE376 Lec 1a Intro

    17/18

    MIE376 – Mathematical Programming  17

    Excel Solver

    GUI/

    DB

     App

    Modeling

    systemSolver 

    DatabaseMS Excel

    Solver Add-in by Frontline

  • 8/9/2019 MIE376 Lec 1a Intro

    18/18

    MIE376 – Mathematical Programming  18

     AMPL IDE

    GUI/

    DB

     App

    Modeling

    system

    (.mod, .dat)

    Solver 

    Database

    Can call a variety of solvers,

    most popular CPLEX and

    Gurobi

    New Product in Version 1