СИНТЕЗ УПРАВЛЕНИЯ ДЛЯ АВТОНОМНОЙ ГРУППЫ РОБОТОВ С ФАЗОВЫМИ ОГРАНИЧЕНИЯМИ МЕТОДОМ МНОГОСЛОЙНОГО СЕТЕВОГО ОПЕРАТОРА С РАССТАНОВКОЙ ПРИОРИТЕТОВ

Аннотация

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

Полный текст

Управление автономными системами с многими роботами должно осущест- вляться на основании данных, полученных от датчиков о текущем состоянии роботов. При этом вырабатываемое управление должно быть оптимальным для любого состояния объекта, а не только для одного предварительно рассчитанно- го. Таким образом, решение традиционной задачи оптимального управления для объекта в каком-нибудь известном начальном состоянии и получение оптималь- ной программы управления в зависимости от времени не может отвечать требо- ваниям автономных систем. Модуль управления должен вырабатывать оптималь- ное управление для различных возможных начальных состояний объекта, а так- же для любых возможных состояний, в которых объект может оказаться в процессе управления, даже если они не принадлежат полученной оптимальной траектории.В связи с этим мы рассматриваем задачу синтеза управления. Она заключает- ся в разработке такого модуля управления, который на основании полученных данных о состоянии объекта вырабатывает управление, обеспечивающее дости- жение цели с оптимальными значениями некоторых заданных функционалов.Задача управления группой роботов обладает дополнительной сложностью из-за необходимости обеспечения координации между роботами. В сложных ро- бототехнических системах каждый робот должен удовлетворять своим кинема- тическим уравнениям, а также существующим фазовым ограничениям [1], вклю- чая динамические ограничения [2], обеспечивающие отсутствие столкновений между роботами.Решение задачи синтеза управления представляет собой математическое вы- ражение, описывающее модуль управления. Сегодня задача синтеза управления, или нахождение математического выражения функции управления, может быть решена численно с помощью методов символической регрессии. Все методы сим- волической регрессии позволяют находить оптимальное решение на множестве кодов математических выражений с помощью некоторого эволюционного алго- ритма. Методы символической регрессии различаются между собой по форме кодирования возможных решений. Форма кода влияет на реализацию эволюци- онного алгоритма поиска, в частности на выполнение операции кроссовера. В на- стоящее время существует несколько методов символической регрессии: грам- матическая эволюция [3], аналитическое программирование [4], метод сетевого оператора [5-7] и т.д. Генетическое программирование использовали для реше- ния задачи синтеза [8-11]. В отличие от генетического программирования и дру- гих известных методов символической регрессии метод сетевого оператора был специально разработан для решения задачи синтеза управления. Он использует принцип малых вариаций базисного решения [12]. Этот принцип позволяет умень- шить пространство поиска и время расчета за счет выбора хорошего базисного решения.Метод сетевого оператора кодирует математическое выражение в виде ориен- тированного графа. Для моделей объектов управления большой размерности ме- тод многослойного сетевого оператора является более удобным в использовании. Многослойный сетевой оператор представляет собой несколько связанных сете- вых операторов меньшего размера. В работе [13] мы использовали метод много- слойного сетевого оператора для синтеза управления группой роботов. Мы рас- сматривали группу роботов как один объект управления. Необходимо было най- ти функцию управления для обеспечения движения роботов из различных начальных состояний в терминальное состояние без столкновений. При синтезе мы учитывали столкновения роботов с помощью функции штрафа. Такой подход, основанный на рассмотрении группы роботов как одного единого объекта, труд- но применить к большой группе роботов. В работе [14] нами решалась аналогич- ная задача управления для перемещения группы из различных начальных состо- яний во множество терминальных состояний. В этой работе мы сначала синте- зировали одну систему управления для стабилизации робота относительнонекоторой точки пространства состояний с фазовыми ограничениями. Устано- вили полученную систему управления для всех роботов. И далее мы искали оп- тимальные траектории движения роботов в виде точек пространства состояний для движения роботов из разных начальных условий в заданные конечные по- ложения. Основная сложность заключалась в обеспечении отсутствия столкно- вений между роботами.В настоящей работе мы устанавливаем приоритеты для роботов для исключе- ния столкновений между ними. Для решения задачи стабилизации мы исполь- зуем метод многослойного сетевого оператора. В качестве примера мы рассмотрим задачу с четырьмя роботами и двумя фазовыми ограничениями в виде прямо- угольных областей.Рассмотрим систему дифференциальных уравнений, описывающих группу роботов одного типа:ẋ1,i = u1,i cos(x3,i), (1)ẋ2,i = u1,i sin(x3,i), (2)x 3,iu1,i=Ltg(u2,i ),(3)где (ẋ1,i, ẋ2,i) - координаты геометрического центра робота i; x3,i - угол между про- дольной осью робота i и осью OX неподвижной системы координат; L - общий габаритный параметр робота; u1,i, u2,i - компоненты вектора управления робота i; i = 1, …, N, N - количество роботов в группе.Для системы (1)-(3) заданы ограничения на управление- + - +u1  u1,i  u1 , u2 u2,i  u2 , (4)задано множество начальных значенийX = {((x 0,1, x 0,1, x 0,1 ), …, (x 0,1 , x 0,1 , x 0,1 )), ...0 1,1 2,1 3,1 1,N2,N3,N..., ((x 0,M , x 0,M , x 0,M ), …, (x 0,M , x 0,M , x 0,M )),(5)1,1 2,1 3,1 1,N2,N3,Nзаданы терминальные условия1,k f 1,k| x (t ) - x f |≤ ε,2,k f 2,k| x (t ) - x f |≤ ε,3,k f 3,k| x (t ) - x f |≤ ε, k = 1, …, N, (6)где tf - не заданное, ограниченное сверху время выполнения терминальных условий, tf  t+; ε - заданная малая положительная величина; t+ - заданная верхняя времен- ная граница выполнения терминальных условий.Заданы фазовые ограничения в виде прямоугольных областей (рис. 1).Рис. 1. Фазовое ограничение [Phase constraints]На рисунке 1 (α, β) - координаты углов прямоугольной области ограничения,α ∈ {a, d}, β ∈ {b, c}, a < d, b < c.Мы рассматриваем роботов прямоугольной формы. Углы любого робота недолжны находиться внутри общей площади фазовых ограничений, т.е. должно выполняться условие(x̃1,j,i < ak) ∨ (x1,j,i > dk) ∨ (x̃2,j,i < bk) ∨ (x̃2,j,i > ck), (7)где (x̃1,j,i, x2,j,i) - координаты угла j робота i, j = 1, 2, 3, 4, i = 1, …, N; k = 1, …, K; K - количество фазовых ограничений.Рис. 2. Углы габаритной площади робота [Corners of the robots area]Координаты положения углов каждого робота (рис. 2) определяем по следую- щим формулам:x1,1 = xl,f cos(x3) - yl,f sin(x3), x̃2,1 = xl,f sin(x3) + yl,f cos(x3), x1,2 = xl,bcos(x3) - yl,bsin(x3), x̃2,2 = xl,bcos(x3) + yl,bsin(x3), x̃1,3 = xr,bcos(x3) - yr,bsin(x3), x̃2,3 = xr,bcos(x3) + yr,bsin(x3), x1,4 = xr,f cos(x3) - yr,f sin(x3), x̃2,4 = xr,f cos(x3) + yr,f sin(x3),где xl,f = x1cos(x3) + x2sin(x3) + L/2, yl,f = -x1sin(x3) + x2cos(x3) + H/2; xl,b = x1cos(x3) ++ x2sin(x3) - L/2, yl,b = yl,f, xr,f = xl,f; yr,f = -x1sin(x3) + x2cos(x3) - H/2, xr,b = xl,b, yr,b = yr,f.Задан критерий качества управленияM ⎛ N t f⎜J = ∑ ⎜ ∑ ∫⎝⎞f0 (x1,k , x2,k , x3,k , u1,k , u2,k )dt ⎟ ,⎟⎠(8)i =1k =1 0 iгде нижний индекс i у скобок (…)i означает, что выражение в скобках вычисляетсядля начальных значений ((x 0,i , x 0,i , x 0,i ), …, (x 0,i , x 0,i , x 0,i)), 1  i  M.1,1 2,1 3,1 1,N2,N3,NНеобходимо найти управление, которое для любых начальных условий (5) обе- спечивает достижение цели управления (6) без нарушения фазовых ограничений(7) с оптимальным значением критерия качества (8).Для решения поставленной задачи синтеза системы управления на первом этапе мы решаем задачу синтеза системы стабилизации для одного робота, но с фазовыми ограничениями, а затем мы тиражируем эту систему стабилизации для всех роботов.Для решения задачи стабилизации мы используем функционалM ⎛ t1 ⎞J = ∑ ⎜t1 + ∫ pdt ⎟→ min,(9)i =1 ⎝ 0 ⎠iгде M - количество начальных условий,⎧ 3⎪t, if (x f - x(t))2 < εt1 = ⎨⎪,∑ j jj =1(10)⎩t + - иначеε и t+ - заданные положительные величины; p(t) - штраф за нарушение фазовых ограничений.a бРис. 3. Нарушение фазовых ограничений [Violation of phase constraints]Нарушение прямоугольных фазовых ограничений возникает при условии по- падания угла робота внутрь общей площади фазовых ограничений или если угол фазовых ограничений попадает внутрь площади робота (рис. 3 а, б).⎧r + , if (δ1δ2 > 0) ∧ (δ2δ3 > 0) ∧ (δ3δ4 > 0)⎪p = ⎨s + , if (γ1γ 2 > 0) ∧ (γ 2 γ3 > 0) ∧ (γ3 γ 4 > 0),⎩⎪0 - иначе(11)где δ1 = (x1,1 - α)(x̃1,2 - x̃1,1) + (x̃2,1 - β)(x̃2,2 - x2,1),δ2 = (x1,2 - α)(x̃1,3 - x̃1,2) + (x̃2,2 - β)(x̃2,3 - x2,2),δ3 = (x1,3 - α)(x̃1,4 - x̃1,3) + (x2,3 - β)(x̃2,4 - x2,3),δ4 = (x1,4 - α)(x̃1,1 - x1,4) + (x2,4 - β)(x̃2,1 - x̃2,4),r+ = max{r1, r2, r3, r4}, ri =(x 1,i - α)2 + (x 2,i - β)2 , i = 1, 2, 3, 4,γ1 = (d - x1̃ )(a - d), γ2 = (c - x2̃ )(b - c), γ3 = (a - x̃1)(d - a), γ4 = (b - x2̃ )(c - b),s+ = max{s1, s2, s3, s4}, s1 =(d - x 1 )2 + (c - x 2 )2 , s2 =(a - x 1 )2 + (c - x 2 )2 ,2 2 2 2s3 =(a - x 1 )+ (b - x 2 ) , s4 =(d - x 1 )+ (b - x 2 ) .Для решения задачи стабилизации с фазовыми ограничениями мы использу- ем метод многослойного сетевого оператора. Описание метода представлено в работе [15].В качестве примера используем предложенный метод для решения задачи син- теза системы управления группой из N = 4 мобильных роботов с K = 2 фазовыми ограничениями и M = 2 начальными состояниями.Были заданы следующие начальные условия:{( 0,1 0,1 0,1) ( 0,1 0,1 0,1 )X 0 =x1,1= -12.5, x2,1 = 2, x3,1 = 0 ,x1,2 = -12.5, x2,2 = 4, x3,2 = 0 ,( 0,1 0,1 0,1) ( 0,1 0,1 0,1 )x1,3 = -12.5, x2,3 = 6, x3,3 = 0 ,x1,4 = -12.5, x2,4 = 8, x3,4 = 0 ,( 0,2 0,2 0,2) ( 0,2 0,2 0,2 )x1,2= 12.5, x2,2 = 2, x3,2 = 0 ,x1,2= 12.5, x2,2 = 4, x3,2 = 0 ,( 0,2 0,2 0,2) ( 0,2 0,2 0,2 )}x1,3= 12.5, x2,3 = 6, x3,3= 0 ,x1,4= 12.5, x2,4 = 8, x3,4 = 0и целевое терминальное положениеx f f f f f f1,1 = -7.5, x2,1 = 0, x3,1 = 0, x1,2 = -2.5, x2,2 = 0, x3,2 = 0,x f f f f f f1,3 = 2.5, x2,13 = 0, x3,3 = 0, x1,4 = 7.5, x2,4 = 0, x3,4 = 0.Были заданы следующие параметры фазовых ограничений:a1 = -20, b1 = -1, c1 = 1, d1 = -10.5, a2 = 10.5, b2 = -1, c2 = 1, d2 = 20.Длина и ширина каждого робота заданы соответственно L = 4, H = 2.1Ограничения на управление были u -1= -5, u +2= 5, u -2= -1, u += 1.В результате решения задачи методом многослойного сетевого оператора была получена следующая система стабилизации:u1 =⎪u 1 - otherwise⎧u- , if u 1< u-1 1⎧u- , if u 2< u-2 2⎪ +⎨u1 , if u > u+ , u = ⎪ + , if u 1 1 2 ⎨u2> u+2 2,⎪u 2 - otherwise⎩ ⎩где ũ1 = 3/2A, ũ2 = sgn(3B + sgn(A)exp(-|3A|)) × (exp|3B + sgn(A)exp(-|3A|)| - 1);Cq4 + sgn(Δ1,i )exp(- | Δ1,i | q1) 1- exp(-Cq4 ) 3A = + + Δ1,i ;2 1+ exp(-Cq4 )B = Dcos(Δ1,i) + sgn(D)(exp|D| - 1) + G-1; C = q1Δ1,i + q2Δ2,i - q3Δ3,iΔ2,i;D = G + sgn(G) | G | + sgn(sgn(Δ1,i )q6Δ3,i| q7Δ1,i |) × (exp | sgn(Δ1,i )q6Δ3,i| q7Δ1,i | | -1);G = q5Δ2,i + sgn(Δ2,i ) +q Δ2 26 3,i| q7Δ1,i| +1;sgn(Δ1,i )q6Δ3,i| q7Δ1,i |q1 = 10.218; q2 = 0.447754; q3 = 1.4932; q4 = 0.42098; q5 = 14.377441; q6 = 8.47973632;q7 = 0.28297; Δ1,i = x f - x ; Δ= x f - x ; Δ= x f - x .1,i1,i2,i2,i2,i3,i3,i3,iПолученная система стабилизации позволяет роботам успешно достичь тер- минальных положений из разных начальных условий.Во время движения роботы имели следующие приоритеты:di = N - i, i = 1, …, N. (12)Согласно заданным приоритетам если в процессе моделирования возникает вероятность столкновения роботов, то робот с меньшим приоритетом должен остановиться.а) расстояние между 1 и 2 роботом б) расстояние между 1 и 3 роботомв) расстояние между 1 и 4 роботом г) расстояние между 2 и 3 роботомд) расстояние между 2 и 4 роботом е) расстояние между 3 и 4 роботомРис. 4. Расстояния между роботами в процессе движения [Distance between robots]На рисунке 4 приведены результаты моделирования полученной системы управления. На рисунке 4, а-е представлены наименьшие расстояния между роботами, когда они перемещаются из первого начального состояния до конеч- ного состояния.Из результатов моделирования видно, что полученная система управления позволила роботам переместиться из начальных условий до конечного состояния без столкновений.В заключение отметим, что в настоящей работе проблема синтеза управления для группы роботов была решена методом многослойного оператора сети. Полу- ченное управление является сложной функцией от координат пространства со- стояний. Метод нашел не только параметры, но и структуру этой функции управ- ления. В отличие от традиционных методов синтеза управления, метод, который мы показали, позволяет решить задачу синтеза автоматически, а не просто опти- мизирует некоторую заданную структуру.© Дивеев А.И., Шмалько Е.Ю., 2017
×

Список литературы

  1. Arutyunov, A.V., Karamzin, D.Yu. and Pereira, F.L. Maximum Principle in Problems with Mixed Constraints under Weak Assumptions of Regularity, J. of Optimization. Vol. 59. Issue 7. 2010. Pp. 1067-1083.
  2. Kaviczky T., Borelli F., Fregene K., Godbole D. and Balas G.J. Decentralized Receding Horizon Control and Coordination of Autonomous Vehicle Formations, IEEE Trans. on Cont. Syst. Tech., 2008. V. 16, 1. Pp. 19-33.
  3. O’Neill, M. and Ryan, C. Grammatical Evolution. IEEE Trans. Evol. Comput. 5, 2001. Pp. 349-358.
  4. Zelinka, I. Analytic programming by means of new evolutionary algorithms. In: Proceedings of 1st International Conference on New Trends in Physics’01, Brno, Czech Republic, 2001. Pp. 210-214.
  5. Diveev, A.I. and Sofronova, E.A. Application of network operator method for synthesis of optimal structure and parameters of automatic control system. In: Proceedings of 17-th IFAC World Congress, Seoul, 2008, 05.07.2008 - 12.07.2008. Pp. 6106-6113.
  6. Diveev, A.I. and Sofronova, E.A. Numerical method of network operator for multi-objective synthesis of optimal control system. In: Proceedings of Seventh International Conference on Control and Automation (ICCA’09) Christchurch, New Zealand, December 9-11, 2009. Pp. 701- 708.
  7. Diveev, A.I. A Numerical Method for Network Operator for Synthesis of a Control System with Uncertain Initial Values. Journal of Computer and Systems Sciences International. 2012. Vol. 51. No. 2. Pp. 228-243.
  8. Koza, J.R., Keane, M.A., Yu, J., Bennett, F.H., Mydlowec, W., and Stiffelman, O. Automatic Synthesis of both the Topology and Parameters for a Robust Controller for a Non-Minimal Phase Plant and a Three-Lag Plant by Means of Genetic Programming In Proceedings of the 38 Conference on Decision & Control Phoenix, Arizona USA - December 1999. Pp. 5292-5300.
  9. Koza, J.R., Keane, M.A., Yu, J., Mydlowec, W., and Bennett, F.H. Automatic Synthesis of Both the Control Law and Parameters for a Controller for a Three-Lag Plant with Five-Second Delay using Genetic Programming and Simulation Techniques. In Proceedings of the American Control Conference Chicago, Illinois June 2000. Pp. 453-458.
  10. Yu, J., Keane, M.A., and Koza, J.R. Automatic Design of Both Topology and Tuning of a Common Parameterized Controller for Two Families of Plants using Genetic Programming. In Proceedingsof the 2000 IEEE International Symposium on Computer-Aided Control System Design Anchorage, Alaska, USA September 25-27, 2000. Pp. 234-242.
  11. Cpałka, K., Łapa, K, and Przybył, A. A New Approach to Design of Control Systems Using Genetic Programming. Information technology and control. 2015. V. 44. No. 4. Pp. 433-442.
  12. Diveev A.I. Small Variations of Basic Solution Method for Non-numerical Optimization. In Proceedings of 16th IFAC Workshop on Control Applications of Optimization, October 6th-9th, 2015. Garmisch-Partenkirchen. Pp. 28-33.
  13. Diveev, A.I. and Shmalko, E.Yu. Optimal Control Synthesis for Group of Robots by Multilayer Network Operator. In Proceedings of 3rd International Conference on Control, Decision and Information Technologies (CoDIT’16). St. Paul’s Bay - Malta on April 6-8, 2016. Pp. 077-082.
  14. Diveev, A.I. and Shmalko, E.Yu. Optimal Motion Control for Multi-Robot System by Multilayer Network Operator. In Proceedings of the 11th IEEE Conference on Industrial Electronics and Applications (ICIEA 2016), 5-7 June 2016, Hefei, China. Pp. 2164-2169.
  15. Дивеев А.И., Софронова Е.А., Шмалько Е.Ю. Эволюционные численные методы решения задачи синтеза системы управления группой роботов // Информационные и математические технологии в науке и управлении. Иркутск: ИСЭМ СО РАН, 2016. № 3. С. 11-24. [Evolutsyonnye chislennye metody reshenia zadachi sinteza sistemy upravlenia gruppoi robotov = Evolutionary computational methods to solve problems of control system synthesis for groups of robots // Informacionnye i matematicheskie tehnologii v nauke i upravlenii = Information and mathematical technologies in science and management. Publ. Irkutsk: Melentiev Energy Systems Institute SB RAS, 2016. № 3. S. 11-24].

© Дивеев А.И., Шмалько Е.Ю., 2017

Creative Commons License
Эта статья доступна по лицензии Creative Commons Attribution 4.0 International License.

Данный сайт использует cookie-файлы

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

О куки-файлах