KEMBAR78
A software approach to mathematical programming | PDF
A Software approach to
Mathematical Programming
Arian Razmi Farooji
4 March 2015
List of Contents
• Introduction
• Mathematical Programming
• Mathematical Programming techniques
• Solving a Mathematical Model
• Mathematical Programming Software
• GAMS Software
• Heuristics and Metaheuristics
• References
A Software Approach to Mathematical Programming-Arian Razmi Farooji 1
Introduction
A Software Approach to Mathematical Programming-Arian Razmi Farooji 2
Operations
Research
Mathematical
Optimizations
Simulations
Markov Chains
Data Analysis
Statistics
Neural Networks
Queuing Theory
Expert Systems
Economic Methods
Decision Analysis
Mathematical Programming
A Software Approach to Mathematical Programming-Arian Razmi Farooji 3
Problem Definition
Model Construction
Model Solution
Model Validity
Implementation
Real World
Assumed
Real World
Model
Mathematical Programming techniques
1.Linear Programming
2.Integer Programming
3.Mixed Integer Programming
4.Dynamic Programming
5.Network Programming
6.Nonlinear programming
A Software Approach to Mathematical Programming-Arian Razmi Farooji 4
Solving a Mathematical Programming
• Goal :
“ To find an Optimum solution ”
• Algorithms:
− provides fixed computational rules
− are applied repeatedly to the problem
− each repetition (iteration) moving the solution closer
to the optimum.
A Software Approach to Mathematical Programming-Arian Razmi Farooji 5
Solving a Mathematical Programming
• Simplex Method
− solves LP problems
− tests adjacent vertices of the feasible sets
− at each iteration Simplex chooses the variable that
will produce the largest change towards optimum
solution
• Software
− GAMS
− AMPL
− Lingo
− …
A Software Approach to Mathematical Programming-Arian Razmi Farooji 6
GAMS Software
What is GAMS?
• General Algebraic Modeling System
• High-level modeling system for mathematical
optimization
• GAMS solves
−Linear optimizations
−Non-linear optimizations
−Mixed-integer optimizations
• Tailored for large scales optimization problems
A Software Approach to Mathematical Programming-Arian Razmi Farooji 7
GAMS Software
Transportation Problem
A Software Approach to Mathematical Programming-Arian Razmi Farooji 8
1
2
m
1
n
Sources (𝑖) Destinations (𝑗)
.
.
.
.
.
.
𝑐11
𝑐1𝑛
𝑐21
𝑐2𝑛
𝑐 𝑚1
𝑐 𝑚𝑛
𝑎1
𝑎2
𝑎 𝑚
𝑏1
𝑏 𝑛
GAMS Software
Decision Variable
𝑥𝑖𝑗
𝑐𝑖𝑗
𝑎𝑖
𝑏𝑗
A Software Approach to Mathematical Programming-Arian Razmi Farooji 9
The amount shipped from i to j
min 𝑧 =
𝑖=1
𝑚
𝑗=1
𝑛
𝑐𝑖𝑗 𝑥𝑖𝑗
𝑗=1
𝑛
𝑥𝑖𝑗 ≤ 𝑎𝑖 𝑓𝑜𝑟 𝑖 = 1, , , , , 𝑚
𝑖=1
𝑚
𝑥𝑖𝑗 ≥ 𝑏𝑗 𝑓𝑜𝑟𝑗 = 1, , , , , 𝑛
Mathematical Formulation
Parameters
Shipping Cost from i to j
Supply Capacity of source i
Demand of Destination j
𝑥𝑖𝑗 ≥ 0 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑖 𝑎𝑛𝑑 𝑗
𝑆𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜:
GAMS Software
Example (Hamdy Taha, 2011)
A Software Approach to Mathematical Programming-Arian Razmi Farooji 10
LA
Detroit
New
Orleans
Denver
Miami
Sources
Destinations
1000
1500
1200
2300
1400
GAMS Software
Example-Parameters
A Software Approach to Mathematical Programming-Arian Razmi Farooji 11
Table (1). Transportation Cost per Car
Denver Miami
Los Angeles $80 $215
Detroit $100 $108
New Orleans $102 $68
GAMS Software
Mathematical Formulation
min 𝑧 = 80𝑥11 + 215𝑥12 + 100𝑥21 + 108𝑥22 + 102𝑥31 + 68𝑥32
𝑥11 + 𝑥12 = 1000
𝑥21 + 𝑥22 = 1500
𝑥31 + 𝑥32 = 1200
𝑥11 + 𝑥21 + 𝑥31 = 2300
𝑥12 + 𝑥22 + 𝑥32 = 1400
A Software Approach to Mathematical Programming-Arian Razmi Farooji 12
Los Angeles
Detroit
New Orleans
Denver
Miami
𝑥𝑖𝑗 ≥ 0 𝑓𝑜𝑟 𝑖 = 1,2,3 𝑎𝑛𝑑 𝑗 = 1,2
Heuristics and Metaheuristics
• Both find “good and satisfactory” solutions in
shorter time
• The quality of algorithms is usually based on a
tradeoff between:
−Optimality
−Completeness
−Accuracy
−Execution Time
A Software Approach to Mathematical Programming-Arian Razmi Farooji 13
Assignment
• Formulate the following transportation problem and
solve it in GAMS.
• Download GAMS here
A Software Approach to Mathematical Programming-Arian Razmi Farooji 14
Shipping Costs
Warehouses Supply
1 2 3 4
Factories
1 470 520 654 890 75
2 350 416 690 750 100
3 995 670 350 685 125
Demand 85 70 65 80
References
1. Taha, H., Operations Research an Introduction, Pearson,
New Jersey, 2011
2. INFORMS: What is Operations Research?
3. GAMS Website
4. Richard E. Rosenthal’s GAMS Tutorial
5. Wikipedia: General Algebraic Modeling System
6. Education.com: Algorithms and Heuristics
A Software Approach to Mathematical Programming-Arian Razmi Farooji 15
Thank You for Your Attention
A Software Approach to Mathematical Programming-Arian Razmi Farooji
Question and Answer
A Software Approach to Mathematical Programming-Arian Razmi Farooji
A Software approach to
Mathematical Programming
Arian Razmi Farooji
4 March 2015
arian.razmifarooji@student.oulu.fi

A software approach to mathematical programming

  • 1.
    A Software approachto Mathematical Programming Arian Razmi Farooji 4 March 2015
  • 2.
    List of Contents •Introduction • Mathematical Programming • Mathematical Programming techniques • Solving a Mathematical Model • Mathematical Programming Software • GAMS Software • Heuristics and Metaheuristics • References A Software Approach to Mathematical Programming-Arian Razmi Farooji 1
  • 3.
    Introduction A Software Approachto Mathematical Programming-Arian Razmi Farooji 2 Operations Research Mathematical Optimizations Simulations Markov Chains Data Analysis Statistics Neural Networks Queuing Theory Expert Systems Economic Methods Decision Analysis
  • 4.
    Mathematical Programming A SoftwareApproach to Mathematical Programming-Arian Razmi Farooji 3 Problem Definition Model Construction Model Solution Model Validity Implementation Real World Assumed Real World Model
  • 5.
    Mathematical Programming techniques 1.LinearProgramming 2.Integer Programming 3.Mixed Integer Programming 4.Dynamic Programming 5.Network Programming 6.Nonlinear programming A Software Approach to Mathematical Programming-Arian Razmi Farooji 4
  • 6.
    Solving a MathematicalProgramming • Goal : “ To find an Optimum solution ” • Algorithms: − provides fixed computational rules − are applied repeatedly to the problem − each repetition (iteration) moving the solution closer to the optimum. A Software Approach to Mathematical Programming-Arian Razmi Farooji 5
  • 7.
    Solving a MathematicalProgramming • Simplex Method − solves LP problems − tests adjacent vertices of the feasible sets − at each iteration Simplex chooses the variable that will produce the largest change towards optimum solution • Software − GAMS − AMPL − Lingo − … A Software Approach to Mathematical Programming-Arian Razmi Farooji 6
  • 8.
    GAMS Software What isGAMS? • General Algebraic Modeling System • High-level modeling system for mathematical optimization • GAMS solves −Linear optimizations −Non-linear optimizations −Mixed-integer optimizations • Tailored for large scales optimization problems A Software Approach to Mathematical Programming-Arian Razmi Farooji 7
  • 9.
    GAMS Software Transportation Problem ASoftware Approach to Mathematical Programming-Arian Razmi Farooji 8 1 2 m 1 n Sources (𝑖) Destinations (𝑗) . . . . . . 𝑐11 𝑐1𝑛 𝑐21 𝑐2𝑛 𝑐 𝑚1 𝑐 𝑚𝑛 𝑎1 𝑎2 𝑎 𝑚 𝑏1 𝑏 𝑛
  • 10.
    GAMS Software Decision Variable 𝑥𝑖𝑗 𝑐𝑖𝑗 𝑎𝑖 𝑏𝑗 ASoftware Approach to Mathematical Programming-Arian Razmi Farooji 9 The amount shipped from i to j min 𝑧 = 𝑖=1 𝑚 𝑗=1 𝑛 𝑐𝑖𝑗 𝑥𝑖𝑗 𝑗=1 𝑛 𝑥𝑖𝑗 ≤ 𝑎𝑖 𝑓𝑜𝑟 𝑖 = 1, , , , , 𝑚 𝑖=1 𝑚 𝑥𝑖𝑗 ≥ 𝑏𝑗 𝑓𝑜𝑟𝑗 = 1, , , , , 𝑛 Mathematical Formulation Parameters Shipping Cost from i to j Supply Capacity of source i Demand of Destination j 𝑥𝑖𝑗 ≥ 0 𝑓𝑜𝑟 𝑎𝑙𝑙 𝑖 𝑎𝑛𝑑 𝑗 𝑆𝑢𝑏𝑗𝑒𝑐𝑡 𝑡𝑜:
  • 11.
    GAMS Software Example (HamdyTaha, 2011) A Software Approach to Mathematical Programming-Arian Razmi Farooji 10 LA Detroit New Orleans Denver Miami Sources Destinations 1000 1500 1200 2300 1400
  • 12.
    GAMS Software Example-Parameters A SoftwareApproach to Mathematical Programming-Arian Razmi Farooji 11 Table (1). Transportation Cost per Car Denver Miami Los Angeles $80 $215 Detroit $100 $108 New Orleans $102 $68
  • 13.
    GAMS Software Mathematical Formulation min𝑧 = 80𝑥11 + 215𝑥12 + 100𝑥21 + 108𝑥22 + 102𝑥31 + 68𝑥32 𝑥11 + 𝑥12 = 1000 𝑥21 + 𝑥22 = 1500 𝑥31 + 𝑥32 = 1200 𝑥11 + 𝑥21 + 𝑥31 = 2300 𝑥12 + 𝑥22 + 𝑥32 = 1400 A Software Approach to Mathematical Programming-Arian Razmi Farooji 12 Los Angeles Detroit New Orleans Denver Miami 𝑥𝑖𝑗 ≥ 0 𝑓𝑜𝑟 𝑖 = 1,2,3 𝑎𝑛𝑑 𝑗 = 1,2
  • 14.
    Heuristics and Metaheuristics •Both find “good and satisfactory” solutions in shorter time • The quality of algorithms is usually based on a tradeoff between: −Optimality −Completeness −Accuracy −Execution Time A Software Approach to Mathematical Programming-Arian Razmi Farooji 13
  • 15.
    Assignment • Formulate thefollowing transportation problem and solve it in GAMS. • Download GAMS here A Software Approach to Mathematical Programming-Arian Razmi Farooji 14 Shipping Costs Warehouses Supply 1 2 3 4 Factories 1 470 520 654 890 75 2 350 416 690 750 100 3 995 670 350 685 125 Demand 85 70 65 80
  • 16.
    References 1. Taha, H.,Operations Research an Introduction, Pearson, New Jersey, 2011 2. INFORMS: What is Operations Research? 3. GAMS Website 4. Richard E. Rosenthal’s GAMS Tutorial 5. Wikipedia: General Algebraic Modeling System 6. Education.com: Algorithms and Heuristics A Software Approach to Mathematical Programming-Arian Razmi Farooji 15
  • 17.
    Thank You forYour Attention A Software Approach to Mathematical Programming-Arian Razmi Farooji
  • 18.
    Question and Answer ASoftware Approach to Mathematical Programming-Arian Razmi Farooji
  • 19.
    A Software approachto Mathematical Programming Arian Razmi Farooji 4 March 2015 arian.razmifarooji@student.oulu.fi