Operations Research Modeling Toolset - PowerPoint PPT Presentation

Operations research modeling toolset l.jpg
Download
1 / 57

Operations Research Modeling Toolset Queueing Theory Markov Chains PERT/ CPM Network Programming Dynamic Programming Simulation Markov Decision Processes Inventory Theory Linear Programming Stochastic Programming Forecasting Integer Programming Decision Analysis

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Download Presentation

Operations Research Modeling Toolset

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Operations research modeling toolset l.jpg

Operations Research Modeling Toolset

Queueing Theory

Markov Chains

PERT/ CPM

Network Programming

Dynamic Programming

Simulation

Markov Decision Processes

Inventory Theory

Linear Programming

Stochastic Programming

Forecasting

Integer Programming

Decision Analysis

Nonlinear Programming

Game Theory


Network problems l.jpg

Network Problems

  • Linear programming has a wide variety of applications

  • Network problems

    • Special types of linear programs

    • Particular structure involving networks

  • Ultimately, a network problem can be represented as a linear programming model

  • However the resulting A matrix is very sparse, and involves only zeroes and ones

  • This structure of the A matrix led to the development of specialized algorithms to solve network problems


Types of network problems l.jpg

Types of Network Problems

  • Shortest Path

    Special case: Project Management with PERT/CPM

  • Minimum Spanning Tree

  • Maximum Flow/Minimum Cut

  • Minimum Cost Flow

    Special case: Transportation and Assignment Problems

  • Set Covering/Partitioning

  • Traveling Salesperson

  • Facility Location

    and many more


The transportation problem l.jpg

The Transportation Problem


The transportation problem5 l.jpg

The Transportation Problem

  • The problem of finding the minimum-cost distribution of a given commodity from a group of supply centers (sources) i=1,…,mto a group of receiving centers (destinations) j=1,…,n

  • Each source has a certain supply (si)

  • Each destination has a certain demand (dj)

  • The cost of shipping from a source to a destination is directly proportional to the number of units shipped


Simple network representation l.jpg

Simple Network Representation

Sources

Destinations

1

Supply s1

1

Demand d1

Supply s2

2

2

Demand d2

xij

n

Demand dn

Supply sm

m

Costs cij


Example p t co l.jpg

Example: P&T Co.

  • Produces canned peas at three canneries

    Bellingham, WA, Eugene, OR, and Albert Lea, MN

  • Ships by truck to four warehouses

    Sacramento, CA, Salt Lake City, UT, Rapid City, SD, and Albuquerque, NM

  • Estimates of shipping costs, production capacities and demands for the upcoming season is given

  • The management needs to make a plan on the least costly shipments to meet demand


Example p t co map l.jpg

Example: P&T Co. Map

1

2

3

3

2

1

4


Example p t co data l.jpg

Example: P&T Co. Data

Shipping cost per truckload


Example p t co10 l.jpg

Example: P&T Co.

  • Network representation


Example p t co11 l.jpg

Example: P&T Co.

  • Linear programming formulation

    Let xij denote…

    Minimize

    subject to


General lp formulation for transportation problems l.jpg

General LP Formulation for Transportation Problems


Feasible solutions l.jpg

Feasible Solutions

  • A transportation problem will have feasible solutions if and only if

  • How to deal with cases when the equation doesn’t hold?


Integer solutions property unimodularity l.jpg

Integer Solutions Property: Unimodularity

  • Unimodularity relates to the properties of the A matrix(determinants of the submatrices, beyond scope)

  • Transportation problems are unimodular, so we get the integers solutions property:

    For transportation problems, when every si and dj have an integer value, every BFS is integer valued.

  • Most network problems also have this property.


Transportation simplex method l.jpg

Transportation Simplex Method

  • Since any transportation problem can be formulated as an LP, we can use the simplex method to find an optimal solution

  • Because of the special structure of a transportation LP, the iterations of the simplex method have a very special form

  • The transportation simplex method is nothing but the original simplex method, but it streamlines the iterations given this special form


Transportation simplex method16 l.jpg

Transportation Simplex Method

Initialization

(Find initial CPF solution)

Is the current CPF solution optimal?

Yes

Stop

No

Move to a better adjacent CPF solution


The transportation simplex tableau l.jpg

The Transportation Simplex Tableau


Prototype problem l.jpg

Prototype Problem

  • Holiday shipments of iPods to distribution centers

  • Production at 3 facilities,

    • A, supply 200k

    • B, supply 350k

    • C, supply 150k

  • Distribute to 4 centers,

    • N, demand 100k

    • S, demand 140k

    • E, demand 300k

    • W, demand 250k

  • Total demand vs. total supply


Prototype problem19 l.jpg

Prototype Problem


Finding an initial bfs l.jpg

Finding an Initial BFS

  • The transportation simplex starts with an initial basic feasible solution (as does regular simplex)

  • There are alternative ways to find an initial BFS, most common are

    • The Northwest corner rule

    • Vogel’s method

    • Russell’s method (beyond scope)


The northwest corner rule l.jpg

The Northwest Corner Rule

  • Begin by selecting x11, let x11 = min{ s1, d1 }

  • Thereafter, if xij was the last basic variable selected,

    • Select xi(j+1) if source i has any supply left

    • Otherwise, select x(i+1)j


The northwest corner rule22 l.jpg

The Northwest Corner Rule

Z = 10770


Vogel s method l.jpg

Vogel’s Method

  • For each row and column, calculate its difference:

    = (Second smallest cij in row/col) - (Smallest cij in row/col)

  • For the row/col with the largest difference, select entry with minimum cij as basic

  • Eliminate any row/col with no supply/demand left from further steps

  • Repeat until BFS found


Vogel s method 1 calculate differences l.jpg

Vogel’s Method (1): calculate differences


Vogel s method 2 select x dummye as basic variable l.jpg

Vogel’s Method (2): select xDummyE as basic variable

90


Vogel s method 3 update supply demand and differences l.jpg

Vogel’s Method (3): update supply, demand and differences

90


Vogel s method 4 select x cn as basic variable l.jpg

Vogel’s Method (4): select xCNas basic variable

100

90


Vogel s method 5 update supply demand and differences l.jpg

Vogel’s Method (5): update supply, demand and differences

100

90


Vogel s method 6 select x cw as basic variable l.jpg

Vogel’s Method (6): select xCW as basic variable

100

50

90


Vogel s method 7 update supply demand and differences l.jpg

Vogel’s Method (7): update supply, demand and differences

100

50

90


Vogel s method 8 select x as as basic variable l.jpg

Vogel’s Method (8): select xAS as basic variable

140

100

50

90


Vogel s method 9 update supply demand and differences l.jpg

Vogel’s Method (9): update supply, demand and differences

140

100

50

90


Vogel s method 10 select x aw as basic variable l.jpg

Vogel’s Method (10): select xAW as basic variable

140

60

100

50

90


Vogel s method 11 update supply demand and differences l.jpg

Vogel’s Method (11): update supply, demand and differences

140

60

100

50

90


Vogel s method 12 select x bw and x be as basic variables l.jpg

Vogel’s Method (12): select xBW and xBE as basic variables

140

60

210

140

100

50

90

Z = 10330


Optimality test l.jpg

Optimality Test

  • In the regular simplex method, we needed to check the row-0 coefficients of each nonbasic variable to check optimality and we have an optimal solution if all are  0

  • There is an efficient way to find these row-0 coefficients for a given BFS to a transportation problem:

    • Given the basic variables, calculate values of dual variables

      • ui associated with each source

      • vj associated with each destination

        using cij – ui – vj = 0 for xij basic, or ui + vj = cij

        (let ui = 0 for row i with the largest number of basic variables)

    • Row-0 coefficients can be found from c’ij=cij-ui-vj for xij nonbasic


Optimality test 1 l.jpg

Optimality Test (1)

60

140

210

140

100

50

90


Optimality test 2 l.jpg

Optimality Test (2)

  • Calculate ui, vj using cij – ui – vj = 0 for xij basic

    (let ui = 0 for row i with the largest number of basic variables)

60

140

210

140

100

50

90


Optimality test 3 l.jpg

Optimality Test (3)

  • Calculate c’ij=cij-ui-vj for xij nonbasic

60

140

140

210

50

100

90


Optimal solution l.jpg

Optimal Solution

Sources

Destinations

N

Demand = 100

A

140

Supply = 200

60

S

Demand = 140

210

Supply = 350

B

140

E

Demand = 300

(shortage of 90)

100

Supply = 150

C

50

W

Demand = 250

Cost Z = 10330


An iteration l.jpg

An Iteration

  • Find the entering basic variable

    • Select the variable with the largest negative c’ij

  • Find the leaving basic variable

    • Determine the chain reaction that would result from increasing the value of the entering variable from zero

    • The leaving variable will be the first variable to reach zero because of this chain reaction


Initial solution obtained by the northwest corner rule l.jpg

Initial Solution Obtained by the Northwest Corner Rule

100

100

40

300

10

150

90


Iteration 1 l.jpg

100

100

-

+

40

300

10

150

+

-

90

?

Iteration 1


End of iteration 1 l.jpg

End of Iteration 1

100

100

40

210

100

150

90


Optimality test45 l.jpg

Optimality Test

100

100

40

210

100

150

90


Iteration 2 l.jpg

Iteration 2

+

-

100

100

+

-

210

100

40

?

150

90


End of iteration 2 l.jpg

End of Iteration 2

140

60

40

210

100

150

90


Optimality test48 l.jpg

Optimality Test

140

60

40

210

100

150

90

Z = 10330


Optimal solution49 l.jpg

Optimal Solution

Sources

Destinations

N

Demand = 100

60

A

Supply = 200

140

S

Demand = 140

40

Supply = 350

B

210

E

Demand = 300

(shortage of 90)

100

Supply = 150

C

150

W

Demand = 250

Cost Z = 10330


The assignment problem l.jpg

The Assignment Problem

  • The problem of finding the minimum-costly assignment of a set of tasks (i=1,…,m) to a set of agents (j=1,…,n)

  • Each task should be performed by one agent

  • Each agent should perform one task

  • A cost cij associated with each assignment

  • We should have m=n (if not…?)

  • A special type of linear programming problem, and

  • A special type of transportation problem,with si=dj= ?


Prototype problem51 l.jpg

Prototype Problem

  • Assign students to mentors

  • Each assignment has a ‘mismatch’ index

  • Minimize mismatches


Prototype problem52 l.jpg

Prototype Problem

  • Linear programming formulation

    Let xij denote…

    Minimize

    subject to


General lp formulation for assignment problems l.jpg

General LP Formulation for Assignment Problems


Solving the assignment problem l.jpg

Solving the Assignment Problem

  • It is a linear programming problem, so we could use regular simplex method

  • It is a transportation problem, so we could use transportation simplex method

  • However, it has a very special structure, such that it can be solved in polynomial time

  • Many such algorithms exist, but the best known (and one of the oldest) is the Hungarian Method


The hungarian method l.jpg

The Hungarian Method

  • Subtract row minimums from each element in the row

  • Subtract column minimums from each element in the column

  • Cover the zeroes with as few lines as possible

  • If the number of lines = n, then optimal solution is hidden in zeroes

  • Otherwise, find the minimum cost that is not covered by any lines

    • Subtract it from all uncovered elements

    • Add it to all elements at intersections (covered by two lines)

  • Back to step 3


The hungarian method optimal solution l.jpg

The Hungarian Method – Optimal Solution

How to identify the optimal solution:

  • Make the assignments one at a time in positions that have zero elements.

  • Begin with rows or columns that have only one zero. Cross out both the row and the column involved after each assignment is made.

  • Move on to the rows and columns that are not yet crossed out to select the next assignment, with preference given to any such row or column that has only one zero that is not crossed out.

  • Continue until every row and every column has exactly one assignment and so has been crossed out.


Hungarian method l.jpg

Hungarian Method


  • Login