Chapter 2 Literature Review
2.4. Population Based Solution Methods
2.4.2. Scatter Search
Laguna et. al. (1999) discuses the basic scatter search heuristic and shows its application a 0-1 knapsack problem. To apply scatter search to an RCPSP one would need to use a RK. Like a GA, a scatter search works on a population (known as the reference set) but where a GA uses a larger populations, SS works best with a population of around 10 (the population size is known as b). The reference set is split into two, a good set and a diverse set. There are 5 basic functions that need defining to implement a scatter search.
Diversification Generation Method - This function is like the initial population
generation of a GA. Its function is to create a diverse range of trial solutions from an arbitrary solution (or seed solution). In the 0-1 knapsack problem, random bits are used and then the complement of these is also used.
Improvement Method - This function should improve an individual. It also should be
knapsack was too full, items were removed one by one and if the knapsack wasn’t full, items were added one by one.
Reference Set Update Method – this method builds and maintains the reference set.
Solutions maybe considered good either because of their quality or their diversity. This is analogous to selection in GAs. In the 0-1 knapsack problem, the best solutions by their fitness are put in the best set. Diverse solutions are those defined as having as many bits set different to the best, and the most diverse are put in the diverse set. These are combined to create a new reference set.
Subset Generation Method – This method creates subsets of the reference set, which
will be used in the solution combination method to make new solutions. Typically, all 2-element subsets of the reference set are picked. Then 3 element subsets are generated taking all the 2 element subsets and adding the next best solution (measured by the fitness value). 4 element subsets are then created in the same way and finally subsets consisting of the I best solutions for I = 5 to b.
Solution Combination Method – This method combines the elements in the subsets
generated in the previous step to create a new solution(s). In the 0-1 knapsack problem, the solutions to be combined are combined with a weighted sum and then rounded to the nearest whole number.
For example p1=0,1,1,0, p2=1,1,0,0, p3=0,1,1,1, f(p1)=3, f(p2)=5, f(p3)=2
The new solution would be
p4=(0*3+1*5+0*2)/10, (1*3+1*5+1*2)/10, (1*3+0*5+1*2)/10, (0*3+0*5+1*2)/10
p4=0.1, 1, 0.5, 0.2 = 0, 1, 1, 0
Permutation based problems could use crossover operators as in the GA. The following pseudo code shows how the heuristic works.
1. Initially use the Diversification Generation Method to generate a pool of solutions.
2. Use the Improvement Method to improve these solutions. 3. Use the Reference Set Update Method to sort these solutions. 4. Use the Subset Generation Method to create subsets of solutions.
5. Use the Solution Combination Method to create new solutions from the subsets. 6. Use the Improvement Method to improve the new solutions.
7. While the stopping criteria are not met, go to step 3.
2.4.3. Scatter Search/Electromagnetism Hybrid
The SS/EM hybrid (Debels et al., 2006) uses the scatter search hyper-heuristic with a few modifications. First of all it uses the Standardised Random Key representation to reduce the search space. The Solution combination method is modified for electromagnetism. The solution generation method creates pairs of solution for the “good” set, and pairs from the “good” and the “diverse” set. Solutions sets from the “good” set are combined using 2-point crossover as in GAs and solutions sets containing a solution from the “good” and one from the “diverse” are combined using EM.
In EM, a charge is associated with each solution. A fit solution will produce a positive attracting charge and an unfit solution will produce a negative repelling charge. In the SS/EM hybrid, only one force is used (this was found to be the best way experimentally). An attracting force is applied to the “diverse” solution from the “good” solution in an attempt to pull it into an area of the solution space that is fitter.
This method performs extremely well for the RCPSP problem and it should be noted that this method consistently came top three in the experimental investigation (Kolisch and Hartmann, 2006).
2.4.4. Sawing Evolutionary Algorithms
“SAWing” Evolutionary Algorithms are the evolutionary equivalent of Guided Local Search. “SAWing” or Stepwise Adaptation of Weights, takes an existing EA with a weighted sum fitness function alters the weights every n chromosome evaluations (usually n is the population size.). When applied to genetic programming for data mining (Eggermont, Eiben and van Hemert, 1999) mixed results were reported. SAWing EAs were then used to solve Constraint Satisfaction Problems (CSP) (Eiben and van Hemert, 2001) with more consistent results. Stepwise Adaptation of Weights were used in conjugation with standard EAs and compared results to the standard EAs. A weight was given to each constraint of the CSP and these were adjusted by the SAW EAs in response to the search process. This leads to worse results in the short term but is beneficial in the long run.
Precision SAW is introduced in (Eggermont and van Hemert, 2000) in an attempt to improve performance on problems with real valued variables (CSP use 1/0 for true/false) when applied to symbolic regression. Here the weights of are adapted in response to the error in an attempt to speed up the process and indeed this was the case. This work is further refined in (Eggermont and van Hemert, 2001).