12.07.2015 Views

Evolutionary algorithm for bin packing problem

Evolutionary algorithm for bin packing problem

Evolutionary algorithm for bin packing problem

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Applied operatorsThe <strong>algorithm</strong> made use of the operators presented in the publications on the subject, that is: exchange andinsertion mutations and inversion. The characteristic feature of the <strong>algorithm</strong>, the one distinguishing it from thoseproposed by other authors is that both elements and separators are subjected to genetic operators.The final version of the evolution strategy <strong>for</strong> the BPP is characterised by the elements and parameterssummarised in Table 1.Fitness functionPopulationRepresentationReproductionInitializationSelection <strong>for</strong> the nextgenerationTermination criterionCrossoverOther operators4. Experimental testsTable 1. Anatomy of the evolution strategy <strong>for</strong> the <strong>bin</strong> <strong>packing</strong> <strong>problem</strong>FD =N∑i = 1Fis⋅ ⎛ ⎝ ⎜ ⎞⎟C ⎠N2a list (sequence) of n parts and s separators of the groups1 parent, 10 descendants1 randomly generated solutionthe best descendant replaces the parentafter realization of 45 000 generationsnot appliedexchange, insertion and inversion applied at an equal probabilityTests were run using 8 sets with 20 <strong>problem</strong>s each, the <strong>problem</strong>s being included in the Beasley’s library [2]. These<strong>problem</strong>s were divided into two groups:• elements whose weights were drawn at random from the uni<strong>for</strong>m distribution of the interval [20...100] are tobe placed in the <strong>bin</strong>s of the size 150, the number of elements being 120, 250, 500, 1000,• elements whose values are taken from the interval [0.25...0.50] are to be placed in the <strong>bin</strong>s of the size 1, thenumber of elements being 60, 120, 249, 501- 1/3 of which has considerable weight, while the weigh of theremaining 2/3 is rather small (less than 1/3 of the <strong>bin</strong> size).It must be emphasised that ES itself involves some random searching. There<strong>for</strong>e, each calculation using the sameset of input data may yield different solution. Because of that, three runs were completed <strong>for</strong> each set of data, thenthe best solution was selected. During one run the <strong>algorithm</strong> would analyse 450 000 solutions, which is a minorpart of the search space. It is comparable to the value applied by Khuri et al. (1000 generations, each yielding 500solutions).Table 2 presents the results obtained <strong>for</strong> well-known approximate <strong>algorithm</strong>s <strong>for</strong> 2 out of 8 sets from theBeasley’s library: <strong>bin</strong>pack4 <strong>for</strong> 1000 elements and <strong>bin</strong>pack8 <strong>for</strong> 501 elements, which are the major and the mostdifficult <strong>problem</strong>s from the first and the second group of <strong>problem</strong>s, respectively.Results of those tests have confirmed the superiority of Falkenauer’s GGA <strong>algorithm</strong>, especially in relation to<strong>problem</strong>s involving large dimensions. Algorithm proposed by Martello and Toth and FFD are adequate whilesolving the <strong>problem</strong>s from the first group. In the case of those considered by Falkenauer to be more difficult, these<strong>algorithm</strong>s prove inadequate. The <strong>algorithm</strong> by Khuri et al. gives the worst results. The evolution strategydeveloped by the author yields slightly less satisfactory results than GGA proposed by Falkenauer. It is moreadvantageous that other techniques, especially in relation to the second group of <strong>problem</strong>s.3

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!