Научная статья на тему 'Разработка адаптивного эволюционного алгоритма оптимизации на основе аппарата нечеткой логики'

Разработка адаптивного эволюционного алгоритма оптимизации на основе аппарата нечеткой логики Текст научной статьи по специальности «Математика»

CC BY
562
96
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕНЕТИЧЕСКИЕ АЛГОРИТМЫ / МНОГОПАРАМЕТРИЧЕСКАЯ ОПТИМИЗАЦИЯ / НЕЧЁТКАЯ ЛОГИКА / ИСКУССТВЕННЫЙ ИНТЕЛЛЕКТ / GENETIC ALGORITHMS / MULTIPARAMETRIC OPTIMIZATION / FUZZY LOGIC / ARTIFICIAL INTELLIGENCE

Аннотация научной статьи по математике, автор научной работы — Белоглазов Денис Александрович, Коберси Искандар Сулейман, Финаев Валерий Иванович

Рассмотрены особенности проектирования генетических алгоритмов, применяемых для решения разнообразных оптимизационных задач. Выполнен анализ основных этапов функционирования генетических алгоритмов, определен способ отбора решений в новую популяцию, форма и параметры операторов случайных изменений. Разработан нечеткий контроллер, динамически изменяющий вероятности применения операторов мутации, скрещивания, позволяющий улучшить генетическое разнообразие формируемых решений, процесс сходимости алгоритма. Приведены результаты экспериментальных исследований эффективности предложенного генетического алгоритма для решения задач оптимизации функций многих переменных, обучении нейронных сетей.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DEVELOPMENT OF ADAPTIVE EVOLUTIONARY ALGORITHM OPTIMIZATION BASED ON FUZZY LOGIC

In this work the design features of genetic algorithms applied to solve a variety of optimization problems. You are a full analysis of the main phase of the genetic algorithm, we define a method of selection decisions in a new population, the shape and parameters of the operators accidental changes. Designed fuzzy controller of changing dynamically the likelihood of mutation operators, crossover, improve genetic diversity generated solutions, the process of convergence of the algorithm. The results of experimental studies effectiveness of the proposed genetic algorithm for solving the optimization of functions of several variables, training of neural networks.

Текст научной работы на тему «Разработка адаптивного эволюционного алгоритма оптимизации на основе аппарата нечеткой логики»

УДК 62-551

Д.А. Белоглазов, И.С. Коберси, В.И. Финаев

РАЗРАБОТКА АДАПТИВНОГО ЭВОЛЮЦИОННОГО АЛГОРИТМА

ОПТИМИЗАЦИИ НА ОСНОВЕ АППАРАТА НЕЧЕТКОЙ ЛОГИКИ

Рассмотрены особенности проектирования генетических алгоритмов, применяемых для решения разнообразных оптимизационных задач. Выполнен анализ основных этапов функционирования генетических алгоритмов, определен способ отбора решений в новую популяцию, форма и параметры операторов случайных изменений. Разработан нечеткий контроллер, динамически изменяющий вероятности применения операторов мутации, скрещивания, позволяющий улучшить генетическое разнообразие формируемых решений, процесс сходимости алгоритма. Приведены результаты экспериментальных исследований эффективности предложенного генетического алгоритма для решения задач оптимизации функций многих переменных, обучении нейронных сетей.

Генетические алгоритмы; многопараметрическая оптимизация; нечёткая логика; искусственный интеллект.

D.A. Beloglazov, I.S. Kobersi, V.I. Finaev

DEVELOPMENT OF ADAPTIVE EVOLUTIONARY ALGORITHM OPTIMIZATION BASED ON FUZZY LOGIC

In this work the design features of genetic algorithms applied to solve a variety of optimization problems. You are a full analysis of the main phase of the genetic algorithm, we define a method of selection decisions in a new population, the shape and parameters of the operators accidental changes. Designed fuzzy controller of changing dynamically the likelihood of mutation operators, crossover, improve genetic diversity generated solutions, the process of convergence of the algorithm. The results of experimental studies effectiveness of the proposed genetic algorithm for solving the optimization of functions of several variables, training of neural networks.

Genetic algorithms; multiparametric optimization; fuzzy logic; artificial intelligence.

Задача разработки эволюционного алгоритма оптимизации. В настоящее время существует большой класс оптимизационных задач, которые могут быть успешно решены с применением генетических алгоритмов. Особенностью генетических алгоритмов (ГА) является учет предметной специфики их применения путем внесения изменений в параметры алгоритма [1, 3, 4]. Проблема выбора совокупности параметров ГА, наиболее полно соответствующих решаемой задаче, осложняется отсутствием на сегодняшний день общепринятых методик, наличием нескольких различных подходов [3, 4].

На основе анализа публикаций по тематике адаптивных генетических алгоритмов (АГА) можно сделать вывод о большей целесообразности их использования, вследствие существенно лучших характеристик.

При проектировании АГА существуют две задачи - выбор адаптируемых параметров и выбор способа проведения операции адаптации. При синтезе генетических алгоритмов применяются различные параметры, поэтому необходим поиск некоторой группы параметров, коррекция значений которых наиболее сильно влияет на качество работы алгоритма.

Выбор способа проведения операции адаптации не менее важен, чем определение перечня настраиваемых параметров АГА. Несмотря на кажущиеся различия большинства предлагаемых подходов они схожи в том, что используют опыт экспертов для определения степени изменения параметров. Экспертами формируются аналитические зависимости для пересчета параметров АГА, одна-

ко существуют и другие подходы, например основанные на аппарате нечеткой логики [1, 2]. Выбор конкретного способа реализации адаптации параметров ГА зависит от исследователя.

Вычислительные возможности генетических алгоритмов определяются совокупностью многих параметров, определение которых является сложной задачей. В соответствии с методологией системного анализа, сложную задачу для удобства решения необходимо декомпозировать на ряд более простых, представить в виде последовательности этапов. Каждый из этапов имеет свои особенности, представляет набор определенных действий. Приведем краткую характеристику этапов.

Этап 1. Определение способа представления решений. Способ представления решений задает схему, позволяющую кодировать и декодировать любые формальные решения, проводить их оценку. Математически доказано, что не существует идеальной структуры представления решений, для ее поиска требуется использование анализа, эвристических методов, перебора.

Этап 2. Определение вида и параметров операторов случайных изменений. Операторы случайных изменений предназначены для проведения процесса размножения [1, 4]. Влияние, оказываемое их видом и параметрами на качество получаемых решений, делает актуальной задачу их оптимального определения.

Этап 3. Определение формы оператора репродукции. Определения формы оператора репродукции задает алгоритм, на основании которого определяется, какие решения должны принять участие в процессе размножения, а какие нет. Отбор производится пропорционально значению функции приспособленности каждой конкретной хромосомы, но существуют и другие методики.

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

Этап 5. Определение условия остановки алгоритма. Количество итераций осуществляемых ГА, необходимых для нахождения оптимальных решений, не известно заранее. Для предотвращения нежелательных ситуаций, связанных с его зацикливанием, определяют условия остановки, например по достижении определенного числа итераций, получении решений требуемой точности и т. д.

Этап 6. Определение способа создания популяции начальных решений. Работа ГА построена на поиске и сравнении степени приспособленности существующих решений между собой. Отсюда вытекает необходимое условие возможности его применения, а именно наличия группы, сравниваемых между собой решений. В тех случаях, когда популяций решений не существует, необходимо определить способ ее генерации.

Этап 7. Определение способа отбора решений в новую популяцию. Количество генерируемых хромосом на каждой итерации ГА часто может превышать допустимый размер популяции. Необходимо задать алгоритм, позволяющий определить, какие хромосомы целесообразно использовать в дальнейшем, а какие нет.

Этап 8. Разработка общей структурной схемы генетического алгоритма. Перечень действий, выполняемых ГА, определяется набором операторов, входящих в его состав, а последовательность их выполнения схемой алгоритма. Эффективность ГА напрямую зависит от правильности организации взаимодействия его операторов.

Определение вида и параметров операторов случайных изменений. Операторы случайных изменений предназначены для организации процесса генерации новых решений на основе ранее полученных. Самыми известными операторами случайных изменений являются: кроссинговер (скрещивание), мутация, реинициа-лизация.

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

Помимо выбора перечня операторов случайных изменений, необходимо определить конкретный вид их реализации, что осложняется невозможностью с уверенностью заранее сказать, какой из них больше подходит к конкретной задаче. Использование комбинированных операторов [1], т.е. включающих в себя несколько реализаций, способно решить проблему выбора путем динамического определения подходящей формы оператора. Рассмотрим реализацию комбинированных операторов случайных изменений.

Разработка комбинированного оператора. Оператор скрещивания проводит рандомизированный обмен генетическим материалом между хромосомами с целью получить более приспособленное потомство, что позволяет обозревать пространство решений. К недостатку оператора относят высокую вероятность разрушения решений до того момента, как они примут участие в процессе размножения.

Классический вариант кроссинговера позволяет проводить одновременное скрещивание только двух хромосом, однако, ограничений на количество обрабатываемых хромосом нет [1, 3]. Существуют исследования, результаты которых показывают, что увеличение количества хромосом в процессе скрещивания способно ускорить процесс нахождения оптимальных решений.

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

Работа комбинированного оператора скрещивания может быть описана в виде последовательности действий, этапов, как показано на рис. 1.

Рис. 1. Этапы выполнения комбинированного оператора скрещивания

Этап 1. Определение формы используемого оператора. В конце каждой итерации вычисляется средняя степень приспособленности решений, полученных на основе использующихся форм кроссинговера. Далее c помощью нечеткого контроллера [2] определяются вероятности применения каждого вида оператора скрещивания. Полученные вероятности присваиваются в качестве значений секторам рулетки. В зависимости от того, в какой сектор рулетки попадет случайным образом генерированное число, будет зависеть вид применяемой операции скрещивания.

Этап 2. Отбор хромосом, определение точек разрыва. В зависимости от вида используемой операции скрещивания выбирается необходимое количество родительских особей, точек разрыва. Кроссинговер с двумя родителями будет иметь одну или две точки разрыва. Кроссинговер с тремя родителями будет иметь две точки разрыва.

Номера генов хромосомы, в которых будет происходить ее разделение на составные части, планируется генерировать случайным образом, единственным ограничением является необходимость их принадлежности интервалу:

^2, ЬпЛ (1)

где Ь2 - вторая позиция в скрещиваемой хромосоме; Ьп.1 - предпоследняя позиция в скрещиваемой хромосоме.

Этап 3. Выполнение оператора скрещивания. На основе выбранной формы оператора проводится обмен генетической информации между хромосомами. Варианты реализации операции кроссинговера с двумя и тремя родителями представлены на рис. 2.

Рис. 2. Реализация комбинированного оператора кроссинговера

Выбор небольшого количества точек разрыва объясняется желанием увеличить эффективность, быстродействие алгоритма [1, 3]. Вероятность проведения операции скрещивания обычно является фиксированной величиной [1, 3], в данной работе планируется принять ее равной 75 %.

Разработка комбинированного оператора мутации. Оператор мутации позволяет на основе родительской особи или ее части создавать потомков, является элементом рандомизированного поиска в окрестности текущего положения популяции. Основным назначением мутации является восстановление утерянного генетического материала, добавление нового. Мутация оказывает существенное влияние на надежность, скорость работы ГА. Большего разнообразия получаемых решений можно добиться путем кардинального изменения некоторых участков хромосом, например, применяя оператор реинициализации.

На основании исследований можно говорить о схожем назначении операторов реинициализации и мутации, возможности полной замены первым оператором второго. Реинициализация может рассматриваться как крайняя форма оператора мутации. Реинициальзацию будет применяться совместно с одно- и двухточечной мутацией - в результате образуется комбинированный оператор мутации. Работа комбинированного оператора мутации схожа с работой комбинированного оператора кроссинговера.

Разработка алгоритма адаптации параметров комбинированных операторов случайных изменений. При проектировании генетических алгоритмов параметры операторов мутации и скрещивания обычно задаются постоянными величинами и определяются на основе опыта экспертов, либо экспериментально.

Основными параметрами операторов являются: форма оператора (/с, /т -формы операторов кроссинговера, мутации соответственно); вероятность применения оператора (рс, рт - вероятность применения кроссинговера, мутации соответственно).

Постоянные значения параметров операторов случайных изменений могут негативно сказываться на качестве работы ГА, не позволяют оказывать достаточное влияние на процесс сходимости алгоритма и, как следствие увеличивают вероятность попадания его в локальный оптимум. Доказано, что адаптивные ГА, способные осуществлять самонастройку своих параметров, обладают лучшими качественными характеристиками, с большей вероятностью и за меньшее время находят глобальные решения [4].

На основании вышесказанного можно сделать вывод, что применение адаптивных ГА к задачам оптимизации более целесообразно, чем не адаптивных.

В процессе работы ГА происходит обмен генетической информацией между хромосомами популяции. Чем дольше он осуществляется, тем более похожими друг на друга становятся решения, происходит постепенное их вырождение. В том случае, если удается найти хромосому, удовлетворяющую заданным требованиям качества, выполняется условие остановки алгоритма, считается, что работа ГА завершена успешно.

В случае попадания алгоритма в локальный оптимум, вырождении, снижении степени генетического разнообразия хромосом, дальнейший поиск оптимальных решений представляется проблематичным. В процессе работы генетического алгоритма планируется изменять следующие параметры операторов случайных изменений: степень вероятности применения оператора мутации; степень вероятности применения каждой из форм оператора мутации; степень вероятности применения каждой из форм оператора скрещивания (кроссинговера). Суть предлагаемого подхода удобно представить в графическом виде, как показано на рис. 3.

Первоначальная вероятность применения каждой из форм операторов скрещивания, мутации

Последующая вероятность применения каждой из форм операторов скрещивания, мутации

Форма оператора №1 Форма оператора №2 Форма оператора №3

Рис. 3. Коррекция вероятности применения каждой из форм операторов мутации, скрещивания в процессе работы ГА

Первоначально возможность использования каждой из форм операторов мутации и скрещивания является одинаковой, корректируется в процессе работы ГА пропорционально среднему значению функций приспособленности хромосом, полученных каждым из видов скрещивания, мутации.

Коррекция параметров операторов случайных изменений будет производиться с применением нечеткого контроллера (НК) [2].

Входными параметрами НК будут являться: степень генетического разнообразия популяции хромосом GD; степень успешности применения j-ой формы оператора скрещивания F(cj); степень успешности применения j-ой формы оператора мутации F(m).

Выходными параметрами НК будут являться: вероятность применения оператора мутации (pm); вероятности применения каждой из форм операторов скрещивания, мутации (pcj, pmj).

Результаты сравнительного анализа эффективности разработанного алгоритма и аналогов для оптимизации функций многих переменных, обучения нейронных сетей приведены на рис. 4.

а б

Рис. 4. Сравнение эффективности разработанного ГА и аналогов: а — решение задачи оптимизации функций многих переменных; б - обучение искусственной нейронной сети

Анализ эффективности ГА1 - ГА10 по данным рис. 4 позволяет говорить о большей эффективности ГА9 по сравнению с рассматриваемыми аналогами. ГА9 обладает лучшим соотношением числа итераций, требуемых для получения решений заданной точности, остановок генетического алгоритма в локальных оптимумах.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Белоглазов Д.А. Разработка и исследование методов синтеза адаптивных регуляторов на основе нейро-нечетких сетевых структур: Дис. ... канд. техн. наук. - Таганрог: ТТИ ЮФУ, 2012.

2. Финаев В.И., Мажди Наср Аллах. Адаптивные автоматные системы управления: Монография. - Таганрог: Изд-во ТТИ ЮФУ, 2007.

3. Гладков Л.А., Курейчик В.В., Курейчик В.М. Генетические алгоритмы / Под. ред. В.М. Курейчика. - М.: Физматлит, 2006. - 320 с.

4. Lei Wang, Dun-bing Tang. An improved adaptive genetic algorithm based on hormone modulation mechanism for job-shop scheduling problem//Expert Systems with Applications. - 2011. - Vol. 38, № 6. - Р. 7243-7250.

Статью рекомендовал к опубликованию д.т.н., профессор В.Е. Золотовский.

Белоглазов Денис Александрович - Федеральное государственное автономное образовательное учреждение высшего профессионального образования «Южный федеральный университет»; e-mail: [email protected]; 347928, г. Таганрог, пер. Некрасовский, 44; тел.: 88634371689; кафедра систем автоматического управления; ассистент.

Коберси Искандар Сулейман - e-mail: [email protected]; 347900, г. Таганрог, ул. Петровская, 17; тел.: 89518382131; кафедра систем автоматического управления; к.т.н.; доцент.

Финаев Валерий Иванович - e-mail: [email protected]; 347928, г. Таганрог, ул. Энгельса, 1; тел.: 88634371689; кафедра систем автоматического управления; зав. кафедрой; д.т.н.; профессор.

Beloglazov Denis Alexandrovich - Federal State-Owned Autonomy Educational Establishment of Higher Vocational Education "Southern Federal University"; e-mail: [email protected]; 44, Nekrasovskiy, Taganrog, 347928, Russia; phone: +78634371689; the department of automatic control systems; assistant.

Kobersi Iskandar Suleiman - e-mail: [email protected]; 17, Petrovskaya street, Taganrog, 347900, Russia; phone: +79518382131; the department of automatic control systems; cand. of eng. sc.; associate professor.

Finaev Valeri Ivanovich - e-mail: [email protected]; 1, Engelsa street, Taganrog, 347928, Russia; phone: +78634371689; the department of automatic control systems; head of department; dr. of eng. sc.; professor.

УДК 519.216.2

И.Ю. Кузнецова

ЧИСЛЕННОЕ РЕШЕНИЕ СТОХАСТИЧЕСКИХ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ В ФИНАНСАХ

Представлен обзор численных методов решения стохастических дифференциальных уравнений, включая метод Мильштейна, методы Тейлора и Рунге-Кутта различных порядков. Так же для более понятного описания данных методов приведены основные определения из теории стохастических дифференциальных уравнений. В статье даны определение основной концепции, описание простейших численных методов, а также понятие сходимости и порядка аппроксимации решений стохастических дифференциальных уравнений. Решениями являются непрерывные вероятностные процессы, что может быть использовано при моделировании финансовых систем, что показано на примере уравнения Блэка-Шоулза.

Стохастические дифференциальные уравнения; численные методы; сходимость; порядок аппроксимации.

I.Y. Kuznetsova

NUMERICAL SOLUTION OF STOCHASTIC DIFFERENTIAL EQUATIONS

IN FINANCE

This chapter is an introduction and survey of numerical solution methods for stochastic differential equations, including the Milstein method, Taylor and Runge-Kutta methods of various orders. In the article described basic definitions of theory of stochastic differential equations. It includes a review of fundamental concepts, a description of elementary numerical methods and the concepts of convergence and order for stochastic differential equation solvers. The solutions will be continuous stochastic processes that represent diffusive dynamics, a common modeling assumption for financial systems, for examples, Black-Scholes Option Pricing Model.

Stochastic differential equations; numerical methods; convergence; order for solvers.

1. Стохастические дифференциальные уравнения. СДУ стали стандартными моделями финансовых величин, таких как цены активов, процентная ставка, и их деривативов. В отличие от детерминированных моделей, таких как обыкновенные дифференциальные уравнения, которые имеют единственное решение для

i Надоели баннеры? Вы всегда можете отключить рекламу.