- 95 Views
- Uploaded on
- Presentation posted in: General

Facilities Design

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 - - - - - - - - - - - - - - - - - - - - - - - - - -

Facilities Design

S.S. Heragu

Industrial Engineering Department

University of Louisville

Chapter 12:Advanced Location Models

12.1INTRODUCTION

12.2LOCATION MODELS

12.2.1Multiple-Facility Problems with

Rectilinear Distances

12.2.2Multiple-Facility Problems with

Euclidean Distances

12.3ALLOCATION MODELS

12.3.1Network Flow Model

12.3.2Two-Stage Transportation Model

12.3.3Vehicle Routing Problem

12.4LOCATION-ALLOCATION MODELS

12.4.1Set Covering Model

12.4.2Uncapacitated Location-Allocation Model

12.4.3Comprehensive Location-Allocation Model

12.5SUMMARY

- How many new facilities are to be located in the distribution network consisting of previously established facilities and customers?
- Where should they be located?
- How large should each new facility be? In other words, what is the capacity of the new facility?

- How should customers be assigned to the new and existing facilities? More specifically, which facilities should be serving each customer?
- Can more than one facility serve a customer?

12.2LOCATIONMODELS

12.2.1Multiple-Facility Problemswith Rectilinear Distances

A similar definition of y+ij, y-ij, xa+ij, xa-ij, yb+ij, and yb-ij yields

|yi - yj| = y+ij + y-ij

yi - yj = y+ij - y-ij

|xi - aj| = xa+ij + xa-ij

xi - aj = xa+ij - xa-ij

|yi - bj| = yb+ij + yb-ij

yi - bj = yb+ij - yb-ij

Thus, the transformed linear model is:

(xi - xj) = x+ij - x-ij

Subject to:

yi - yj = y+ij - y-ij

xi - aj = xa+ij - xa-ij

yi - bj = yb+ij - yb-ij

x+ij, x-ij, y+ij , y-ij> 0, i, j = 1, 2, ...,n

xa+ij, xa-ij, yb+ij , yb-ij> 0, i = 1, 2, ...,n, j =1,2,...,m

xi, yi unrestricted in sign, i = 1,2,...,n

- xij+ or xij-, but not both, can be greater than 0. (If both are, then the values of xij+ and xij- do not satisfy their definition in (2) and (3)). Similarly, only one of (i) yij+, yij-, (ii) xij+, xaij-, (iii) ybij+, ybij-, must be greater than 0.
- Model 1 can be simplified by noting that:
- xi can be substituted as ai + xij+ - xaij-
- yi may also be substituted similarly, resulting in a model with 2n fewer constraints and variables than model 1.

- Tires and Brakes, Inc., is an automobile service company specializing in tire and brake replacement. It has four service centers in a metropolitan area and a warehouse that supplies tires, brakes and other components to the service centers. The company manager has determined that he needs to add two more warehouses so as to improve component delivery service.

Example 1:

At the time, he wants to ensure that the location of the two new warehouses is such that the cost of delivery components from the new warehouse to the existing facilities (four service centers and existing warehouse) as well as between the new warehouses is minimal. The four service centers and warehouse are located at the following coordinate locations - (8, 20), (8, 10), (10, 20), (16, 30), and (35, 20). It is anticipated that there will be one trip per day between the new warehouses.

Example 1:

In addition, the number of trips between the new warehouses and four service centers as well as the existing warehouse is provided below.

SC1SC2SC3SC4W1

W277542

W332452

Develop a mode similar to the transformed Model 1 to minimize distribution cost and solve it using LINGO, LINDO or the LP Solver in Excel

SUBJECT TO

2) - XP12 + XN12 + X1 - X2 = 0

3) - XP21 + XN21 - X1 + X2 = 0

4) - YP12 + YN12 + Y1 - Y2 = 0

5) - YP21 + YN21 - Y1 + Y2 = 0

6) - XAP11 + XAN11 + X1 = 8

7) - XAP12 + XAN12 + X1 = 8

8) - XAP13 + XAN13 + X1 = 10

9) - XAP14 + XAN14 + X1 = 16

10) - XAP15 + XAN15 + X1 = 35

11) - XAP21 + XAN21 + X2 = 8

12) - XAP22 + XAN22 + X2 = 8

13) - XAP23 + XAN23 + X2 = 10

14) - XAP24 + XAN24 + X2 = 16

15) - XAP25 + XAN25 + X2 = 35

16) - YBP11 + YBN11 + Y1 = 20

17) - YBP12 + YBN12 + Y1 = 10

18) - YBP13 + YBN13 + Y1 = 20

19) - YBP14 + YBN14 + Y1 = 30

20) - YBP15 + YBN15 + Y1 = 20

21) - YBP21 + YBN21 + Y2 = 20

22) - YBP22 + YBN22 + Y2 = 10

23) - YBP23 + YBN23 + Y2 = 20

24) - YBP24 + YBN24 + Y2 = 30

25) - YBP25 + YBN25 + Y2 = 20

END

FREE X1

FREE X2

FREE Y1

FREE Y2

Example 1:

MIN XP12 + XN12 + YP12 + YN12 + XP21 + XN21 + YP21 + YN21 + 7 XAP11 + 7 XAN11 + 7 YBP11 + 7 YBN11 + 7 XAP12 + 7 XAN12 + 7 YBP12 + 7 YBN12 + 5 XAP13 + 5 XAN13 + 5 YBP13 + 5 YBN13 + 4 XAP14 + 4 XAN14 + 4 YBP14 + 4 YBN14 + 2 XAP15 + 2 XAN15 + 2 YBP15 + 2 YBN15 + 3 XAP21 + 3 XAN21 + 3 YBP21 + 3 YBN21 + 2 XAP22 + 2 XAN22 + 2 YBP22 + 2 YBN22 + 4 XAP23 + 4 XAN23 + 4 YBP23 + 4 YBN23 + 5 XAP24 + 5 XAN24 + 5 YBP24 + 5 YBN24 + 2 XAP25 + 2 XAN25 + 2 YBP25 + 2 YBN25

Consider the following objective for the euclidean distance problem.

Multiple-Facility Problemswith Euclidean Distances

Taking the partial derivatives, we get

Multiple-Facility Problemswith Euclidean Distances

Multiple-Facility Problemswith Euclidean Distances

To make sure the denominator is never 0, we add to it. We then get:

Multiple-Facility Problemswith Euclidean Distances

And …

Consider Example 1. Assuming the Euclidean metric is more appropriate and that Tire and Brakes, Inc. does not currently have a warehouse, determine where the two new warehouses are to be located.

Model 2

Consider this notation:

cijcost of sending one unit of flow on arc (i, j)

Uijupper bound on the flow that can be sent on arc (i, j), i.e., capacity of arc (i,j)

Lijlower bound on the flow that can be sent on arc (i, j)

Dinet flow generated at node i

xijnumber of units of flow on arc (i, j)

Model 2:

Step 1:Construct a spanning tree for the n nodes. The variables xij corresponding to the arcs (i,j) in the spanning tree are basic variables and the remaining are nonbasic. Find a basic feasible solution to the problem so that:

(1) the basic variables satisfy Lij < xij < Uij , and

(2) the nonbasic variables take on a value of Lij or Uij to satisfy constraint (22).

Step 2:Set u1 =0 and find uj, j=2,...,n using the formula ui - uj = cij for all basic variables.

Step 3:If ui - uj - cij< 0 for all nonbasic variables xij with a value of Lij , and ui - uj - cij> 0 for all nonbasic variables xij with a value of Uij , then the current basic feasible solution is optimal; stop. Otherwise, go to step 4.

Step 4:Select the variable xi*j* that violates the optimality condition (in step 3) the most, i.e., the largest of the ui - uj - cij for those nonbasic variables with xij = Lij, and the smallest of the ui - uj - cij for those nonbasic variables with xij = Uij,. Make the arc (i*,j*) a basic variable and add arc (i*,j*) to the spanning tree. Make one of the other basic variables in the loop of basic variables [formed by including arc (i*,j*)], a nonbasic variable such that:

(1) xi*j* takes on the largest possible value,

(2) constraint (21) is satisfied for all the n nodes, and

(3) constraint (22) is satisfied for all the arcs in the loop.

Remove the arc corresponding to the nonbasic variable just identified so that we have a spanning tree once again. Go to step 2.

The Fast Shipping Company manages the distribution of lawnmowers from a company that has two factories (F1 and F2) in the Northeast to two large customer bases (C1 and C2) in the Southwest. For cost and freight consolidation reasons, Fast Shipping would like to route the shipments via three intermediate nodes (T1 - T3) located in the midwest. The relevant data is provide in Tables 12.3-12.5. Setup a model to determine how the shipment is to take place from the two factories to the two destinations via the three intermediate shipment points.

SUBJECT TO

2) X11 + X12 + X13 = 900

3) X21 + X22 + X23 = 600

4) - Y11 - Y21 - Y31 = - 750

5) - Y12 - Y22 - Y32 = - 750

6) X11 + X21 - Y11 - Y12 = 0

7) X12 + X22 - Y21 - Y22 = 0

8) X13 + X23 - Y31 - Y32 = 0

9) X11 <= 500

10) X12 <= 1500

11) X13 <= 350

12) X21 <= 1200

13) X22 <= 750

14) X23 <= 450

15) Y11 <= 1000

16) Y21 <= 750

17) Y31 <= 1000

18) Y12 <= 150

19) Y22 <= 200

20) Y32 <= 1500

END

Example 3:

1

1

1

2

2

3

2

3

4

q

p

r

Consider the following notation:

Sicapacity of supply source i, i = 1, 2, ..., p

Pjcapacity of plant j, j = 1, 2, ..., q

Dkdemand at customer k, k = 1, 2, ..., r

cijcost of transporting one unit from supply source i to plant j

The LP model is:

Model 3:

- Supply source capacity is unlimited and total plant capacity is more than total demand
- Supply source capacity is unlimited and total demand exceeds total plant capacity
- Plant capacity is unlimited and total supply source capacity exceeds total demand
- Plant capacity is unlimited and total demand exceeds total supply source capacity
In the following discussion, the supply sources are assumed to have unlimited capacities and total plant capacity is more than total demand (case (i))

2-Stage Distribution Problem: RIFIN Company has recently developed a new method of manufacturing a type of chemical. It involves refining a certain raw material which can be obtained from four overseas suppliers A, B, C, D who have access to the four ports at Vancouver, Boston, Miami, and San Francisco, respectively. RIFIN wants to determine the location of plants at which the chemical will be refined. The chemical, once refined, will be transported via trucks to five outlets located at Dallas, Phoenix, Portland, Montreal and Orlando.

After an initial study, the choice of location for RIFIN’s refineries has narrowed down to Denver, Atlanta and Pittsburgh. Assume that one unit of raw material is required to make one unit of chemical. The amount of raw material from each potential refinery as well as the cost of trucking the chemical to outlets are also provided below. Determine the location of RIFIN’s refining plants, capacities at these plants and distribution pattern for the raw material and processed chemical.

Example 4:

Raw Material SourceSupplyOutletDemand

A1000Dallas900

B800Phoenix800

C800Portland600

D700Montreal500

Orlando500

Example 4:

Raw Material Transportation Cost

TODenverAtlantaPittsburgh

FROM

Vancouver4139

Boston885

Miami1229

San Francisco111112

Example 4:

Chemical Trucking Cost

TODallasPhoenixPortlandMontrealOrlando

FROM

Den.2826123030

Atla.102223298

Pitts.1821231821

Da

V

D

Ph

B

Po

A

M

Mo

P

SF

Orl

Setup transportation tableau for Example 4

The transportation problem may be solved to yield the solution indicated in the following figure. Notice that the solution indicates that refineries be built at all locations.

Figure 12.4:

Da

V

900

1000

400

D

Ph

600

B

400

1000

Po

A

800

M

500

Mo

600

P

500

SF

100

Orl

Determine the number of vehicles required to:

- serve its customers (pick-up or deliver parcels) so that each customer is visited once and only once per day
- the vehicle capacity is not exceeded, and
- the total travel time is minimized

Tijtime to travel from customer i to customer j, i,j=1,2, …, n

Didemand at customer i, i=1,2, …, n

Ckcapacity of vehicle k, k=1,2, …, p

Model 4:

Define:

cjcost of locating facility at site j

aij=

xj =

{

1 if facility located at site j can cover customer i

0 Otherwise

{

1 if facility is located at site j

The set covering problem is to:

0 Otherwise

Model 5:

Step 1:If cj = 0, for any j = 1, 2, ..., n, set xj = 1 and remove all constraints in which xj appears with a coefficient of +1.

Step 2:If cj > 0, for any j = 1, 2, ..., n and xj does not appear with +1 coefficient in any of the remaining constraints, set xj = 0.

Step 3:For each of the remaining variables, determine cj/dj, where dj is the number of constraints in which xj appears with +1 coefficient. Select the variable k for which ck/dk is minimum, set xk = 1 and remove all constraints in which xj appears with +1 coefficient. Examine the resulting model.

Step 4If there are no more constraints, set all the remaining variables to 0 and stop. Otherwise go to step 1.

We illustrate the above greedy heuristic with an example.

A rural country administration wants to locate several medical emergency response units so that it can respond to calls within the county within eight minutes of the call. The county is divided into seven population zones. The distance between the centers of each pair of zones is known and is given in the matrix below.

1234567

10412615108

2801560723

3501308659

4911809103

55084100227

6305793027

7859725270

[dij] =

The response units can be located in the center of population zones 1 through 7 at a cost (in hundreds of thousands of dollars) of 100, 80, 120 110, 90, 90, and 110 respectively. Assuming the average travel speed during an emergency to be 60 miles per hour, formulate an appropriate set covering model to determine where the units are to be located and how the population zones are to be covered and solve the model using the greedy heuristic.

Defining

{

1if zone i’s center can be reached from center of zone j within 8 minutes

aij =

0otherwise

and noting that dij > 8, dij< 8 would yield aij values of 0, 1, respectively the following [aij] matrix can be set up.

1234567

11101001

21100111

30011110

40011001

50110110

60110110

71101001

[aij] =

The corresponding set covering model is:

Solution:

Minimize 100x1+80x2+120x3+110x4+90x5+90x6+110x7

Subject to

x1+x2+ x4 + x7> 1

x1+x2+ x5 +x6+x7> 1

x3+x4 +x5 +x6> 1

x3+x4 +x7> 1

x2+ x3+x5 +x6 > 1

x2+ x3+x5 +x6 > 1

x1 +x2+ x4 +x7 > 1

x1,x2,x3,x4, x5,x6,x7> 0 or 1

Step 1: Since each cj > 0, j = 1, 2, ..., 7, go to step 2.

Step 2: Since xj appears in each constraint with +1 coefficient, go to step 3.

Step 3:

Solution:

Since the minimum ck/dk occurs for k = 2, set x2 = 1 and remove the first two and the last three constraints. The resulting model is shown below.

Minimize 100x1+80x2+120x3+110x4+90x5+90x6+110x7

Subject to

x3+x4 +x5 +x6> 1

x3+x4 +x7> 1

x1,x2,x3,x4, x5,x6,x7 = 0 or 1

Step 4: Since we have two constraints go to step 1.

Step 1: Since c1 > 0, j = 1, 3, 4, ..., 7, go to step 2

Step 2: Since c1 > 0 and x1 does not appear in any of the constraints with +1 coefficient, set x1 = 0.

Since the minimum ck/dk occurs for k = 4, set x4 = 1 and remove both constraints in the above model since x4 has a +1 coefficient in each. The resulting model is shown below.

Minimize:

120x3+90x5+90x6+110x7

Subject to

x3 , x5 , x6 , x7 > 0

Greedy Heuristic:

Step 4:Since there are no constraints in the above model, set x3 = x5 = x6 = x7 = 0 and stop.

The solution is x2 = x4 = 1; x1 = x3 = x5 = x6 = x7 = 0. Cost of locating emergency response units to meet the eight minute response service level is $800,000 + $1,100,000 = $1,900,000.

Parameters

m number of potential facilities

n number of customers

cij cost of transporting one unit of product

from facility i to customer j

Fi fixed cost of opening and operating facility j

Dj number of units demanded at customer j

Decision Variables

xijnumber of units shipped from facility i to customer j

Modify Model 6 by transforming xij variables and the cij parameter

Substitute x’ij = xij/Dj, we get

Divide LHS and RHS by ΣDj, we get

Because the sum of LHS terms is <yi, each term must also be <yi

Because Dj/ΣDjis a positive fraction for each j:

x’ij< yi, j=1,2,…,n

Adding we get

- Although a general purpose branch-and-bound technique can be applied to solve model 5, it is not very efficient since we have to solve several subproblems, one at each node, using the Simplex algorithm. In what follows, we discuss a very efficient way of solving the subproblems that does not use the Simplex algorithm
- To facilitate its discussion, it is convenient to refer to x’ij, the fraction of customer j’s demand met by facility i in model 7, as simply xij. Thus, xij in the remainder of this section does not refer to the number of units, rather a fraction. Similarly cij now refers to cij

- The central idea of the branch-and-bound algorithm is based on the following result
- Suppose, at some stage of the branch-and-bound solution process, we are at a node where some facilities are closed (corresponding yi = 0), and some are open (yi = 1) and the remaining are free, i.e., a decision whether to open or close has not yet been taken (0< yi <1). Let us define:
- S0 as the set of facilities whose yi value is equal to 0; {i: yi = 0}
- S1 as the set of facilities whose yi value is equal to 1; {i: yi = 1)
- S2 as the set of facilities whose yi value is greater than 0 but less than 1; {i: 0 < yi < 1}

- Suppose, at some stage of the branch-and-bound solution process, we are at a node where some facilities are closed (corresponding yi = 0), and some are open (yi = 1) and the remaining are free, i.e., a decision whether to open or close has not yet been taken (0< yi <1). Let us define:

Note: The inequality in the second constraint above can be converted to an equality because in the optimal solution LHS will be equal to RHS. Thus,

Because max {xij} is 1, max {yi} is also 1

- Model 9 which is equivalent to model 6 without the integer restrictions on the y variables, is a half assignment problem. It can be proved (again, by contradiction) that for each j = 1, 2, ..., n, only one of x1j, x2j, ..., xmj will take on a value of 1, due to Σxij=1
- In fact, for each j, the xij taking on a value of 1 will be the one that has the smallest coefficient in the objective function
- Thus, to solve model 9, we only need to find for a specific j, the smallest coefficient of xij in the objective function, i=1,2,…,m, set the corresponding xij equal to 1 and all other xij 's to 0 as follows:

- Select the smallest cij from the list, set the corresponding xij = 1 and all other xij’s to 0. This is the minimum coefficient rule.
- We do not include facility iS2 in the min coeff rule because these are closed
- Moreover, a lower bound on the partial solution of the node under consideration can be obtained by adding
to the sum of the coefficients of the xij variables which have taken a value of 1

- Step 1: Set best known upper bound UB = infinity; node counter, p = 1; S0 = S1 = {}; S2 = {1, 2, ..., m}
- Step 2: Construct a subproblem (node) p with the current values of the y variables.
- Step 3: Solve subproblem corresponding to the node under consideration using the minimum coefficient rule and

Step 4: If the solution is such that all y variables take on integer (0 or 1) values, go to step 7. Otherwise go to step 5.

Step 5: Determine the lower bound of node p using model 7. Arbitrarily select one of the facilities, say k, which has taken on a fractional value for yk, i.e., 0 < yk < 1 and create two subproblems (nodes) p+1 and p+2 as follows.

Subproblem p+1

- Include facility k and others with a yk value of 0 in So; facilities with yk value of 1 in S1; all other facilities in S2
Subproblem p+2

- Include facility k and others with a ykvalue of 1 in S1; facilities with yk value of 0 in S0; all other facilities in S2. If xkj = 1for j = 1, 2, ..., n, in the solution to subproblem p, remove each such customer j from consideration in subproblem p+2, and reduce n by the number of j’s for which xkj = 1

- Step 6: Solve subproblem p+1 using the minimum coefficient rule and
- Set p = p+2. Go to step 4.
- Step 7: Determine the lower bound of node p using model 9. If it is greater than UB, set UB = lower bound of node p. Prune node p as well as any other node whose bound is greater than or equal to UB. If there are no more nodes to be pruned, stop. Otherwise consider any unpruned node and go to step 3.

The nation’s leading retailer Sam-Mart wants to establish its presence in the Northeast by opening five department stores. In order to serve the stores (whose locations have already been determined), the retailer wants to have a maximum of three distribution warehouses. The potential locations for these warehouses have already been selected and there are no practical limits on the size of the warehouses. The fixed cost (in hundreds of thousands of dollars) of building and operating the warehouse at each location is 6, 5, and 3, respectively.

The variable cost of serving each warehouse from each of the potential warehouse locations is given below (again in hundreds of thousands of dollars). Determine how many warehouses are to be built and in what locations. Also determine how the customers (departmental stores) are to be served.

12345 Fi

1

2

3

2012141210 6

151020815 5

1216251110 3

Step 1: Set UB = infinity; node counter p = 1; S0 = S1 = {}; S2 = {1, 2, 3}.

Step 2: Minimum coefficient rule: Determine the xij coefficients as follows.

Solution:

6

1

5

3

3

c11=20+

=21

; c21=15+

=16

; c31=12+

= 12

5

5

5

5

5

Since the minimum occurs for cij = c31, set x31 = 1 and x11 = x21 = 0.

6

1

5

3

3

c12=12+

=13

; c22=10+

=11

; c32=16+

= 16

5

5

5

5

5

Since the minimum occurs for cij = c22, set x22 = 1 and x12 = x32 = 0.

Solution:

6

1

5

3

3

c13=14+

=15

; c23=20+

=21

; c32=25+

= 25

5

5

5

5

5

Since the minimum occurs for cij = c13, set x13 = 1 and x23 = x33 = 0.

6

1

5

3

3

c14=12+

=13

; c24= 8+

= 9

; c34=11+

= 11

5

5

5

5

5

Since the minimum occurs for cij = c24, set x24 = 1 and x14 = x34 = 0.

Solution:

6

1

5

3

3

c15=10+

=11

; c25=15+

=16

; c35=10+

= 10

5

5

5

5

5

Since the minimum occurs for cij = c35, set x35 = 1 and x15 = x25 = 0.

Solution:

1

1

1

y1=

[x11+x12+x13+x14+x15]=

[0+0+1+0+0]=

5

5

5

1

1

2

y2=

[x21+x22+x23+x24+x25]=

[0+1+0+1+0]=

5

5

5

1

1

2

y3=

[x31+x32+x33+x34+x35]=

[1+0+0+0+1]=

5

5

5

Step 4: Since all three y variables have fractional values, go to Step 5.

Solution:

Step 5: Lower bound of node 1 =

3

1

3

2

0 + 12

+ 11 + 15

+ 9 + 10

= 58

5

5

5

5

Arbitrarily select variable y1 to branch on.

Create subproblems 2 and 3 as follows

Subproblem 2: S0 = {1}; S1 = {}; S2 = {2, 3}.

Subproblem 3: S0 = {1}; S1 = {}; S2 = {2, 3}.

Step 6: Solution of subproblem 2 using minimum coefficient rule: Determine xij coefficients as follows.

Solution:

5

3

3

c21=15+

=16

; c31=12+

=12

5

5

5

Since the minimum occurs for cij = c31, set x31 = 1, x21 = 0.

5

3

3

c22=10+

=11

; c32=16+

=16

5

5

5

Since the minimum occurs for cij = c22, set x22 = 1, x32 = 0.

Solution:

5

3

3

c23=20+

=21

; c33=25+

=25

5

5

5

Since the minimum occurs for cij = c23, set x23 = 1, x33 = 0.

5

3

3

c24=8 +

= 9

; c34=11+

=11

5

5

5

Since the minimum occurs for cij = c24, set x24 = 1, x34 = 0.

Solution:

5

3

3

c24=15+

=16

; c35=10+

=10

5

5

5

Since the minimum occurs for cij = c35, set x35 = 1, x25 = 0.

1

1

3

y2=

[x21+x22+x23+x24+x25]=

[0+1+1+1+0]=

5

5

5

1

1

2

y3=

[x31+x32+x33+x34+x35]=

[1+0+0+0+1]=

5

5

5

Solution of subproblem 3 using minimum coefficient rule: Determine xij coefficients as follows:

Since x13 = 1 in the solution to subproblem 1, remove store 1 from consideration in node 3 and other nodes emanting from node 3. Reduce n by 1, n=5-1=4.

Solution:

5

1

3

3

c11=20; c21 =15+

=16

; c31=12+

=12

4

4

4

4

Since the minimum occurs for cij = c31, set x31 = 1 and x11 = x21 = 0.

5

1

3

3

c12=12; c22 =10+

=11

; c32=16+

=16

4

4

4

4

Since the minimum occurs for cij = c22, set x22 = 1 and x12 = x32 = 0.

Solution:

5

1

3

3

c14=12; c24 =8 +

= 9

; c34=11+

=11

4

4

4

4

Since the minimum occurs for cij = c24, set x24 = 1 and x24 = x34 = 0.

5

1

3

3

c15=10; c25 =15+

=16

; c35=10+

=10

4

4

4

4

Since the minimum occurs for cij = c15, set x15 = 1 and x25 = x35 = 0.

Solution:

1

1

2

1

y2=

[x21+x22+x24+x25]=

[0+1+1+0]=

=

4

4

4

2

1

1

1

y2=

[x31+x32+x34+x35]=

[1+0+0+0]=

4

4

4

Set p=1+2=3

Step 4: Since the solution for subproblem 2 is not all integer, go to step 5.

We repeat steps 3, 4, 5, 6, and 7 until all the nodes are pruned. We then have an optimal solution. These steps are summarized in Table 2.

Parameters

Sijproduction capacity of product i at plant j

Dildemand for product i at customer zone l

Fkfixed cost of operating warehouse k

Vikunit variable cost of handling product i at warehouse k

Cijklaverage unit cost of producing and transporting

product i from plant j via warehouse k to customer l

UCkUpper bound on the capacity of warehouse k

LCkLower bound on the capacity of warehouse k

Decision Variables

Xijkl number of units of product i transported

from plant j via warehouse k to customer l

We can easily add more linear constraints not involving xijkl variables to model 10 to:

- Impose upper and lower limit on the number of warehouses that can be opened;
- Enforce precedence relations among warehouses (e.g., open warehouse at location 1 only if another is opened at location 3)
- Enforce service constraints (e.g., if it is decided to open a certain warehouse, then a specific customer area must be served by it)
- Other constraints that can be added are discussed further in Geoffrion and Graves (1974).
- Many of these constraints reduce the solution space, so they allow quicker solution of the model while giving the modeler much flexibility

Suppose we fix the values of binary variables ykl and zk temporarily at 0 or 1 so that corresponding constraints are satisfied

Then, model 10 reduces to the following linear program which we will refer to as TP

TP can be decomposed into i separate transportation problems, TPi, as follows because the variables pertaining to a specific product appear only in the rows (constraints) corresponding to that product and not elsewhere. (Notice that we have temporarily eliminated K from TPi)

TP can be decomposed into i separate transportation problems, TPi, as follows because the variables pertaining to a specific product appear only in the rows (constraints) corresponding to that product and not elsewhere. (Notice that we have temporarily eliminated K from TPi)

Dual of TPi, designated as DTPi, follows.

Combine p dual problems into one master problem MP

MinimizeT

Step 0:Set upper bound UB=infinity, and convergence tolerance parameter ε to a desired small, positive value. Set ykl, zk = 0 or 1, for k=1,2,…,r, l=1,2,…,s so that the resulting values satisfy constraints with ykl, zk

Step 1:Set up TPi, i=1,2,…,p and determine K for the current values of ykl, zkk=1,2,…,r, l=1,2,…,s. Set up corresponding dual model DTPi for each i. Solve each DTPi and add K to the sum of the optimal objective function value of each DTPi. If this sum is less than or equal to UB, set UB = K + sum of original OFVs of each DTPi

Step 2:Set up model MP for the current values of uij, vil, i=1,2,…p; j=1,2,…,q, l=1,2,…,s. Find a feasible solution to MP such that T<UB-ε. If there is no such feasible solution to the current MP, stop. We have an ε-optimal solution. Otherwise, go to step 1 with the current values of the ykl, and zk variables

The nation’s leading grocer, Myers, wants to determine how to source the highest margin product, and also determine the warehouses through which to serve three of its largest stores in Louisville. In order to serve the stores (whose locations have already been determined), the grocer wants to utilize one or two distribution warehouses which will receive the product from one or more of four plants which produce the product. The potential locations for these warehouses have already been selected and there are no practical limits on the size of the warehouses. The fixed cost (in hundreds of thousands of dollars) of building and operating the warehouse at each location is 6, 5, and 3, respectively.

The variable cost of serving each warehouse from each of the potential warehouse locations is given below (again in hundreds of thousands of dollars). Determine how many warehouses are to be built and in what locations. Also determine how the customers (departmental stores) are to be served.

MODEL:

[_1] MIN= 1000 * Y_1_1 + 2000 * Y_1_2 + 1000 * Y_1_3 + 1500 * Y_2_1 +

3000 * Y_2_2 + 1500 * Y_2_3 + 25 * X_1_1_1 + 28 * X_1_1_2 + 23 * X_1_1_3

+ 16 * X_1_2_1 + 19 * X_1_2_2 + 20 * X_1_2_3 + 20 * X_2_1_1 + 23 *

X_2_1_2 + 18 * X_2_1_3 + 18 * X_2_2_1 + 21 * X_2_2_2 + 22 * X_2_2_3 + 13

* X_3_1_1 + 16 * X_3_1_2 + 11 * X_3_1_3 + 22 * X_3_2_1 + 25 * X_3_2_2 +

26 * X_3_2_3 + 15 * X_4_1_1 + 18 * X_4_1_2 + 13 * X_4_1_3 + 20 * X_4_2_1

+ 23 * X_4_2_2 + 24 * X_4_2_3 + 2000 * Z_1 + 1500 * Z_2 ;

[_2] X_1_1_1 + X_1_1_2 + X_1_1_3 + X_1_2_1 + X_1_2_2 + X_1_2_3 <= 200 ;

[_3] X_2_1_1 + X_2_1_2 + X_2_1_3 + X_2_2_1 + X_2_2_2 + X_2_2_3 <= 100 ;

[_4] X_3_1_1 + X_3_1_2 + X_3_1_3 + X_3_2_1 + X_3_2_2 + X_3_2_3 <= 50 ;

[_5] X_4_1_1 + X_4_1_2 + X_4_1_3 + X_4_2_1 + X_4_2_2 + X_4_2_3 <= 500 ;

[_6] - 100 * Y_1_1 + X_1_1_1 + X_2_1_1 + X_3_1_1 + X_4_1_1 >= 0 ;

[_7] - 200 * Y_1_2 + X_1_1_2 + X_2_1_2 + X_3_1_2 + X_4_1_2 >= 0 ;

[_8] - 100 * Y_1_3 + X_1_1_3 + X_2_1_3 + X_3_1_3 + X_4_1_3 >= 0 ;

[_9] - 100 * Y_2_1 + X_1_2_1 + X_2_2_1 + X_3_2_1 + X_4_2_1 >= 0 ;

[_10] - 200 * Y_2_2 + X_1_2_2 + X_2_2_2 + X_3_2_2 + X_4_2_2 >= 0 ;

[_11] - 100 * Y_2_3 + X_1_2_3 + X_2_2_3 + X_3_2_3 + X_4_2_3 >= 0 ;

[_12] Y_1_1 + Y_2_1 = 1 ;

[_13] Y_1_2 + Y_2_2 = 1 ;

[_14] Y_1_3 + Y_2_3 = 1 ;

[_15] 100 * Y_1_1 + 200 * Y_1_2 + 100 * Y_1_3 - 3000 * Z_1 <= 0 ;

[_16] 100 * Y_2_1 + 200 * Y_2_2 + 100 * Y_2_3 - 4000 * Z_2 <= 0 ;

[_17] 100 * Y_1_1 + 200 * Y_1_2 + 100 * Y_1_3 >= 0 ;

[_18] 100 * Y_2_1 + 200 * Y_2_2 + 100 * Y_2_3 >= 0 ;

@BIN( Y_1_1); @BIN( Y_1_2); @BIN( Y_1_3); @BIN( Y_2_1);

@BIN( Y_2_2); @BIN( Y_2_3); @BIN( Z_1); @BIN( Z_2);

END

Global optimal solution found.

Objective value: 12300.00

Objective bound: 12300.00

Infeasibilities: 0.000000

Extended solver steps: 0

Total solver iterations: 13

Variable Value Reduced Cost

Q 4.000000 0.000000

R 2.000000 0.000000

S 3.000000 0.000000

CAPACITY( 1) 200.0000 0.000000

CAPACITY( 2) 100.0000 0.000000

CAPACITY( 3) 50.00000 0.000000

CAPACITY( 4) 500.0000 0.000000

FIXEDCOST( 1) 2000.000 0.000000

FIXEDCOST( 2) 1500.000 0.000000

VARIABLECOST( 1) 10.00000 0.000000

VARIABLECOST( 2) 15.00000 0.000000

UPPERBOUND( 1) 3000.000 0.000000

UPPERBOUND( 2) 4000.000 0.000000

LOWERBOUND( 1) 0.000000 0.000000

LOWERBOUND( 2) 0.000000 0.000000

Z( 1) 1.000000 2000.000

Z( 2) 0.000000 1500.000

MODEL:

[_1] MIN= 25 * X_1_1_1 + 28 * X_1_1_2 + 23 * X_1_1_3 + 16 * X_1_2_1 + 19

* X_1_2_2 + 20 * X_1_2_3 + 20 * X_2_1_1 + 23 * X_2_1_2 + 18 * X_2_1_3 +

18 * X_2_2_1 + 21 * X_2_2_2 + 22 * X_2_2_3 + 13 * X_3_1_1 + 16 * X_3_1_2

+ 11 * X_3_1_3 + 22 * X_3_2_1 + 25 * X_3_2_2 + 26 * X_3_2_3 + 15 *

X_4_1_1 + 18 * X_4_1_2 + 13 * X_4_1_3 + 20 * X_4_2_1 + 23 * X_4_2_2 + 24

* X_4_2_3 + 7500 ;

[_2] X_1_1_1 + X_1_1_2 + X_1_1_3 + X_1_2_1 + X_1_2_2 + X_1_2_3 <= 200 ;

[_3] X_2_1_1 + X_2_1_2 + X_2_1_3 + X_2_2_1 + X_2_2_2 + X_2_2_3 <= 100 ;

[_4] X_3_1_1 + X_3_1_2 + X_3_1_3 + X_3_2_1 + X_3_2_2 + X_3_2_3 <= 50 ;

[_5] X_4_1_1 + X_4_1_2 + X_4_1_3 + X_4_2_1 + X_4_2_2 + X_4_2_3 <= 500 ;

[_6] X_1_1_1 + X_2_1_1 + X_3_1_1 + X_4_1_1 >= 0 ;

[_7] X_1_1_2 + X_2_1_2 + X_3_1_2 + X_4_1_2 >= 0 ;

[_8] X_1_1_3 + X_2_1_3 + X_3_1_3 + X_4_1_3 >= 0 ;

[_9] X_1_2_1 + X_2_2_1 + X_3_2_1 + X_4_2_1 >= 100 ;

[_10] X_1_2_2 + X_2_2_2 + X_3_2_2 + X_4_2_2 >= 200 ;

[_11] X_1_2_3 + X_2_2_3 + X_3_2_3 + X_4_2_3 >= 100 ;

[_12] 0 = 0 ;

[_13] 0 = 0 ;

[_14] 0 = 0 ;

[_15] 0 <= 0 ;

[_16] 0 <= 3600 ;

[_17] 0 >= 0 ;

[_18] 0 >= - 400 ;

END

Global optimal solution found.

Objective value: 15500.00 UPPER BOUND

Infeasibilities: 0.000000

Total solver iterations: 6

Variable Value Reduced Cost

Q 4.000000 0.000000

R 2.000000 0.000000

S 3.000000 0.000000

CAPACITY( 1) 200.0000 0.000000

CAPACITY( 2) 100.0000 0.000000

CAPACITY( 3) 50.00000 0.000000

CAPACITY( 4) 500.0000 0.000000

FIXEDCOST( 1) 2000.000 0.000000

FIXEDCOST( 2) 1500.000 0.000000

VARIABLECOST( 1) 10.00000 0.000000

VARIABLECOST( 2) 15.00000 0.000000

UPPERBOUND( 1) 3000.000 0.000000

UPPERBOUND( 2) 4000.000 0.000000

LOWERBOUND( 1) 0.000000 0.000000

LOWERBOUND( 2) 0.000000 0.000000

Z( 1) 0.000000 0.000000

Z( 2) 1.000000 0.000000

MODEL:

MAX = 200 * U_1 + 100 * U_2 + 50 * U_3 + 500 * U_4 + 100 * V_4

+ 200 * V_5 + 100 * V_6 + 3600 * T_2 - 400 * T_4;

[ X_1_1_1] U_1 + V_1 <= 25; [ X_1_1_2] U_1 + V_2 <= 28;

[ X_1_1_3] U_1 + V_3 <= 23; [ X_1_2_1] U_1 + V_4 <= 16;

[ X_1_2_2] U_1 + V_5 <= 19; [ X_1_2_3] U_1 + V_6 <= 20;

[ X_2_1_1] U_2 + V_1 <= 20; [ X_2_1_2] U_2 + V_2 <= 23;

[ X_2_1_3] U_2 + V_3 <= 18;

[ X_2_2_1] U_2 + V_4 <= 18;

[ X_2_2_2] U_2 + V_5 <= 21;

[ X_2_2_3] U_2 + V_6 <= 22;

[ X_3_1_1] U_3 + V_1 <= 13;

[ X_3_1_2] U_3 + V_2 <= 16;

[ X_3_1_3] U_3 + V_3 <= 11;

[ X_3_2_1] U_3 + V_4 <= 22;

[ X_3_2_2] U_3 + V_5 <= 25;

[ X_3_2_3] U_3 + V_6 <= 26;

[ X_4_1_1] U_4 + V_1 <= 15;

[ X_4_1_2] U_4 + V_2 <= 18;

[ X_4_1_3] U_4 + V_3 <= 13;

[ X_4_2_1] U_4 + V_4 <= 20;

[ X_4_2_2] U_4 + V_5 <= 23;

[ X_4_2_3] U_4 + V_6 <= 24;

@BND( -0.1E+31, U_1, 0); @BND( -0.1E+31, U_2, 0);

@BND( -0.1E+31, U_3, 0); @BND( -0.1E+31, U_4, 0); @FREE( W_1);

@FREE( W_2); @FREE( W_3); @BND( -0.1E+31, T_1, 0);

@BND( -0.1E+31, T_2, 0);

END

Global optimal solution found.

Objective value: 8000.000 + K=7500 =15,500 UPPER BOUND

Infeasibilities: 0.000000

Total solver iterations: 7

Variable Value Reduced Cost

U_1 -4.000000 0.000000

U_2 -2.000000 0.000000

U_3 0.000000 -50.00000

U_4 0.000000 -400.0000

V_4 20.00000 0.000000

V_5 23.00000 0.000000

V_6 24.00000 0.000000

T_2 0.000000 -3600.000

T_4 0.000000 400.0000

V_1 0.000000 0.000000

V_2 0.000000 0.000000

V_3 0.000000 0.000000

W_1 0.000000 0.000000

W_2 0.000000 0.000000

W_3 0.000000 0.000000

T_1 0.000000 0.000000

MODEL:

[_1] MIN= Z;

[_2] Z >= -1000 + 2000 * Y_2_1 + 4600 * Y_2_2 + 2400 * Y_2_3 + 2000 * Y_2_1 + 4600 * Y_2_2 + 2400 * Y_2_3 +

1000 * Y_1_1 + 2000 * Y_1_2 + 1000 * Y_1_3 + 1500 * Y_2_1 +

3000 * Y_2_2 + 1500 * Y_2_3 + 2000 * Z_1 + 1500 * Z_2 ;

[_4] - 100 * Y_1_1 + X_1_1_1 + X_2_1_1 + X_3_1_1 + X_4_1_1 >= 0 ;

[_5] - 200 * Y_1_2 + X_1_1_2 + X_2_1_2 + X_3_1_2 + X_4_1_2 >= 0 ;

[_6] - 100 * Y_1_3 + X_1_1_3 + X_2_1_3 + X_3_1_3 + X_4_1_3 >= 0 ;

[_7] - 100 * Y_2_1 + X_1_2_1 + X_2_2_1 + X_3_2_1 + X_4_2_1 >= 0 ;

[_8] - 200 * Y_2_2 + X_1_2_2 + X_2_2_2 + X_3_2_2 + X_4_2_2 >= 0 ;

[_9] - 100 * Y_2_3 + X_1_2_3 + X_2_2_3 + X_3_2_3 + X_4_2_3 >= 0 ;

[_10] Y_1_1 + Y_2_1 = 1 ;

[_11] Y_1_2 + Y_2_2 = 1 ;

[_12] Y_1_3 + Y_2_3 = 1 ;

[_13] 100 * Y_1_1 + 200 * Y_1_2 + 100 * Y_1_3 - 3000 * Z_1 <= 0 ;

[_14] 100 * Y_2_1 + 200 * Y_2_2 + 100 * Y_2_3 - 4000 * Z_2 <= 0 ;

[_15] 100 * Y_1_1 + 200 * Y_1_2 + 100 * Y_1_3 >= 0 ;

[_16] 100 * Y_2_1 + 200 * Y_2_2 + 100 * Y_2_3 >= 0 ;

@BIN( Y_1_1); @BIN( Y_1_2); @BIN( Y_1_3); @BIN( Y_2_1);

@BIN( Y_2_2); @BIN( Y_2_3); @BIN( Z_1); @BIN( Z_2);

END

Global optimal solution found.

Objective value: 5000.000 LOWER BOUND

Objective bound: 5000.000

Infeasibilities: 0.000000

Extended solver steps: 0

Total solver iterations: 5

Variable Value Reduced Cost

Z 5000.000 0.000000

Y_2_1 0.000000 5500.000

Y_2_2 0.000000 12200.00

Y_2_3 0.000000 6300.000

Y_1_1 1.000000 1000.000

Y_1_2 1.000000 2000.000

Y_1_3 1.000000 1000.000

Z_1 1.000000 2000.000

Z_2 0.000000 1500.000

MODEL:

[_1] MIN= 25 * X_1_1_1 + 28 * X_1_1_2 + 23 * X_1_1_3 + 16 * X_1_2_1 + 19

* X_1_2_2 + 20 * X_1_2_3 + 20 * X_2_1_1 + 23 * X_2_1_2 + 18 * X_2_1_3 +

18 * X_2_2_1 + 21 * X_2_2_2 + 22 * X_2_2_3 + 13 * X_3_1_1 + 16 * X_3_1_2

+ 11 * X_3_1_3 + 22 * X_3_2_1 + 25 * X_3_2_2 + 26 * X_3_2_3 + 15 *

X_4_1_1 + 18 * X_4_1_2 + 13 * X_4_1_3 + 20 * X_4_2_1 + 23 * X_4_2_2 + 24

* X_4_2_3 + 6000 ;

[_2] X_1_1_1 + X_1_1_2 + X_1_1_3 + X_1_2_1 + X_1_2_2 + X_1_2_3 <= 200 ;

[_3] X_2_1_1 + X_2_1_2 + X_2_1_3 + X_2_2_1 + X_2_2_2 + X_2_2_3 <= 100 ;

[_4] X_3_1_1 + X_3_1_2 + X_3_1_3 + X_3_2_1 + X_3_2_2 + X_3_2_3 <= 50 ;

[_5] X_4_1_1 + X_4_1_2 + X_4_1_3 + X_4_2_1 + X_4_2_2 + X_4_2_3 <= 500 ;

[_6] X_1_1_1 + X_2_1_1 + X_3_1_1 + X_4_1_1 >= 100 ;

[_7] X_1_1_2 + X_2_1_2 + X_3_1_2 + X_4_1_2 >= 200 ;

[_8] X_1_1_3 + X_2_1_3 + X_3_1_3 + X_4_1_3 >= 100 ;

[_9] X_1_2_1 + X_2_2_1 + X_3_2_1 + X_4_2_1 >= 0 ;

[_10] X_1_2_2 + X_2_2_2 + X_3_2_2 + X_4_2_2 >= 0 ;

[_11] X_1_2_3 + X_2_2_3 + X_3_2_3 + X_4_2_3 >= 0 ;

[_12] 0 = 0 ;

[_13] 0 = 0 ;

[_14] 0 = 0 ;

[_15] 0 <= 2600 ;

[_16] 0 <= 0 ;

[_17] 0 >= - 400 ;

[_18] 0 >= 0 ;

END

Global optimal solution found.

Objective value: 12300.00 UPPER BOUND

Infeasibilities: 0.000000

Total solver iterations: 6

Variable Value Reduced Cost

Q 4.000000 0.000000

R 2.000000 0.000000

S 3.000000 0.000000

CAPACITY( 1) 200.0000 0.000000

CAPACITY( 2) 100.0000 0.000000

CAPACITY( 3) 50.00000 0.000000

CAPACITY( 4) 500.0000 0.000000

FIXEDCOST( 1) 2000.000 0.000000

FIXEDCOST( 2) 1500.000 0.000000

VARIABLECOST( 1) 10.00000 0.000000

VARIABLECOST( 2) 15.00000 0.000000

UPPERBOUND( 1) 3000.000 0.000000

UPPERBOUND( 2) 4000.000 0.000000

LOWERBOUND( 1) 0.000000 0.000000

LOWERBOUND( 2) 0.000000 0.000000

Z( 1) 1.000000 0.000000

Z( 2) 0.000000 0.000000

MODEL:

MAX = 200 * U_1 + 100 * U_2 + 50 * U_3 + 500 * U_4 + 100 * V_1

+ 200 * V_2 + 100 * V_3 + 2600 * T_1 - 400 * T_3;

[ X_1_1_1] U_1 + V_1 <= 25; [ X_1_1_2] U_1 + V_2 <= 28;

[ X_1_1_3] U_1 + V_3 <= 23; [ X_1_2_1] U_1 + V_4 <= 16;

[ X_1_2_2] U_1 + V_5 <= 19; [ X_1_2_3] U_1 + V_6 <= 20;

[ X_2_1_1] U_2 + V_1 <= 20; [ X_2_1_2] U_2 + V_2 <= 23;

[ X_2_1_3] U_2 + V_3 <= 18;

[ X_2_2_1] U_2 + V_4 <= 18;

[ X_2_2_2] U_2 + V_5 <= 21;

[ X_2_2_3] U_2 + V_6 <= 22;

[ X_3_1_1] U_3 + V_1 <= 13;

[ X_3_1_2] U_3 + V_2 <= 16;

[ X_3_1_3] U_3 + V_3 <= 11;

[ X_3_2_1] U_3 + V_4 <= 22;

[ X_3_2_2] U_3 + V_5 <= 25;

[ X_3_2_3] U_3 + V_6 <= 26;

[ X_4_1_1] U_4 + V_1 <= 15;

[ X_4_1_2] U_4 + V_2 <= 18;

[ X_4_1_3] U_4 + V_3 <= 13;

[ X_4_2_1] U_4 + V_4 <= 20;

[ X_4_2_2] U_4 + V_5 <= 23;

[ X_4_2_3] U_4 + V_6 <= 24;

@BND( -0.1E+31,U_1, 0); @BND( -0.1E+31,U_2, 0);

@BND( -0.1E+31,U_3, 0); @BND( -0.1E+31,U_4, 0); @FREE( W_1);

@FREE( W_2); @FREE( W_3); @BND( -0.1E+31, T_1, 0);

@BND( -0.1E+31, T_2, 0);

END

Global optimal solution found.

Objective value: 6300.000 + K = 6000 = 12300 UPPPER BOUND

Infeasibilities: 0.000000

Total solver iterations: 10

Variable Value Reduced Cost

U_1 0.000000 -200.0000

U_2 0.000000 -100.0000

U_3 -2.000000 0.000000

U_4 0.000000 -150.0000

V_1 15.00000 0.000000

V_2 18.00000 0.000000

V_3 13.00000 0.000000

T_1 0.000000 -2600.000

T_3 0.000000 400.0000

V_4 0.000000 0.000000

V_5 0.000000 0.000000

V_6 0.000000 0.000000

W_1 0.000000 0.000000

W_2 0.000000 0.000000

W_3 0.000000 0.000000

T_2 0.000000 0.000000

MODEL:

[_1] MIN= Z;

[_2] Z >= -1000 + 2000 * Y_2_1 + 4600 * Y_2_2 + 2400 * Y_2_3 +

1000 * Y_1_1 + 2000 * Y_1_2 + 1000 * Y_1_3 + 1500 * Y_2_1 +

3000 * Y_2_2 + 1500 * Y_2_3 + 2000 * Z_1 + 1500 * Z_2 ;

[_3] Z >= -100 + 1500 * Y_1_1 + 3600 * Y_1_2 + 1300 * Y_1_3 +

1000 * Y_1_1 + 2000 * Y_1_2 + 1000 * Y_1_3 + 1500 * Y_2_1 +

3000 * Y_2_2 + 1500 * Y_2_3 + 2000 * Z_1 + 1500 * Z_2 ;

[_4] - 100 * Y_1_1 + X_1_1_1 + X_2_1_1 + X_3_1_1 + X_4_1_1 >= 0 ;

[_5] - 200 * Y_1_2 + X_1_1_2 + X_2_1_2 + X_3_1_2 + X_4_1_2 >= 0 ;

[_6] - 100 * Y_1_3 + X_1_1_3 + X_2_1_3 + X_3_1_3 + X_4_1_3 >= 0 ;

[_7] - 100 * Y_2_1 + X_1_2_1 + X_2_2_1 + X_3_2_1 + X_4_2_1 >= 0 ;

[_8] - 200 * Y_2_2 + X_1_2_2 + X_2_2_2 + X_3_2_2 + X_4_2_2 >= 0 ;

[_9] - 100 * Y_2_3 + X_1_2_3 + X_2_2_3 + X_3_2_3 + X_4_2_3 >= 0 ;

[_10] Y_1_1 + Y_2_1 = 1 ;

[_11] Y_1_2 + Y_2_2 = 1 ;

[_12] Y_1_3 + Y_2_3 = 1 ;

[_13] 100 * Y_1_1 + 200 * Y_1_2 + 100 * Y_1_3 - 3000 * Z_1 <= 0 ;

[_14] 100 * Y_2_1 + 200 * Y_2_2 + 100 * Y_2_3 - 4000 * Z_2 <= 0 ;

[_15] 100 * Y_1_1 + 200 * Y_1_2 + 100 * Y_1_3 >= 0 ;

[_16] 100 * Y_2_1 + 200 * Y_2_2 + 100 * Y_2_3 >= 0 ;

@BIN( Y_1_1); @BIN( Y_1_2); @BIN( Y_1_3); @BIN( Y_2_1);

@BIN( Y_2_2); @BIN( Y_2_3); @BIN( Z_1); @BIN( Z_2);

END

Global optimal solution found.

Objective value: 12000.00 LOWER BOUND

Objective bound: 12000.00

Infeasibilities: 0.000000

Extended solver steps: 0

Total solver iterations: 43

Variable Value Reduced Cost

Z 12000.00 0.000000

Y_2_1 1.000000 1500.000

Y_2_2 0.000000 3000.000

Y_2_3 1.000000 1500.000

Y_1_1 0.000000 2500.000

Y_1_2 1.000000 5600.000

Y_1_3 0.000000 2300.000

Z_1 1.000000 2000.000

Z_2 1.000000 1500.000

Lower Bound of 12,000 is close to Upper Bound. So, optimal solution must be between the two. The student is encouraged to carry Benders’ decomposition algorithm one more time to ensure LB=UB in the third iteration.