Генетичні алгоритми в СППР

Курков Максим Семенович, аспірант денної форми навчання Київського національно економічного університету.

Генетичні алгоритми в системах підтримки прийняття рішень для фінансового аналізу на фондовому ринку.

Прогнозування є ключовим етапом при прийнятті рішень в управлінні. Кінцева ефективність будь-якого рішення залежить від послідовності подій, які виникають вже після прийняття рішення. Можливість передбачити некеровані аспекти цих подій перед прийняттям рішення дозволяє зробити найкращий вибір, який в іншому випадку міг бути не таким вдалим. Але прийняття рішення особою, що приймає рішення дуже ускладнюється великим потоком даних. Аналізувати данні можливо передоручити засобам комп’ютерної техніки.

Одним з напрямків використання новітніх технологій є створення систем підтримки прийняття рішень. Дуже важливо використання таких систем при проведенні фінансового аналізу у зв’язку з необхідністю прийняття найбільш адекватного рішення, яке може вплинути на прибутковість проекту. Дуже часто необхідно приймати рішення, маючи протиречиві данні, які мають високий рівень так званого “шуму”. Це потрібно враховувати при створенні систем підтримки прийняття рішень фінансового аналізу. Одним з виходів з подібної складної ситуації є використання апарату нечіткої логіки.

Нечітка логіка є розширенням класичної (булевої) логіки і заснована на концепції часткової правди - правди, що знаходиться десь посередині між "є" і "немає".

Що найбільш важливо при проведенні фінансового аналізу на фондовому ринку? Це по-перше складання найбільш вірогідного прогнозу поведінки цінних паперів. Прогнозування – це ключовий момент при прийнятті рішень в управлінні. Можливість передбачити некеровані аспекти подій перед прийняттям кінцевого рішення дозволяє зробити найкращий вибір, який, в іншому випадку міг бути невдалим.

Окрім традиційних статистичних методів в системах підтримки прийняття рішень для фінансового аналізу на фондовому ринку використовують розвинутий алгоритм застосування нечіткої логіки – нейронні мережі. Але е ще один цікавий метод – це генетичні алгоритми. Спробуємо розробити систему підтримки прийняття рішень, яка б була побудована на генетичних алгоритмах.

Нехай є деяка складна функція, яка залежить від деяких змінних, і необхідно знайти таке значення змінних, при яких значення функції максимально.

В нашому випадку, в задачі пошуку прийняття оптимального рішення на фондовому ринку стосовно розподілу інвестицій в цінні папери багатьох емітентів. В цієї задачі змінними будуть обсяги коштів, які вкладаються в ті чи інші цінні папери, а функцією, яку треба максимізувати – сумарний обсяг доходів особи, яка приймає рішення щодо розподілу інвестицій. Також в базі знань системи повинні міститись значення максимального та мінімального обсягу вкладень в кожний вид цінного паперу, які задають область зміни значень кожної з змінних.

Використовуючи методи генетичних алгоритмів в системі підтримки прийняття рішень фінансового аналізу необхідно передбачати в ній природні способи оптимізації. Кожний варіант вкладення в цінні папери розглядається системою як індивідуум, а прибутковість варіанту, як пристосованість даного індивідуума. Тоді, відповідно до методів генетичних алгоритмів, в процесі “еволюції” пристосованість індивідуумів буде зростати, а значить, будуть з’являтись все більш і більш прибуткові варіанти інвестування. В деякий момент еволюція повинна бути призупинена і вибір найкращого індивідуума і буде достатньо добрим рішенням задачі.

Для генерування еволюційного процесу системою підтримки прийняття рішень генерується випадкова популяція – декілька індивідуумів з випадковим набором хромосом ( числових векторів). Для цього попередньо в базу знань системи повинна заноситись інформація стосовно цінних паперів, які обертаються на ринку.

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

Вся інформація стосовно емітентів повинна завантажуватись в окрему базу даних, з якої по мірі необхідності вона береться для проведення аналізу. Як основне джерело інформації використовується щорічний звіт підприємства. Звіт містить всю необхідну інформацію стосовно фінансових показників та баланс підприємства. Для аналізу фінансового стану підприємства, а також розрахунків ступеню ризику слід використовувати ще один апарат нечіткої логіки – нейронні мережі. Саме за допомогою апарату нейронних мереж система може зробити виключення тих емітентів, інвестування в цінні папери яких є недоцільним.

Математично нейронні мережі можна розглядати як клас методів статистичного моделювання, що у свою чергу можна розділити на три класи: оцінка щільності ймовірності, класифікація і регресія. Передбачається, що система підтримки та прийняття рішень (СППР) може бути цілком реалізована на нейронній мережі. Нейронна мережа СППР представляє собою набір нейронів, які з’єднані між собою. Передаточні функції всіх нейронів можуть змінюватись, а ваги є параметрами мережі і не можуть змінюватись. Нейронна мережа СППР обирає ті сигнали, які мають максимальний рівень. Далі ті емітенти, які мають максимальний рівень сигналу повинні розглядатись як данні для обробки генетичним алгоритмом системи.

Ми отримали данні щодо курсів цінних паперів, які отримуються з торговельної мережі та данні щодо орієнтовних цін паперів, які не обертаються постійно на ринку, а інформація про їх ціну підготована нейронною мережею. Далі обчислюється прибутковість кожного з цінних паперів та завантажується до бази даних.

Таким чином ми створили хромосоми для роботи нашого генетичного алгоритму. Для нашої СППР хромосома буде числовим вектором, який відповідає потребам, щодо наявності інформації про прибутковість в деякий історичний період. Доходи за цінними паперами і будуть генами даних хромосом. Система генерує випадкові хромосоми для обробки їх генетичним алгоритмом. Далі вводяться такі поняття як кросинговер та мутація.

Мутація – це змінювання хромосоми, яке викликане випадковою зміною її позицій (генів). В системі емулюється мутація шляхом випадкової зміни одного з генів – векторів.

Кросинговер є операцією, при якій з двох хромосом породжується одна або декілька нових. В найпростішому випадку в генетичному алгоритмі кросинговер реалізується також як і в біології. При цьому хромосоми розрізаються і обмінюються частинами між собою. Блок схему генетичного алгоритму системи представлена на Рис.1.

В даній схемі вказані всі етапи роботи генетичного алгоритму: створення початкової популяції, відбір, кросинговер, мутація та поява нової популяції.

Блок-схема генетичного алгоритму

Створення початкової

популяції


Відбір



Кросинговер



Мутація

Перехід до нового

покоління

Відповідь

Рис. 1.

З початку системою генерується випадкова популяція індивідуумів, тобто деякий набір рішень задачі. Далі моделюється розмноження в межах популяції. Для цього система обирає декілька пар “індивідуумів”, проводиться кросинговер між хромосомами в кожній парі, а отримані нові хромосоми розміщується в нову популяцію. В генетичному алгоритмі зберігається основний принцип відбору – чим більше пристосований індивідуум, тим більше ймовірність, що він буде брати участь у наступному кросинговері. Далі система підтримки прийняття рішень моделює мутації, тобто випадково змінює деякі “гени” у вибраних векторах нового покоління. Далі стара популяція векторів знищується і система переходить до розгляду наступного покоління.

Популяція наступного покоління містить ту ж кількість векторів, що і початкова, але у зв’язку з отбором загальна прибутковість по ній вище, ніж в попередній популяції. Тепер система повторює описані процеси відбору, кросинговеру та мутації для нової популяції.

В кожному наступному поколінні ми будемо бачити виникнення зовсім нових рішень задачі. Серед них будуть як добрі, так і погані, але завдяки відбору кількість добрих рішень буде зростати. Імітуючи еволюцію система підтримки прийняття рішень буде завжди зберігати життя найкращому з “індивідуумів” наступного покоління. Така методика називається “стратегією елітизму”.

Таким чином на деякому етапі покращення якостей рішень задачі буде уповільнюватись і далі стане дуже повільним. Тоді з отриманих наборів “індивідуумів” відбирається ті, які надає найбільше значення функції прибутковості. Отримані відповіді і є рекомендаціями системи для проведення процесу інвестування в цінні папери.

Приведений варіант системи лише один з багатьох, які можна використовувати при створенні універсальної системи фінансового аналізу. На жаль на вітчизняному ринку ці системи поки що не знайшли широкого застосування. Насамперед це пов’язано з недосконалістю фінансового ринку. Але це не означає, що подібні системи не знайдуть місця в Україні. По мірі розвитку фінансового ринку постає питання про створення СППР на базі генетичних алгоритмів та інших методах нечіткої логіки на Україні.

Список літератури.

    [Диссер] Жданов А.А. Принципи автономного адаптивного керування. Дисертація на конкурс вченого ступеню доктора фізико-математичних наук. -Москва.: ОЦ РАН, 1993.-с. 318

    В.Брауэр. Введення в теорію кінцевих автоматів.-М.: "Радіо і зв'язок", 1987. -с. 392

    McCulloch W.W., Pitts W. 1943. A logical calculus of the ideas imminent in nervous activiti. Bulletinn of Mathematical biophysics 5: 115-33. (Російський переклад: Маккалок У.С., Питтс У. Логічне числення ідей, що відносяться до нервової діяльності. Автомати. - М: ІЛ., 1956. -c. 296)

    Уоссермен Ф.. Нейрокомпьютерна техніка. - М.: Світ, 1992, -c. 231

    Герман О.В. Введення в теорію експертних систем і опрацювання знань. – Мінськ: ДизайнПРО, 1995. -c. 205