УДК 004.02

 

Дубанов А.А., Билдушкина М. Н., Шедоева С. В.

Сибирский Государственный Университет Телекоммуникаций и Информатики

Построение моделей движения объектов в задаче преследования. Решение в системе вычислительной математики «MathCAD»

Аннотация

В данной статье изложено описание разработанных моделей поведения объектов в задаче преследования, как и преследующего, так и преследуемого. Целью проведенных исследований является разработка алгоритмов для автономных робототехнических комплексов.  В предлагаемых моделях поведения вводятся локальные динамические системы координат, которые формируются направлением движения объектов. В течении определенного промежутка времени объект должен принять решение в каком направлении он должен двигаться в зависимости от результата анализа координат второго объекта. В силу того, что объект при перемещении в пространстве не может мгновенно производить  смену направления движения, в наших задачах «инертность»  моделируется при помощи угловой скорости вращения. По предлагаемым моделям поведения объектов в задаче преследования написаны программы в системе компьютерной математики «MathCAD», с которыми можно ознакомиться на сайте автора. В результатах работы программ  получены анимированные изображения движения объектов, ссылки на которые приводятся в тексте статьи.

1.    Введение. Постановка задачи

Рассмотрим задачу преследования на пересеченной местности, когда преследуемый объект («Кролик») и преследующий объект («Лиса») передвигаются в трехмерном пространстве с постоянными по модулю скоростями. В статье [1] рассматривалась модель, когда траектория движения «Кролика» была предопределенной. То есть координаты положения «Кролика» в определенный момент являлись известными. В такой модели предлагалось то, что вектор скорости «Лисы» будет направлен на «Кролика» или на его предполагаемое положение в определенный момент времени.

В данной статье предлагаются иные модели поведения как «Кролика», так и «Лисы». В предлагаемой модели поведения «Кролика» будет производиться анализ пространственного положения «Лисы», ее скорости и в зависимости от этого будет «приниматься» решение «Кроликом» о направлении его движения. Точно такие же рассуждения можно провести и в отношении модели поведения «Лисы».

 

2.    К выбору системы координат объекта преследования «Кролика»

В данной статье основным является то, что выбор «решения» (направление движения), следует после анализа текущего положения в динамической системе координат. В модели поведения «Кролика» предлагается выбрать динамическую локальную систему координат, где:

1.

Центр локальной системы координат  совпадает с текущими координатами горизонтальной проекции положения кролика (Рис. 1).

 

(1)

2.

Ось абсцисс локальной системы координат совпадает с горизонтальной проекцией скорости «Кролика» на текущий момент времени.

(2)

3.

Ось ординат принадлежит горизонтальной плоскости проекций. Локальная система координат является ортогональной, соответственно ось аппликат есть продукт векторного произведения векторов  и .

 

В нашей задаче явно выраженных зависимостей ,  не существует. В программе, размещенной на сайте [2], для модели траектории «Кролика», приведены упорядоченные наборы точек: , , , , где  – функция, описывающая ландшафт местности по точечному базису, после выполнения процедур полиномиальной регрессии и сплайн-интерполяции.  Данная процедура подробно описана в комментариях к программному коду на сайте автора [2], а также в статье [1]. Далее, для построения функциональной зависимости траектории «Кролика» от времени T, введен формальный параметр , , . Из формулы для сегмента длины дуги  имеем следующее: .

 

IMG0070_253929890.PNG

Рис. 1 Локальная система координат «Кролика»

Рис. 2 Траектории «Кролика», «Лисы» в динамической системе координат (видео)

 

Встроенный решатель систем обыкновенных дифференциальных уравнений системы «MathCAD» позволяет нам решить указанное дифференциальное уравнение в виде определения зависимости . Учитывая то, что мы рассматриваем случай движения с постоянной по модулю скоростью , введем в расчеты реальное время , . В  расчетах нам понадобятся зависимости , , . Построение таких зависимостей указано в комментариях к программному коду на сайте автора [2], [3]. Учитывая все, приведенные выше условия, находим производные по времени  координатных функций «Кролика». В результате имеем:

(3)

Полученные формулы (3) подставляем в формулы (2), для определения нового динамического локального базиса , , . Координаты  центра локальной системы координат нам также известны. Поэтому, предварительные работы по построению динамической системы координат, можно считать выполненными.

3.    Траектория «Лисы» в динамической системе координат «Кролика»

Теперь нам нужно узнать, как будет выглядеть траектория  «Лисы» на поверхности, заданной в виде . Поверхность, заданная в виде , при переходе в динамическую локальную систему координат  , ,  с центром в точке  
 будет выглядеть как на рисунке (Рис. 2).

Согласно формулам (4), все точки базиса, по которому была построена базовая поверхность, были построены в базисе  , ,  с центром в точке  (Рис. 2). По ссылке [5] можно посмотреть, как исходная  поверхность трансформируется по времени. Также, обратим внимание на координаты текущего положения «Кролика». Как и предполагалось, абсцисса и ордината равны нулю, изменяется во времени только аппликата.  Координаты текущего положения «Кролика» и «Лисы», а также координаты точек траектории «Кролика», рассчитывались аналогично, как и в формуле (4). По ссылке [6]  вы можете увидеть картину преследования «Лисой» «Кролика», точки траектории «Кролика», а также точки исходной поверхности.  Для дальнейшей работы, нам необходимо будет увидеть картину преследования на плоскости, в  горизонтальной проекции. По ссылке [7] представлена картина, как в динамической системе координат, так и в мировой.

IMG0080_253929906.PNG

IMG0078_253929906.PNG

Рис. 3 Преследование в мировой СК

Рис. 4 Преследование в динамической СК

 

Анализ (Рис. 4) дает нам механизм моделирования поведения «Кролика» и «Лисы»

4.    Моделирование поведения «Кролика» и «Лисы». Ситуация на плоскости

Нам сейчас необходимо рассмотреть «плоский» случай для наглядности демонстрации подхода к выбору модели движения «Кролика». Пусть «Лиса» преследует

 

 

 

Рис. 5 Смена СК в следующий момент времени. СК – мировая

 

«Кролика» на плоскости. «Кролик» движется по плоскости с постоянной по модулю скоростью .

На рисунке (Рис. 5) схематически представлена смена динамической локальной системы координат, связанной с «Кроликом», в моменты времени   и  . В момент времени  динамическая система координат задается  векторами     и  , а центр координат задается точкой  . В момент времени  система координат «кролика»  переходит в положение ,  с центром в точке . На Рис. 5 представлена ситуация в мировой системе координат , . Далее, нам следует перейти в систему координат «Кролика»  , ,  (Рис. 6).

Рис. 6 Система координат «Кролика»

Рис. 7 Система координат «Лисы»

           

На данном рисунке (Рис. 6) мы предположили, что «Лиса» приближается к «Кролику» из II четверти плоскости. Как уже предполагалось, «Кролик» расположен в точке . У нас время поделено на достаточно  малые промежутки . За это время «Кролик» переходит из положения   в положение : . Линия, соединяющая точки  и  составляет с направлением  вектора  угол . Но в нашей модели «Кролик» не может за промежуток времени  изменить направление движения на угол . Будем считать, что угол , где  - некоторое пороговое значение. Если «Кролик»  будет иметь угловую скорость вращения , тогда вектор скорости повернется на угол  . Мы имеем то, что в системе координат , , , координаты  векторов , ,  будут выражены следующим образом:

 ,

(5)

           

В мировой системе координат ,  вектор  будет выглядеть так: . Где ,  базисные векторы ,  в системе координат , , , а ,  - текущие координаты «Кролика».  Следует пояснить, что:, , формируются текущим направлением скорости «Кролика». А компоненты векторов ,  после вычислений:

, где

 

Более детально этот момент описан на ресурсе [4]. В конечном виде векторы ,  и новый центр координат  в мировой системе координат ,  будут выглядеть так:

(6)

 

Формулы (6) применимы в том случае, если «Лиса»  в динамической системе координат , ,  приближается из II четверти (Рис,6), при условии  некоторого порогового значения.

 

 

 

Рис. 8 Координаты нового центра координат  в мировой системе координат

 

 

На рисунке (Рис. 8) представлены возможные значения  в зависимости от того из какой четверти происходит приближение «Лисы» и от значения угла .

Аналогичные рассуждения можно провести и в отношении поведения «Лисы».  Сформируем систему координат , ,  (Рис. 7). Как и прежде, векторы базиса «Лисы» формируются ее направлением движения:  , , , . В случае, представленном на рисунке (Рис. 7), в системе координат , ,  «Кролик» находится в I четверти. Линия, соединяющая «Лису» и «Кролика», составляет с вектором  угол . По истечению промежутка , «Лиса» переместится на расстояние . В направлении вектора :

,,

(7)

 

Напомним, что формулы (7) выражены в системе координат , , .

 

 

 

Рис. 9 Координаты нового положения «Лисы»  в мировой системе координат

 

 

Тогда, как и в случае с «Кроликом», мы можем представить (Рис. 9) координаты нового положения «Лисы»  в мировой системе координат ( - пороговое значение для угла , Рис. 7). На Рис. 10 представлены результаты работы программы по алгоритмам, разработка которых показана на рис. 8, 9.