"justify"> (мутація): виконуються оператори мутації. При цьому ознаки нащадків з імовірністю P m випадковим чином змінюються на інші. Зазначимо, що використання механізму випадкових мутацій ріднить генетичні алгоритми з таким широко відомим методом імітаційного моделювання, як метод Монте-Карло.
Крок 8 (боротьба за існування): оцінюється пристосованість нащадків (за тим же алгоритмом, що і на кроці 2).
Крок 9 : перевіряється, чи всі відібрані особини дали потомство.
Якщо ні, то відбувається перехід на крок 5 і продовжується формування нового покоління, інакше - перехід на наступний крок 10.
Крок 10 : відбувається зміна поколінь:
нащадки поміщаються в нове покоління;
найбільш пристосовані особини зі старого покоління переносяться в нове, причому для кожної з них це можливо не більше заданої кількості разів;
отримана нова популяція заміщає собою стару.
Крок 11 : перевіряється виконання умови зупину генетичного алгоритму. Вихід з генетичного алгоритму відбувається або тоді, коли нові покоління перестають істотно відрізнятися від попередніх, тобто, як кажуть, В«алгоритм сходитьсяВ», або коли пройдено задану кількість поколінь або заданий час роботи алгоритму (щоб не було В«зацикленняВ» і динамічного зависання у разі, коли рішення не може бути знайдено в заданий час).
Якщо ГА зійшовся, то це означає, що рішення знайдено, тобто отримано покоління, ідеально пристосоване до умов даної фіксованої середовища проживання.
3. Практичне застосування генетичного алгоритму
генетичний алгоритм програма популяція
У цій роботі необхідно створити приклад програми, що реалізує простий генетичний алгоритм для знаходження мінімуму функції.
Кожна змінна кодується 20 бітами. Розрахунки провести для 40 і 80 поколінь, порівняти отримані результати при розмірах популяції 8, 12 і 20 особин. p align="justify"> При виконанні даного курсового проекту необхідно враховувати, що рішення задачі є схильним до впливу випадкових величин. Тому запуск основної програми буде реалізований в циклі - 20 прогонів. Одночасно з цим обчислимо середнє значення мінімуму за ці 20 прогонів. p align="justify"> Використовуючи вихідну програму представлену в методичному посібник, створили програму для пошуку мінімуму заданої функції.
3.1 Запуск програми і отримання результатів
Текст основної програми надано у додатку А