Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CCC / конспект_ССС.doc
Скачиваний:
65
Добавлен:
06.06.2015
Размер:
2.23 Mб
Скачать

4.2. Генетичний алгоритм

3 біології відомо, що генетичний код організму називається його генотипом, а фізична реалізація коду - фенотипом. Ці та інші визначення є базовими в термінології ГА, що не означає точного наслідування біологічних процесів, і лише в деякому наближенні ГА можна вважати їх моделлю. У біологічній хромосомі інформація закодована в ланцюжку ДНК, що складається з довгої послідовності чотирьох елементів: аденіну, цитозину, гуаніну та тиміну.

Початковий генетичний код організму записують, використовуючи чотири букви (A, C, G, T) алфавіту. B ГА хромосома представлена рядком, записаним в двохелементному алфавіті, що складається з нуля та одиниці.

До базових операторів ГА відносять кросовер (рекомбінації, кросинговер), мутацію та інверсію. 3 їх допомогою здійснюється домінуюче розмноження краще адаптованих до зовнішнього середовища індивідів, а також одержання індивідів з характеристиками, які були відсутні у індивідів попередніх поколінь. B оптимізаційних задачах, таким чином, реалізується наближення до оптимального розв'язку і виходу цільової функції з локальних екстремумів.

Генетичний алгоритм (ГА) є одним із методів знаходження екстремумів складних функцій. ГА – складова частина еволюційного моделювання як наукового напряму, що базується на принципах природного відбору за Ч. Дарвіном. ГА вперше був запропонований в 1975 році в Мічиганському університеті Джоном Холландом. Він отримав назву репродуктивний план Холланда і надалі активно використовувався як базовий алгоритм в еволюційних обчисленнях.

Подальший розвиток ГА, як власне і назву, отримав в роботах Девіда Голдберга (Goldberg D.E.) в лабораторії генетичних алгоритмів Іллінойського університету, Кеннета де Йонга (de Jong K.A.) в університеті Джорджа Мейсона, штат Вірджинія, США та їх учнів.

Розглянемо базовий ГА.

Крок 1. Ініціалізація початкового моменту часу t = 0.

Крок 2. Випадковим чином сформувати початкову популяцію, що складається з індивідів..

Крок 3. Обчислити пристосованість кожного індивіда ,та популяції в цілому, де- фітнес-функція (fitness-function). Значення цієї функції вказує на те, наскільки оптимальним є індивід, що описується даною хромосомою, для розв'язання задачі.

Крок 4. За певним принципом обрати індивіда з популяції.

Крок 5. За тим самим принципом обрати другого індивіда з популяції та з певною, наперед заданою ймовірністю (ймовірністю кросоверу) виконати операторкросоверу.

Крок 6. 3 ймовірністю 0,5 з відібрати одного індивіда.

Крок 7. 3 певною наперед заданою ймовірністю (ймовірністю мутації ) виконати оператор мутації.

Крок 8. 3 певною наперед заданою ймовірністю (ймовірністю інверсії ) виконати оператор інверсії.

Крок 9. Помістити отриману хромосому в популяцію .

Крок 10. Оцінити пристосованість нового індивіда у порівняні з іншими індивідами. Вилучити з популяції найгірш пристосовану особину .

Крок 11. Збільшити номер поточної епохи .

Крок 12. Якщо виконується умова зупинки (гранична кількість епох, збіжність популяції, граничне значення часу роботи алгоритму), то завершити роботу, інакше перейти на крок 3.

Соседние файлы в папке CCC