СИСТЕМНЫЙ АНАЛИЗ И ОБУЧАЮЩИЕ СИСТЕМЫ
УДК 004.942
И. Г. Дутова, В. А. Мохов
Южно-Российский государственный политехнический университет (НИИ) им. М. И. Платова (г. Новочеркасск, Российская Федерация)
ПОСТАНОВКА ЗАДАЧИ СИСТЕМНОГО АНАЛИЗА И МЕТАОПТИМИЗАЦИИ ПАРАМЕТРОВ ПОПУЛЯЦИОННЫХ АЛГОРИТМОВ
В работе рассматривается постановка задачи исследования роевых популяционных метаэв-ристик, их модификация и сравнение со стандартными алгоритмами. Представлены: классификация метаэвристик, их назначение; задачи, для решения которых используют данные алгоритмы; описан метод модификации одного из известных алгоритмов, план проведения экспериментов; предполагаемый результат. В настоящее время информационные технологии очень стремительно развиваются, но существующие алгоритмы оптимизации при решении задач дискретной оптимизации не всегда могут найти точное решение или требуют неоправданно значительного времени работы для поиска эффективного решения. Актуальность исследования возникла в связи с появлением новых верификаций алгоритмов и задач. Исходя из этого появилась необходимость разработки новых методик, направлений, алгоритмов для решения задач указанного класса. Предполагаемым результатом работы являются модификации роевых алгоритмов, которые позволят сократить время поиска решений в задачах большой размерности, и в то же время повысить качество получаемых решений. Предполагается, что предлагаемый подход возможно распространить на весь спектр известных популяционных/роевых метаэвристик.
Ключевые слова: метаэвристики, алгоритмы оптимизации, популяционные роевые алгоритмы.
I. G. Dutova, V. A. Mokhov
South-Russian State Technical University (Novocherkassk, Russian Federation)
STATEMENT OF THE SYSTEM ANALYSIS PROBLEM AND METAOPTIMIZATION OF PARAMETERS POPULATION ALGORITHMS
The paper deals with the formulation of the problem of studying the population metaheuristics, their modification and comparison with standard algorithms. Classification of metaheuristics, their purpose; tasks for the solution of which use the data of algorithms; a method of modification of one of the known algorithms, a plan for carrying out experiments; the intended result are presented. At present, information technologies are developing very rapidly, but existing optimization algorithms for solving discrete optimization problems can not always find an exact solution or require unjustifiably significant time to find an effective solution. The relevance of the research arose in connection with the emergence of new verification algorithms and tasks. Proceeding from this, it became necessary to develop new methods, directions, algorithms for solving the problems of this class. The expected result of the work is modification of the roving algorithms, which will reduce the time for finding solutions in large-scale problems, and at the same time improve the quality of the solutions obtained. It is assumed that the proposed approach can be extended to the full range of known population/roving metaheuristics.
Key words: metaheuristics, optimization algorithms, swarm population algorithms.
Введение. В последнее время интерес ученых стремительно стало вызывать такое направление в исследованиях искусственного интеллекта, как метаэвристики. Эвристика (от греч. «eйpíaкю» означает - отыскивать, открывать) является алгоритмом, который можно назвать творческим: полная правильность его для всех возможных вариантов решения не доказа-
на, но с уверенностью можно сказать, что для большинства случаев решение будет хорошее. С помощью эвристик решаются сложные задачи оптимизации, так как этот инструмент практически всегда позволяет за допустимое время находить субоптимальное решение, пускай и не всегда наилучшее. Слово «метаэвристика» появилось впервые в работах Гловера в 1986 г.
«Мета» означает «за пределами», техника настройки или выбора настраиваемых параметров. То есть, метаэвристики позволяют еще больше расширить возможности эвристик, используя способ комбинирования. Метаэвристики разделяются на популяционные и непопуляционные. В данной работе будут рассматриваться популя-ционные роевые метаэвристики, основанные на результатах анализа коллективного поведения децентрализованных, самоорганизующихся природных или искусственных систем.
Наиболее распространенное применение метаэвристик - решение задач оптимизации. Математическая модель принятия решения в задаче оптимизации выглядит следующим образом [Андронов А. С. Методы оптимального проектирования. СПб.: ГУАП, 2001. 169 с.]:
minF(x), Xе D. (1.1)
Выражение (1.1) является сокращенной записью модели принятия оптимального решения.
Найти значение оптимизируемых пара-метровX = (, x2, x3, ..., xn), обеспечивающих минимальное значение оптимальности:
F (x) = F (xl, x2, x3, ... xn) (1.2)
при выполнении ограничений:
Gi (( x2, xз, ..., xn) 0
для
i = 1, 2, ..., m (1.3)
x- < x] < x+, j = 1, 2, ..., n, (1.4)
где xjj, x+ - нижнее и верхнее предельное значение для j-го оптимизируемого параметра, характеризующие диапазон возможных значений изменений.
Таким образом, решение задачи сводится к выбору оптимизируемых параметров X, принадлежащих области D и обеспечивающих экстремальное значение критерия оптимальности F (x). Оптимальным решением задачи является вектор X*, удовлетворяющий системе неравенств (1.3)-(1.4) и обеспечивающий минимальное значение критерия оптимальности (1.2).
Наиболее актуальные задачи и предметные области данной темы:
1. Логистика. Решение транспортно-логис-тических задач.
2. Голосовое управление.
3. Задача классификации.
4. Кластерный анализ.
5. Локальный поиск.
6. Машинный перевод.
7. Распознавание (оптическое распознавание символов, распознавание речи, распознавание рукописного ввода).
8. Игровой искусственный интеллект.
Основная часть. Примем во внимание тот факт, что у каждого популяционного алгоритма есть ряд свободных параметров, значения и изменения которых оказывают существенное влияние как на скорость нахождения решений, так и на их качество [1, 2]. В рамках исследования ставится задача динамического поиска оптимального сочетания этих параметров в ходе выполнения популяционного алгоритма (при решении конкретной задачи оптимизации). Поставленную задачу возможно отнести к категории задач метаоптимизации (оптимизация свободных параметров алгоритма, решающего задачу оптимизации).
Рассмотрим такую метаоптимизацию (оптимизацию свободных параметров) на примере классического алгоритма роя частиц. Для наглядности продемонстрируем решение задачи в отношении только одного свободного параметра данного алгоритма - скорости движения частиц (на примере решения задачи поиска экстремума некоторой функции).
Предлагаемая идея метаоптимизации опирается на способ модификации свободных параметров алгоритма на основе дробного исчисления, с использованием ряда допущений. Данный подход был частично описан в работе [3]. Также эта тема затрагивалась в следующих зарубежных публикациях [4, 5].
Рассмотрим процесс преобразования формулы скорости. Данная тема была предложена авторами в публикации [6]. В качестве оптимизационной составляющей классического роевого алгоритма авторы предлагают использовать дробные производные. Существуют различные способы улучшения классического алгоритма роя частиц:
1. Создание оптимизационного метода, который состоит из соединения нескольких алгоритмов роя частиц.
2. Разовая настройка характеристик движения частиц, посредством которого можно влиять на вероятность преждевременной сходимости.
3. Оптимизация с динамическим изменением параметров алгоритма.
Ограничение скорости - один из методов повышения эффективности PSO (Particle Swarm Optimization). Для данного метода используется уравнение изменения скорости. Это уравнение содержит три слагаемых, которые регулируют величину и направление изменения скорости частицы. В начальных исследованиях было замечено, что скорость частиц может резко увеличиваться, что является характерным для частиц далеких от лучших глобальных и локальных позиций. В итоге частицы выходят за интересующую границу поиска, то есть расходятся. Во избежание таких ситуаций вводится ограничение скорости:
112 Постановка задачи системного анализа и метаоптимизании параметров популянионных алгоритмов
К
максимально допустимая скорость
в 1-й компоненте. Скорость частицы можно регулировать следующим образом:
и,
(+1)=^(+1)
I V <
I тах' 4
если + 1)< Ктах,,
если и' ( + 1)> Ктах,. (2)
данный подход имеет преимущество в том, что сдерживает резкое увеличение скорости. Ограничение скорости влияет не только на шаг изменения, но и на направление движения частицы [7].
В данной модификации Р80 можно отметить следующий важный момент.
При удерживании скорости в определенном диапазоне не ограничивается позиция частицы и из этого следует, что изменяется только скорость.
Обратим внимание на скорость частицы, которая выражена формулой
и ^юи- +ф, ( - х- ) + фя ( - х). (3)
Если рассматривать и, как мгновенную скорость неравномерно движущегося тела (в данный момент времени, в данной точке траектории), можно записать:
ч+1 = + фДЬ- - х)+Ф я (я - х). (4)
Перепишем формулу для скорости частицы в алгоритме при значении ю=1:
4+1 = Ч + Фь(Ь - хг) + Фя(я - ^). (5)
Перенесем в левую часть, получаем
4+1 =Фь(Ь - хг) + Фя(я - хг). (6)
Левую часть можно интерпретировать как разностную аппроксимацию первой производной, то есть
Ль = Ц+1 Лг
т
(7)
где Т = 1.
Подставим (7) в выражение (6)
Л и
— = Фь(Ь - X) + Фя(я - х{) + (ю- 1)и. (8)
Ввиду нелинейности функции рой может допускать самоорганизацию, которая обеспечивает достижение общих целей роя на основе низкоуровневого взаимодействия. Из этого можно сделать вывод, о том, что формулам (5) и (6) присуще свойство нелокальности.
Нелокальность - это понятие, которое можно определить, как наличие полной информации о всей системе и ее элементах в каждой отдельной точке системы [8].
В правой части (7) член, содержащий , можно интерпретировать как память частицы о ее предыдущем состоянии.
Построение схемы, учитывающей информацию о предыдущих значениях координат частиц х, и скоростей и,-, может способствовать повышению качества оптимизации целевой функции и улучшению сходимости алгоритма роя частиц.
Однако наличие производной в (8) в
Л
полной мере не позволяет построить нелокальную модель изменения и, так как не учитывает возможные значения и в более ранние моменты, чем г. Выходом из этого состояния является поиск дифференциального оператора, позволяющего учесть приведенное выше обстоятельство.
Вышеперечисленным требованиям удовлетворяет производная нецелого порядка.
Производная нецелого порядка (или производная дробного порядка) является обобщением математического понятия производной.
Производная дробного порядка - это нелокальная характеристика функции: она зависит не только от поведения функции в окрестности рассматриваемой точки х, но и от принимаемых ею значений на всем интервале (а, Ь). Изменение плотности потока частиц зависит не только от ее значений в окрестности рассматриваемой точки, но и от ее значений в удаленных точках пространства. Понятие дробной производной можно интерпретировать в терминах случайных процессов следующим образом. Случайный процесс, скорость изменения плотности которого зависит от значений плотности в предшествующие моменты времени, принято называть эредитарным. Такие процессы удобно описывать уравнениями, содержащими дробную производную по времени. Порядок производной по времени определяется величиной а [9,10].
Для функции /(х), заданной на отрезке [а, Ь], каждое из выражений:
да+ / (х )=
Д-/(х ) =
1
Г(1 -а)
Л ¡-х /(г)& а (х -г)а
Л гх /(г
Г(1 -а) Лх!а (г-х)
(9)
(10)
называется дробной производной порядка а, 0<а< 1,соответственно левосторонней и правосторонней. Дробные производные в приведенном виде называют производными Римана -Лиувилля.
Альтернативный подход, основанный на определении производной дробного порядка в
терминах предельного перехода, сформулирован на ее определении через формулу Грюн-вальда - Летникова [8]:
D a[x(t )] = lim
h^Q
I (-1)Т(а +1)x(t - kh) hа t=Q r(k + 1)Г(а - k +1)
. (11)
Для численных расчетов можно использовать конечную аппроксимацию (11):
1
da[x(t )]«- i k=q
T
(-1)kr(a +1)x(t - kT) Г( k + 1)Г(а - k +1)
.. (12)
Запишем формулу (8), учитывая выражение (9)-(12):
Ва[и,] = %(Ъ - х,) + (я - х,). (13)
Формула (13) позволяет наблюдать учет предыдущих значений и,, и т. д.
Аппроксимируя (13) с учетом предыдущих значений, принимаемых за один шаг, обозначим шаг - буквой «г» и примем г = 4, получим:
+1 - -1 а^_1 -1 а(1 - а)и_2 = 2 6
= Фъ(Ъ - х,) + фя(я - х,), (14)
1 1 „ ч
2 6
+ ФЪ(Ъ - х,) + Ф я(я - х,). (15)
Для проведения экспериментов предлагается сравнить работу стандартных оптимизационных алгоритмов, немодифицированных и модифицированных популяционных. Алгорит-
мы будут реализованы с визуализацией процесса метаоптимизации (формированием графиков изменения свободных параметров алгоритмов в ходе выполнения) и искомых решений. Сравнение результатов работы алгоритмов предполагается выполнить на примерах известных тестовых функций. По итогам будут представлены графики зависимости лучшего результата от номера итерации. Ниже приведены отдельные фрагменты готового листинга программы, демонстрирующие элементы метаоптимизации параметра скорости для алгоритма роя частиц.
Эволюция параметров происходит следующим образом:
1. На каждой итерации текущая скорость становится предыдущей, то есть учитывается память частицы о ее предыдущем состоянии.
2. Пересчитываем текущую скорость по заданной формуле. Для первых моментов времени предыдущие скорости нулевые.
Результатом работы рассматриваемого алгоритма является нахождение экстремумов функции. Для каждого эксперимента представляется графический результат и отображается кривая движения частиц. В дальнейшем предполагается исследование эффективности работы алгоритма на примерах задач глобальной оптимизации.
Заключение. В работе проведена постановка задачи исследования, показан пример, демонстрирующий суть предложенного способа метаоптимизации популяционных алгоритмов. В перспективе предполагается исследование возможности распространения данного подхода применительно к большинству иных известных алгоритмов данного класса.
Литература
1. Мохов В. А., Бородулина Е. Н. К вопросу о параметрической оптимизации роевых алгоритмов // Изв. ЮФУ. Техн. науки. 2Q14. № 4 (153). С. 23Q-234.
2. Кубил В. Н., Мохов В. А. К вопросу о применении роевого интеллекта в решении задач транспортной логистики // Проблемы модернизации инженерного образования в России: сб. науч. статей по проблемам высшей школы / Юж.-Рос. гос. политехн. ун-т (НПИ). Новочеркасск: ЮРГПУ (НПИ). С. 14Q-144.
3. Particle swarm optimization with fractional-order velocity / Pires E. J. S. [et al.] // Journal on Nonlinear Dynamics. 2Q1Q. No. 61 (1-2). P. 295-3Q1.
4. Fractional WKB approximation / Rabei E. M. [et al.]. 2QQ9. No. 57 (1-2). P. 171-175.
5. den Bergh F. V., Engelbrecht A. P. A study of particle swarm optimization particle trajectories // Inf. Sci. 2QQ6. No. 176 (8). P. 937-971.
6. Метаоптимизация роя частиц на основе метода дробного исчисления / Дутова И. Г. [и др.] // Современные проблемы науки и образования 2Q15. № 2-1. URL: https://www.science-education.ru/ ru/article/view?id=2Q817 (дата обращения: 27.11.2Q17).
7. Карпенко А. П., Свианадзе З. О. Метод мета-оптимизации поисковых алгоритмов оптимизации // Наука и образование: научное издание МГТУ им. Н. Э. Баумана. 2Q11. № Q17. URL: http:// technomag.bmstu.ru/doc/164546.html (дата обращения: 27.11.2Q17).
8. Труды Северо-кавказского филиала Московского технического университета связи и информатики. Ростов н/Д: ПЦ «Университет» СКФ МТУСИ. 2Q12. 431 с.
114 Постановка задачи системного анализа и метаоптимизании параметров популяпионных алгоритмов
9. Карпенко А. И. Современные алгоритмы поисковой оптимизации. Алгоритмы, вдохновленные природой: учеб. пособие. М.: Издательство МГТУ им. Н. Э. Баумана. 2014. 446 с.
10. Самко С. Г., Килбас А. А., Маричев О. И. Интегралы и производные дробного порядка и некоторые их приложения. Минск: Наука и техника, 1987. 688 с.
References
1. Mokhov V. A., Borodulina E. N. On the problem of parametric optimization of swarm algorithms. Izvestiya YuFU. Tekhnicheskiye nauki [News SFU. Technical science], 2014, no. 4 (153), pp. 230-234 (In Russian).
2. Kubil V. N., Mokhov V. A. To the question of the use of swarm intelligence in solving the problems of transport logistics. Problemy modernizatsii inzhenernogo obrazovaniya v Rossii: sbornik nauchnykh statey po problemam vysshey shkoly [The problems of modernization of engineering education in Russia: collection of articles on problems of higher education]. Novocherkassk, YuRGPU (NPI) Publ., 2014. Рр.140-144.
3. Pires E. J. S., Machado J. A. T., Oliveira P. B. M., Cunha J. B., Mendes L. Particle swarm optimization with fractional-order velocity. Journal on Nonlinear Dynamics, 2010. no. 61 (1-2), pp. 295-301.
4. Rabei E. M., Altarazi I. M. A., Muslih S. I., Baleanu D. Fractional WKB approximation. Nonlinear Dynamics, 2009, no. 57 (1-2), pp. 171-175.
5. den Bergh F. V., Engelbrecht A. P. A study of particle swarm optimization particle trajectories. Inf. Sci., 2006, no. 176 (8), pp. 937-971.
6. Dutova I. G., Mokhov V. A., Kuznetsova A. V., Yesaulov V. A. Metaoptimization of a swarm particles based on the fractional calculus method. Sovremennyye problemy nauki i obrazovaniya [Journal of Contemporary Problems of Science and Education], 2015, no. 2-1. Available at: https://www.science-education.ru/ru/article/view?id=20817 (accessed 27.11.2017).
7. Karpenko A. P., Svianadze Z. O. Method metaoptimization algorithms. Nauka i obrazovanie: nauch-noe izdanie MGTU im. N. E. Baumana [Education and sience: scientific publication MSTU N. E. Bauma], 2014. Available at: http://technomag.bmstu.ru/ doc/164546.html (accessed 27.11.2017).
8. Trudy Severo-Kavkazskogo filiala Moskovskogo tekhnicheskogo universiteta svyazi i informatiki [Proceedings of the North Caucasian branch of the Moscow Technical University of Communications and Informatics]. Rostov-on-Don, PTs "Universitet" SKF MTUSI Publ., 2012. 431 p.
9. Karpenko A. P. Sovremennye algoritmy optimizatsii. Algoritmy, vdokhnovlennyye prirodoy: ucheb-noye posobiye [Modern search optimization algorithms. Algorithms inspired by nature: a tutorial]. Moscow, Izdatel'stvo MGTU im. N. E. Baumana Publ., 2014. 446 p.
10. Samko S. G., Kilbas A. A., Marichev O. I. Integraly i proizvodnyye drobnogo poryadka i nekotoryye ikh prilozheniya [Integrals and fractional manufacturing order and some of their applications]. Minsk, Nauka i Tekhnika Publ., 1987. 688 p.
Информация об авторах
Дутова Инна Геннадиевна — соискатель кафедры программного обеспечения и вычислительной техники. Южно-Российский государственный политехнический университет (НИИ) имени М. И. Платова (346428, Ростовская обл., г. Новочеркасск, ул. Просвещения, 132, Российская Федерация). E-mail: [email protected]
Мохов Василий Александрович - кандидат технических наук, доцент, доцент кафедры программного обеспечения и вычислительной техники, заместитель декана по научной работе. ЮжноРоссийский государственный политехнический университет (НИИ) имени М. И. Платова (346428, Ростовская обл., г. Новочеркасск, ул. Просвещения, 132, Российская Федерация). E-mail: [email protected]
Information about the authors
Dutova Inna Gennadievna - external doctorate student, the Department of Software and Computer Engineering. The South-Russian State Polytechnic University (NPI) named after M. I. Platova (132, Prosveshcheniya str., 346428, Novocherkassk, Russian Federation). E-mail: [email protected]
Mokhov Vasiliy Aleksandrovich - PhD (Engineering), Associate Professor, Assistant Professor, the Department of Software and Computer Engineering, Deputy Dean for Research. The South-Russian State Polytechnic University (NPI) named after M. I. Platov (132, Prosveshcheniya str., 346428, Novocherkassk, Russian Federation). E-mail: [email protected]
Поступила 16.11.2017