САПР
Формальное описание моделей функционирования системы ВАДС
Ерёмин В.М., к.т.н., профессор МГИУ (г. Москва), генеральный директор ООО «ИНЭМДорТранс»
В журнале «САПР и ГИС автомобильных дорог» №1(2) 2014 г. представлено описание концептуальной модели функционирования системы «водитель — автомобиль — дорога — окружающая среда» (ВАДС) как основы компьютерной имитации. В данной статье представлены основные положения предлагаемого подхода к формализации описания имитационных моделей ВАДС.
Система есть множество взаимодействующих элементов. Категорию сложных систем можно выделить, указав ряд им присущих признаков. Основные такие признаки перечислены в [1].
В качестве элементов системы ВАДС в приложениях обычно принимаются участники дорожного движения — водители АТС и пешеходы. Однако во многих случаях с целью удобства алгоритмического описания, написания и отладки компьютерных программ целесообразно в качестве элемента рассматривать пару «водитель — автомобиль».
Для каждого участника дорожного движения задаётся определённый набор (множество) возможных управлений своим движением (перемещением) U.
Для пешехода такой набор задаётся в виде:
U = { ,U2} (1)
где компоненты есть множества возможных направлений движения по дороге в заданной системе координат (Ц); возможных ускорений движения в данном направлении (U2).
Для водителя набор (множество) управлений задается в виде:
U = {Uj,U 2,Uз ,U4,U5 ,U 6} (2)
где вышеперечисленные компоненты есть множества возможных действий:
U — степень нажатия педали акселератора (выдвижения рейки);
U2 — степень нажатия педали тормоза;
U3 — угловая скорость поворота рулевого колеса; U4 — номер передачи коробки перемен передач; U5 — включение/выключение фар;
U6 — включение/выключение сигналов поворота.
1. Формальное описание элементов системы
Каждый элемент системы а представляется в виде вектора заданной размерности а = (a1, a2,..., an).Компоненты вектора а,пред-ставляющие собой атрибуты или параметры данного элемента, могут принимать определённые числовые значения из заданных множеств a. X A, i = 1, 2, ... , n. Естественно, что в качестве компонент вектора а выступают в том числе и значения параметров из множества возможных управлений Ua.
Множество всех допустимых значений вектора a представляет собой некое подмножество n-мерного пространства En. Это подмножество называется пространством состояний элемента а и обозначается через Sa.
Каждая компонента вектора a может изменяться с течением времени. Будем считать, что конкретный вид таких изменений определяется набором функций:
{ 0% i = 12,...,(3)
САПР и ГИС автомобильных дорог | №2(3), 2014 | 93
САПР
Эти функции могут быть заданы в аналитическом виде. Как правило, они являются решениями дифференциальных уравнений из теории автомобиля, полученными с достаточной точностью. В случае, когда элементом системы является пешеход, указанные функции означают изменение направления, скорости и ускорения движения пешехода. В описании функций (3) присутствуют, в том числе, в качестве его составляющих параметры множества управлений элемента Ua. Если какой-либо атрибут элемента во времени не изменяется, то соответствующая ему функция считается заданной константой.
В пространстве состояний элемента а выделяются некоторые состояния, которые называются особыми. Особые состояния элемента а задаются с помощью введения набора функций:
{ { an ) = I0, j = 1 2, ..., ja }. (4)
Уравнения
фj (Яр a2,..., ап) =0, j = l, 2,..., ja (5)
определяют набор гиперповерхностей {TJ в пространстве En. Пересечения этих гиперповерхностей с пространством Sa состояний элемента а, которые мы будем обозначать тем же символом Га, представляют собой множество особых состояний элемента а (особые состояния первой категории).
Движение элемента а в пространстве состояний Sa происходит следующим образом. Пусть в начальный момент времени состояние элемента а есть a(t0) = (a1(t0),., an(tj). При t>t0 движение элемента а в пространстве Sa происходит по следующим законам:
ai(t) = fi(t), i = 12,..., n. (6)
Движение по закону (6) происходит до тех пор, пока траектория движения не достигнет особого состояния. Момент t * выхода траектории движения элемента а на особое состояние есть минимальное положительное решение набора уравнений:
ф j(ai0%a2(0,•••, an0)) = j = l2,..., ja . (7)
Пусть в момент t* состояние элемента а есть а(* = (a1(t*), a2(t*), ..., an(t*)). В момент времени t*+0, непосредственно следующий за моментом t*, траектория движения элемента а в пространстве Sa изменяется скачкообразно. Часто (но не всегда) скачкообразное изменение касается тех компонент вектора а, которые определяют параметры множества возможных управлений Ua. Это означает, что элемент а решил изменить некоторые параметры управления своим движением.
Формально скачкообразное изменение задаётся набором заданных распределений:
ai (t* + 0) = rand(i, j*), i = 1,2,..., n, , (9)
где j* — номер уравнения из системы уравнений (7), решением которого является величина t*; rand(i,j*) — случайная величина, распределённая по соответствующему закону (8).
В большинстве приложений данного подхода значительное число распределений (8) являются вырожденными и выражения (9) принимают вид:
a, (t * + 0) = a, (t *). (10)
После скачка, т.е. при t>t*+0 движение элемента а в его пространстве состояний происходит по законам (6) до тех пор, пока траектория движения опять не выйдет на одно из особых состояний, после чего опять происходит скачок в соответствии с набором (8) и т.д.
2. Формальное описание автономной системы ВАДС, состоящей из конечного числа элементов
Пусть в момент t0 рассматриваемая система состоит из N элементов:
1 а ■ и 1 > an л
2 а II 5^ 2 - an Л (11)
N / N N
а II 5 5 -> anN ),
пространства состояний которых соответственно обозначим через Sai, Бг,..., San. Пусть далее для каждого элемента системы заданы законы движения типа (6), особые состояния rai, лежащие на гиперповерхностях, определяемых уравнениями типа (5), и наборы распределений типа (8), определяющих скачкообразное изменение траекторий движения элементов в своих пространствах состояний.
Определим пространство состояний S рассматриваемой системы как прямое произведение пространств состояний составляющих её элементов:
S = S , 0 S 2 0 ... 0 S м . (12)
a a a ' '
Вектор состояния системы S имеет вид:
' = (a\,
\ ).
n
(13)
Размерность пространства состояния системы равна сумме размерностей пространств состояний составляющих её элементов:
dimS = dimS х + dimS 2 +... +
a a
+ dim Sa„ = n + n2 +... + nN . (14)
{ { j, t { a(t *)), i = l,2,..., ja } (8)
В момент времени t*+0, непосредственно следующий за моментом t*, значения компонент вектора состояния элемента а принимают значения:
Динамика вектора s полностью определяется динамикой компонент векторов составляющих её элементов, т.е. наборами функций типа (6). Естественным образом в пространстве S определяются множества особых состояний rai, связанных с автономным функционированием составляю-
94 | САПР и ГИС автомобильных дорог | №2(3), 2014
САПР
щих её элементов, как удовлетворяющих условиям типа (5), и наборы распределений типа (8).
3. Формальное описание взаимодействий между элементами системы
Формальное описание взаимодействия между элементами системы осуществляется с помощью следующей конструкции.
Рассмотрим вначале описание взаимодействий между двумя элементами системы ak=(ak a2k,..., ank) и ak=(aj, a'2 ,..., a^). Прежде всего, следует формально определить условия наступления взаимодействий. Будем считать, что элемент ak вступает в некоторое взаимодействие с элементом al, если выполняется заданное условие:
ФУ / k k k l l l \ a
t , (al , a2,..., a , al, a2,..., a ) = 0 ,
(15)
Фу (ai 0%a (0,...,a (tlao%a(ti..^ a a k (17)
a‘ni (t)) = 0, k = 1,2,...N, l = 1,2,...N, l * k.
Пусть в момент t* состояние системы есть s(t')=(a 1 (t'), a2(t*),..., a^t*),..., а^(t*), a2f(t*),..., a^t*)).В момент времени t*+0, непосредственно следующий за моментом t*, траектория состояния системы в пространстве S изменяется скачкообразно. Как и в выше описанном случае, часто (но не всегда) скачкообразное изменение касается тех компонент вектора s, которые определяют параметры множества возможных управлений Ua, участвующего во взаимодействии элемента а. Это означает, что элемент а решил изменить некоторые параметры управления своим движением.
Формально скачкообразное изменение задаётся набором заданных распределений:
где Ф^ — заданные функции; v — тип взаимодействия.
Множество точек пространства состояния системы S, удовлетворяющих условию (15), определяет наступление определённого вида взаимодействия элемента ак с элементом а1.
Описание наступления всех видов взаимодействий между любыми двумя элементами системы представляет собой набор функций:
( / k k k l l l \
{Ф akа1 (а1 , ai ,..., ant , ai a2 ,..., an, Л
k = 1, 2,...N, l = 1, 2, ...N, l Ф k}.
(16)
Множество точек пространства состояния системы S, удовлетворяющих условию (15) для всего набора функций (16), определяет наступление всех видов взаимодействий между всеми парами элементов системы. Данное множество точек будем называть особыми состояниями системы второй категории.
Аналогичным образом описывается наступление взаимодействий между тремя и более элементами системы. Однако здесь следует отметить, что в практических приложениях теории всегда удавалось свести взаимодействие трёх и более элементов системы к определённой совокупности (последовательности) взаимодействий пар элементов (в основном, за счёт расширения пространства состояний элементов системы, а следовательно, и системы в целом). Поэтому в дальнейшем будем рассматривать только парные взаимодействия.
Нахождение момента достижения траекторией системы в её пространстве состояний особого состояния второй категории осуществляется следующим образом.
Пусть в начальный момент времени система состоит из N элементов и вектор её состояния есть s(t0)=(a11 (t0), a 2 (t0),..., an\(t0),..., aN(to), aN(Q,..., a^)).При t>toдвижение вектора s в пространстве состояний системы S происходит по законам типа (6) до тех пор, пока траектория движения не достигнет особого состояния. Момент t* выхода траектории состояния системы s на особое состояние второй категории есть минимальное положительное решение набора уравнений для всех v:
k = 1, 2,...N, l = 1, 2, ...N, l Ф k .
Обозначим через I k подмножество номеров тех компонент вектора состояния системы s, которые описывают все параметры элемента ак. В момент времени t*+0, непосредственно следующий за моментом t*, значения компонент вектора состояния системы s с номерами i, принадлежащими подмножеству номеров Iak, принимают значения:
st(t * +0) = rand(i,l,v),i e I^ , (19)
где l — номер элемента, с которым взаимодействует элемент ak;
v — номер уравнения из системы уравнений (17), решением которого является величина t*;
rand(i,l,v) — случайная величина, распределенная по соответствующему закону (18).
В большинстве прикладных приложений данного подхода значительное число распределений (18) является вырожденными и выражения (19) принимают вид:
st (t * +0) = st (t*) . (20)
4. Формальное описание взаимодействия системы с внешней средой
Взаимодействие системы с внешней средой осуществляется путём обмена с ней входными и выходными сигналами.
Формальное описание входных сигналов, прежде всего, определяется заданием множеством входных сигналов различных типов:
X = { { X 2 ,..., X ”,} (21)
где X' — множество входных сигналов i-го типа.
Времена поступления в систему входных сигналов каждого типа в общем случае считаются случайными величинами, распределенными по заданным законам:
САПР и ГИС автомобильных дорог | №2(3), 2014 | 95
САПР
{, i = 1,2,...,m} (22)
Формальное задание содержания входных сигналов каждого типа происходит следующим образом. Каждый сигнал i -го типа представляет собой вектор заданной размерности x!=(xj, x2,..., xm ), компоненты которого могут принимать числовые значения из заданных множеств xj XX!, j=1,2, ...,m. . Конкретные значения компонент вектора входного сигнала определяются набором заданных законов формирования содержания входных сигналов:
{R(X‘j), i = 1,2,...,m, j = 1,2,...,m} . (23)
Данные законы могут иметь различную природу. Как правило, они включают в себя стохастическую составляющую, часто они представляют собой сложные алгоритмы.
Реакция системы на поступление входных сигналов формально описывается следующим образом. Пусть txi — момент поступления в систему входного сигнала i-го типа. Реакция системы на его поступление представляет собой скачкообразное изменение состояния системы, которое задается набором распределений:
{({> tx,, s(tx,))} , (24)
где x' — содержание входного сигнала;
s(txi) — вектор состояния системы на момент txi.
Описание реакции системы на поступление входных сигналов всех заданных типов формально определяется заданием набора распределений:
{({, {,s(tx, )), i = I m} (25)
Сначала для поступившего входного сигнала x! формируется множество Ixi, представляющее собой либо подмножество номеров тех компонент вектора состояния системы s, которые должны скачкообразно измениться вследствие поступления данного входного сигнала, либо номера дополнительных координат вектора состояния системы (в последнем случае размерность пространства состояния системы увеличивается), значения которых требуется сформировать, либо и то, и другое. Множество Ixi в общем случае зависит от типа и содержания входного сигнала, а также от состояния системы s(txi).
В момент времени txi+0, непосредственно следующий за моментом txi , значения компонент вектора состояния системы s с номерами j, принадлежащими множеству номеров Ixi , принимают значения:
s j (tx> + 0) = rand(i’j)’ j e Ii , (26)
где rand(i,j) — случайная величина, распределённая по соответствующему закону (25).
Система также в определенные моменты времени выдаёт вовне выходные сигналы.
Моменты выдачи выходных сигналов обычно совпадают с моментами скачкообразных изменений вектора состояния системы (моменты выхода траектории системы на особые состояния и моменты поступления входных сигналов). В подавляющем большинстве случаев этого бывает доста-
точно, однако иногда может понадобиться дополнительная информация о функционировании системы. В этом случае формальное описание моментов выдачи выходных сигналов заключается в следующем.
Задаётся набор функций от компонент вектора состояния
системы s:
Ьъ X.. 02 II (27)
Уравнения:
Ьъ X, 02 II О II (28)
определяют набор гиперповерхностей {Г,} в пространстве состояний системы S. Момент выхода траектории системы на гиперповерхности Г, есть момент выдачи выходных сигналов. Этот момент является минимальным положительным решением набора уравнений (28). Подмножества Г, называются множеством фиктивных особых состояний, поскольку в моменты их наступления не происходят скачки состояния системы.
Формальное задание выходного сигнала происходит в виде вектора заданной размерности y = (y р y2,..., y;). Содержание выходного сигнала в основном зависит от целей проведения компьютерных экспериментов и, как правило, представляет собой определённые значения вектора пространства состояний системы на момент выдачи выходного сигнала. То же самое относится и к случаю, когда исследуемая сложная система ВАДС представляется в виде композиции сложных систем, описывающих её подсистемы. Но в последнем случае время выдачи и содержание выходного сигнала определяется не целями проведения компьютерного эксперимента, а соображениями адекватности описания реальной системы как композиции сложных систем, о чём будет сказано ниже.
5. Микроописание сложной системы ВАДС
Предложенная выше формальная конструкция для описания функционирования фрагментов реальной системы ВАДС представляет по существу вариант математической микромодели, который мы также будем называть микроописанием. Сгруппируем в единое целое формальные составляющие предлагаемого подхода.
Итак, назовём микроописанием некоторого исследуемого фрагмента системы ВАДС следующий кортеж понятий:
(5, {{ (t )},{Ф „ },{Pa },{Ф a, },{Pab },
{X }, {7}, {P }, {R}, {P },{ф , }} , (29)
где S — пространство состояний системы;
f(t)} — набор функций времени типа (3), определяющих
динамику вектора состояния системы в его пространстве
состояний;
{Фа} — набор функций от компонент вектора состояния системы типа (4), описывающих состояние каждого отдельного элемента системы, определяющий гиперповерхности первой категории и соответствующие им особые состояния системы;
{PJ — набор распределений типа (8) скачкообразного изменения состояния системы вследствие наступления соответствующего особого состояния;
96 | САПР и ГИС автомобильных дорог | №2(3), 2014
САПР
{ФаЬ} — набор функций от компонент вектора состояния системы типа (16), описывающих состояние каждого отдельного элемента системы во взаимодействии с другим элементом, определяющий гиперповерхности второй категории и соответствующие им особые состояния системы;
{Pab} — набор распределений типа (18) скачкообразного изменения состояния элемента системы, находящегося во взаимодействии с другим элементом, вследствие наступления соответствующего особого состояния;
{X} - множество входных сигналов;
{У} — множество алгоритмических процедур, формирующих вид и содержание выходных сигналов;
{PJ — набор распределений типа (22) времён поступления в систему входных сигналов различных типов;
{R} — набор законов формирования содержания входных сигналов всех типов;
{PJ — набор распределений типа (25) скачкообразного изменения состояния системы вследствие поступления вхсд-ного сигнала;
{Фу} — набор функций от компонент вектора состояния системы типа (27), определяющий моменты выдачи выходных сигналов.
Опишем вкратце алгоритм функционирования во времени такого рода микроописания.
Сначала требуется задать начальные условия и период функционирования системы Ts. Пусть на начальный момент времени t0 заданы следующие значения: s(t0) — вектор состояния системы;
t1(t0), ДД..., tm(t0) — длительности временных интервалов, оставшихся до поступления в систему входных сигналов каждого из m типов соответственно.
Движение вектора s в пространстве состояний системы S происходит по законам {f(t)} до тех пор, пока состояние системы не достигнет особого состояния, либо пока в систему не поступит входной сигнал.
Как говорилось выше, моменты наступления особых состояний являются минимальными положительными решениями соответствующих наборов уравнений, которые определяются составляющими {Фа}, {ФаЬ} и {Фу} микроописания (29). Пусть t* — момент наступления особого состояния, определяемого составляющими {Фа} и {ФаЬ}, t** — момент наступления фиктивного особою состояния, определяемого составляющей {ФД которые определяются на начальный момент времени t0. Найдём значение tmin.
tmin = ттОх гД ti(УД t2 Д \..., ^ (ДTs). С30)
На отрезке [t0, tmin] динамика системы определена (законы {f(t)}.) В момент tmin+0, непосредственно следующий за моментом tmin, происходит изменение состояния системы следующим образом:
1. Если tmin=t*, то состояние s(t*+0) определяется как скачок, определяемый распределениями {Pa} или {Pab} в зависимости от того, является ли t* моментом наступления особого состояния 1-й или 2-й категории соответственно. Времена поступления входных сигналов и период функционирования системы Ts изменяются по следующему закону:
t1 (tmin + 0) t1 (tmin ) tmin ,
t2 (t . + 0) = t2 (t . )-t . ,
2 V m.n / 2 V m.n 7 m.n ’
t (t . + 0) = t (t - ) -1
mV mm / m v mm У m
T (t . + 0) = T (t ) -1
s\ mm / $ V mm 7 m
В дальнейшем, т.е. при t>tmin+0, изменение системы s(t) происходит по законам {f(t)}.
2. Если tmin=t**, то в момент t**+0 происходит формирование и выдача выходного сигнала в соответствии с множеством {У}. Времена поступления входных сигналов и период функционирования системы Ts изменяются по закону (31). В дальнейшем, т.е. при t> tmin+0, изменение системы s(t) происходит по законам {f(t)}.
3. Если tmn= ti(t0) (i=1,2,.. .,m), то в соответствии с законами {R} формируется содержание входного сигнала типа i. В момент tmin+0 происходит скачкообразное изменение состояния системы в соответствии с распределением {PJ.
В соответствии с распределением {Pt} формируется момент времени t* поступления очередного входного сигнала типа i.
Дшш + 0) = t* . (32)
Времена поступления входных сигналов других типов и период функционирования системы Ts изменяются по закону (31). В дальнейшем, т.е. при t> tmin+0, изменение системы s(t) происходит по законам {f(t)}.
4. Если tmin= Ts, то происходит завершение моделирования функционирования системы.
В пунктах 1, 3 и 4 также могут выдаваться выходные сигналы в соответствии с множеством {У}.
6. Заключение
Приведённый выше подход лежит в основе обширного семейства имитационных моделей ВАДС, разработанных и разрабатываемых в ООО «ИНЭМДорТранс». На основе результатов проведения многочисленных компьютерных экспериментов с различными микроописаниями ВАДС строятся соответствующие макротеории функционирования данной системы, позволяющие проводить прогнозы её работы с учётом всех влияющих факторов в широких диапазонах их варьирования. s
Литература:
1. Ерёмин В.М. Концептуальная модель функционирования системы ВАДС как основа компьютерной имитации // САПР и ГИС автомобильных дорог. 2014. №1(2). С. 90-93.
САПР и ГИС автомобильных дорог | №2(3), 2014 | 97