УДК 519.87
ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ ГЕНЕТИЧЕСКОГО АЛГОРИТМА ДЛЯ ПОИСКА ОПТИМАЛЬНОЙ СТРАТЕГИИ ИНТЕЛЛЕКТУАЛЬНОГО АГЕНТА
И. А. Федоренко1, В. В. Становов2
1Краевая школа-интернат по работе с одаренными детьми «Школа космонавтики» Российская Федерация, 662971, Красноярский край, г. Железногорск, ул. Красноярская, 36, а/я 222 E-mail: iliasfedorenko@mail.ru 2Сибирский государственный университет науки и технологий имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
Е-mail: vladimirstanovov@yandex.ru
Задачи машинного обучения очень распространены в нашем мире. Допустим, что объект находится на далекой планете, сигнал до которой идет очень долго, можно задать ему алгоритм действий для исследования соответствующей местности. Проведены исследования эффективности генетического алгоритма в задачах поиска оптимальной стратегии.
Ключевые слова: генетический алгоритм, машинное обучение, обучение с подкреплением, поиск оптимальной стратегии.
THE INVESTIGATION OF GENETIC ALGORITHM EFFICIENCY FOR FINDING INTELLIGENT AGENT'S OPTIMAL STRATEGY
I. A. Fedorenko1, V. V. Stanovov2
1Regional boarding school for talented children "Cosmonautics school" P.O.B. 222, 36, Krasnoyarskaya Str., Zheleznogorsk, Krasnoyarskiy kray, 662971, Russian Federation
E-mail: iliasfedorenko@mail.ru 2Reshetnev Siberian State University of Science and Technology 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation Е-mail: vladimirstanovov@yandex.ru
Nowadays, machine learning is important. For example, object is on a far planet and signal distributes very long, we can set a special algorithm for researching terrain. The research of genetic algorithm efficiency for solving the problem of finding optimal strategy is provided.
Keywords: genetic algorithm, machine learning, reinforcement learning, optimal strategy search.
Введение. Задачи машинного обучения очень распространены в нашем мире [1]. Допустим, что объект находится на далекой планете, сигнал до которой идет очень долго, можно задать ему алгоритм действий для исследования соответствующей местности. В работе были проведены исследования эффективности генетического алгоритма [2] в задачах поиска оптимальной стратегии.
Постановка задачи. Агенты в данном исследовании обучались способом, называемым обучение с подкреплением [3]. Агент совершает какое-то действие, а среда взаимодействует на него, изменяя некоторые его параметры и передает ему некоторое состояние, в котором агент находится в этой среде на данный момент.
Исследуемая зона - клетчатое поле, ограниченное стенками. В исследовании был задан агент, имеющих ряд атрибутов: здоровье, координаты, набор команд. Набор команд - алгоритм,
Актуальные проблемы авиации и космонавтики - 2018. Том 2
по которому и действует агент. Команды бывают 4 видов: пойти вверх, пойти вправо, пойти вниз и пойти влево. Состояние, передаваемое средой - окружение агента. Оно состоит из 4 цифр, обозначающих объекты в соседних клетках. В зависимости от них устанавливается указатель на команду. На каждое состояние было задано 2 действия, которые меняются между собой после каждого действия. На поле присутствует следующий перечень объектов: фрукт (добавляет здоровье агенту), яд (отнимает здоровье), другие агенты, стена, пустая клетка. Каждый ход у агента отнимается 1 единица здоровья. Задача агента - поддерживать уровень своего здоровья выше 0 как можно дольше, так как после того, как этот уровень опустится ниже 0, агент погибнет.
Параметры обучения и тестирования агентов:
1. Поле 18 Х 18;
2. Максимальное здоровье агента - 30;
3. Фрукт восстанавливает 5 очков здоровья;
4. Фрукт появляется каждые 2 хода;
5. Яд отнимает 3 очка здоровья;
6. Яд появляется каждые 3 хода;
7. Всего итераций - 100000;
8. Количество агентов на поле - 10.
Для обучения агентов был использован генетический алгоритм. Были исследованы различные его настройки, для того, чтобы узнать лучший вариант для обучения агентов. У алгоритма есть 3 основных стадии: селекция, скрещивание и мутация. Были исследованы по 3 настройки каждой основной стадии. Рассмотрим их.
Селекция (турнирная):
1. 4 лучших;
2. 2 лучших, 2 худших;
3. 4 худших.
Скрещивание:
1. Скрещивание не проводилось, брался один из лучших и просто копировался в новый набор. Так повторялось, пока набор из 10 индивидов не заполнялся.
2. Одноточечное;
3. Каждая команда бралась случайным образом у двух случайных индивидов с равной вероятностью, причем индивиды выбирались заранее (равномерное).
Мутация:
1. Средняя (1 / 512);
2. Сильная (2 / 512);
3. Слабая (1 / (2 • 512)).
Результаты исследования представлены в табл. 1, табл. 2, табл. 3 для каждого из варианта скрещиваний.
Таблица 1
Отбор 4 лучших
Скрещивание Мутация Итерация Кол-во ходов
Равномерное 1 / 512 70140 115
Равномерное 2 / 512 30412 124
Равномерное 1 / (2 • 512) 29033 115
Взять случайного из выбранных 1 / 512 68493 122
Взять случайного из выбранных 2 / 512 27364 110
Взять случайного из выбранных 1 / (2 • 512) 99378 116
Одноточечное 1 / 512 65615 116
Одноточечное 2 / 512 64301 106
Одноточечное 1 / (2 • 512) 35414 171
Таблица 2
Отбор 2 лучших и 2 худших
Скрещивание Мутация Итерация Кол-во ходов
Равномерное 1 / 512 71613 128
Равномерное 2 / 512 96352 104
Равномерное 1 / (2 512) 91834 104
Взять случайного из выбранных 1 / 512 71631 118
Взять случайного из выбранных 2 / 512 75462 116
Взять случайного из выбранных 1 / (2 512) 92867 134
Одноточечное 1 / 512 63033 118
Одноточечное 2 / 512 31759 119
Одноточечное 1 / (2 512) 55174 140
Таблица 3
Отбор 4 худших
Скрещивание Мутация Итерация Кол-во ходов
Равномерное 1 / 512 45805 90
Равномерное 2 / 512 62427 84
Равномерное 1 / (2 512) 16757 72
Взять случайного из выбранных 1 / 512 16627 96
Взять случайного из выбранных 2 / 512 89935 94
Взять случайного из выбранных 1 / (2 512) 17589 84
Одноточечное 1 / 512 83218 78
Одноточечное 2 / 512 18510 78
Одноточечное 1 / (2 512) 73432 82
Выводы.
1. Реализована система обучения и тестирования агентов.
2. Агенту удалось прожить 171 ход.
3. Были сравнены эффективность различных наборов настроек генетического алгоритма.
4. Лучше всего с задачей справился генетический алгоритм с настройками: низкая мутация, скрещивание путем деления на две части двух случайных индивидов.
5. При некоторых условиях нужно выбирать не только самых лучших агентов, но и агентов, показавших результат ниже.
Библиографические ссылки
1. Machinelearning.ru [Электронный ресурс]. URL: http://www.machinelearning.ru/wiki/ index.php?title=%D0%9C%D0%B0%D1%88%D0%B8%D0%BD%D0%BD%D0%BE%D0%B5_%D 0%BE%D0%B 1 %D 1 %83%D 1 %87%D0%B 5%D0%BD%D0%B 8%D0%B 5 (дата обращения: 20.03.2018).
2. Laboratory of Mathematical logic at PDMI [Электронный ресурс]. URL: https://logic. pdmi.ras.ru/~sergey/teaching/mlemc12/k-reinforcement.pdf (дата обращения: 25.03.2018).
3. Habrahabr [Электронный ресурс]. URL: https://habrahabr.ru/post/128704/ (дата обращения: 10.03.2018).
© Федоренко И. А., Становов В. В., 2018