
- •Введення
- •Лабораторна робота №1 Основи генетичних алгоритмів. Простій генетичний алгоритм Загальні відомості
- •Генетичні оператори
- •Репродукція
- •Оператор кросинговера (схрещування)
- •Мутація
- •Представлення рішень в двійковій формі
- •Логарифмічне кодування
- •Порядок виконання лабораторної роботи
- •Завдання
- •Контрольні запитання
- •Оператори кросинговеру
- •Оператори мутації
- •Тестові приклади
- •Порядок виконання лабораторної роботи
- •Контрольні питання
- •Лабораторна робота №3 Рішення завдання комівояжера за допомогою генетичних алгоритмів Загальні відомості
- •Представлення сусідства
- •Порядкове представлення
- •Шляхове представлення
- •Завдання
- •Контрольні питання
- •Лабораторна робота №4 Генетичне програмування Загальні відомості
- •Термінальна множина
- •Функціональна множина
- •Структури для представлення програм
- •Деревовидна структура
- •Лінійні структури
- •Графоподібні структури
- •Ініціалізація початкової популяції
- •Ініціалізація деревовидних структур
- •Ініціалізація лінійних структур
- •Кросинговер в генетичному програмуванні
- •Виконання ок на деревовидних структурах
- •Ок на лінійних структурах
- •Виконання ок для графоподібних структурах
- •Мутація в генетичному програмуванні
- •Виконання мутації на деревовидних структурах
- •Виконання мутації на лінійних структурах
- •Виконання мутації на графоподібних структурах
- •Фітнес-функція в генетичному програмуванні
- •Інтрони
- •Загальний алгоритм генетичного програмування
- •Порядок виконання лабораторної роботи
- •Завдання
- •Контрольні запитання
- •Литература
- •Методичнi вказiвки До виконання лабораторних робіт
Логарифмічне кодування
Даний
тип кодування застосовується для
скорочення довжини хромосоми. При цьому
перший біт (a) кодової послідовності
використовується для знаку показової
функції, другий біт (b) – для знаку міри
цієї функції, і останні біти (str)
представляють значення самої міри.
Таким чином, двійковий код <а b str>
представляє дійсне число
. Тут
означає
десяткове число, представлене двійковим
кодом str. Наприклад, двійковий код <10110>
представляє дійсне число r=
. Слід зазначити, що при цьому кодуванні
п'ять бітів дозволяє кодувати дійсні
числа з інтервалу [-e7,
e7],
що значно більше, ніж метод кодування
дійсних чисел, описаний вище.
Порядок виконання лабораторної роботи
При домашній підготовці:
вивчити теоретичний матеріал;
ознайомитися з типами кодування хромосоми;
розглянути способи виконання операторів репродукції, кросинговеру і мутації;
виконати індивідуальне завдання на будь-якій мові високого рівня з необхідними коментарями і виводами.
2. Під час заняття:
продемонструвати результати виконання роботи;
отримати допуск до захисту лабораторної роботи.
3. Захистити звіт з лабораторної роботи.
Завдання
1. Розробити простій генетичний алгоритм для знаходження оптимуму згідно до варіанту функції від однієї змінної (таб. 1.1).
Вигляд екстремуму:
Варіант
|
Вигляд екстремуму
|
<=15 |
Максимум |
>15 |
Мінімум |
2. Дослідити залежність часу пошуку, числа поколінь (генерацій), точності знаходження рішення від основних параметрів генетичного алгоритму:
число хромосом у популяції
вірогідність кросинговеру, мутації.
3. Вивести на екран графік даної функції з визначенням знайденого екстремуму для кожного покоління.
4. Порівняти знайдене рішення з дійсним.
Таблица 1.1. Індивідуальні завдання.
Варіант |
функція |
діапазон |
1 |
(1.85-х)*cos(3.5x-0.5) |
x |
2 |
Cos(exp(x))/sin(ln(x)) |
x [2,4] |
3 |
Sin(x)/x2 |
x [3.1,20] |
4 |
Sin(2x)/x2 |
x [-20,-3.1] |
5 |
Cos(2x)/x2 |
x [-20,-2.3] |
6 |
(x-1)cos(3x-15) |
x [-10,10] |
7 |
Ln(x)cos(3x-15) |
x [1,10] |
8 |
Cos(3x-15)/abs(x) =0 |
x [-10,-0.3),(0.3,10] x [-0.3,0.3] |
9 |
Cos(3x-15)*x |
x [-9.6,9.1] |
10 |
Sin(x)/(1+exp(-x)) |
x [0.5,10] |
11 |
Cos(x)/ (1+exp(-x) |
x [0.5,10] |
12 |
(Exp(x)-exp(-x))cos(x)/ (exp(x)+exp(-x)) |
x [-5,5] |
13 |
(Exp(-x)-exp(x))cos(x)/ (exp(x)+exp(-x)) |
x [-5,5] |
14 |
cos(x-0.5)/abs(x) |
x [-10,0),(0,10] , min |
15 |
Cos(2x)/abs(x-2) |
x [-10,2),(2,10], max |
Зміст звіту.
Титульний аркуш.
Індивідуальне завдання за варіантом.
Короткі теоретичні відомості.
Програма і результати виконання індивідуального завдання з коментарями і виводами.
Письмова відповідь на контрольне запитання згідно варіанту (номер контрольного запитання є номером варіанта).