THREE DIMENSIONAL-PALLET LOADING PROBLEM BY ABDULRHMAN AL-OTAIBI.

Post on 19-Jan-2018

221 views 0 download

description

Project Objective Minimizing the unused pallet volume subject to many constraints. Developing a three-dimensional pallet-packing algorithm that can be solved using LINDO software.

transcript

THREE DIMENSIONAL-PALLET LOADING PROBLEM

BY

ABDULRHMAN AL-OTAIBI

Project Importance

• Everyday many items are shipped from one place to another.

• These items are put in containers or pallets.

• To ship more items while spending less energy, time and money, the items should be packed optimally, or at least near optimally.

• This problem becomes even more imprtant when we start to talk about air shipping.

Project Objective

• Minimizing the unused pallet volume subject to many constraints.

• Developing a three-dimensional pallet-packing algorithm that can be solved using LINDO software.

Review of Relevant Literature

1. A wall-based algorithm ( Liu and Chen, 1981).

2. A branch-and-bond method (Martello, Pisinger and Vigo ,2000).

3. A mathematical formulation (Ballew,2000) similar to the analytical method of Liu and Chen.

4. A model producing a high degree of stability( Bischoff, Janetz and Ratcliff ,1995)

Solution Methodology

Chen, Lee, and Shen (1995) presented a zero- one mixed integer linear programming model .

The model considers the issues of : -carton orientations -multiple container sizes,

-multiple carton sizes -space utilization .

-avoidance of carton overlapping,

This model implement Chen, Lee, and Shen model with additional weight restriction constraint.

The constraints

Maximize Z =

n

k 1

v k P k (10)

The objective function is:

Subject to:1 -no two boxes in the pallet overlap.

2 -each box is contained entirely with the pallet, with its sides parallel to the sides of the pallet.

3 -the proportion of the number of boxes of a given size to the total number of boxes of a full pallet load must

closely approximate the user’s specification.

4 -the total of boxes' weights must be less than the weight allowed to be in the pallet.

Initial NotationS = a collection of n boxes to be considered = {b1, b2, … , b n )

(l I ,w I ,h i) = the dimensions of box i, bi, in set S. = length, width, and height,

respectively.

(L, W, H) = the dimensions of a pallet cube = length, width, and height, respectively.

(Xo, Yo, Zo) = pallet location in Cartesian coordinate space along the x-, the y-, and the

z-axis, respectively.

(x i , y i , z i ) = decision variables = the x, y, z coordinates of placement location of the

front bottom left corner of box i.

P k = a binary decision variable associated with the k-th box in set S.

Box k is loaded onto the pallet if P k = 1

Box k is discarded from set S if P k = 0

V = the volume of the pallet = L.W.H.

Vk = the volume of box k = l i . w i . h i.

R g = the desired box proportion of type K.

G k = the wight of box k.

G = total boxes' weight allowed.

Cg = a subset of S; consists of all boxes of size g regardless of box

orientation:

= { b k ( l k . w k . h k) = (l g . w g. h g) or (w g . l g. h g), l k n} ;

M = an extremely large number.

r = total number of box types, r n.

Preventing Box Overlaps

Figure 1 , two overlapped boxes

Suppose the location of box A is fixed, and that box B is free to move arbitrarily in Cartesian coordinate space :

To avoid overlap of these two boxes, the following conditions must be satisfied:

x B – x A l A (1)

or

x A – x B l B (2)

y B – y A w A (3)

or

y A – y B w B (4)

Figure 3. illustrates overlap condition in X and Z

Figure 4. illustrates overlap condition in Y and Z

z B – z A h A (5)

or

z A – z B h B (6)

where :

l A ,l B = lengths of boxes A and B, respectively.

w A , w B = widths of boxes A and B.

h A ,h B = heights of boxes A and B.

(x A , y A , z A) = front bottom left comer coordinate of box A.

(x B , y B, z B) = front bottom left comer coordinate of box B.

At least one of these six constraints must hold to prevent overlap of the two boxes.

Determination of proportion of assigned number of boxes in a pallet:

•The number of boxes of each type to be considered in set S can be determined using the following two equations:

where n g = the number of boxes of type g to be considered in set S.

•By solving Equations (7) and (8), the number of boxes for type g can be obtained as:

n g = (9)

r

iiivR

RgV

1

n g / n i = R g (7)

n i . v i = V (8)

r

i 1

r

i 1

Formulation of Three-Dimensional Model

The three-dimensional pallet loading problem can now be formulated as a mixed 0-1 integer programming model :

Maximize Z =

n

k 1

v k P k (10)

subject to:

Objective Function:

1 (Avoid overlap of boxes:

x j – x i – l j ij (11)

or

x i – x j – l i ij (12)

or

y j – y i – w j ij (13)

or

y i – y j – w i ij (14)

or

z j – z i – hj ij (15)

or

z i – z j – h i ij (16)

2 (Confine placement boundary:

x k Xo P k k (17)

y k Yo P a k (18)

z k Zo P k k (19)

x k (Xo + L) – l k k (20)

y k (Yo + W) – wk k (21)

z k (Zo + H) – h k k (22)

3 (Weight limitation:

n

k 1

Gk . P k G (23)

4 (Proportion of boxes assigned:

Pm R g .

(24)

P k {0,1}

X k ,y k ,x k 0

i = 1, 2, … , n – 1

j = i + 1, i +2, … , n

k = 1, 2, … , n

g = 1, 2, … , r

gCm

1m

mP

Converting multiple-choice constraints

• The multiple choice (either/or) in equations (11-16) must be converted to standard “AND” constraints :

The six possible combinations of different binary values are:

u1 u2 u3

____________________________

1 0 0

0 1 0

0 0 1

1 1 0

0 1 1

1 0 1

The multiple choice constraints of Equations (11)-(16) in he model are equivalent to:

x j – x i - l j + M(u2 + u3) (25)

x i – x j – l i + M(u1 + u3) (26)

y j – y i – w j + M(2 – (u1 + u2)} (27)

y i – y j – w i + M[2 – (u1 + u2)} (28)

z j – z i – h j + M[2 – (u2 + u3)] (29)

z i – z j – hi + M[2 – (u1 + u3)] (30)

where: 1 u1 + u2 + u3 2

u1, u2, u3, {0, 1}.

Table 1. Binary Variable and Associated RHS Values

Binary variables RHS values of equations

U1 U2 U3 (25) (26) (27) (28) (29) (30)

Applicable

Constraint

Equation

1

0

0

1

0

1

0

1

0

1

1

0

0

0

1

0

1

1

-l j

M

M

M

2M

M

M

-l j

M

M

M

2M

M

M

-w j

2M

M

M

M

M

2M

-wj

M

M

2M

M

M

M

-hj

M

M

2M

M

M

M

-hj

(25)

(26)

(27)

(28)

(29)

(30)

b1= 12 x 24 x16 b1= 24 x 12 x16

b3= 24x24x8b4= 24x24x8

A numerical Example

A pallet of 36x 24 Satacking height is 16

(Xo, Yo, Zo) = (100,100,100)Two boxes are required to be shipped:

Two orientations for each box:

24248241216

S = {b1, b2, b3, b4}.

x 2 – x 1 - 24 + 500(u12 + u13)

x 1 – x 2 – 12 + 500(u11 + u13)

y 2 – y 1 – 12 + 500(u11 + u12)

y 1 – y 2 – 24 + 500[2 – (u11 + u12)]

z 2 – z 1 – 16 + 500[2 – (u12 + u13)]

z 1 – z 2 – 16+ 500[2 – (u11 + u13)]

1 u11 + u12 + u13 2

x 1 100 P1

y 1 100 P1

z 1 100 P1

x 1 (100 + 36) – 12

y 1 (100 + 24) – 24

z 1 (100 + 16) – 16

(P 1+ P 2) (1/3)( P 1+ P 2+ P 3+ P 4)

(P 3+ P 4) (2/3)( P 1+ P 2+ P 3+ P 4)

20 P 1 + 20 P 2 + 40 P 3 + 40 P 4 <= 100

b1

b3

b4

b2

1224

16

8

8

24 24

12

(P 1, P 2, P 3, P 4) = (1,0,1,1)

(x 1 , y 1 , z 1 ) = (124,100,100)

(x 2, y 2 , z 2 ) = (100,100,84)

(x 3, y 3 , z 3 ) = (100,100,108)

(x 4 ,y 4 , z 4 ) = (100,100,100)

One of the possible solution is:

• another four problems were randomly selected from OR library and run in LINDO software.

• It was noticed with increasing number of boxes included in the pallet, the execution time is significantly increased.

• In some problems which have a large number of orientations, the execution time exceeds 23 hours and the computer stop running showed out a sign of “out of memory” .

• A nother six problems were chosen in which 2 problems with two different box sizes.

• A nother two problems with three different box sizes

• Finally two problems with four different box sizes. • All have different orientations forming 12 positions shapes

• Unfortunately, non of them succeed to present a solution except when one of the constraint is removed such eliminating proportion constraints.

Conclusion• This project has presented an exact mixed 0-1

integer programming model wherever the set• s = {b1, b2..,bn}.

• The drawback of the presented model is only applicable for small problems .

• The computational time requirements of the presented model prevent its use in real-time palletizing applications