В Генетические алгоритмы Есть пять фаз
1) Начальная популяция
2) Фитнес-функция
3) Выбор
4) Кроссовер
5) Мутация
Я решил двумерную задачу, используя этот алгоритм
f(x, y) = x * sin(4x) + 1.1 * y * sin(2y)
chromosome = [x, y] --> 0 <= x <= 10
--> 0 <= y <= 10
Я нашел 5 пригодностей, используяэта функция.
x y fitness
7.8856 5.6821 -4.8358 ^
1.2689 9.2689 -4.3135 |
5.6978 0.6658 -3.3760 | Probability of beign
2.6928 4.6982 -2.4963 | selected increase
8.9621 6.9999 -0.9859 |
Тогда совокупность будет такой:
fitness population
-4.8358 5/15
-4.3135 4/15
-3.3760 3/15
-2.4963 2/15
-0.9859 1/15
, когда мы подойдем к перекрестной части, мы должны выбрать две пары случайных пар. Например,
[7.8856, 5.6821] and [2.6928, 4.6982]
После спаривания этих двух пар мы можем получить их детей хорошего или плохого качества.
Моя проблема в том, что произойдет, если мы получим две пары, которые имеют наилучшую физическую форму. Например,
[7.8856, 5.6821] and [7.8856, 5.6821]
Разве этот выбор не намного лучше, чтобы стать лучше?Это хороший кроссовер или плохой кроссовер?
Заранее спасибо!