Page 49 - 4521
P. 49
стю рішення. При цьому простір параметрів повинен бути
дискретизований так, щоб відстань між вузлами дискретизації
відповідала необхідній точності. Припустимо, по умові за-
вдання з функції від двох змінних x 1 і x 2, визначеній на прямо-
кутній області D = {0 < x 1 < 1; 0 < x 2 < 1}, потрібно локалізува-
*
-6
ти вирішення x з точністю по кожному з параметрів 10 . Для
досягнення такої точності простір параметрів дискретизуется
6
-6
рівномірною сіткою з (b і-а і)/(10 ) ~ 10 вузлами по кожній
координаті. Закодувати таку кількість вузлів можна J = 20 бі-
J
6
тами, де J визначається з умови 10 < 2 +1. Виходить, що зага-
льна довжина бінарного рядка кодування для двовимірного
завдання складе 2 ×20 = 40 біт. При такому способі кодування
значення варіаційних параметрів рішень розташовуватимуться
по вузлах сітки, дискретизующої D. Відповідно, якщо коду-
вання двох рішень співпадатимуть, то співпадатимуть і зна-
чення параметрів обох рішень.
У багатьох випадках така модель може виявитися не-
ефективною. Крім того, що вона достатньо громіздка (яким
буде хеммінговий простір пошуку для завдання з сотнею па-
раметрів?!). Практика показує, що довге кодування підвищує
вірогідність «передчасної» збіжності. До того ж застосування
довгих кодувань зовсім не гарантує, що знайдене рішення во-
лодітиме необхідною точністю, оскільки цього, в принципі, не
гарантує сам ГА. Згідно цьому, для того, щоб застосовувати
ГА до завдання, спочатку вибирається метод кодування рішень
у вигляді рядка. Фіксована довжина (J-біт) двійкового коду-
J
вання означає, що будь-який з 2 можливого бінарного рядка
представляє можливе рішення задачі. По суті, таке кодування
відповідає розбиттю простору параметрів на гіперкуби, яким
відповідають унікальні комбінації бітів в рядку-хромосомі.
Ідея ГА полягає в тому, щоб, маніпулюючи наявною сукупніс-
тю бінарних уявлень, за допомогою ряду генетичних операто-
рів отримувати нові рядки, тобто переміщатися в нові гіперку-
бики. Отримавши бінарну комбінацію для нового вирішення,
формується вектор (операція декодування) із значеннями з
48