64
ВЕСТН. моек. УН-ТА. СЕР.1, МАТЕМАТИКА. МЕХАНИКА. 2018. №6
СПИСОК ЛИТЕРАТУРЫ
1. Афанасьев А.А., Мельник О.Э. Численное моделирование формирования линзы концентрированного рассола при дегазации магматического очага // Изв. РАН. Механ. жидкости и газа. 2017. № 3. 88-95.
2. Afanasyev A. Reservoir simulation with MUFITS code: Extension for double porosity reservoirs and flows in horizontal wells // Energy Proc. 2017. 125. 596-603.
3. Akinfiev N.N., Diamond L.W. A simple predictive model of quartz solubility in water-salt-CO2 systems at temperatures up to 1000oC and pressures up to 1000 MPa // Geochim. et Cosmochim. Acta. 2009. 73. 15971608.
4. Weis P. The dynamic interplay between saline fluid flow and rock permeability in magmatic-hydrothermal systems // Geofluids. 2015. 15. 350-371.
5. Sillitoe R. Porphyry copper systems // Econ. geol. 2010. 105, N 1. 3-41.
Поступила в редакцию 22.11.2017
УДК 531.382
ПРОГРАММНЫЕ СТРАТЕГИИ ТЕСТИРОВАНИЯ КАЧЕСТВА УПРАВЛЕНИЯ ЛИНИЕЙ ВИЗИРОВАНИЯ ПО ВИДЕОИЗОБРАЖЕНИЮ
В. В. Латонов1
Приводится решение частного случая игровой задачи, поставленной в предыдущей работе. В качестве модели подвижного основания используется расширенная модель машины Дубинса. Представлены условие существования седловой точки и метод ее нахождения, а также способ определения стратегий и траекторий игроков.
Ключевые слова: линия визирования, наведение, дифференциальные игры, множество достижимости, программные стратегии, седловая точка.
A particular case of the game problem formulated in the previous paper is considered. As a model of the moving platform, we use an extended model of the Dubins car. An existence condition for a saddle point and a method of its finding are proposed. A method of determining the strategies and trajectories of players is discussed.
Key words: line of sight, targeting, differential games, reachable set, program strategies, saddle point.
1. Введение. В работе [1] изложены общая физическая и математическая постановки задачи тестирования качества наведения линии визирования на цель. В задаче рассматривается подвижное основание, на котором закреплены камера и монитор. На монитор поступает изображение с камеры, поверх этого изображения рисуется маркер — точка, которой управляет оператор. Оператор пытается свести линию визирования маркера с линией визирования цели, неподвижной в инерциальном пространстве.
В настоящей работе в качестве модели подвижного основания используется расширенная модель машины Дубинса [2]. Рассматривается игра на конечном временном отрезке, тестирование проводится в программных стратегиях. Тестирование оператора в задаче выполняется с помощью динамического стенда. Во время тестирования оператор пользуется изображением виртуальной цели на мониторе, установленном на подвижной части стенда перед лицом оператора.
2. Математическая постановка задачи. Обозначим через С точку, связанную с основанием. Рассмотрим случай, когда цель неподвижна и расположена бесконечно далеко от основания. В этом случае линейные перемещения основания не влияют на направление ее линии визирования. Введем следующие системы координат: С^^Сз — опорная система отсчета, не совершающая вращательных
1 Латонов Василий Васильевич — асп. каф. прикладной механики и управления мех-мат. ф-та МГУ, e-mail: WLatonov@gmail.com.
ВЕСТН. МОСК. УН-ТА. СЕР.1, МАТЕМАТИКА. МЕХАНИКА. 2018. №6
65
движений, и Cz\z2Z3 — приборная система отсчета, жестко связанная с основанием, совершающая поступательные и вращательные движения. Каждой точке в любой системе координат соответствует ее линия визирования — прямая, соединяющая данную точку с началом координат C. Для каждой линии визирования определен единичный вектор e, называемый направляющим вектором линии визирования, задающий направление этой линии в соответствующей системе отсчета. Вектор всегда направлен "от начала координат к точке".
В дальнейшем будем обозначать буквой E цель, а буквой P — маркер. Этими буквами будем индексировать координаты, задающие направление линий визирования маркера и цели. На рис. 1 изображены направляющие векторы линий визирования маркера и цели и угол раствора между ними, который обозначается через к.
Через в обозначим угол возвышения, а через ф — угол курса направляющего вектора линии визирования в системе координат Cz\z2 z3. Тогда координаты направляющего вектора линии визирования вычисляются по формулам
zi = — sin ф cos в,
z2 = cos ф cos в, (1)
z3 = sin в.
Рис. 1. Приборный трехгранник Сх\ ер — направляющий вектор линии визирования маркера, ев — направляющий вектор линии визирования цели, к — угол раствора между векторами
На плоскости монитора изображение точки определяется двумя координатами. Паре координат точки на плоскости монитора однозначно соответствует пара углов, задающих направление линии визирования точки.
Предположим, что основание совершает только повороты по углам курса и тангажа. Тогда ориентация основания задается двумя угловыми параметрами а и в. Воспользуемся расширенной моделью машины Дубинса (так называемый самолет Дубинса) [2] для описания движения основания:
¿ц = — V sin а cos в, ¿¡2 = V cos а cos в,
¿3 = V sin в, (2)
а
Шп
^ = ^в,
€ W = {РС1 : <<ах, |ив| |а| < атах, |в| < втах,
где V — скорость движения основания, которую будем считать постоянной; атах и втах — фазовые ограничения.
Обозначим через ¿о момент начала движения основания, через ¿1 момент окончания движения (¿1 < то). Используя уравнения (1), (2) и уравнения Пуассона для матрицы ориентации основания, получим уравнения, описывающие изменение направления линии визирования цели в приборной системе координат:
фЕ = — ша cos в + ша sin в tan вЕ cos фЕ — wg tan вЕ sin фЕ, вЕ = — Ша sin в sin фЕ — We cos фЕ,
а = Ша
в = We,
(3)
ФЕ (0)= фЕ , вЕ (0) = в0, аЕ (¿о ) = аЕ, вЕ (¿о )= вЕ • Рассмотрим модель управления линией визирования маркера:
фр = ui, вр = u2,
«!(•),«2(0 € U = {PC1 : |ui| < umax, |u2| < umax}, PP (to) = pP, вр (to) = 9°P.
Требуется оценить качество сведения линий визирования маркера и цели в момент ti. Рассмотрим антагонистическую игру преследования, в которой линия визирования маркера — преследователь, а линия визирования цели — убегающий. Положения обоих игроков задаются углами р и в. Качество сведения линий визирования определим через функционал
J(«, w) = — (eE(t1), eP(t1)) = — cos к, (5)
где eE (ti) и ер (ti) — единичные направляющие векторы линий визирования маркера и цели. Таким образом, поставлена игровая задача, определяемая системами (3), (4) и функционалом (5). Дифференциальную игру, описывающую эту задачу, будем далее обозначать через r(U, W, J(«, w)). Оператор старается минимизировать функционал при наихудших возмущениях, а возмущение стремится его максимизировать при наилучшем управлении оператором:
max J(«, w) ^ min, min J(«, w) ^ max.
wew «eu «eu wew
3. Свойства множеств достижимости игроков. Важную роль в решении игровой задачи выполняют множества достижимости игроков, поскольку размер и форма множеств достижимости определяют возможности каждого из игроков. Через Qp обозначим множество достижимости убегающего (E) в момент ti. Аналогично через Qp обозначим множество достижимости преследователя (P). Множества достижимости игроков строятся с учетом собственных фазовых ограничений.
В игре r(U, W, J(и,ш)) движение преследователя (P) описывается простой системой линейных дифференциальных уравнений. Границы множества достижимости этой системы строятся аналитическими методами. Легко видеть, что множество достижимости преследователя Qp — это прямоугольник на плоскости (pp,Qp).
В то же время движение убегающего игрока (E) описывается системой нелинейных дифференциальных уравнений, поэтому структура его множества достижимости требует исследования. Множество Qp определено в четырехмерном пространстве (pE , 9p , а, в). Обозначим через вв (Qp) проекцию множества Qp на плоскость (pe, 9p), а через pra^(Qp) проекцию на (а,в).
Конфигурационное многообразие системы дифференциальных уравнений (3) двумерно, поскольку она обладает тремя первыми интегралами
c1 = — cos pE cos 9e sin а cos в — sin pE cos 9E cos а + sin 9E sin а sin в, c2 = cos pE cos 9e cos а cos в — sin pE cos 9E sin а — sin 9E cos а sin в, c3 = cos pE cos 9e sin в + sin 9e cos в,
которые связаны функциональным соотношением c2 + c2 + c2 = 1, так как являются элементами столбца матрицы ортогонального преобразования. Таким образом, функции c1, c2 и c3 задают две функционально независимые голономные стационарные связи. Эти связи определяются начальными условиями pE, 9E, а0, в0 и не зависят от и . Следовательно, множество достижимости Qp также двумерно.
При помощи констант ci, С2 и сз задается непрерывное отображение из пространства углов (а, в) в пространство углов (pe, 9e):
I c1 cos а + c2 sin а \
pE = — arcsm
д/l — (сз cos /3 — (c2 cos а — ci sin a) sin (3)2 J ' (6)
9e = arcsin (c3 cos в — (c2 cos а — c1 sin а) sin в).
Таким образом, если известна проекция точки из множества достижимости на плоскость (а, в), то по этим двум координатам можно однозначно определить остальные две на плоскости (pe, 9e).
Утверждение 1. Динамическая система (3) при любых начальных условиях pE, 9Р, а0, в0 для любых двух моментов t1 и t2, таких, что t1 < t2, удовлетворяет соотношению Qp С Qp2.
Доказательство. Зафиксируем произвольные начальные условия pp, 9p, а*0, в*0. Предположим, что вычислено множество Qp. Рассмотрим произвольную точку (pp(^),9р(t1), а(tl), в(tl)),
принадлежащую этому множеству. Пусть в эту точку игрок приходит при помощи допустимого управления (ш^,, ) на отрезке [¿0,^]. Это управление определяет движение по некой траектории (¿),0Е(¿), «(¿), в(^)) в четырехмерном фазовом пространстве. Рассмотрим управление на отрезке [¿о, ¿2]:
Ша =
Шв =
ша, ¿ € [¿о, ¿1];
^0, ¿ € (¿1,¿2],
'шв, ¿ € [¿о,¿1];
0, ¿ € (¿1,¿2].
Этому управлению на подотрезке [¿^¿1 отвечает траектория (¿),0е(¿), «(¿), в^)), а на по-дотрезке (¿1 ,¿2] — нулевая скорость и как следствие отсутствие дальнейшего движения. Нулевая скорость на подотрезке (¿1, ¿2] объясняется тем, что при подстановке нулевых управлений в систему ее правая часть обращается в нуль. Поэтому, попав в точку (^>е(¿1 ),0е(¿О,«^),в(¿1)), игрок может оставаться в ней сколько угодно. Следовательно, эта точка достижима в момент ¿2. В силу произвольности (¿1 ),0е(¿1 ^«(¿^в(¿1)) множество ПЕ содержит все точки множества ПЕ. Утверждение доказано.
На практике множество ПЕ строится простыми итерационными методами (например, пиксельным методом [3]). Такие методы предполагают большой перебор всевозможных функций ша и шв. Также сложность этих методов зависит от структуры системы дифференциальных уравнений. На г-й итерации строится промежуточное множество достижимости в момент ¿^ € [¿о, ¿1]. На каждой итерации можно рассматривать лишь точки, лежащие на границе промежуточного множества достижимости, так как согласно утверждению 1 все точки, лежащие в промежуточном множестве на г-й итерации, будут лежать в промежуточном множестве на (г + 1)-й итерации. Это существенно упрощает процесс построения множества ПЕ. В результате работы численного метода определяется массив точек, образующих границу множества ПЕ. Обычно он содержит около трех тысяч точек. Каждая такая точка определяется четверкой координат. Этот массив задает соответствие каждой граничной точке множества рг^Е$Е(ПЕ) точку из множества ргав(ПЕ). В дальнейшем массив точек используется для поиска седловой точки и вычисления стратегий игроков.
4. Оптимальные стратегии. Будем искать решения в классе программных стратегий, т.е. в классе функций, зависящих только от времени. Функционал (5) определяет метрику между точками в плоскости (^>, 0). Обозначим через 7(Р, Е) расстояние между точками Р и Е, вычисленное в смысле этой метрики. Поскольку в рассматриваемой игре функционал 7(и, ш) зависит только от положений игроков в конце игры, будем далее писать 7(Р, Е) вместо 7(и, ш). Таким образом, значение функционала 7(Р, Е) определяется двумя выбранными точками из множеств ПЕ и рг^(ПЕ).
Поскольку множества рг^(ПЕ) и ПЕ определены на одной плоскости (^>, 0), игра сводится к геометрической игре, которую мы обозначим через Г(рг^(ПЕ), ПЕ ,7(Р, Е)). Программной стратегией каждого из игроков будет точка в множестве достижимости. Для каждой такой точки множества достижимости игрока определено программное управление. Каждому программному управлению соответствует траектория на плоскости (^>, 0), которая определяется как решение задачи Коши.
Через Я(г, Р) будем обозначать геометрическое место точек, равноудаленных от точки Р на расстояние г по метрике 7(Р, Е). Оно представляет собой кривую, отделяющую множество более удаленных точек {Е € (^>, 0) : 7(Р, Е) > г} от множества менее удаленных точек {Е € (^>, 0) : 7(Р, Е) < г}. Обозначим через 1т ^(г, Р) множество {Е € (<£, 0) : <7(Р, Е) ^ г}. Это множество замкнуто.
Утверждение 2. Пара стратегий (Ро,Ео) является седловой точкой игры Г(рг^(ПЕ), ПЕ, 3(Р, Е)) с ценой игры г тогда и только тогда, когда существуют две кривые ^(г, Ро) и ^(г, Ео), такие, что:
1) Ро € ^(г,Ео), Ео €^(г,Ро);
2) множество рг^(ПЕ) содержит точку Ео и принадлежит множеству 1т ^(г, Ро);
3) множество ПЕ содержит точку Ро, и Ро — единственная общая точка множеств пЕ и 1т Ь(г, Ео).
Этот результат является обобщением теоремы, доказанной в работе [4], на случай, когда одна из систем нелинейна, а также на случай метрики, задаваемой непрерывной функцией 7(Р, Е). При таких условиях утверждение остается верным, более того, его доказательство аналогично до-
казательству в работе [4]. Таким образом, для поиска седловой точки в этой задаче достаточно вычислить максимин и проверить условие 2 из утверждения 2.
Минимаксная стратегия преследователя и максиминная стратегия убегающего лежат на границах множеств достижимости, поскольку функционал 7(Р, Е) выпуклый в достаточно большой области. Следовательно, при поиске седловой точки достаточно рассмотреть лишь точки, лежащие на границах множеств достижимости игроков. Таким образом, задача поиска седловой точки сводится к задаче поиска максимина на двух границах областей достижимости.
В рассматриваемой задаче граница множества Пр представляет собой прямоугольник, поэтому задача поиска максимина в данном случае может быть сведена к задаче условной оптимизации. Рассмотрим следующие задачи поиска условного максимума:
— ссэ (0Е — 0р) ^ тах ,
вЕ (пЕ1)
— (эт 0Е эт (/(у>Е, 0Е)) + ссэ 0Е ссэ (/(уЕ, 0Е)) ссэ (уЕ — Ур)) ^ — (ссэ 0Е ссэ 0р ссэ (уЕ — Ур) + 8Ш 0Е эт 0р) ^
эт 0Е
тах , <ре ,вЕ едрг^0 (пЕ )
тах ,
^е ,вЕ едрг^0 (ПЕ1 )
/ (уЕ, 0Е) = aгctan
ссэ 0Е ссэ (уЕ — Ур)
где ур = уР ±<»(¿1 — ¿о), 0р = ур ±<»(¿1 — ¿о). Максиминная стратегия убегающего совпадает с решением, на котором достигается максимум среди всех функционалов в этих задачах. Максимумы ищутся среди граничных точек рг^в(ПЕ). Данные задачи максимизации решаются простым численным перебором граничных точек множества рг^в (ПЕ), которые были вычислены при построении множества достижимости убегающего игрока.
Рис. 2. Множество Пр достижимости преследователя и проекция рг^дПЕ множества достижимости убегающего на плоскость (у, 0) при следующих значениях констант: ¿о = 0,0; ¿1 = 0,36; штах = 0,9;
0,6:
0Е
а
0,25;
= 0,4;
= 0,55; |а| < 0,5;
о
0; в:
0,2
У°Р
—0,35; 00
< 0,3; уЕ = 0; 0,3
Рассмотрим случай, когда седловая точка игры существует. После определения седловой точки требуется вычислить управления = ) и
возмущения = (шар\швр1),
обеспечивающие попадание каждого из игроков в те точки множеств достижимости, которые были определены в результате вычисления максимина. Обозначим через (ур , 0р) точку, в которую должен целиться преследователь, а через (у>Е, 0е, а , в ) точку, в которую должен целиться убегающий. Координаты а и в определяются из ранее вычисленного массива точек, образующего границу множества ПЕ. Оптимальные управления и возмущения вычисляются как аналитические решения линейных краевых задач:
и1
ш„
Ур ~ Ур
¿1 — ¿о
а — а ¿1 — ¿о
^2
шв
0р — 0р ¿1 — ¿о
/3-/3°
¿1 — ¿о
ш а =
и
в
в
Е
Из отображения (6) следует, что паре углов (а, в) соответствует одна пара углов (pp,0p). Следовательно, управления и соответствующие попаданию траектории в точку (а', в') на плоскости (а, в), гарантированно обеспечивают попадание траектории в точку , ).
После определения w°Jpt и w^pt траектории углов (р>р , 0р) находятся путем численного интегрирования первых двух уравнений системы (3). Эти траектории отвечают за визуализацию движения изображения цели на экране монитора оператора. Траектории углов (a(t),e(t)), отвечающих за движение машины Дубинса и, следовательно, за формирование движения стенда при тестировании, вычисляются аналитически из последних двух уравнений системы (3). На рис. 2 показан пример множества и множества (Qp) (построено пиксельным методом). Также изображены седловая точка и соответствующие ей траектории игроков.
Обозначим через J* цену антагонистической игры. Через ü обозначим управление, которого оператор придерживается непосредственно в процессе тестирования, т.е. при реализации дифференциальной игры на динамическом стенде. Тогда в конце игры функционал (5) примет значение J(ü, wopt) ^ J*. В этом случае оценка качества наведения линии визирования на цель строится по формуле int (100 oPt)); что обеспечивает оценку качества по стобалльной шкале [5].
В конце тестирования (в момент ti) результат действий оператора определяется координатами изображений маркера и цели на плоскости монитора. По этим координатам однозначно определяются углы (рр, 0р) и ,0p), по которым в свою очередь вычисляется оценка результата.
5. Выводы. В работе рассмотрена задача тестирования качества управления линией визирования в программных стратегиях. Для случая неподвижной цели представлены условия существования седловой точки игры в программных стратегиях, а также описаны методы вычисления множеств достижимости игроков и их оптимальных стратегий. Для нахождения седловой точки использовано обобщение теоремы о существовании седловой точки, доказанной в работе [4]. В предложенной игре седловая точка существует не всегда. В дальнейших публикациях будет предложен метод поиска седловой точки в смешанных стратегиях, основанный на результатах, приведенных в работе [6].
Работа выполнена при поддержке гранта РНФ № 14-50-00029. Численное моделирование проведено при поддержке гранта РФФИ № 16-01-00683.
СПИСОК ЛИТЕРАТУРЫ
1. Латонов В.В., Тихомиров В.В. Управление линией визирования цели по видеоизображению // Вестн. Моск. ун-та. Матем. Механ. 2018. № 1. 53-59.
2. Beard R.W., McLain T.W. Implementing Dubins Airplane Paths on Fixed-wing UAVs // Contributed Chapter to the Springer Handbook for Unmanned Aerial Vehicles. Dordrecht, 2013. 1677-1701.
3. Новикова А.О. Построение множеств достижимости некоторых управляемых систем пиксельным методом/ / Сб. статей молодых ученых факультета ВМК МГУ. 2012. № 9. 136-153.
4. Блаженнова-Микулич Л.Ю. Некоторые задачи геометрической теории игр // Фунд. и прикл. матем. 2005. 11, № 8. 131-137.
5. Александров В.В., Лемак С.С., Парусников Н.А. Лекции по механике управляемых систем. М.: МАКС Пресс, 2012.
6. Петросян Л.А., Зенкевич Н.А., Семина Е.А. Теория игр. М.: Высшая школа; Книжный дом "Университет", 1998.
Поступила в редакцию 29.11.2017