УДК 004.942
ПРИМЕНЕНИЕ МЕТОДА РОЯ ЧАСТИЦ И ГЕНЕТИЧЕСКОГО АЛГОРИТМА ДЛЯ РЕШЕНИЯ ЗАДАЧИ ОПРЕДЕЛЕНИЯ ПЛОЩАДИ ЛЕСНОГО ПОЖАРА
Р. С. Шайдуров1, К. А. Андреева2 Научный руководитель - Е. П. Моргунов
Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева
Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31 Е-mail: [email protected], [email protected]
Рассматривается реализация и сравнительный анализ эффективности метода роя частиц и генетического алгоритма для решения задачи определения площади лесного пожара. Также модификация базовых алгоритмов с целью повышения их эффективности посредством реализации нейронной сети, обучающейся выбранными методами.
Ключевые слова: нейронная сеть, генетический алгоритм, метод роя частиц, обучение.
APPLICATION OF PARTICLE SWARM OPTIMIZATION AND GENETIC ALGORITHM FOR SOLVING THE PROBLEM OF DETERMINING THE FOREST FIRES AREA
R. S. Shaydurov1, K. A. Andreeva2 Scientific Supervisor - E. P. Morgunov
Reshetnev Siberian State Aerospace University 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation E-mail: [email protected], [email protected]
The article describes implementation and comparative analysis of the effectiveness of particle swarm optimization and genetic algorithm for solving the problem of determining the forest fires area. Also, modification of these basic algorithms for increasing their effectiveness through the implementation of a neural network learning by chosen methods.
Keywords: neural network, genetic algorithm, particle swarm optimization, learning.
В работе поставлена задача определения площади лесного пожара с помощью оптимизационных алгоритмов: генетический алгоритм, метод роя частиц для выбора лучшего из них [1].
Определение площади лесного пожара складывается из анализа следующих факторов для каждой области: координаты области, день недели, вероятность возгорания (FFMC), влажность (DMC) и относительная влажность (RH), засушливость (DC), первоначальное распространение (ISI), температура, ветреность, дождливость. Таким образом, необходимо предугадать площадь области возгорания с помощью рассматриваемых алгоритмов, натренировав их на реальных тестовых наборах данных (рис. 1) [3].
Генетический алгоритм для решения данной задачи был реализован в среде разработки Microsoft Visual Studio на языке C# со следующими параметрами: количество индивидов в поколении -30; элитизм - 3 индивида; метод селекции - рулетка; метод скрещивания - одноточечный; мутация -15 %; критерий остановки - количество поколений (3000).
х Y 1th day FFMC dmc dc isi temp rh wind rain [area 7 5 3 5 86.2 26.2 94.3 5.1 8.2 51 6.7 0 0 7 4 10 2 90.6 35.4 669.1 6.7 IB 33 0.9 0 0
7 4 10 6 90.6 43.7 686.9 6.7 14.6 33 1.3 0 0
8 6 3 5 91.7 33.3 77.5 9 6. 3 97 4 0.2 0
8 6 3 7 89.3 51.3 102.2 9.6 11.4 99 1.8 0 0
Рис. 1. Пример тестового набора данных
Секция «Программные средства и информационные технологии»
Данный алгоритм оказался не самым эффективным, так как даже при большом количестве поколений удовлетворительный уровень ошибки не был достигнут (рис. 2). Однако, значение начальной ошибки достаточно мало (-10000).
Рис. 2. График зависимости ошибки генетического алгоритма от количества поколений
Метод роя частиц был также реализован в среде разработки Microsoft Visual Studio на языке C# с параметрами: количество частиц в рое - 30 [2]; критерий остановки - количество итераций (500); коэффициент инерции частицы - 0.729 (универсальный); коэффициент локальной сходимости -1.4944 (универсальный), 0.5, 2; коэффициент глобальной сходимости - 1.4944 (универсальный), 0.6, 2.
Метод роя частиц имеет достаточно быструю сходимость при большой начальной ошибке. На рис. 3 видно, что алгоритм с 9513970 сошелся к 24155.88. Также на рис. 3 представлено сравнение работы алгоритма с разными вариантами параметров, где наилучшими из них для данной задачи являются: коэффициент локальной сходимости - 0.5, коэффициент глобальной сходимости - 0.6.
Таким образом, для решения данной задачи не один из предложенных методов не явился достаточно эффективным в его базовой реализации, так как величина результирующей ошибки в обоих случаях была достаточно большой. Поэтому для более эффективного решения задачи необходимо уйти от линейной реализации данных алгоритмов и использовать их в качестве алгоритмов обучения нейронной сети.
Однонаправленная нейронная сеть типа многослойный перцептрон с одним скрытым слоем была реализована в среде разработки Microsoft Visual Studio на языке C#. Каждый перцептрон имеет массив весов, соответствующий размеру входного вектора, биас, ошибку и выход. Начальные значения весов задаются случайными числами в диапазоне [-0.3; 0.3]. Для расчета выхода перцептрона используется следующая сигмоидальная функция [2]:
S = -
1
1 +
+ bias
Результаты работы реализованной программы после 1 и 10 секунд запуска представлены на рис. 4 и 5 соответственно. Из графиков видно, что метод роя частиц работает и сходится значительно быстрее генетического алгоритма, хотя и начинает с большей ошибки.
Рис. 3. Экспериментальные результаты метода роя частиц с разными параметрами
Is
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 S2 SS S8 61 64 67 70
-349 -'
-Р$0 -6А
Рис. 4. Сравнительный график работы алгоритмов при запуске на 1 секунду
105
aNCOClOHNmttiniaNtU^OriMnlifino Nfl'iliO^iriSOlHnimS^rlrfllflSO^I'ilSICON HNifiiiMHHHHHiS^NlMNriimtniVlrf'i'irrrfUiUl
Рис. 5. Сравнительный график работы алгоритмов при запуске на 10 секунд
Таким образом, по результатам исследований можно сделать вывод, что для решения поставленной задачи, реализация базовых линейных алгоритмов не дала удовлетворительных результатов, так как минимальное значение ошибки было достаточно большим (24155.88 - PSO и 7415.93 - GA). Но, несмотря на это, при применении данных алгоритмов для обучения нейронной сети были достигнуты хорошие результаты, а именно: величина начальной и результирующей ошибок сократилась. Метод роя частиц оказался более результативным для решения данной задачи.
Библиографические ссылки
1. Аверкин, А. Н., Гаазе-Рапопорт М. Г., Поспелов Д. А. Толковый словарь по искусственному интеллекту. М. : Радио и связь, 1992. 256 с.
2. Осипов Г. С. Искусственный интеллект: состояние исследований и взгляд в будущее. СПб. : Питер, 2008. 126 с.
3. Рассел С. Искусственный интеллект: современный подход // Норвиг П. Artificial Intelligence: a Modern Approach / пер. с англ. и ред. К. А. Птицына. 2-е изд. М. : Вильямс, 2006. 1408 с.
© Шайдуров Р. С., Андреева К. А., 2016