Professional Documents
Culture Documents
Input Data :
SOURCES: m sources with supplies available of a1, . . . , am. SINKS: n sinks with demands of b1, . . . , bn. COST MATRIX: (cij ) matrix of unit shipping cost coecients. FORBIDDEN CELLS: Each source may be allowed to ship only to a subset of sinks; i.e., it is forbidden to ship to sinks outside this subset. Variables associated with forbidden cells are required to be 0. Make cost coe. cij of forbidden cells (i, j) to be + or a very large positive number, to force variable to be 0.
i=1 ai
!n
j=1 bj .
114
Problem:
""
min
z(x) =
subject to
n "
Redundancy in constraints: There is a redundant constraint, and any constraint in system can be treated as redundant one and eliminated. We will treat constraint corresponding to j = n as redundant and eliminate it. Eect is to set associated dual variable vn = 0 in dual problem.
Dual Problem:
" "
max
w(u, v) =
aiui +
bj vj
subject to
Relative cost coe. of xij is dual slack cij = cij ui vj . Various complementary pairs are (xij , cij ).
Special Routine to nd Initial BFS: General Step: Suppose some basic cells have already been
selected, and some rows and some columns of the array are strucko from further consideration. Let a%i, b%j denote modied row and column totals. If remaining portion of array consists of a single row only [single column only], select each remaining cell in it as a basic cell, make value of basic variable corresponding to it = modied column [row] total at this stage, terminate. If remaining portion of array has 2 rows and 2 cols., select one of remaining cells, (r, s) say, as next basic cell. BASIC CELL SELECTION RULES: 1: GREEDY CHOICE RULE: Select (r, s), the one with smallest cost coe. among ones open (i.e., not struck o) at this stage.
116
2. VOGELs CHOICE RULE: In each row and col. not yet struck o, dene Cost Dierence (CD) CD = 2nd smallest cost coe. smallest cost coe. among open cells. Find row or col. with largest CD. Select (r, s), the open cell in it with smallest cost coe. NOTE: Forbidden cells may be selected as basic cells. OK. Process of cost minimization will force them out of basic vector later, if a feasible solution exists. Fix value of basic variable xrs = = min{a%r , b%s} 0 in the BFS. If = a%r , strike o row r from further consideration, replace b%s by b%s (even if it is 0), and go to next step. If < a%r , i.e., = b%s, replace a%r by a%r , strike o col. s from further consideration, and go to next step.
117
Examples:
cij j=1 i=1 2 bj 11 7 2 8 5 3 2 4 ai
800 300
ai
15 19 11
4 10 5 15
8 30
118
Example: Basic vector (x11, x12, x13, x22) for rst example
above. 2. Compute relative cost coes. of nonbasic variables. Relative cost coe. of nonbasic variable xpq is the dual slack associated with xpq , cpq = cpq up vq .
119
3. Check Optimality.
Entering cell.
4. Find -loop of entering cell. (i) A -loop is a subset of cells in the array marked with + or adjustments, beginning with a + adjustment in the entering cell.
120
(ii) All cells in -loop other than the entering cell are basic cells. (iii) If any row or column of array contains some cells of -loop, then it contains exactly 2 cells, one with a + adjustment, and another with a adjustment. (iv) No proper subset of a -loop satises (iii). Cells with + adjustment are called Recipient with adjustment are called Donor
cells; those
cells.
Example: In a 4 5 array, can {(1, 2), (1, 3), (2, 2), (2, 3),
(3, 4), (3, 5), (4, 4), (4, 5)} form a -loop?
121
Array 6.7 1 1 1 6 7 2 27 10 1 3 0+ 8 6 4 13 vj 6 13 4 8 16 7 5 2 25 12 13 65 25 0 25 27 7 11 9 14 15 15 10 14 5 18 3 6 20 + 4 11 35 + 16 16 5 5 11 2 3 7 4 6 5 ui
A trial and error method for nding the -loop starts by putting a + adjustment in entering cell. Now make a adjustment among one of the basic cells in the row of entering cell. Continue making alternately + and adjustments among basic cells until loop is complete. At any time, if stuck, backtrack and change position of previous entries and try. 5. Find dropping basic variable and new BFS. To nd new solution, x all nonbasics other than entering variable at 0, make entering variable = , and reevaluate values of basic variables. This is equal to:
122
Present BFS + -adjustments in -loop of entering cell. Objective value of this solution is z() = Present objective value + cpq . Actually, cpq = Cost of -loop = sum of original cost coes. of recipient cells sum of original cost coes. of donor cells. Since z() decreases as increases from 0, we should give maximum possible value that keeps solution 0. This is equal to: Min ratio in this pivot step = min{Value of donor variables in present BFS }. So, the dropping basic variable can be taken to be any donor variable which ties for minimum above. So, pivot step consists of obtaining new BFS by substituting = min ratio in the new solution; replacing dropping basic variable by entering variable in the basic set.
123
With the new BFS and basic set, return to next iteration.
Example:
cij j=1 2 i=1 2 3 bj 9 10 11 6 5 3 8 12 ai
6 11 4
13 20
4 14
124
Now problem balanced. Solve it. In optimal sol. shipments from dummy source represent unfullled demand at sinks.
HWs: Solve following transportation problems. Data in cells are cij = unit transportation costs. 9.1 Source i = 1 Source 2 Source 3 Requirement bj 9.2 Source i = 1 Source 2 Source 3 Source 4 Requirement bj 9.3 Source i = 1 Source 2 Source 3 Requirement bj 9.4 Source i = 1 Source 2 Source 3 Requirement bj Plant j = 1 c11 = 1 2 3 30 Plant 2 2 4 5 40 Plant 3 3 6 15 80 Plant 4 1 7 20 100 Availability ai 50 100 50 Plant j = 1 c11 = 10 6 9 150 Plant 2 6 8 4 100 Plant 3 1 2 3 50 Availability ai 100 150 100 Plant j = 1 c11 = 5 15 5 8 50 Plant 2 7 20 4 10 30 Plant 3 1 2 2 6 10 Plant 4 8 10 5 6 150 Plant 5 9 8 6 12 50 Availability ai 50 160 30 50 Plant j = 1 c11 = 2 4 3 50 Plant 2 9 5 15 100 Plant 3 7 8 20 150 Plant 4 1 10 30 150 Availability ai 30 100 320
126