23

Click here to load reader

Relaxation techniques applied to some loading problems

  • Upload
    p

  • View
    215

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Relaxation techniques applied to some loading problems

This article was downloaded by: [UQ Library]On: 22 November 2014, At: 18:13Publisher: Taylor & FrancisInforma Ltd Registered in England and Wales Registered Number: 1072954Registered office: Mortimer House, 37-41 Mortimer Street, London W1T 3JH, UK

Optimization: A Journal ofMathematical Programming andOperations ResearchPublication details, including instructions for authors andsubscription information:http://www.tandfonline.com/loi/gopt20

Relaxation techniques applied tosome loading problemsK. O. Jörnsten a & P. Värbrands ba Department for Finance and Management Science ,The Norweigian School of Economics and BusinessAdminitsration , Helleveien 30, Bergen-Sandviken, N-5035,Norwayb Department of Mathematics , Linköping Institute ofTechnology , Linköping, S-58183, SwedenPublished online: 20 Mar 2007.

To cite this article: K. O. Jörnsten & P. Värbrands (1992) Relaxation techniques appliedto some loading problems, Optimization: A Journal of Mathematical Programming andOperations Research, 24:3-4, 351-371, DOI: 10.1080/02331939208843800

To link to this article: http://dx.doi.org/10.1080/02331939208843800

PLEASE SCROLL DOWN FOR ARTICLE

Taylor & Francis makes every effort to ensure the accuracy of all the information(the “Content”) contained in the publications on our platform. However, Taylor& Francis, our agents, and our licensors make no representations or warrantieswhatsoever as to the accuracy, completeness, or suitability for any purpose of theContent. Any opinions and views expressed in this publication are the opinions andviews of the authors, and are not the views of or endorsed by Taylor & Francis. Theaccuracy of the Content should not be relied upon and should be independentlyverified with primary sources of information. Taylor and Francis shall not be liablefor any losses, actions, claims, proceedings, demands, costs, expenses, damages,

Page 2: Relaxation techniques applied to some loading problems

and other liabilities whatsoever or howsoever caused arising directly or indirectly inconnection with, in relation to or arising out of the use of the Content.

This article may be used for research, teaching, and private study purposes.Any substantial or systematic reproduction, redistribution, reselling, loan, sub-licensing, systematic supply, or distribution in any form to anyone is expresslyforbidden. Terms & Conditions of access and use can be found at http://www.tandfonline.com/page/terms-and-conditions

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 3: Relaxation techniques applied to some loading problems

Optimization, 1992, Vol. 24, pp. 351-371 1992 Gordon and Breach Science Publishers S.A. Reprints available directly from the publisher Printed in the United Kingdom Photocopying permitted by license only

RELAXATION TECHNIQUES APPLIED TO SOME LOADING PROBLEMS

K. 0 . JORNSTEN~ and P. VARBRANDS

f Department for Finance and Management Science, The Norweigian School of Economics and Business Administration, Helleveien 30, N-5035 Bergen-

Sandviken, NORWAY #Department of Mathematics, Linkoping Institute of Technology, S-581 83

Linkoping, SWEDEN

(Received 11 February 1991; in final form 30 April 1991)

In this paper a two-stage loading problem, dealing with allocation of jobs to machines, is studied. The outer problem is to choose a subset among a number of available machines such that a feasible assignment exists and the total cost price is minimized. The inner problem, is then to find the optimal allocation, given the subset of machines and some assignment criterion at this lower level. It is shown that the choice of problem formulation can be crucial for the strength of the continuous relaxation. Computational results are also presented.

KEY WORDS Integer programming, Lagrangean relaxation, loading problems, generalized bin- packing, generalized assignment.

Mathematics Subject Classification 1991: Primary: 90C10, Secondary: 90C27

1. INTRODUCTION

Many applications where one part of the corresponding problem structure consists of the knapsack polytope, coupled with some kind of allocation decision, can be found, for example, in packing-, loading-, depletion- and cutting situations. The difference between standard formulations taken from these classes of application is sometimes very small. It is more a question of application possession than the kind of standard problem or standard formulation. The first problem to be mentioned is the loading problem (a number of objects is to be loaded into a set of boxes in such a way that the number of boxes is minimized), studied by Brown (1971), Eilon and Christofides (1971, 1972), Hung and Brown (1975) among others.

Another classical problem is the bin-packing problem (given numbers between 0 and 1, pack them into "bins" with length not longer than 1 in such a way that the number of "bins" is minimized), for which much work, mainly different kinds of heuristics for obtaining good approximate solutions, has been developed; Johnson (1973, 1974), Hung and Brown (1978), Yao (1980) among others. Generalized versions of this problem have also been studied, for instance the generalized bin packing problem of Lewis and Parker (1982), the capacitated concentrator location problem of Pirkul (1987). Both these generalizations are close to the outer formulation in Section 2.

35 1

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 4: Relaxation techniques applied to some loading problems

Another class of applications deals with cutting problems. The simplest cutting problem is the one dimensional trim problem, see e.g. Eiseman (1957), Haessler (1975). It deals with the problem of fitting the list of orders to the available rolls and machines. There are two conflicting objectives. The trim loss and pattern changes are to be minimized.

The cutting problem can be extended to the two dimensional cutting stock problem (or to higher dimensions). It deals with the problem of producing small rectangles by cutting up large ones, Gilmore and Gomory (1961, 1963, 1965), Hahn (1968), Steudel (1979), Wang (1983), Beasley (1985ab) among others.

In this paper, a two-stage loading-type optimization problem is presented. The application concerns the allocation of jobs to machines, when time consumption and machine capacities are given. The outer problem is to choose a subset among a number of available machines which minimizes the total cost price. The inner problem is to find the best allocation, given the subset of machines and some other criterion at the lower level.

10 test problems have been solved in order to illustrate the methods developed, using mainly different kinds of Lagrangean relaxation strategies. It is also shown that the choice of problem formulation can be crucial for the objective function value to the continuous relaxation.

In Section 2 the outer formulation of the loading-type problem is presented and in Section 3 three different kinds of objectives for the inner formulation are given. In these two sections computational results are also presented. Finally, in Section 4 a summary and some concluding remarks are given.

2. A TWO-STAGE LOADING PROBLEM: THE OUTER FORMULATION

Consider the following situation:

A set of n jobs has to be processed on a subset of m available machines. Each machine i has a capacity b, and costs 6 to purchase or use. Job j takes a,, time units if processed on machine i and the problem is to determine which machines to purchase in order to minimize the total cost price.

This is the problem at this first stage, which means that the allocation obtained will be of little interest. We will call this the outer formulation. Later, in Section 3, we will start from the subset of machines obtained when this outer problem is solved and discuss a number of objectives to measure the quality of a certain allocation.

Example 5 jobs have to be processed by one or more machines. 4 different machines with the following data are available.

Machine b, 6

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 5: Relaxation techniques applied to some loading problems

LOADING PROBLEMS 353

The optimal solution is to buy machines 1 and 2, which gives a toal cost price of 5. Note that machine 4 is sufficient for all the jobs. However, that gives a larger objective function value. We can also see that 2 different allocations are possible

Machine 1: ( 2 , 5 ) Machine 1: (2,3) and

Machine 2: (1,3,4) Machine 2: (1,4,5)

Neither of these is better than the other in this outer problem. An interesting and important question arises when the outer problem has

alternative solutions. In order to determine which one of the solutions one should choose, the inner problem should be taken into account. Otherwise, it is possible to obtain a solution which is not Pareto optimal. This means that all alternative solutions to the outer problem have to be generated and investigated from the point of view of the inner problem. Then, it is possible to purchase the "optimal" set of machines.

Assume, in the example above, that the cost price for machine 4 is changed to 5 i.e. f, = 5. Then we have two candidates for the optimal solution. On the one hand, the solution obtained above (solution I) , and on the other hand to purchase only machine 4 (solution 2). It is easy to see that solution 1 is better than solution 2, since the latter solution will make use of all the capacity of machine 4 and hence, independent of the objective to the inner problem, no slack-allocation will be possible. Another possibility when an alternative solution exists, is to formulate an overall problem. This technique is further discussed in Section 3.

Mathematical Formulations

We will now state the problem mathematically, using three similar formulations but with considerably different properties with regard to their strength of continuous relaxation. The aim is to demonstrate the importance of choosing the most appropriate integer programming formulation when one of the objectives is to derive strong bounds. In the formulations, the following variables are needed.

1 if machine i is purchased 1 if job j is processed on machine i Y i = ( 0 otherwise 0 otherwise D

ownl

oade

d by

[U

Q L

ibra

ry]

at 1

8:13

22

Nov

embe

r 20

14

Page 6: Relaxation techniques applied to some loading problems

K. 0. JORNSTEN AND P. VARBRAND

(P2) min 2 f;y,

i = l , . . . , m

j = l , . . . , n

Vi, j

Vi, j

i = l , . . . , m

j = l , . . . , n

Vi, j

Vi, j

The difference between the three formulations lies in the way in which the logical relationship between the x-variables and the y-variables is introduced in the model. In problem (PI) the 011-variables yi are included in the knapsack constraints. These constraints guarantee first of all, that no machine capacities are violated and secondly that a machine cannot be used in the processing unless it has been purchased.

The latter relationship can also be taken into account if a new set of constraints xi, (y,, i = 1, . . . , m j = 1, . . . , n is introduced as has been done in problem (P2). In the last formulation, problem (P3), both these approaches are included in the same model. This means that constraint set (10) is redundant in the formulation. However, this is not the case when the strength of the continuous relaxation is considered. Finally, in all three formulations, the semi assignment constraints guarantee that each job is processed by one and only one machine. Moreover, all variables should be 011 integer variables.

10 test problems (Al , . . . , AlO) have been randomly generated and used for different kinds of computational experiments. The size is 8 machines and 25 jobs which gives a pure 011 integer problem with 208 variables. The test problems differ, among other things, in the size of the machine capacities. Al,A2: maxi bi = 100 A3,A4: maxi bi = 200 A5,A6: maxi b, = 300 A7,A8: maxi bi = 400 A9,AlO: maxi b, = 500.

Solving the continuous relaxation of the three different formulations above, gives the following results (CV(P) denotes the continuous objective function

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 7: Relaxation techniques applied to some loading problems

LOADING PROBLEMS

value of problem (P)).

Test CV(P1) problem

CV(P3) O P T

The results are both very interesting, and somewhat unexpected even if it has indeed been observed in other applications. The difference between problem P1 and P2 is noticeable.

Lagrangean Relaxations and Computational Results

According to the results obtained above, Lagrangean relaxation should probably be applied to problem (P3). This formulation corresponds to the largest (best) continuous objective function value and it is a well known fact that Lagrangean relaxation gives at least as good a bound as the one obtained from the continuous relaxation. This of course, assures optimal Lagrangean multipliers. Using the idea above relaxing the knapsack constraints, leads to the following Lagrangean dual (approach 1).

m m

(P4) max L4(u) = min z f;yi + 2 u i ( i ai,xi, - biyi u 20 i = l ;=I ,=I

m

s.t. z xi, = 1 j = 1 , . . . , n i=l

x . . < y. I ] - I Vi, j

xi,, Yi E (0, 1) Vi, 1

For a fixed Lagrangean multiplier vector u, this subproblem is known as the uncapacitated facility location problem. This problem can be solved by using, for instance, the dual ascent procedure developed by Erlenkotter (1978). The solution procedure can be summarized in the following scheme.

step 0 Initialize the multiplier vector u 2 0. step 1 Solve the uncapacitated facility location problem. If possible update lower- and upper bound. If termination criteria satisfied, STOP. step 2 Update the multiplier vector using a standard subgradient procedure (Held, Wolfe and Crowder 1974). Goto step 1.

If we consider the constraint structure of problem (P4) it gives the impression that the integrality property, Geoffrion (1974), is "almost" satisfied. Therefore, one

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 8: Relaxation techniques applied to some loading problems

might fear that the bound obtained from this formulation would not differ to much from the corresponding continuous relaxation.

Another Lagrangean relaxation strategy (approach 2) which has a possibility of generating better bounds than the former one, is to relax the semi assignment constraints (2) in problem (PI). In this case, more difficult subproblems will be solved, which usually leads to better bounds.

The Lagrangean dual problem obtained is m 171

0'5) max L5(v) = min C f;yi + v j ( z x, - 1) i=l j - 1 i=l

This relaxation above is, in fact, equivalent to the relaxation of problem (P3), if both the semi assignment constraints (9) and the logical constraints (10) are relaxed. Any solution which satisfies the knapsack constraints (8) also fulfills (10) and hence the corresponding Lagrangean multipliers will be zero. This is a very interesting observation. In such a case, we will not gain anything by using the strong continuous formulation, problem (P3).

The subproblem above decomposes into m independent 011 knapsack prob- lems, which, in spite of the fact that they belong to the class of NP-complete problems, are relatively easy to solve. ere, these subproblems are solved using dynamic programming. A much more efficient solution procedure can be found in Dudzinski and Walukiewicz (1987).

In the approach above, the following stages are carried out.

step 0 Initialize the multiplier vector v. step 1 Solve the m 011 knapsack problems. If possible update lower- and upper bound. If termination criteria satisfied, STOP. step 2 Update the multiplier vector using a standard subgradient procedure (Held, Wolfe and Crowder 1974). Goto step 1.

Solving the test problems introduced above leads to the following results/bounds.

Test problem

LBD approach 1

LBD OPT approach 2

297 333 15 1 192 289 375 169 207 311 369 159 177 392 409 224 29 1 177 189 79 102

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 9: Relaxation techniques applied to some loading problems

LOADING PROBLEMS 357

The results are comparable with the continuous objective function value of problem (P3), CV(P3), and strengthen the fact that the continuous relaxation is a strong LP-relaxation. Eventhough the latter computational results are obtained through the solution of a series of 011-problems, only one of the test problems, for example, gives a better lower bound for approach 1 if compared with CV(P3).

A third Lagrangean relaxation strategy has been used as a heuristic in order to generate feasible solutions for the outer problem. Relaxing the capacity con- straints (8) and the logical constraints (10) in problem (P3) gives the following Lagrangean dual problem

m n m

(P6) max L6(u, rr) = min x ( s a p + ajj)xil + x ( f ; - uibi - 2 %)yi u, a20 X,,.Y,E{O,I) i = l i = l j = 1

.,, (17)

This problem is separated into one x-problem (P7) and one y-problem (P8). m n

(P7) max L7(u, rr) = min 2 (uraii + ai,)xii U , LYZO ~,,'{0,1) i = l ] = l

. . .

(P8) max L8(u, a ) = min 2 ( f ; - uibi - rr, a20 Y,E{O.~) i=l j= 1

The Lagrangean multipliers are updated using the ordinary subgradient proce- dure (Held, Wolfe and Crowder 1974). The problems (P7) and (P8) are solved alternately and together with a couple of heuristics and thus feasible solutions are generated. The flow chart below (Figure 1) shows the basic principle.

Since problem (P6) above has the integrality property, the bound obtained from this approach cannot be better than the one obtained from the correspond- ing continuous relaxation. The computational results are given below:

-- -

Test LBD UBD Thesolution OPT problem giving UBD

All computer programs used in this paper are experimental codes, written in FORTRAN and run on a DEC 2060.

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 10: Relaxation techniques applied to some loading problems

K. 0. JORNSTEN AND P. VARBRAND

S t a r t 0 Choose an

i n i t i a l u

So lve problem

yes I f x = 1 f o r any 1 constraints 1 I - Y = l

i

Update LBD and compute new Lagrangean

m u l t i p l i e r s u.

A

t o r e a s s i g n

So lve problem fi s o l v e a feasibility

10 problem l n x. g lven

t h e y - so lu t ron above.

A f e a s l b l e s o l u t i o n obtained.

I f t h e b e s t , s ave it and upda te UBD.

Figure 1

3. A TWO-STAGE LOADING PROBLEM: THE INNER FORMULATION

In this section, we assume that the set of machines available for processing has been selected, i.e. the outer problem has been solved. This means that the subset of machines obtained from the outer problem are all necessary for feasibility in the inner problem (provided that the outer problem has been solved to optimality). We will now deal with the second goal of interest, the inner problem, and it could be defined as follows: How should the jobs be allocated so that the unused capacity fulfills some spec$ed criteria?

A number of such criteria can be of interest and here we will deal with the

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 11: Relaxation techniques applied to some loading problems

LOADING PROBLEMS 359

following:

a) Maximize the total amount of unused capacity (=minimize the total processing time). b) Spread the unused capacity as much as possible among all the machines. c) Collect the unused capacity as extensively as possible to one of the machines.

Let us consider an example, with 2 machines and 5 jobs. The time of allocating a job on a machine and the capacity of the machines are given in the tableau below.

Job 1 2 3 4 5 Capacity

Machine1 2 3 4 2 2 11 Machine 2 3 2 3 4 1 9

If this problem is solved using each of the objectives discussed above gives the following three different optimal solutions.

Optimal solution for objective a

Optimal allocation Machine 1 Machine 2

(1 4) (2 3 5)

Optimal solution for objective b

Optimal allocation Machine 1 Machine 2

(1 2 4) (3 5)

Optimal solution for objective c

Optimal allocation Machine 1 (1 2 3 4) Machine 2 (5)

Slack 7 3 Optimal objective function value: 10

Slack 4 5 Optimal objective function value: 4

Slack 0 8 Optimal objective function value: 8

Each of the objectives discussed above might appear in real life applications, under different circumstances. If the cost of processing a job on a machine is proportional to the processing time and the goal is to minimize the total cost, then the machines should be run as little as possible and hence criterion a ) is chosen. An even loading, (objective b ) , could be advantageous because of service reasons for instance. If each machine has a certain amount of unused capacity, service or repairs could be carried out without interrupting the time schedule. Finally, objective c ) is to be preferred when a late incoming job should be included in the allocation. In such a case, a little used machine can probably handle that job without any reallocation.

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 12: Relaxation techniques applied to some loading problems

Mathematical Formulations and Computational Results

Let m be the number of machines and n the number of jobs. The total available processing time on machine i is bi and job j takes aii time units to process on machine i.

The variables are

1 if job j is processed on machine i si = the unused capacity of machine i

0 otherwise

After the outer problem has been solved, the test problems (Al, . . . , AlO) have been reduced in the sense that only the "optimal" machines are kept in the problem. The test problems are now called (Bl, . . . , BlO) and 25 jobs, except for problem B7 which consists of 2 machines.

Objective A: The problem of maximizing the total amount of unused capacity (P9), can be stated as follows.

m

(P9) max 2 s,

xi, E (0, 1) Vi, j (25)

Eliminating the slack-variables from the problem above by substituting

in the objective function, gives an equivalent generalized assignment problem (PlO), Ross and Soland (1975), Varbrand (1988).

m m n

(P10) 2 bi - min 2 2 aijxii i = l i = l j = 1

xii E (0, 1) Vi, j

However, this problem has a very special structure; the coefficients aii are in the

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 13: Relaxation techniques applied to some loading problems

LOADING PROBLEMS 361

objective function as well as in the capacity constraints. Computational experi- ments indicate that the two basic Lagrangean relaxations (Chalmet and Gelders (1976)), coupled with ordinary subgradient techniques, are more efficient in this case than in the case of the ordinary generalized assignment problem. This is not very surprising since the minimization process coincides with the generation of solutions which satisfy constraint set (26), and vice versa-solutions that are feasible from the knapsack constraints point of view also have small objective function values. This is probably the main reason why these methods are so efficient.

Relaxing the capacity constraints gives the first Lagrangean dual problem (P11).

m m n

(P11) max L l l (u ) = 2 (1 - ui)bi - min x (1 + ui)aijxi1 UZO i = l xij6{0,1) i = l j=l

For fixed u, this subproblem decomposes into n semi assignment problems. The second approach occurs when the semi assignment constraints are relaxed.

This leads to the Lagrangean dual problem (P12). m n m n

(P12) max L12(v) = x bi - x u, - min 2 C (aii + vi)xi, V i=1 ,=I Xzj€{O, 1) i = l j=1

n

s . t . x a i i x i j ~ b i i = 1 , . . . , m ,=I

(32)

For fixed v, m independent 011 knapsack problems have to be solved. This is done by dynamic programming.

For this problem (PlO), three different methods have been implemented, using the relaxations derived above.

Method 1: Problem (P11) is solved by using an ordinary subgradient proce- dure. (Maximum 200 iterations). Method 2: Based upon method 1, but in order to try to close the duality gap and verify optimality, valid inequalities, derived from violated single knapsack constraints, are automatically added and relaxed, Jornsten and Varbrand (1987). After a fixed number of subgradient iterations (25), the Lagrangean function is, if possible, extended by the addition of this new set of constraints. (Maximum 200 iterations). Method 3: Problem (P12) is solved by using an ordinary subgradient proce- dure. (Maximum 100 iterations). The computational results for the test problems B1, . . . , BlO are presented

on p. 362. As already mentioned in Section 2, the presence of alternative optimal solutions to the outer problem, is of great importance from the point of view of the inner problem. One way to handle this difficulty is to generate all optimal solutions to the outer problem and then to calculate the inner objective function value for each of these solutions.

Another possibility is to formulate an overall optimization problem as soon as the optimal outer objective function value, z* is known. Applying this idea to

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 14: Relaxation techniques applied to some loading problems

Method 1

Test No of LBD UBD OPT CPU Problem iter ? (set)

yes 0.78 yes 0.53 yes 0.81 yes 0.77 yes 0.80 yes 0.80 yes 0.68 yes 0.80 no 0.76 no 0.79

Method 2

Test problem

No of iter

LBD UBD OPT ?

No of VI added

4 1

11 1 3 3 5 9 9 9

CPU (set)

0.84 0.47 1.22 0.54 0.72 0.52 0.88 1.64 1.53 1.56

Method 3

Test No of LBD UBD OPT CPU problem iter ? (set)

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 15: Relaxation techniques applied to some loading problems

LOADING PROBLEMS

objective a (problem (P9)) leads to the extended problem m

(P13) max si i = l

i = l si 2 0 i = l , . . . , m (37)

xi,, yi E (0, 1) Vi, j (37) Here, m denotes the set of all the machines which are available to be purchased. This problem is much harder to solve than the problems obtained from the two stage procedure adopted above. For the sake of simplicity, we will, from now on, assume that the outer problem has unique solution and consequently the two stage procedure will be used. This overall problem can be formulated with either of the objectives b or c below.

Objective B: The problem of maximizing the slackness in the most utilized machine can be formulated in the following way

(P14) max ( min sj) i=l , ..., m

si r 0 i = l , . . . , m xi, E (0, 1) Vi, j

In order to solve this problem by using any standard mathematical programming technique, the objective function has to be reformulated to an ordinary maximization or minimization objective function. This can be done by introduc- ing an auxiliary variable w, which, together with a new set of constraints takes care of the minimization part of the objective function above. This reformulation leads to problem (P15). (P15) max w

s.t. w s s i i = l , . . . , m (42)

2 a,i, + , = bi i = l , . . . , rn j=1

(43) m c xi, = 1 j = l , . . . , n

i = l

w , s i 2 0 i = l , . . . , m xi, E (0, 1) Vi, j

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 16: Relaxation techniques applied to some loading problems

364 K . 0. JORNSTEN AND P. VARBRAND

This problem (PIS) can be further simplified if we eliminate, at this stage, the unnecessary slackvariables si. Adding the first two constraints together gives the final problem (P16).

(P16) max w

x,, E (0, 1) Vi, j (50)

We will assume, with no loss of generality, that all coefficients a;, and bi are positive integers. Relaxing the semi assignment constraints (48) in problem (P16) gives the following Lagrangean dual

(P17) max Ll6(x, w , u) = max w - U X , w

x i E 0 , 1 Vi, j (54)

Except for the variable w , this subproblem (for fixed multiplier vector v) decomposes into m single 011 knapsack problems. One way to deal with this nonseparability, is to solve problem (P17) for each integer value of w (within a specific interval). In this case w is fixed in each iteration and hence the problem separates into m problems. If these problems are solved using dynamic programming, different sizes of the knapsack are handled with very little extra effort, since this information is available more or less automatically. The solution procedure can be described by the following stages.

Step 0: Set LBD = 0 (or make use of the feasible solution obtained when solving the outer problem) and as the initial value of UBD let

Cpl bi - C;=, mini aij t, = t, = min bi

m I

UBD = [min(t,, t,)], where [x] denotes the largest integer less than or equal to x. Let v = 0 be the initial Lagrangean multiplier vector. Step 1: Solve problem (P17) for all integer values of w E (LBD, UBD) by using dynamic programming. If possible update the bounds. Step 2: Update the multiplier vector v, using the ordinary subgradient procedure. Goto 1. (Maximum 50 subgradient iterations.)

The following simple heuristic was used during the solution procedure in order to generate feasible solutions and hence make it possible to update the lower bound.

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 17: Relaxation techniques applied to some loading problems

LOADING PROBLEMS 365

(i) For a given multiplier vector fi, let 2 be the corresponding optimal subproblem solution. Set j = 0. (ii) Set j = j + 1 If C:, ixii > 1 Then keep job j on the "cheapest" machine If CEl xi, = 0 Then (if possible) place job j on the machine with the largest slackness. (iii) If j < n goto (ii). Otherwise STOP. If all jobs are assigned to one and only one machine, a candidate for LBD has been found.

The results presented below indicate that this Lagrangean relaxation approach was very successful.

Test Noof LBD UBD OPT CPU problem iter

Objective C: The final criteria is to allocate the unused capacity, as far as possible, to one of the machines. The corresponding mathematical formulation becomes as follows.

(P18) z * = max( max si) i = l , ..., m

n

s.t. 2 ai,xi, +s i = bi i = l , . . . , m 1 = 1

Because of the same reason as has been given above, the objective function has to be reformulated.

(P19) x* = max w

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 18: Relaxation techniques applied to some loading problems

w, s i r O i = l , . . . , m

xi,, ~i E (0, 1) Vi, j However, problem (P18) can be solved through a sequence of m almost identical problems (p20k), k = 1, . . . , m. The reformulation of the complicated objective function is, in this case, automatically satisfied.

problem k

xi, E (0, 1) Vi, j

The best objective function value is selected as the optimum to the original problem, i.e. z * = max, =,,,, . ,, 2:.

The problems (P20k) have exactly the same structure as problem (P10). The problems are solved by using the three methods used for objective a, and the results obtained are given in the Tables 1-3 below.

In spite of the fact that the formulations taken from objective a and objective c have the same structure, the same solution procedures does not give the same good performance. First of all we can see that in the latter case is is much harder to generate feasible solutions-especially for method 3. Moreover, it is difficult to obtain good lower bounds. Method 3, for example, does not give better bounds (sometimes worse) than objective a, eventhough harder subproblems are solved.

The only reasonable explanation for this performance is that only some of the variables (n) are included in the objective function. Controllability in the subgradient phase is therefore lost.

4. SUMMARY AND CONCLUSIONS

In this paper, a two-stage loading-type problem is presented. The overall purpose is to find a machine-job assignment, such that each job is processed on exactly one machine and no machine capacities are violated.

The first stage (the outer problem) deals with the problem of purchasing a subset of m available machines, at a minimum of expense, and in such a way that all jobs are processed.

The second stage (the inner problem) uses the subset of machines obtained from the outer problem and tries to find an assignment that allocates their unused capacity according to some specified criterion. In this paper, three such criteria are discussed.

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 19: Relaxation techniques applied to some loading problems

LOADING PROBLEMS

Table 1 Note that the results are based on the objective function mi$'=, ak,xkj, see test problem B1

Test No of Orig LBD UBD OPT CPU problem iter r.h.s (set)

100 67 50.9 61 56 0.58 100 71 52.7 62 59 0.56 100 43 31.3 40 34 0.54

solution: max(max) = max(67-61,71-62,43-40) = 9 Optimum = 12

100 71 37.8 53 44 0.53 100 98 58.9 73 64 0.55 100 53 20.9 33 23 0.52 Best solution: max(max) = 25 Optimum = 34

100 176 114.5 137 130 0.54 100 116 62.6 81 80 0.57 100 52 20.4 23 23 0.61 Best solution: max(max) = 39 Optimum = 46

100 156 92.1 - 100 144 80.6 121 100 114 56.9 83 Best solution: max(max) = 31

100 93 1.1 11 100 285 121.6 129 100 276 108.1 112 Best solution: max(max) = 164

102 0.57 88 0.59 65 0.61

Optimum = 56

11 0.57 129 0.58 112 0.66

Optimum = 164

100 186 23.6 - 33 0.58 100 198 22.1 57 35 0.56 100 246 59.3 - 75 0.54 Best solution: max(max) = 141 Optimum = 71

100 242 193.1 225 201 0.53 100 342 277.0 295 282 0.49 Best solution: max(max) = 47 Optimum = 60

100 265 71.4 91 100 380 153.5 192 100 190 48.9 76 Best solution: max(max) = 188

100 475 387.0 463 100 135 85.2 117 100 165 98.2 126 Best solution: max(max) = 39

100 185 21.1 39 100 265 113.4 130 100 440 221.5 222 Best solution: max(max) = 218

91 0.56 177 0.57 55 0.59

Optimum = 203

413 0.55 98 0.56

126 0.58 Optimum = 62

38 0.59 127 0.57 222 0.57

Optimum = 218

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 20: Relaxation techniques applied to some loading problems

K. 0. JORNSTEN AND P. VARBRAND

Table 2 Note that the results are based on the objective function minf,, a,,x,,, see test problem B1

Test N o of Orig LBD UBD OPT No of VI CPU problem iter r.h.s added (sec)

(1) 200 67 51.1 56 56 10 1.75 B l (2) 200 71 52.7 62 59 12 1.85

(3) 200 43 31.6 35 34 12 1.80 Best solution: max(max) = max(67-56, 71-62, 43-35) = 11 Optimum = 12

(1) 200 71 37.9 41 44 11 1.79 B2 (2) 200 98 58.9 64 64 8 1.61

(3) 200 53 20.8 25 23 7 1.74 Best solution: max(max) = 34 Optimum = 34

(1) 200 176 116.5 137 130 3 1.68 B3 (2) 200 116 67.5 81 80 2 1.83

(3) 200 52 21.1 23 23 4 1.77 Best solution: max(max) = 39 Optimum = 46

(1) 200 156 93.4 - 102 6 2.01 B4 (2) 200 144 81.2 88 88 5 1.80

(3) 200 114 58.2 65 65 6 1.71 Best solution: rnax(max) = 56 Optimum = 56

(1) 200 93 5.6 11 11 4 1.77 B5 (2) 200 285 123.1 129 129 1 1.72

(3) 200 276 108.5 112 112 3 1.77 Best solution: max(rnax) = 164 Optimum = 164

(1) 200 186 24.4 - 33 6 1.80 B6 (2) 200 198 31.3 57 35 5 1.75

(3) 200 246 59.2 - 75 5 1.74 Best solution: max(max) = 141 Optimum = 171

(1) 200 242 194.8 225 201 4 1.56 B7 (2) 200 342 280.1 295 282 3 1.54

Best solution: max(max) = 47 Optimum = 60

(1) 200 265 74.4 91 91 2 1.76 B8 (2) 200 380 158.6 192 177 4 1.81

(3) 200 190 53.8 55 55 3 1.74 Best solution: max(max) = 188 Optimum = 203

(1) 200 475 390.1 463 413 5 1.76 B9 (2) 200 135 85.5 117 98 5 1.75

(3) 200 165 101.1 126 126 4 1.95 Best solution: max(max) = 39 Optimum = 62

(1) 200 185 27.8 39 38 1 1.75 B10 (2) 200 265 117.7 130 127 3 1.75

(3) 200 440 212.0 222 222 2 1.73 Best solution: max(max) = 218 Optimum = 218

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 21: Relaxation techniques applied to some loading problems

LOADING PROBLEMS

Table 3 Note that the results are based on the objective function min;=, a,,+, see test problem B2

Test No of Orig LBD UBD OPT problem iter r. h.s

(1) 100 67 52.8 - 56 B l (2) 100 71 51.8 - 59

(3) 100 43 31.6 - 34 Best solution: max(max) = - Optimum = 12

(1) 100 7 1 40.0 - 44 B2 (2) 77 98 64.0 64 64

(3) 100 53 21.6 - 23 Best solution: max(max) = max(-, 98-64,-) = 34 Optimum = 34

(1) 50 176 124.4 - 130 B3 (2) 50 116 68.4 - 80

(3) 32 52 23.0 23 23 Best solution: maximax) = 39 Optimum = 46

(1) 100 156 97.3 - 102 B4 (2) 100 144 87.5 - 88

(3) 100 114 60.7 - 65 Best solution: max(max) = - Optimum = 56

(1) 50 93 8.6 B5 (2) 22 285 129.0

(3) 26 276 112.0 Best solution: maximax) = 164

(1) 50 186 29.4 B 6 ( 2 ) 50 198 34.2

(3) 50 246 29.7 Best solution: max(max) = 156

- 11 129 129 112 112 Optimum = 164

- 33 42 35 - 75 Optimum = 171

(1) 50 242 197.0 - 20 1 B7 (2) 48 342 282.0 282 282

Best solution: maximax) = 60 Optimum = 60

(1) 50 265 87.1 - 91 B8 (2) 24 380 176.4 177 177

(3) 24 190 55.0 55 55 Best solution: max(max) = 203 Optimum = 203

(1) 100 475 401.0 - 413 B9 (2) 100 135 65.2 - 98

(3) 100 165 82.5 - 126 Best solution: max(max) = - Optimum = 62

(1) 50 185 35.3 - 38 BlO(2) 34 265 127.0 127 127

(3) 27 440 22.1 222 222 Best solution: maximax) = 218 Optimum = 218

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 22: Relaxation techniques applied to some loading problems

For the outer problem, three equivalent mathematical formulations are given, but with considerably different properties with regard to the strength of their continuous relaxation. The outer problem is solved by using different types of Lagrangean relaxation, coupled with ordinary subgradient techniques and the main conclusions drawn from this are that strong LP-formulations can be useful when combined with Lagrangean relaxation. An interesting question also arises when the outer problem has alternative solutions.

For the inner problem, three different slack allocation criteria are discussed. These are: (i) maximize the total amount of unused capacity (ii) spread the unused capacity as much as possible among all the machines (iii) allocate the unused capacity as extensively as possible to one of the machines.

The inner problems have been solved by the use of Lagrangean relaxation techniques also. The conclusion is that objective c leads to much harder optimization problems than objectives a and b do. One explanation for this might be that only a subset of the variables of problem (iii) are included in the objective function and because of this, some of the controllability in the solution process is lost.

Acknowledgements

The authors wish to thank Dr. Torbjorn Larsson and M.Sc. 0rjan Jonsson for their contributions to Section 3 (objective b).

References

[I] Beasley, J. E. (1985) Exact Two-Dimensional Non-Guillotine Cutting Tree Search Procedure, Operations Research 33(1)

[2] Beasley, J. E. (1985) Bounds for Two-Dimensional Cutting, Journal of the Operational Research Society 36(1), 71-74

[3] Brown, A. R. (1971) Optimum packing and depletion, American Elsevier, New York [4] Chalmet, L. and Gelders, L. (1977) Lagrangean Relaxations for a Generalized Assignment-type

Problem, Advances in Operations Research, editor: M. Roubens, North-Holland, Amsterdam [5] Dudzinski, K./Walukiewicz, S. (1987) Exact Methods for the Knapsack Problem and its

Generalizations, European Journal of Operational Research 28, 3-21 [6] Eilon, S. and Christofides, N. (1971) The Loading Problem, Management Science 17, 2.59-268 [7] Eilon, S. and Christofides, N. (1972) On the Loading Problem-A Rejoinder, Management

Science 18, 432-433 [8] Eisemann, K. (1957) The Trim Problem, Management Science 3, 279-284 [9] Erlenkotter, D. (1978) A Dual-Based Procedure for Uncapacitated Facility Location, Operations

Research 26(6) [lo] Geoffrion, A. M. (1974) Lagrangean Relaxations for Integer Programming, Mathematical

Programming Study 2: Approaches to Integer Programming, pp 82-114, M. L. Balinski ed., North-Holland.

[ l l ] Gilmore, P. C. and Gomory, R. E. (1961) A Linear Programming Approach to the Cutting Stock Problem, Operations Research 9 , 849-859

[12] Gilmore, P. C. and Gomory, R. E. (1963) A Linear Programming Approach to the Cutting Stock Problem, Part 11, Operations Research 11, 863-888

[13] Gilmore, P. C. and Gomory, R. E. (1965) Multistage Cutting Stock Problems of Two and More Dimensions, Operations Research 13, 94-120

[14] Haessler, R. W. (197.5) Controlling Pattern Changes in One-Dimensional Cutting Stock Problems, Operations Research 23, 483-493

[15] Hahn, S. (1968) On the Optimal Cutting of Defective Glass Sheets, Operations Research 16, 1100-1114

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014

Page 23: Relaxation techniques applied to some loading problems

LOADING PROBLEMS 371

[16] Held, M., Wolfe, P. and Crowder, H. (1974) Validation of Subgradient Optimization, Mathematical Programming 6, 62-68

[17] Hung, M.S. and Brown, A.R. (1978) An Algorithm for a Class of Loading Problems, Naval Research Logistics Quarterly 25, 289-297

[18] Johnson, D. S. (1973) Near-Optimal Bin Packing Algorithms, Doctoral thesis, M.1.T [I91 Johnson, D. S. (1974) Fast Algorithms for Bin Packing, Journol of computer and system science

8, 272-314 [20] Jornsten, K , and Varbrand, P. (1990) Two New Algorithms for the Generalized Assignment

Problem, Asia-Pacific Journal of Operationai Research 7(2), 172-189 [21] Lewis, R. T. and Parker, R. G. (1982) On a Generalized Bin-Packing Problem, Naval Research

Logistics Quarterly 29, 119-145 [22] Pirkul, H. (1987) Efficient Algorithms for the Capacitated Concentrator Location Problem,

Computers and Operations Research 14(3), 197-208 [23] Ross, G . T. and Soland, R. M. (1975) A Branch and Bound Algorithm for the Generalized

Assignment Problem, Mathematical Programming 8, 91-103 [24] Steudel, H. J. (1979) Generating Pallet Loading Patterns: A Special Case of the Two-

Dimensional Cutting Stock Problem, Management Science 25, 997-1004 [25] Varbrand, P. (1988) Generalized Assignment Type Problems: Models and Solution Procedures,

Linkoping Studies in Science and Technology. Disertation No 193, Linkoping University [26] Wang, P. Y. (1983) Two Algorithms for Constrained Two-dimensional Cutting Stock Problems,

Operations Research 31(3) [27] Yao, A. C . (1980) New Algorithms for Bin Packing, Journal of the Association for Computing

Machinery 27, 207-227

Dow

nloa

ded

by [

UQ

Lib

rary

] at

18:

13 2

2 N

ovem

ber

2014