+ All Categories
Home > Documents > Operations Research 7

Operations Research 7

Date post: 02-Apr-2018
Category:
Upload: bevinj
View: 214 times
Download: 0 times
Share this document with a friend

of 15

Transcript
  • 7/27/2019 Operations Research 7

    1/15

    Operations Research Unit 7

    Sikkim Manipal University 112

    Unit 7 Integer Programming Problem

    Structure

    7.1. Introduction

    7.2. All and mixed I.P.P

    7.3 Gomorys all I.P.P method

    7.3.1 Construction of Gomorys Constraints

    7.4. All I.P.P algorithm

    7.5. Branch and Bound technique

    7.5.1 Branch and bound algorithm

    7.6. Summary

    Terminal Questions

    . Answers to SAQs and TQs

    7.1 Introduction

    The Integer Programming Problem I P P is a special case of L P P where all or some variables

    are constrained to assume non-negative integer values. This type of problem has lot of

    applications in business and industry where quite often discrete nature of the variables is involved

    in many decision making situations.

    Eg. In manufacturing the production is frequently scheduled in terms of batches, lots or runs In

    distribution, a shipment must involve a discrete number of trucks or aircrafts or freight cars

    Learning Objectives

    After studying this unit, you should be able to understand the following

    1. At the end of this unit a student:

    2. Frames a I.P.P.

    3. Solves a I.P.P. during Gomorys method.

    4. Applies the branch and land technique.

  • 7/27/2019 Operations Research 7

    2/15

    Operations Research Unit 7

    Sikkim Manipal University 113

    7.2 All And Mixed I P P

    An integer programming problem can be described as follows:

    Determine the value of unknowns x1, x2, , xn

    so as to optimize z = c1x1 +c2x2 + . . .+ cnxn

    subject to the constraints

    ai1x1 + ai2x2 + . . . + ainxn =bi , i = 1,2,,m

    and xj 0 j = 1, 2, ,n

    where xjbeing an integral value forj = 1, 2, , k n.

    If all the variables are constrained to take only integral value i.e. k = n, it is called an all(or pure)

    integer programming problem. In case only some of the variables are restricted to take integral

    value and rest (n k) variables are free to take any non negative values, then the problem is

    known as mixed integer programming problem.

    Self Assessment Questions 1

    State True / False

    1. Integer programming is applied to problems that involve discrete variables.

    2. If some variables can take non negative values then it is known as pure I.P.P

    7.3 Gomorys All IPP Method

    An optimum solution to an I. P. P. is first obtained by using simplex method ignoring the restriction

    of integral values. In the optimum solution if all the variables have integer values, the currentsolution will be the desired optimum integer solution. Otherwise the given IPP is modified by

    inserting a new constraint called Gomorys or secondary constraint which represents necessary

    condition for integrability and eliminates some non integer solution without losing any integral

    solution. After adding the secondary constraint, the problem is then solved by dual simplex

    method to get an optimum integral solution. If all the values of the variables in this solution are

    integers, an optimum inter-solution is obtained, otherwise another new constrained is added to

    the modified L P P and the procedure is repeated. An optimum integer solution will be reached

    eventually after introducing enough new constraints to eliminate all the superior non integer

    solutions. The construction of additional constraints, called secondary or Gomorys constraints,is so very important that it needs special attention.

    7.3.1. Construction Of Gomorys Constraints

    Consider a L P P for which an optimum non integer basic feasible solution has been attained .

  • 7/27/2019 Operations Research 7

    3/15

    Operations Research Unit 7

    Sikkim Manipal University 114

    With usual notations, let this solution be displayed in the following simplex table.

    Clearly the optimum basic feasible solution is

    given by xB = [ ]32 ,xx = ],[ 2010 yy max z = y00Since xB is a non- integer solution. We

    assume that y10 is fractional.

    The constraint equation is

    y10= y11x1 + y12x2 + y13x3+ y14x4 ( )041 == xxreduces to

    y10= y11x1 + x2+ y14x4 ( )041

    == xx -------- (1)

    because x2and x3 are basic variables ( which implies that y12= 1 and y13 = 0 )

    The above equation can be rewritten as

    x2= y10- y11 x1 - y14x4

    Which is a linear combination of non-basic variables.

    Now, since y10 0 the fractional part ofy10must also be non negative. We split over each of yij in

    (1) into an integral part Iij , and a non negative fractional part, f1jfor j = 0,1,2,3,4. After this break

    up (1) may be written as

    I10 + f10= (I11+ f11) x2 + (I14+ f14) x4

    Or

    f10 - f11x2 - f14x4 = x2 + I11x1 + I14x4 - I10 ------- (2)

    Comparing (1) and (2) we come to know that if we add an additional constraint in such a way that

    the L.H.S. of (2) is an integer, then we shall be forcing the non-integer y10 towards an integer.

    This is what is needed.

    The desired Gomorys constraint is f10 f11x1 f11x4 0.

    Let it be possible to have f10 f11x1 f11x4 = h where h > 0 is an integer. Then f10 = h + f11x1 +f14x4 is greater than one. This contradicts that 0 < fij < 1 for j = 0, 1, 2, 3, 4.

    Thus Gomorys constraint is

    yB xB y1 y2 y3 y4

    y2 y10 y11 y12 y13 y14

    y3 y20 y21 y22 y23 y24

    y00 y01 y02 y03 y04

  • 7/27/2019 Operations Research 7

    4/15

    Operations Research Unit 7

    Sikkim Manipal University 115

    10sla4,1j

    jij

    4,1j10jij

    4,1j10jig

    f)1(Gxfor

    fx.forfxf

    -=+-

    --

    =

    ==

    When Gsla (1) is slack variable in the above first Gomory constraint.

    This additional constraint is to be included in the given L.P.P. in order to move further towards

    obtaining an optimum all integer solution. After the addition of this constraint, the optimum

    simplex table looks like as given below

    yB xB y1 y2 y3 y4 Gsla(1)

    y1 y10 y11 y12 y13 y14 0

    y2 y20 y21 y22 y23 y24 0

    Gsla(1) f10 f11 0 0 f14 1

    y00 y01 y02 y03 y04 y05

    Since f10 is negative. The optimal solution is infeasible and thus the dual simplex method is to

    be applied for obtaining an optimum feasible solution. After obtaining this solution, the above

    referred procedure is applied for constructing second Gomorys constraint. The process is to be

    continued so long as an all integer solution has not been obtained.

    Self Assessment Questions 2

    Fill in the blanks

    1. An o ptimum solution to I.P.P is first obtained by using ________ _________.

    2. With the addition of Gomorys constraint the problem is solved by _______ _________

    _________.

    7.4 All I. P. P. Algorithm

    The iterative procedure for the solution of an all integer programming problem is as follows:

    Step 1: Convert the minimization I.P.P. into that of maximization, if it is in the minimization form.The integrality condition should be ignored.

    Step 2: Introduce the slack or surplus variables, wherever necessary to convert the inequations

    into equations and obtain the optimum solution of the given L.P.P. by using simplex algorithm.

    Step 3: Test the integrality of the optimum solution

  • 7/27/2019 Operations Research 7

    5/15

    Operations Research Unit 7

    Sikkim Manipal University 116

    a) If the optimum solution contains all integer values, an optimum basic feasible integer solution

    has been obtained.

    b) If the optimum solution does not include all integer values then proceed onto next step.

    Step 4: Examine the constraint equations corresponding to the current optimum solution. Let

    these equations be represented by

    )m........,,2,1,0i(,bx,y1

    ij

    1n

    0jij

    ===

    Where n denotes the number of variables andm the number of equations.

    Choose the largest fraction of sbi ie to find { }iibimax

    Let it bei

    1kb

    or write is as okf

    Step 5: Express each of the negative fractions if any, in the kth row of the optimum simplex table

    as the sum of a negative integer and a non-negative fraction.

    Step 6: Find the Gomorian constraint

    =

    1n

    0jkojkj

    fx,f

    and add the equation

    =

    +-=

    1n

    0jjkjkosla

    x.ff)1(G

    to the current set of equation constraints.

    Step 7: Starting with this new set of equation constraints, find the new optimum solution by dual

    simplex algorithm.

    (So that Gsla (1) is the initial leaving basic variable).

    Step 8: If this new optimum solution for the modified L.P.P. is an integer solution. It is also

    feasible and optimum for the given I.P.P. otherwise return to step 4 and repeat the process until

    an optimum feasible integer solution is obtained.

  • 7/27/2019 Operations Research 7

    6/15

    Operations Research Unit 7

    Sikkim Manipal University 117

    Example:

    Find the optimum integer solution to the following all I.P.P.

    Maximize z = x1 + 2x2

    Subject to the constraintsx1 + x2 7

    2x1 11

    2x2 7

    x1, x2 > 0 and are integers

    Solution:

    Step 1: Introducing the slack variables, we get

    2x2 + x3 = 7

    x1 + x2 + x4 = 7

    2x1 + x5= 11

    x1, x2, x3, x4, x5> 0.

    Step 2: Ignoring the integer condition, we get the initial simplex table as follows:

    Cj

    1 2 0 0 0

    Basicvariabl

    eCB XB X1 X2 X3 X4 X5

    Mini ratio

    2Bx

    x

    x3 0 7 0 1 0 0 2

    7

    x4 0 7 1 1 0 1 01

    7

    x5 0 11 2 0 0 0 1

    Z = 0 1 2

    0

    0 0 jD

    2

  • 7/27/2019 Operations Research 7

    7/15

    Operations Research Unit 7

    Sikkim Manipal University 118

    Introducing x2 and leaving x3 from the basis, we get

    Cj 1 2 0 0 0

    Basic

    variable

    CB XB X1 X2 X3 X4 X5

    Mini ratio

    1

    B

    xx

    x2 22

    13 0 1

    2

    10 0

    x4 02

    13 0

    2

    1- 1 0

    1

    2

    13

    x5 0 11 2 0 0 0 12

    11

    Z= CBXB = 7-1

    0 10

    0 jD

    ( )( ) 112,1,00,0,2111 -=-=-=D CXCB( ) 100,

    2

    1,

    2

    10,0,2333 =-

    -=-=D CXCB

    Introducing X1 and leaving X4 we get the following optimum table.

    Optimum table

    Cj 1 2 0 0 0

    Basicvariabl

    eCB XB X1 X2 X3 X4 X5

    x2 22

    13 0 1

    2

    10 0

    x1 12

    13 1 0

    2

    1- 1 0

    x5 0 4 0 0 1 -2 1

    Z =2

    110 0 0

    2

    11 0

    jD

    ( ) 01,2

    1,

    2

    10,1,2CXC 33B3 -

    -=-=D

    1

  • 7/27/2019 Operations Research 7

    8/15

    Operations Research Unit 7

    Sikkim Manipal University 119

    2

    10

    2

    11 =

    +-=

    102,1,00,1,2CXC 44B4 =--=-=D

    The optimum solution these got is:2

    110,

    2

    13,

    2

    13 21 === zxx .

    Step 3: Since the optimum solution obtained above is not an integer solution, we must go to next

    step.

    Step 4: Now we select the constraint corresponding to the criterion

    maxi (fBi) = max (fB1, fB2, fB3)

    = max

    2

    10,

    2

    1,

    2

    1=

    Since in this problem, the x2 equation and x1-equation both have the same value of fBi ie2

    1,

    either one of the two equations can be used.

    Now consider the first row of the optimum table . The Gomorys constraint to be added is

    =

    -=+---=+-4,3

    1414313111 1j

    BBjjfgxfxforfgxf

    ( )02

    1

    2

    1

    2

    10

    2

    14313143 ==-=+--=+-- xxgxorgxx

    Adding this new constraint to the optimum table we get

    Cj 1 2 0 0 0 0

    Basicvariable

    CB XBX

    1

    X

    2X3 X4 X5 G1

    X2 22

    13 0 1

    2

    10 0 0

    X1 12

    13 1 0

    2

    1- 1 0 0

    X5 0 4 0 0 1 -2 1 0

    G1 0 2

    1- 0 0

    2

    1- 0 0 1

    Z= CBXB = 0 02

    1 1 0

    0

    jD

  • 7/27/2019 Operations Research 7

    9/15

    Operations Research Unit 7

    Sikkim Manipal University 120

    2

    110

    Step 5: To apply dual simplex method. Now, in order to remove the infeasibility of the optimum

    solution:

    2

    1,4,

    2

    13,

    2

    13 1521 -==== gxxx , we use the dual simplex method.

    i) leaving vector is G1 (i.e. 4b )

    4=\r

    ii) Entering vector is given by

    =

  • 7/27/2019 Operations Research 7

    10/15

    Operations Research Unit 7

    Sikkim Manipal University 121

    Finally we get the integer optimum solution to the given IPP as x1 = 4, x2 = 3 and max z = 10.

    Self Assessment Questions 3

    Identify whether the following statements are True or False

    1. We select that variable for Gomorys constraint whose fractional value is more.

    2. Optimum values in an pure I.P.P can be x = 2 and y = 3.5.

    7.5 The Branch And Bound Technique

    Sometimes a few or all the variables of an IPP are constrained by their upper or lower bounds or

    by both. The most general technique for the solution of such constrained optimization problems is

    the branch and bound technique. The technique is applicable to both all IPP as well as mixed

    I.P.P. the technique for a maximization problem is discussed below:

    Let the I.P.P. be

    Maximize =

    =

    n

    1jjj xcz (1)

    Subject to the constraints

    m....,,2,1ibxa

    n

    1jijij =

    =

    (2)

    xj is integer valued , j = 1, 2, .., r (< n) ----------------------------- (3)

    xj > 0 . j = r + 1, .., n ----------------------- (4)

    Further let us suppose that for each integer valued xj, we can assign lower and upper bounds for

    the optimum values of the variable by

    Lj xj Uj j = 1, 2, . r ---------------------- (5)

    The following idea is behind the branch and bound technique

    Consider any variable xj, and let Ibe some integer value satisfying LjIUj 1. Then clearly an

    optimum solution to (1) through (5) shall also satisfy either the linear constraint.

    xjI + 1 ---------------------------- (6)

    Or the linear constraint xj I ...(7)

    To explain how this partitioning helps, let us assume that there were no integer restrictions (3),

    and suppose that this then yields an optimal solution to L.P.P. (1), (2), (4) and (5). Indicating x1

    = 1.66 (for example). Then we formulate and solve two L.P.Ps each containing (1), (2) and (4).

  • 7/27/2019 Operations Research 7

    11/15

    Operations Research Unit 7

    Sikkim Manipal University 122

    But (5) for j = 1 is modified to be 2 x1 U1 in one problem and L1 x1 1 in the other. Further

    each of these problems process an optimal solution satisfying integer constraints (3)

    Then the solution having the larger value for z is clearly optimum for the given I.P.P. However, it

    usually happens that one (or both) of these problems has no optimal solution satisfying (3), and

    thus some more computations are necessary. We now discuss step wise the algorithm that

    specifies how to apply the partitioning (6) and (7) in a systematic manner to finally arrive at an

    optimum solution.

    We start with an initial lower bound forz, say z(0) at the first iteration which is less than or equal to

    the optimal value z*, this lower bound may be taken as the starting Ljfor some xj.

    In addition to the lower bound z(0), we also have a list of L.P.Ps (to be called master list) differing

    only in the bounds (5). To start with (the 0th iteration) the master list contains a single L.P.P.

    consisting of (1), (2), (4) and (5). We now discuss below, the step by step procedure that specifies

    how the partitioning (6) and (7) can be applied systematically to eventually get an optimum

    integer - valued solution.

    7.5.1 Branch And Bound Algorithm

    At the tth

    iteration (t = 0, 1, 2,)

    Step 0: If the master list is not empty, choose an L.P.P. out of it. Otherwise stop the process, Go

    to step 1.

    Step 1: Obtain the optimum solution to the chosen problem. If either

    i) It has no feasible solution or

    ii) The resulting optimum value of the objective function z is less than or equal to z(t), then let z(t+1) =

    z(t) and return to step 0 otherwise go to step 2.

    Step 2: If the so obtained optimum solution satisfies the integer constraints (3) then record it. Let

    z(t+1)

    be associated optimum value ofz return to step 0. Otherwise move to step 3.

    Step 3: Select any variable xj, j = 1, 2, ., p. that does not have an integer value in the obtained

    optimum solution to the L.P.P. chosen in step 0. Let*

    jx denote this optimal value of xj. Add two

    L.P.Ps to the master list: these L.P.Ps are identical with the L.P.P. chosen in step 0, except that

    in one, the lower bound on xj is replaced by*

    jx + 1. Let z(t+1) = z(t) return to step 0.

  • 7/27/2019 Operations Research 7

    12/15

    Operations Research Unit 7

    Sikkim Manipal University 123

    Note: At the termination of the algorithm, if a feasible integer valued solution yielding z(t) has been

    recorded it is optimum, otherwise no integer valued feasible solution exists.

    Example:

    Use branch and bound technique to solve the following I.P.P.

    Maximize z = 7x1 + 9x2 -------------------- (1)

    Subject to the constraints

    x1 + 3x2 < 6 ----------------- (2)

    7x1 + x2 < 35

    0 < x1, x2 < 7 ------------------- (3)

    x1, x2 are integers ---------------- (4).

    Solution:

    At the starting iteration we can consider z(0)

    = 0 to be the lower bound, forx, since all xj = 0 is

    feasible. The master list contains only the L.P.P. (1) (2) and (3). which is designated as problem

    1. Choose it in step 0, and in step 1 determine the optimum solution.

    z0 = 632

    7x,

    2

    9x 21 == (Solution to problem 1)

    Since the solution is not integer valued, proceed from step 2 to step 3, and select x1. Then since

    42

    9x

    *1 =

    =

    , place on the master list the following two additional problems.

    Problem 2: (1) (2) and 5 x1 7 0 x2 7

    Problem 3: (1) (2) and 0 x1 4 0 x2 7

    Returning to step 0: with z(1) = z(0) = 0,

    We choose problem 2 , Step 1 establishes that problem 2 has the feasible solution

    z0 = 35, x1 = 5 x2 = 0 [solution to problem (2)] (5)

    Since this satisfies the integer constraints, therefore at step 2 we record it by enclosing in a

    rectangle and let z(2)

    = 35.

    Returning to step 0 with z(2)

    = 35, we find that problem 3 is available. Step 1 determines the

    following optimum feasible solution to it

    Z0 = 58, x1 = 4,3

    10x2 = (Problem 3)

    Since the solution is not integer valued, proceed from step 2 to step 3 and select x 2. Then

  • 7/27/2019 Operations Research 7

    13/15

    Operations Research Unit 7

    Sikkim Manipal University 124

    [ ]

    =

    3

    10*2

    x = 3. We add the following additional problems on the master list:

    Problem 4: (1) (2) and 7440 21 xx

    Problem 5: (1) (2) and 0 x1 4 0 x2 3

    Returning to step 0 with z(3) = z(2) = 35, choose problem 4 from step 1 we know that problem 4 has

    no feasible solution and so we again return to step 0 with z(4)

    = z(3)

    = 35. Only problem 5 is

    available in the master list. In step 1 we determine the following optimum solution to this problem.

    z0 = 55 x1 = 4 x2= 3 (solution to problems) ---------- (6)

    Since this satisfies the integer constraints, therefore at step 2. We record it by enclosing inside a

    rectangle and let z(5) = 55.

    Returning to step 0, we find that the master list is empty and thus the algorithm terminates.

    Now, on terminating we find that only two feasible integer solution namely (5) and (6) have been

    recorded. The best of these gives the optimum solution to the given I.P.P. Hence the optimum

    integer solution to the given I.P.P. is

    Z0 = 55, x1 = 4, x2 = 3.

    Tree diagram of above example

    Z*=63

    ==

    2

    13x,

    2

    14x 21

    Z*=58

    ==

    3

    13x,4x 21

    Z*=35

    (x1 = 5, x2 = 0)

    Z* = 55

    (x1 = 4, x2 = 3)

    Optimal solution

    No solution

    x1 < 4 x1 > 5

    Node (3) Node (2)

    x2 < 3 x2 > 4

    Node (5) Node (4)

    Node (1)

  • 7/27/2019 Operations Research 7

    14/15

    Operations Research Unit 7

    Sikkim Manipal University 125

    NodeSolution Additional

    ConstraintsType of solution

    x1 x2 z*

    (1)

    2

    9

    2

    763 __

    Non-integer (Original

    problem)

    (2) 5 0 35 51x Integer z*(1)

    (3) 43

    1058 41x Non-integer

    (4) .. .. 4,4 21 xx No solution

    (5) 4 3 55 3,4 21 xx Integer z*(2)

    (Optimal)

    Self Assessment Questions 4

    State True or False

    1. Branch and Bound Technique is applied when some variables have upper or lower

    bounds.

    2. We start the technique with lower bound.

    7.7 Summary

    This chapter investigated the programming model in which the assumption of divisibility was

    weakened. You learned two algorithms to determine the optimal solution for an integer

    programming problem. One of these was the cutting plane algorithm devised by Gomory and the

    other was the branch and bound algorithm developed by land and Doig.

    Terminal Questions

    1. Use Branch and Bound technique to solve the following problem

    Max z = 3x1 + 3x2 + 13 x3

    subject to

    3x1 + 6x2 + 7x3 86x1 3x2 + 7x3 8

    0 xj 5

    and xj are integer j = 1, 2, 3

    2. What is integer programming?

  • 7/27/2019 Operations Research 7

    15/15

    Operations Research Unit 7

    Sikkim Manipal University 126

    3. Explain the Gomorys cutting plane all integer algorithm of an I.P.P.?

    Answers To Self Assessment Questions

    Self Assessment Questions 11. True 2. False

    Self Assessment Questions 21. Simplex method

    2. Dual simplex method

    Self Assessment Questions 31. Correct 2. Wrong

    Self Assessment Questions 41. True 2. False

    Answer To Terminal Questions

    1. At the end of the 8th iteration we get the optional solution to the I.P.P. is x1 = x2 = 0, x3 = 1, z*

    = 13.

    2. Refer to Section 7.2

    3. Refer to Section 7.3


Recommended