Математические структуры и моделирование 2015. №4(36). С. 110-116
УДК 519.62
метод локальных координат для вычисления траектории гибридной динамической системы при скольжении
В.В. Коробицын
к.ф.-м.н., доцент, e-mail: [email protected] Ю.В. Фролова
к.ф.-м.н., доцент, e-mail: [email protected] Омский государственный университет им. Ф.М. Достоевского
Аннотация. Предлагается метод вычисления траектории решения гибридной динамической системы, основанный на переходе к системе меньшей размерности, и вычисление траектории в локальных координатах поверхности скольжения. Метод позволяет избежать проблемы дрожания траектории решения при движении вдоль поверхности скольжения.
Ключевые слова: гибридная динамическая система, режим скольжения, система обыкновенных дифференциальных уравнений с разрывной правой частью, численный метод.
Введение
Современные подходы в области моделирования процессов ориентированы на использование составных систем, где область определения системы разбивается на подобласти. В каждой отдельной подобласти система имеет непрерывное поле направлений, но на границе этих областей непрерывность нарушается. Такие системы получили различные названия: сшитые, склеенные, гибридные, кусочно-гладкие, системы с разрывной правой частью [1,12,20,21]. Существует большое количество гибридных систем, описывающих модели процессов в различных прикладных областях: механике, электротехнике, управлении, Биологии [13,14,16-18].
Исследование гибридных систем, как и непрерывных динамических систем, ведётся двумя способами: аналитическое исследование поведения решений и численное исследование решений. При численном решении гибридных систем возникает много нерешённых вопросов. Некоторые системы могут иметь множество решений, некоторые могут не иметь решений, многие имеют не гладкие решения. Отметим, что гибридные системы имеют так называемый «скользящий режим», при котором траектория решения системы движется не вдоль векторного поля направлений, а вдоль поверхности раздела областей непрерывности системы. На этих поверхностях системы обычно доопределяют в смысле эквивалентного управления [11].
Математические структуры и моделирование. 2015. №4(36)
111
До сих пор не разработан алгоритм численного решения гибридных динамических систем в общем виде. Имеется множество работ, посвящённых отдельным задачам, связанным с построением такого алгоритма. Это задачи поиска пересечения траектории решения поверхности разрыва векторного поля направлений [2-4,8], точному вычислению скользящего режима [5,19], разработки концепции общего алгоритма [7,9,18]. Данная статья посвящена одной из этих задач: вычисление точного решения при скольжении по поверхности разрыва.
1. Определение склеенной динамической системы
Будем рассматривать динамическую систему, которая получается путём склеивания двух гладких систем по некоторой гладкой поверхности. Размерность системы равна 3, размерность поверхности — 2. Полученные ниже результаты можно обобщить на случай БОльших размерностей.
Пусть S — гладкая регулярная поверхность, заданная в параметрическом виде x = r(u,v), x Е R3, (u,v) E R2. Поверхность S делит пространство R3 на две непересекающиеся области G1 и G2, расположенные по разные стороны от поверхности S. Поведение динамической системы в областях Gi и G2 будет описываться системой обыкновенных дифференциальных уравнений
dx dt
Векторные поля f1(x) и f2(x) непрерывны в Г1 и Г2 соответственно, где Г1 = G1 U S, Г2 = G2 U S. Траектория решения системы (1) внутри каждой из областей G1 и G2 будет описываться отдельным уравнением из (1) с непрерывным полем направления. И решение будет определяться традиционным способом, как дифференцируемая кривая, касательный вектор к которой в каждой точке совпадает с векторным полем правой части уравнения. Однако если траектория выходит на поверхность S, то поведение системы не может Быть описано системой (1), поскольку в точке пересечения (касания) кривой решения поверхности S не определена правая часть системы. Её необходимо доопределить на поверхности S.
Доопределив систему в виде
f1(x) при x Е G1, f2 (x) При x Е G2.
(1)
dx dt f1(x) при x E G1,
j 2 (f1(x) + f2(x)) при x E S, (2)
f2(x) при x E G2,
можно описать поведение системы при пересечении траектории решения поверхности S. То есть если траектория переходит из G1 в G2 или обратно. При этом в точке пересечения xo поверхности S траектория будет непрерывной, но может Быть недифференцируемой, поскольку в этой точке векторное поле
112
В.В. Коробицын, Ю.В. Фролова. Метод локальных координат...
скачком меняет своё значение с /i(x0) на /2(х0). При этом заданное на S векторное поле 2(/1 (х0) + /2(х0)) не имеет особого смысла, поскольку это значение задаёт направления лишь в одной точке, правая часть при этом все равно остаётся разрывной. Тем не менее, решение системы (2) будет представлено непрерывной кривой, составленной из гладких кривых в G1 и G2, склеенных на поверхности S. Условие пересечения траектории решения поверхности S определяется направлениями векторов /1(х0) и /2(х0). Если оба вектора направлены по одну сторону от поверхности S, то происходит пересечение поверхности в направлении той стороны, куда указывают вектора.
В случае, когда векторы /1(х0) и /2(х0) направлены по разные стороны от S, траектория не может сойти с поверхности и возникает так называемый скользящий режим. Траектория решения движется по поверхности S, не имея возможности с неё уйти. Обозначим область B С S, на которой реализуется скользящий режим. В этом случае доопределение системы (2) не отвечает физическому смыслу, поскольку вектор 2(/1(х) + /2(х)) не будет совпадать с касательной к траектории решения, если он не будет лежать в касательной плоскости K к поверхности S. Поэтому необходимо доопределить систему следующим образом
/1(х) при х £ G1,
dr < 2 (/1(х) + /2(х)) при х £ S \ B, (3)
dt 2 Prk (/1(х) + /2(х)) при х £ B,
/2 (х) при х £ G2,
здесь PrK/(х) обозначает результат операции проецирования вектора /(х) на касательную плоскость K. Решение системы (3) представляет собой непрерывную кривую, склеенную из гладких кривых, лежащих в G1, G2 и на поверхности S в области B в случае скольжения.
2. Разложение векторов в локальном базисе
Поскольку поверхность S — гладкая регулярная, то в каждой точке (u,v) существуют векторы r'u := fU(u,v) и rV := §V(u,v), они не равны нулю и не параллельны. Поэтому единичный вектор нормали n к касательной плоскости K можно вычислить как нормированное векторное произведение векторов r'u, rV
n
К, rV ] К ,rV]| ’
Векторы rU, rV, n образуют базис в R3. Поэтому в любой точке поверхности r(u,v) вектор / векторного поля /i(r(u,v)),i = 1,2 можно разложить в базисе {rU,rV, n}: / = arU + ,5rV + Yn. Вектор h = (a,e,Y)T можно найти из системы
Математические структуры и моделирование. 2015. №4(36)
113
линейных алгебраических уравнений
Ah = f, где A
/ 1 ru 1 rv n1 \
2 2 2
ru rv n2
3 3 3
rU rv n3
Поскольку векторы r'u,r'v,n не компланарны, то матрица A обратима и h = A-1f. Значение координаты 7 вектора h можно вычислить как скалярное произведение вектора Ah и п: 7 = {Ah, n) = {f,n}. Знак величины 7 для векторов f1 и f2 будет показывать направление этих векторов относительно касательной плоскости K. Условия пересечения и скольжения траектории решения на поверхности S можно записать, определяя знак произведения значений 7.
В области B векторные поля f1 и f2 направлены в противоположные стороны от касательной плоскости K. Условие скольжения можно сформулировать так
({f1,n} ■ {f2,n}) iu,v) < 0 или
одновременно {f1,n)(u,v) = 0 и {f2,n)(u,v) = 0 (4)
для любых (u,v) е B.
Здесь значения векторов f1 и f2 определяются в точке (u,v) как значения векторных полей на поверхности S, соответствующих локальным координатам u,v: fi := fi(r(u,v)). Условие пересечения траектории решения системы (2) поверхности S вне области B выглядит так
({f1,n} ■ {f2,n}) (u,v) > 0 или
выполнено одно из условий {f1 ,n}(u,v) = 0 или {f2,n}(u, v) = 0 для любых (u, v) е S \ B.
Проекцию вектора fi(x) на касательную плоскость K в любой точке x = r(u,v) можно определить так
PrK(fi(x)) = fi(r(u,v)) - ({n,fi} ■ n)(u,v).
3. Система в локальных координатах
В каждой точке x = r(u,v) поверхности S можно ввести локальную систему координат (u,v,w) в базисе {rU, rV,n}.
Пусть g(t) = (u(t),v(t)) вектор-функция в R2, описывающая движение точки вдоль кривой, лежащей на поверхности S. Тогда координаты точек этой кривой в объемлющем пространстве R3 будут x(t) = r(u(t),v(t)). Вычислим полную производную функции x(t) в некоторой точке t
dx
dt
(t)
, du . . . dv
rU dt (t) +rV dt
(t).
114
В.В. Коробицын, Ю.В. Фролова. Метод локальных координат...
А это в свою очередь является разложением вектора dx по базису [r'u,r'v,n}. При этом третья координата равна нулю, поскольку кривая лежит на поверхности S. dx(t) — это вектор (du(t), dv(t), 0)T в базисе {rU,rV,n}. Можно записать
( dU ^
dt dv dt
0
Поскольку на поверхности S в области B кривая решения системы (3) должна удовлетворять третьему уравнению, то получаем
A-1 dX (t).
dtv
( du \
dv = a-1 ( f1 + f2
dt I 2 0
fl + f2 n, 2
n
(u(t),v(t)).
(5)
Для любого вектора f вектор f — (n, f) ■ n будет ортогонален вектору n, поэтому третья координата вектора правой части системы (5) также будет равна нулю.
Заключение
Представленный метод нахождения траектории решения гибридной системы в режиме скольжения позволяет избежать проблемы, связанной с дрожанием траектории решения вдоль поверхности скольжения. Переход к решению задачи меньшей размерности, совпадающей с размерностью поверхности скольжения, даёт гарантию отсутствия схода траектории с поверхности скольжения раньше, чем это потребуется при выходе со скольжения.
Возникающая проблема с обращением матрицы A в системе (5) при вычислениях правой части на каждом шаге численного метода может быть решена вычислением обратной матрицы в аналитическом виде. Поскольку поверхность обычно описывается простой функцией от точки г, то нахождение частных производных от этой функции не составит особого труда. Однако если придётся вычислять эту матрицу численно, то это может привести к нежелательным эффектам при вычислении траектории.
Литература
1. Баутин Н.Н., Леонтович Е.А. Методы и приемы качественного исследования динамических систем на плоскости. М. : Наука, 1990. 488 с.
2. Коробицын Б.Б., Идрисов Р.Г. Линейное приближение точки пересечения кривой решения системы ОДУ с поверхностью разрыва правой части // Математические структуры и моделирование. 2010. Вып. 21. С. 17-23.
3. Коробицын Б.Б., Маренич Б.Б., Фролова Ю.В. Численный алгоритм склеивания решения на поверхности разрыва для систем с клеточной структурой // Вестник Омского университета. 2010. № 4. С. 156—163.
Математические структуры и моделирование. 2015. №4(36)
115
4. Коробицын В.В. Об определении точки пересечения кривой решения задачи Коши с поверхностью разрыва // Вычисл. технологии. 2011. Т. 16, № 4. С. 50-63.
5. Коробицын В.В., Фролова Ю.В. Алгоритм вычисления скользящего режима для системы с гладкой границей разрыва // Вычисл. технологии. 2010. Т. 15, № 2.
С. 56-72.
6. Коробицын В.В., Фролова Ю.В. Выбор режима продолжения траектории динамической системы при пересечении двух поверхностей разрыва // Математические структуры и моделирование. 2011. Вып. 24. С. 33-39.
7. Коробицын В.В., Фролова Ю.В., Маренич В.Б. Алгоритм численного решения кусочно-сшитых систем // Вычисл. технологии. 2008. Т. 13, № 2. С. 70-81.
8. Коробицын В.В., Фролова Ю.В. Оценка погрешности вычисления точки пересечения продолжения кривой решения задачи Коши с поверхностью разрыва // Математические структуры и моделирование. 2011. Вып. 22. С. 5-14.
9. Коробицын В.В., Фролова Ю.В. Представление алгоритма численного решения гибридной динамической системы с конечным множеством дискретных состояний в виде конечного автомата // Вестник Омского университета. 2013. № 4(70). С. 221227.
10. Коробицын В.В., Фролова Ю.В. Программа МЕР2 для исследования динамических систем с клеточной структурой // Вестник Омского университета. 2011. № 2. С. 167-172.
11. Уткин В.И. Скользящие режимы в задачах оптимизации и управления. М. : Наука, 1981. 368 с.
12. Филиппов А.Ф. Дифференциальные уравнения с разрывной правой частью. М. : Наука, 1985. 224 с.
13. Brogliato В. Nonsmooth Mechanics (2nd edn). London: Springer-Verlag, 1999.
14. Gouze J.-L., Sari. T. A class of piecewise linear differential equations arising in biological models // Dynamical Systems. 2002. Vol. 17. Р. 299-319.
15. Korobitsin V., Frolova J. Numerical algorithm for solving discontinuous dynamical systems: Automata approach // Proceedings of the BIT 50 Conference: Trends in Numerical Mathematics. June 17-20, 2010, Lund, Sweden. P. 66.
16. Lygeros J., Tomlin C., Sastry S. Controllers for reachability specifications for hybrid systems // Automatica. 1999. Vol. 35, № 3. P. 349-370.
17. Melin J., Hultgren A. A limit cycle of a resonant converter // In Engell H.G.S., Zaytoon J. Analysis and design of hybrid systems 2003. IFAC, Elsevier, 2003. P. 169174.
18. Navarro-Lopez E.M., Carter R. Hybrid automata: an insight into the discrete abstraction of discontinuous systems // International Journal of Systems Science. 2011. V. 42, № 11. P. 1883-1898.
19. Piiroinen P.T., Kuznetsov Y.A. An event-driven method to simulate Filippov systems with accurate computing of sliding motions // ACM Trans. Math. Softw. 2008. V. 34, № 3. Article 13. 24 p.
20. Witsenhausen H.S. A class of hybrid-state continuous-time dynamic system // IEEE Transactions on Automatic Control. 1966. Vol. AC-11, № 2. P. 161-167.
21. Zhusubaliyev Z., Mosekilde E. Bifurcations and chaos in piecewise-smooth dynamical systems. Singapore: World Scientific, 2003.
116
В.В. Коробицын, Ю.В. Фролова. Метод локальных координат...
method of local coordinates for computing the sliding trajectory of hybrid dynamical system
V.V. Korobitsyn1
Ph.D.(Phys.-Math.}, Associate Professor, e-mail: [email protected]
J.V. Frolova1
Ph.D.(Phys.-Math.), Associate Professor, e-mail: [email protected] 1Omsk State University n.a. F.M. Dostoevskiy
Abstract. The method for computing the sliding trajectory of hybrid dynamical systems is suggested. The method is based on transition to the local coordinate system on sliding surface with smaller dimension. The method solves the problem of chattering the trajectory near the sliding surface.
Keywords: hybrid dynamical system, sliding mode, system of ordinary differential equations with discontinuous right-hand side, numerical method.