Table of Contents

Constrained optimization

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.

Penalty weight adaptation

Option 1

The weight $r_g(t)$ is adapted in time as follows:

$\beta_1, \beta_2 > 1$ a $\beta_1 \neq \beta_2$

Implement this adaptive method.

Input Current $r_g(t)$
Input Information about feasibility of the best solution in the last $k$ generations
Output Updated weight $r_g(t+1)$

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

Input $f(x)$
Input $G_i(x)$ pro $i = 1 ... m+k$
Input $r_g(t)$
Output fitness

Use the implemented adaptive penalty method within an evolutionary algorithm with the generational replacement strategy.

Option 2

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).

Stochastic Ranking

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.

Input Population of individuals; each assigned its values $f(x)$ a $\sum_{i=1}^{m+p}G_i(x)$
Output Population sorted from the best to the worst one

Use the implemented stochastic ranking procedure together with the rank-based tournament selection within an evolutionary algorithm with the generational replacement strategy.

Experimental evaluation

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: