Вы находитесь на странице: 1из 18

Mathematical Programming

Within the context of


Operations Research methods

MIE376 Mathematical Programming

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-world
problems which are concerned with coordination
and execution of the operations within an
organization. The nature 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.
MIE376 Mathematical Programming

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 existing


Operations Research and Management Science Sections.

MIE376 Mathematical Programming

Focus on Operations

The origin and mainstay of OR

Justifies dual homes for OR

Industrial engineering in engineering schools,


Operations management in business schools.

MIE376 Mathematical Programming

Nature Of Organization Is Immaterial

Energy,
defence,
healthcare,
transportation,
mining,
forestry,
electric utilities,
retail,
manufacturing,
banking,
financial engineering,
security,
etc..
MIE376 Mathematical Programming

Getting to the best solution

Each application requires a new optimization model


specific 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

MIE376 Mathematical Programming

Descriptive versus Normative Models

Descriptive Models help you understand how


the situation will change if one makes a
particular decision.

Normative Models go beyond the Descriptive


Models and explicitly advise what one ought
to do to improve the situation.

MIE376 Mathematical Programming

Deterministic versus Stochastic Models

Deterministic Models do not take into account


uncertainty.

Stochastic Models take into account


uncertainties modelled as probability
distributions.

MIE376 Mathematical Programming

Types of OR Models
Deterministic

Descriptive

Normative

Systems of Equations

Linear
Non-linear
Differential

Mathematical Programming

Stochastic

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

MIE376 Mathematical Programming

Simulation Models

Discrete Event
Monte-Carlo

Queueing Theory

Markov Chains

Stochastic Programming

Chance constrained
Recourse Models

Stochastic DP

Decision Analysis Models

Stochastic Optimal Control

Stochastic Multi-Criteria

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

MIE376 Mathematical Programming

10

Linear Programming
General Form

Example

Minimize or Maximize cj xj
subject to
a1j xj { or or = }b1
a2j xj { or or = }b2
.
.
.
amj xj { or or = }bm
xj 0

Max 3x1 + 4x2


subject to
2x1 + 5x2 5
3x1 + x2 10
7x1 + 3x2 7
12x1 + 10x2 8
x1 0 and x2 0

all relationships are LINEAR!

MIE376 Mathematical Programming

11

Back to the 7 Step Modeling Process


1.
2.
3.
4.

5.
6.

7.

Formulate the Problem


Observe the System
Formulate the Model
Verify and Validate the Model
Solve the Model
Recommend
Implement

MIE376 Mathematical Programming

12

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

MIE376 Mathematical Programming

13

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

MIE376 Mathematical Programming

14

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
MIE376 Mathematical Programming

15

Typical LP System Diagram


Database

GUI/
DB
App
Modeling
system
(.mod, .dat)

MIE376 Mathematical Programming

Solver

16

Excel Solver
MS Excel

Database

GUI/
DB
App

Modeling
system

Solver

Solver Add-in by Frontline

MIE376 Mathematical Programming

17

AMPL IDE
Database

GUI/
DB
App
Modeling
system
(.mod, .dat)

Solver

Can call a variety of solvers,


most popular CPLEX and
Gurobi

New Product in Version 1

MIE376 Mathematical Programming

18

Вам также может понравиться