- Introduction to Evolutionary Algorithms
- What do we do ?
- IEEE Congress on Evolutionary Computation
Evolution strategies emphasize behavioral changes at the level of the individual.
- Select a Web Site;
- On the effectiveness of crossover in simulated evolutionary optimization..
- History of Psychotherapy: Continuity and Change.
- McGraw Hill -Accounting for Managers?
Evolutionary programming stresses behavioral change at the level of the species. The development of each of these procedures over the past 35 years is described. Some recent efforts in these areas are reviewed. Article :. Date of Publication: Jan DOI: The coarsest problem is then given an initial assignment of values to variables and the assignment is successively refined on all the problems starting with the coarsest and ending with the original. Combinatorial optimization is a lively field of applied mathematics, combining techniques from combinatorics, linear programming, and the theory of algorithms, to solve optimization problems over discrete structures.
Utilizing classical methods of operations research often fails due to the exponentially growing computational effort. It is commonly accepted that these methods might be heavily penalized by the nondeterministic polynomial NP -hard nature of the problems and consequently will then be unable to solve large-size instances of a problem. Therefore, in practice meta-heuristics are commonly used even if they are unable to guarantee an optimal solution. The driving force behind the high performance of meta-heuristics is their ability to find an appropriate balance between intensively exploiting areas with high-quality solutions the neighborhood of elite solutions and moving to unexplored areas when necessary.
The evolution of meta-heuristics has taken an explosive upturn. The recent trends in computational optimization move away from the traditional methods to contemporary nature-inspired meta-heuristic algorithms though traditional methods can still be an important part of the solution techniques for small-size problems. As many real-world optimization problems become increasingly complex and hard to solve, better optimization algorithms are always needed. Nature-inspired algorithms such as genetic algorithms GAs are regarded as highly successful methods when applied to a broad range of discrete as well as continuous optimization problems.
This chapter introduces the multilevel paradigm combined with genetic algorithm for solving the maximum satisfiability problem.
Introduction to Evolutionary Algorithms
Over the past few years, an increasing interest has arisen in solving hard optimization problems using genetic algorithms. These techniques offer the advantage of being flexible. They can be applied to any problem discrete or continuous whenever there is a possibility for encoding a candidate solution to the problem, and a mean of computing the quality of any candidate solution through the so-called objective function.
Nevertheless, GAs may still suffer from premature convergence. The performance of GAs deteriorates very rapidly mostly due to two reasons. First, the complexity of the problem usually increases with its size, and second, the solution space of the problem increases exponentially with the problem size.
Because of these two issues, optimization search techniques tend to spend most of the time exploring a restricted area of the search space preventing the search to visit more promising areas, and thus leading to solutions of poor quality. Designing efficient optimization search techniques requires a tactical interplay between diversification and intensification [ 1 , 2 ]. The former refers to the ability to explore many different regions of the search space, whereas the latter refers to the ability to obtain high-quality solutions within those regions.
In this chapter, a genetic algorithm is used in a multilevel context as a means to improve its performance. This chapter is organized as follows. Section 2 describes the maximum satisfiability problem.
What do we do ?
Section 3 explains the hierarchical evolutionary algorithm. In Section 4, we report the experimental results. Finally, Section 5 discusses the main conclusions and provides some guidelines for future work. Given a set of n Boolean variables and a conjunctive normal form CNF of a set of m disjunctive clauses of literals, where each literal is a variable or its negation which takes one of the two values True or False , the task is to determine whether there exists an assignment of truth values of the variables that satisfy the maximum number k of clauses.
Multilevel approaches are special techniques which aim at producing smaller and smaller problems that are easier to solve than the original one. These techniques were applied to different combinatorial optimization problems. Examples include graph-partitioning problem [ 3 , 4 , 5 , 6 , 7 ], the traveling salesman problem [ 8 , 9 ], graph coloring and graph drawing [ 10 , 11 ], feature selection problem in biomedical data [ 12 ], and maximum satisfiability problem [ 13 , 14 , 15 , 16 ].
A recent survey over multilevel techniques can be found in [ 1 , 17 , 18 ]. The multilevel paradigm works by merging the variables defining the problem to form clusters, uses the clusters to define a new problem, and the process is repeated until the problem size reaches some threshold. A random initial assignment is injected to the coarsest problem and the assignment is successively refined on all the problems starting with the coarsest and ending with the original.
The multilevel evolutionary algorithm is described in Algorithm 1. This process lines 3—5 of Algorithm 1 is graphically illustrated in Figure 1 using an example with 10 variables. The coarsening phase uses two levels to coarsen the problem down to three clusters. P 0 corresponds to the original problem.
The random-coarsening procedure is used to randomly merge the literals in pairs leading to a coarser problem level with five clusters. This process is repeated leading to the coarsest problem P 3 with three clusters. An initial population is generated where the clusters are randomly assigned the value of true or false. The figure shows an initial solution where one cluster is assigned the value of true and the remaining two clusters are assigned the value false.
Thereafter, the computed initial solution is then improved with the evolutionary algorithm referred to as MA. As soon as the convergence criteria are reached at P 2 , the uncoarsening phase takes the whole population from that level and then extends it so that it serves as an initial population for the parent level P 1 and then proceeds with a new round of MA. This iteration process ends when MA reaches the stop criteria that is met at P 0. The coarsening phase stops when the problem size reaches a threshold.
A random procedure is used to generate an initial solution at the coarsest level. The clusters of every individual in the population are assigned the value of true or false in a random manner line 7 of Algorithm 1. The projection phase is the opposite process followed during the coarsening phase. The evolutionary algorithm explained in the next section is used to improve the assignment during each level.
The projected population already contains individuals with high fitness value leading MA to converge quicker within a few generations to a better assignment lines 8 and 11 of Algorithm 1. The evolutionary algorithm proposed in this chapter and described in Algorithm 2 combines a genetic algorithms and local search. Nelder-Mead method, or downhill simplex method, was developed by John Nelder and Roger Mead in as a technique to minimize an objective function in a many-dimensional space.
The Nelder-Mead method is an iterative process that continually refines a simplex.
IEEE Congress on Evolutionary Computation
During each iteration, the algorithm evaluates the objective function to determine a score at each point in the simplex and perform one of four actions, expansion, reflection, contraction, and shrinkage. This process continues until the simplex collapses beyond a predetermined size, a maximum length of time expires, or a maximum number of iterations is reached. For the comparison we also include BFGS in this discussion.
BFGS is not a true derivative-free black-box method because it approximates derivatives using the gradient differences across iterations. BFGS is in the family of quasi-Newton methods, which are used as alternatives to Newton's method when Hessian is unavailable or too expensive to compute at every iteration.
Powell's conjugate direction method, is an algorithm proposed by Michael J. Powell in for finding a local minimum of a function. The method minimizes the function by a bi-directional search along each search vector, in turn. The bi-directional line search along each search vector can be done by e. Golden Section Search. Similar to NM and other optimizers, algorithm iterates an arbitrary number of times until no significant improvement is made.
Basin-hopping, introduced in , is a two-phase method that combines a global stepping algorithm with local minimization at each step. It is designed to mimic the natural process of energy minimization of clusters of atoms. It works well for problems with "funnel-like, but rugged" energy landscapes.
It can be considered as an ensemble that takes the Monte Carlo approach for the global phase and a local optimizer of choice for the local phase. Without the latter, this procedure is Simulated Annealing, a Monte Carlo based black-box optimization algorithm. In applied mathematics, test functions, known as artificial landscapes, are useful to evaluate characteristics of optimization algorithms.
In this section, we will apply a few well-known artificial landscape functions to test the optimization methods included in our evolutionary-optimization package. Here is a comparison of optimizer performances when the optimization dimension is 8, and all population-based methods are set to have individuals and iterations with no problem-specific hyper-parameter tuning. We see BFGS is significantly under-performing than other methods. This is expected.
BFGS estimates derivatives from iterations. We see here almost all methods, except maybe BFGS, reached a tight and accuracy optima.
DEA delivered the best performance. This landscape function is differentiable but have a rough surface. The optimization surface seems relatively straightforward, most non-population based optimizer however, fail. BH has the ingredient of Monte Carlo that creates a somewhat similar behavior as population-base algorithms. The optimization is a simple sphere.
It should be a straightforward task, and it is most suitable for derivative-aware methods, such as BFGS and gradient descent. We would like to highlight the following considerations when using the evolutionary-optimization package or any black-box derivative-free optimization algorithms. Rescaling the parameter space may help the performance significantly for some problems. Our population-based EA algorithms start with an initial set of individuals and follow an algorithmic procedure to explore the parameter space.
All encoded solutions are linearly interpolated into interval [0, 1]. This interpolation may not be the absolute best for certain problems. For example, an additional log interpolation can be applied if the parameter space is known to be positive. Absolute optima is not always the goal even when the problem formulation is optimization in nature.
The most suitable optimization subroutine is not always the one that produces the absolute optima. For example, in a DNN, we optimize a loss function and directly infer edge weights, but we don't care about edge weights themselves. It's likely multiple optima produce the same classification outcome, which is what we care about. In addition, over fitting is a common issue, so it's not advisable to pursue absolute optima. On the other hand, if we optimize a parametrized statistical model where the model parameters are the variable of interest directly, we would want the absolute optima.
Black-box optimizers are not meant to be compared with derivative-aware optimizers. If we know the analytical form of an objective function, and the derivatives first, second order are not crazy to obtain, it's always advisable to take advantage of the derivative information. This, however, is not feasible in many cases, probably the majority engineering scenarios.
In addition, black-box optimizers enables a drop-and-go solution that impose no assumption in the objective function as long as we can evaluate it's value given a parameter set, so it's lightweight and could be preferred even at the cost of time or even convergence. Black-box optimization algorithms are lightweight but, by nature, they are not capable of dealing with huge parameter dimensions.
In cases where function formulation can easily be scaled to have hundreds, thousands, or even more parameters, black-box optimizations would not work. For instance, topic modeling, structure analysis, and DNN, are in this category. Rigorous optimization approaches that make use of the derivatives should be considered, such as back propagation and gradient descent for DNN and quadratic programming in structure analysis.
If derivatives are unattainable, then sampling techniques such as MCMC could be a possibility. All test functions used in this discussion are unconstrained. The optimization methods in evolutionary-optimization are created to work with unconstrained problems. This does not mean that these optimizers are incompatible with all constraints. For example, a simple approach to incorporate range constraints is by assigning dis-favorable value, e.
This, however, is a relatively dangerous maneuver and often requires extra care during parameter initialization, otherwise optimizers may stuck in a "death" zone and never recover. We present evolutionary-optimization , an open-source toolset for derivative-free black-box optimization algorithms.