Search
The goal of this lab exercise is to implement an evolutionary algorithm for constrained optimization problems. Likewise in NSGA-II, also here the whole task consists of only a few modifications to the standard genetic algorithm. In particular, you should implement two variants of the adaptive penalty:
If you do not complete all parts during the lab time, finish the work at home.
The weight $r_g(t)$ is adapted in time as follows:
$\beta_1, \beta_2 > 1$ and $\beta_1 \neq \beta_2$
Implement this adaptive method.
Implement a method for computing the overall fitness of the individual in the form $\psi(x) = f(x) + r_g(t)*\sum_{i=1}^{m+p}G_i(x)$, where
Use the implemented adaptive penalty method within an evolutionary algorithm with the generational replacement strategy.
Based on this article.
Assume a penalized fitness function $$\psi(x) = f(x) + \alpha\sum_{i=1}^{m+p}G_i(x).$$
New value of $\alpha(t+1)$ is either
where $c>1$ is a user-defined parameter (a recommended value is around 1.1), and $\tau_{target}$ is a desired proportion of feasible individuals in population (a recommended value is around 0.6).
This method first sorts individuals in the current population from the best to the worst one using a stochastic Bubble-sort-like procedure. On such a population, a standard tournament selection method can be applied to choose an individual on the basis the lower rank of the individual, the better the individual is.
Implement the stochastic Bubble-sort method, for details see the lecture slides.
Use the implemented stochastic ranking procedure together with the rank-based tournament selection within an evolutionary algorithm with the generational replacement strategy.
As the test problem we will use real-valued function optimizations. In particular, problems g06, g08, g11 a g24 from problem_definitions.
Use the already implemented operators for real-valued representation.
Problem g06:
Problem g08:
Problem g11:
Problem g24: