5.2 Case base maintenance for Pref-CBR
6.1.3 Nature-inspired optimization algorithms
The previous search methods described above eventually seek to solve optimization problems, but population-based algorithms help the search not to get stuck at a local optima, making them attractive to use for providing good solutions to a wide range of complex optimization problems. Natural optimization often involves variation methods (genetic mutations or slight parameter shifts), parallel optimization scenarios (agents exploiting local solutions), adaptive strategies (if environment changes over time, opti- mization adapts), partial exploitation of the solution space and providing different but equally optimal solutions. It is important to note that in our Pref-CBR framework, op- timization plays a major role since we continuously try to optimize our solution based on the preferences given by the oracle. We will describe the three most well known nature-inspired optimization approaches in this section (genetic algorithms, simulated annealing and particle swarm optimization). We will look at the similarities and dif- ferences between the latter approaches and our Pref-CBR framework.
6. RELATED METHODOLOGIES
6.1.3.1 Genetic algorithms
Simply stated, genetic algorithms are probabilistic search procedures designed to work on large spaces which involve states that can be represented by strings [118]. These algorithms are propagating the best new offspring from the parent population, thereby proceeding in an evolutionary fashion which encourages the survival of the fittest [110]. Starting from an initial population, a set of parents are chosen according to a fitness function, to breed a new generation of candidate solutions. According to [109], each parent contains a set of chromosomes which are the desirable features, and the offspring are reproduced from two parents by mixing parts of chromosomes of each parent in a crossover fashion. This transmits good features of parents into the next generation. Accordingly, the efficiency of a genetic algorithm depends highly on the choice of the fitness function, the representation of the desirable characteristics in the chromosomes and the appropriate use of the crossover mechanism and mutation (for preserving and introducing diversity to avoid local minima).
6.1.3.2 Simulated annealing
As the name of the algorithm indicates, it is derived from the intent to pattern its approach after the physical process of annealing [110]. Annealing is the process of reducing the temperature of a material to its minimum state of energy, which is called thermal equilibrium. Described by [119], simulated annealing explores a function’s entire surface and tries to optimize the function while moving through the space in both uphill and downhill directions. It is a hill-climbing algorithm, which can accept during the search an inferior solution in the neighborhood, to escape local maxima, according to a probability function [109]. Simulated annealing tries to inject just the right amount of randomness to escape local maxima early in the search process without getting off course later in the search, when a solution is nearby. At the beginning of the search, many widely distributed positions of the given function are probed around the currently found maximum value and this allows for sometimes choosing an inferior solution to escape a local maxima, based on an acceptance probability. Following the idea of the annealing process where the temperature of annealing is gradually reduced, the probability in the aforementioned function is set to be high at the beginning of the optimization process and is gradually reduced to zero. Following a function called the
6.1 Heuristic search
cooling schedule, the rate of the drop of the acceptance probability is controlled and as the temperature cools to a predefined threshold, a solution is reached. A theoretic property of simulated annealing is that, if the temperature is annealed sufficiently slowly, there can be a guarantee to find an optimal solution. The efficiency of the algorithm as well as the quality of the solution depend on the choice of the cooling schedule.
6.1.3.3 Particle swarm optimization
The particle swarm is also a population-based stochastic algorithm used for optimiza- tion, where all population members survive from the beginning of a trial until the end. The particle swarm does not use selection but rather the interactions of all members result in iterative improvement of the quality of problem solutions over time [120]. The initial ideas on particle swarms of Kennedy (a social psychologist) and Eberhart (an electrical engineer) exploited analogues of social interaction, they involved analogues of bird flocks searching for corn; these turned later into a powerful optimization method, which is called particle swarm optimization [121]. As the authors in [121] explain: “the particles are placed in the search space of some problem or function, and each evaluates the objective function at its current location. Each particle determines its next move based on its current and best-fitness locations with those of one or more members of the swarm, until eventually the swarm as a whole like a flock of birds collectively foraging for food, is likely to move close to an optimum of the fitness function”. It requires only primitive mathematical operators, and is computationally inexpensive in terms of both speed and memory requirements [120]. Particle swarm optimization uses the concept of fitness, as do all evolutionary computation paradigms, and its adjustment for the best fit is similar to the crossover operation utilized by genetic algorithms [120].
The important thing to notice about all these nature-inspired optimization algo- rithms, is that the goal is to optimize a solution for a given problem, based on a “fitness function”. In our Pref-CBR framework we also optimize a solution for a given problem, and we move in the solution space relying on qualitative feedback based on the generated preferences. A property we share with the above mentioned nature-inspired algorithms is that we cannot guarantee to find the global optimum. An advantage of our framework is the existence of the pairwise assessment by an expert, which does not
6. RELATED METHODOLOGIES
exist in nature-inspired algorithms. We also have the advantage of simultaneous prob- lem solving episodes (gaining knowledge from previous cases), as opposed to parallel optimization of above methods. An advantage of the above methods though is that the solution modification operator adapts over time, as in simulated annealing, while in our framework this does not take place (most parameters are fixed) except with the triggering of the learning of similarity measures module.