УДК 519.714
РЕШЕНИЕ ЗАДАЧИ ОПТИМАЛЬНОГО УПРАВЛЕНИЯ ГРУППОЙ РОБОТОВ ЭВОЛЮЦИОННЫМИ АЛГОРИТМАМИ Дивеев Асхат Ибрагимович
Д.т.н., профессор, зав. сектором «Проблем кибернетики», Федеральное государственное учреждение Федеральный исследовательский центр «Информатика и управление» Российской академии наук, 119333 г. Москва, ул. Вавилова 44, Российский университет дружбы народов, Москва, 117198, ул. Миклухо-Маклая, д. 6, e-mail: [email protected] Шмалько Елизавета Юрьевна К.т.н., старший научный сотрудник, Федеральное государственное учреждение Федеральный исследовательский центр «Информатика и управление» Российской академии наук, 119333 г. Москва, ул. Вавилова 44, e-mail: [email protected] Рындин Дмитрий Андреевич Аспирант, Федеральное государственное автономное образовательное учреждение высшего образования Российский университет дружбы народов 117198, ул. Миклухо-Маклая, д.6, e-mail: [email protected]
Аннотация. Задача оптимального управления для группы роботов содержит в качестве обязательного условия динамические фазовые ограничения. Это вызвано требованием отсутствия столкновений между роботами. В статье рассматривается решение задачи эволюционными численными методами. Приведен пример решения задачи оптимального управления группы из трех роботов с динамическими и статическими фазовыми ограничениями. В качестве сравнения приведено решение той же задачи градиентными методами. Показано, что эволюционные алгоритмы в рассматриваемой технически сложной задаче работают эффективнее.
Ключевые слова: задача оптимального управления, группа роботов, эволюционные методы вычисления, динамические фазовые ограничения, генетический алгоритм.
Введение. Основной подход к построению численных методов решения задачи оптимального управления состоит в преобразовании исходной задачи бесконечномерной
оптимизации к задаче нелинейного программирования в конечномерном пространстве [3]. В большинстве источников по численным методам решения задачи оптимального управления предлагаются различные градиентные методы [3]. Все градиентные методы требуют от целевой функции свойства унимодальности и гладкости. Для сложных задач оптимального управления проверка этих свойств требует дополнительных исследований. Очевидно, что если фазовые ограничения и динамические фазовые ограничения учитываются в качестве штрафа целевой функции, то это должно привести к ухудшению свойств целевой функций с точки зрения гладкости и унимодальности.
Сегодня эффективные вычислительные средства позволяют решать задачи большой размерности, а проблема дискретизации оптимального управления для большинства практических задач не является актуальной. Как показывают вычислительные эксперименты, решения задачи оптимального управления градиентными методами носят неустойчивый характер, зависят от начальной выбранной точки, и результаты решения сильно отличаются в различных экспериментах. Усовершенствование градиентных методов [8] не приводит к существенным преимуществам, хотя эти методы часто предлагаются для решения сложных задач большой размерности, например, обучения нейронных сетей. Появившиеся в конце ХХ века эволюционные методы, несмотря на экзотические названия, имеют несколько существенных преимуществ перед градиентными методами. Все эволюционные методы осуществляют поиск оптимального решения на основе изменения множества возможных решений. В терминах градиентных методов это соответствует многоточечному поиску. Все эволюционные методы модифицируют элементы множества возможных решений на основе анализа значений целевой функции для всех элементов множества. Эта модификация зависит от метода и определяет эволюцию. Многоточечный поиск, с учетом опыта и значения целевых функций найденных решений, должен находить оптимальные решения эффективнее одноточечного поиска в направлении антиградиента. Дополнительным преимуществом эволюционных методов является отсутствие требований к унимодальности, гладкости целевой функции и выпуклости области поиска.
В настоящей работе мы рассматриваем задачу оптимального управления группой роботов. Трансформируем исходную постановку задачи к задаче нелинейного программирования. Применяем к решению задачи два наиболее популярных эволюционных алгоритма: генетический алгоритм (GA) и метод роя частиц (PSO), а также градиентный метод наискорейшего спуска (FGD) и современный градиентный алгоритм Adam. В численном примере приводим результаты вычислительных экспериментов по сравнению этих методов.
1. Задача оптимального управления группой роботов. Рассмотрим задачу оптимального управления группой роботов. Заданы модели объектов управления
, (1) где , - вектор состояния робота ,
- вектор управления робота - компактное множество, -
количество роботов.
Заданы начальные условия
, . (2) Заданы терминальные условия
, . (3)
Заданы статические фазовые ограничения
, . (4)
Для определения динамических фазовых ограничений введем во множестве номеров
роботов множество пар , где , .
Тогда динамические фазовые ограничения, определяющие условия сближения пар объектов, заданы как
, , (5)
где - число сочетаний из по 2, .
Динамические фазовые ограничения (5) обладают свойством векторной коммутативности
Условия столкновения трех и более роботов определяем попарно из условия (5). Задан функционал качества
где „
определяется выполнением условии (3) или заданным ограничением
(6)
Для реализации численных методов на компьютере включим условия (4) и (5) в функционал в виде штрафных функций и
где
- функция Хевисайда. Если условие (4) нарушено, то функция Хевисайда равна 1, и значение штрафа будет ненулевым.
где - число сочетаний из по 2.
Включим функции штрафа в целевой функционал, получаем
, (7)
где и - весовые коэффициенты.
За нарушение терминальных условий также добавляем в функционал терминальную штрафную функцию, как квадратичную норму
Тогда расчетный функционал примет вид
. (8)
Для численного решения задачи оптимального управления используем общепринятый подход [3] преобразования исходной задачи бесконечномерной оптимизации к конечномерной задаче нелинейного программирования.
Введем временной интервал , , и матрицу параметров
где , , .
, , - целая часть числа
Задачу поиска управления заменим на задачу параметрической оптимизации поиска элементов матрицы . Значение управления определяем по значениям параметров
матрицы из следующего соотношения
где , , , .
При поиске параметров матрицы учитываем ограничения П
осуществляем эволюционными и градиентными алгоритмами конечномерной оптимизации. Компоненты матрицы рассматриваем как компоненты одного вектора
где , , .
2. Алгоритмы. Для сравнительного анализа используем наиболее популярные градиентные и эволюционные алгоритмы. Среди градиентных методов используем известный метод наискорейшего градиентного спуска [3, 4] и современный градиентный метод Adam [8], предназначенный для обучения искусственных нейронных сетей. Среди эволюционных используем классический генетический алгоритм и наиболее популярный современный эвристический метод роя частиц.
2.1. Генетический алгоритм. Генетический алгоритм был разработан в 80-х годах прошлого столетия [6]. В генетическом алгоритме каждую компоненту вектора параметров
кодируем двоичным кодом Грея. Для кодирования используем бит под целую часть числа и бит под дробную часть числа. Всего код одного вектора из
параметров содержит бит. В результате код каждой компоненты вектора
параметров определяет положительное число , в диапазоне от 0 до
В алгоритме первоначально генерируем случайно двоичных кодов из бит. Предполагаем, что сгенерированные коды представляют собой коды Грея
где , , , .
Далее вычисляем значения функционалов для каждого кода возможного решения. Для этой цели первоначально переводим код Грея каждого возможного решения
в двоичный код
по формуле
Переводим двоичный код в десятичный для каждых ^ит
Вычисляем значения вектора параметров
возможного решения
по формуле
Формируем множество оценок целевых функций
В алгоритме выполняем одноточечное скрещивание. Отбираем случайно два кода возможных решений
Вычисляем вероятность скрещивания по формуле 114 «Information and mathematical technologies in science and management» 2017 № 3 (7)
где .
Находим случайно точку скрещивания и выполняем
скрещивание. Получаем два новых кода возможных решений
Выполняем операцию мутации с заданной величиной вероятности
. Для кода
нового возможного решения находим случайно точку мутации и
меняем случайно компоненту
. Тоже повторяем для второго нового возможного
решения . Оцениваем новые возможные решения по значению минимизируемого
функционала, получаем , . Если оценка нового возможного решения лучше
наихудшей оценки во множестве возможных решений, то заменяем наихудшее решение на новое возможное решение.
, если , где , .
После выполнения операций скрещивания алгоритм останавливаем и находим наилучшее возможное решение во множестве.
2.2. Метод роя частиц. Метод роя частиц сегодня является наиболее популярным эволюционным алгоритмом. По утверждению авторов, это первый метод, основанный на имитации социально-поведенческих моделей организованных групп [7]. Авторы метода предложили идею канонического метода роя частиц в 1995 году.
Эволюция множества возможных решений выполняется с учетом наилучших найденных к этому моменту возможных решений во всем множестве и в некотором подмножестве, которое называется подмножеством информаторов.
На подготовительном этапе задаем размер множества возможных решений , размер подмножества информаторов , максимальное число итераций .
Генерируем начальное множество векторов параметров
Задаем начальный вектор
направления изменения векторов
параметров:
Эволюционный процесс поиска оптимального решения продолжаем до достижения
максимального числа итераций . На каждой итерации производим вычисление вектора , доставляющего лучшее значение функционала:
и вычините °п°рн°го в^тора , являющегося лучшим среди слУчайно отобранных векторов .
где
- случайные целые числа в диапазоне от 1 до Н. С учётом найденных лучшего и опорного векторов строим новое значение
вектора для каждого вектора параметров :
где , , - заданные параметры, значение которых подбирают в зависимости от
решаемой задачи, - случайные величины.
и
Для каждого вектора параметров вычисляем новый вектор
где -
заданный параметр,
Если , то ' . Завершаем вычисления при
выполнении итераций. Решением считаем вектор с наилучшим значением целевой функции.
2.3. Алгоритм наискорейшего градиентного спуска. Генерируем случайный вектор
параметров параметров
. Вычисляем значение оценки для полученного вектора Вычисляем вектор градиента целевой функции в точке
где
заданная малая положительная величина,
Вычисляем значение второго вектора параметров антиградиента
в направлении
где первоначально
- заданное положительное целое число.
Проверяем ограничения для второго вектора параметров
Если
то уменьшаем значение
где - заданное положительное целое число, .
Если , то пересчитываем значение второго вектора параметров по формуле (2),
иначе завершаем вычисления и считаем решением вектор параметров .
Повторяем вычисления и получаем второй вектор параметров .
Вычисляем значение целевого функционала для второго вектора параметров ,
Вычисляем значения векторов в точках золотого сечения где .
Векторы параметров , в точках золотого
сечения удовлетворяют ограничениям
Вычисляем значения целевой функции для векторов параметров в точках золотого сечения
Если ,то
иначе
Повторяем вычисления по формулам, пока выполняются условия
При нарушении условия: если то , иначе ,
Повторяем вычисления. Всего выполняем все вычисления заданное количество раз
Результатом вычислений будет последний вектор параметров
2.4. Алгоритм Adam. Новый градиентный метод Adam [8] предложен в 2015 году и относится к методам 1-го порядка. Концепция метода требует знания только градиента функции, что положительно сказывается на скорости работы алгоритма и используемой памяти.
На начальном этапе генерируем случайный вектор параметров
и
задаем векторы размерностью и
Задаем параметры метода: малые величины и , максимальное число итераций
, константы , , , счетчик итераций .
Вычисляем градиент целевой функции
Вычисляем значения векторов и по формулам:
Формируем вектор
по формуле:
где - номер текущей итерации.
?
Вычисляем значение нового вектора параметров: . проверяем выполнение
условий и :
- если условие выполнено, то достигнута заданная точность, завершаем
вычисления;
- если условие выполнено, то достигнуто максимальное число итераций, завершаем вычисления;
- если оба условия не выполнены, то . .
?
3. Вычислительный эксперимент. Рассмотрим задачу управления тремя мобильными роботами.
Математическая модель объекта управления описывается системой уравнений [5]
Заданы начальные условия.
Задано статическое фазовое ограничение
где - радиус ограничения в форме окружности, , - координаты центра фазового ограничения.
Динамические ограничения определялись следующим образом
- заданное минимальное расстояние между центрами роботов. Заданы терминальные состояния роботов Задан функционал
где
Все алгоритмы отлаживались на задаче квадратичной оптимизации, в которой градиентные методы показали свое существенное преимущество.
При вычислениях использовали следующие значения параметров: ,
, , , , , с, .
Результаты вычислительного эксперимента приведены в таблице 1. В таблице в первых трех колонках указаны полученные величины наилучшего значения функционала, найденные генетическим алгоритмом (ГА), методом роя частиц (PSO), градиентным методом наискорейшего спуска (FGD) и градиентным методом Adam. В каждой из колонок наилучший результат выделен жирным шрифтом. Справа от каждой колонки указано количество вычислений функционала в процессе поиска. Данная величина определяет сложность алгоритма. Параметры алгоритмов были подобраны таким образом, чтобы количество вычислений функционалов в каждом методе были приблизительно одинаковыми (около 125000). Для алгоритма наискорейшего градиентного спуска первоначально случайно генерировали 5000 возможных решений, лучшее из которых принимали за начальную точку поиска. Метод имел приблизительно 150000 вычислений целевой функции.
Для анализа результатов в нижних строках указаны средние значения по всем экспериментам и среднеквадратичное отклонение.
Табл. 1
№ PSO GA FGD ADAM
1 3,1563 131138 3,6986 118293 3,5629 156617 3,9594 123602
2 3,0681 131138 3,9005 121507 5,8668 150437 4,0559 123602
3 2,8598 131138 4,1567 121465 4,0058 154510 2,9919 123602
4 2,9205 131138 4,1506 120465 5,0620 156096 6,5275 123602
5 2,9284 131138 4,1677 119175 6,2839 156119 2,9962 123602
6 2,8478 131138 4,2073 121171 3,7669 155729 3,1962 123602
7 3,1115 131138 4,1147 122173 4,9468 156453 2,8213 123602
8 2,9572 131138 3,1251 119195 3,3067 153463 2,8112 123602
9 3,7428 131138 4,2454 121789 3,9756 155387 2,8255 123602
10 2,9352 131138 3,3166 119289 4,1028 156873 2,9346 123602
С P 3,0528 131138 3,9083 120452 4,488 155401 3,512 123602
С К О 0,2501 0,3796 0,9529 1,0954
Из результатов экспериментов следует, что эволюционный алгоритм роя частиц дал наилучшее среднее и средне квадратичное отклонения значений функционала. Градиентные методы имеют существенно большие величины среднеквадратичного отклонения, что указывает на нецелесообразность их применения для решения данной задачи оптимального управления.
На рис. 1 приведены траектории движения трех роботов на плоскости для одного из полученных оптимальных управлений со значением функционала 2 8112
х2
1Г
х1
О
23456789 10
Рис. 1. Оптимальные траектории движения роботов
Заключение. Сформулирована задача оптимального управления группой роботов. В задаче учитываются динамические фазовые ограничения, определяющие условия отсутствия столкновений между роботами. Описаны численные эволюционные и градиентные методы решения задачи оптимального управления. Проведен вычислительный эксперимент решения задачи оптимального управления для трех роботов с одним статическим и тремя динамическими фазовыми ограничениями. Результаты экспериментов показали высокую эффективность использования ЭА для решения задачи оптимального управления группой роботов.
Работа выполнена при частичной финансовой поддержке грантов РФФИ 17-08-01203а, 16-29-04224-офи_м.
1. Дивеев А.И., Софронова Е.А., Шмалько Е.Ю. Эволюционные численные методы решения задачи синтеза системы управления группой роботов // Информационные и математические технологии в науке и управлении. 2016. № 3. С. 11-24
2. Дивеев А.И., Шмалько Е.Ю. Эволюционный алгоритм для численного решения задачи оптимального управления // Вопросы теории безопасности и устойчивости систем. Вып.16. М.: ВЦ РАН. 2014. С. 69-83.
3. Евтушенко Ю.Г. Оптимизация и быстрое автоматическое дифференцирование. М.: ВЦ РАН. 2013. 144 с.
СПИСОК ЛИТЕРАТУРЫ
4. Пантелеев А.В., Летова Т.А. Методы оптимизации в примерах и задачах. М.: Высшая школа. 2005. 544 с.
5. Пестерев А.В. Синтез линеаризующего управления в задаче стабилизации движения автомобилеподобного робота вдоль криволинейного пути // Изв. РАН. ТиСУ. 2013. № 5. С. 153-165.
6. Goldberg D.E. Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley. 1989. 412 pp.
7. Kennedy J., Eberhart R. Particle Swarm Optimization // Proceedings of IEEE International Conference on Neural Networks IV. 1995. Pp. 1942-1948.
8. Kingma D.P., Ba J. Adam. A Method for Stochastic Optimization // 3rd International Conference for Learning Representations. arXiv:1412.6980v8 [cs.LG]. San Diego. 2015. 15 p. URL: https://arxiv.org/pdf/1412.6980v8.pdf.
UDK 519.714
SOLUTION OF OPTIMAL CONTROL PROBLEM FOR GROUP OF ROBOTS BY
EVOLUTIONARY ALGORITHMS Askhat I. Diveev
Dr., Professor, Head. Sector «Problems of Cybernetics», Federal Research Center "Computer Science and Control" of Russian Academy of Sciences, 44, Vavilova str., 119333, Moscow, RUDN University, 6, Miklukho-Maklaya str., 117198, Moscow, e-mail: [email protected]
Elizaveta Yu. Shmalko Ph.D., Senior researcher, Federal Research Center "Computer Science and Control" of Russian Academy of Sciences,
44, Vavilova str., 119333, Moscow, e-mail: [email protected]
Dmitry A. Ryndin Graduate student,
RUDN University, 6, Miklukho-Maklaya str., 117198, Moscow, e-mail: [email protected]
Abstract. The optimal control problem for a group of robots comprises dynamic phase constraints as compulsory This is due to the requirement of absence of collisions between robots. In the paper evolutionary computational methods are applied to solve the problem. We considered an example of solving the problem of optimal control for a group of three mobile robots with dynamic and static phase constraints. For comparison, the solution of the same problem is obtained by gradient methods. It is shown that the evolutionary algorithms in the considering technically complex problem are more efficient.
Keywords: optimal control problem, group of robots, evolutionary methods, dynamic phase constraints, genetic algorithms.
References
1. Diveev A.I., Sofronova E.A., Shmalko E.Yu. Evolutsionnye chislennye metody reshenia zadachi sinteza sistemy upravlenia gruppoi robotov [Evolutionary computational methos to solve problems of control system sinthesis for groups of robots] // Informacionnye i matematicheskie tehnologii v nauke i upravlenii = Information and mathematical technologies in science and management. 2016. № 3. Pp. 11-24. (in Russian)
2. Diveev A.I., Shmalko E.Yu. Evolutsionnyi algoritm dlia chislennogo reshenia zadachi optimalnogo upravlenia [Evolutionary algorithm for numerical solution of optimal control problem] // Voprosy teorii bezopasnosti i ustoichivosti system = Questions of safety theory and stability of systems. Publ. CC RAS. Vol. 3. 2014. Pp. 69-83. (in Russian)
3. Evtushenko Yu.G. Optimizatsiya i bystroye avtomaticheskoye differentsirovaniye [Optimization and a fast automatic derivation]. Moscow: CCAS. 2013. 144 p. (in Russian)
4. Panteleev A.V., Letova T.A. Metody optimizatsii v primerakh i zadachakh [Optimization methods in applications and tasks]. Moscow: Vysshaya shkola = High school. 2005. 544 p. (in Russian)
5. Pesterev A.V. Sintez linearizuyushchego upravleniya v zadache stabilizatsii dvizheniya avtomobilepodobnogo robota vdol' krivolineynogo puti [A Linearizing Feedback for Stabilizing a Car-like Robot Following a Curvilinear Path] // Izvestija RAN. Teorija i sistemy upravlenija
= Journal of Computer and Systems Sciences International. 2013. № 5. Pp. 819-830. (in Russian)
6. Goldberg D.E. Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-Wesley. 1989. 412 pp.
7. Kennedy J., Eberhart R. Particle Swarm Optimization // Proceedings of IEEE International Conference on Neural Networks IV. 1995. Pp. 1942-1948.
8. Kingma D.P., Ba J. Adam. A Method for Stochastic Optimization // 3rd International Conference for Learning Representations. arXiv:1412.6980v8 [cs.LG]. San Diego. 2015. 15 p. URL: https://arxiv.org/pdf/1412.6980v8.pdf.