54
ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2012
УДК 004.9
А.А. Ма в з ю т о в , М.В. Ч е р н е н ь к и й
МЕТОД РЕАЛИЗАЦИИ ОБУЧАЮЩИХ
ВИРТУАЛЬНЫХ ТРЕХМЕРНЫХ ТРЕНАЖЕРОВ
При описании процессов со сложной нелинейной логикой исследователь
обычно использует известные методологии описаний в виде диаграмм
последовательностей и конечных автоматов. Чтобы описать процессы
в системах реального времени, необходимо учесть возможность фикса-
ции и реагирования системы на внешние и внутренние события. При
этом переход от теоретического описания процесса в виде диаграмм
конечного автомата к его программной реализации зачастую затруднен
вследствие неполного соответствия средств проектирования и про-
граммирования. Используемый в работе метод событийного конечного
автомата основан на подходе, реализуемом функциональными языками
и в современных моделях программирования типа .Net Framework.
E-mail:
Ключевые слова
:
конечный автомат, событийный автомат, разработка
учебных тренажеров, 3D-моделирование, моделирование, искусственный
интеллект.
Модернизированный конечный автомат
можно определить
как циклически активизируемый набор альтернативных функций [1]:
A =
(
F
,
x
,
y
,
f
cur
,
f
1
),
(1)
где
x
входная переменная с допустимыми значениями из множе-
ства
I
= {1, 2, 3, … ,
m
, …,
M
};
y
выходная переменная с допусти-
мыми значениями из множества
O
= {1, 2, 3, …,
n
, …,
N
};
F =
{
f
1
, …,
f
k
, …,
f
K
} —
множество альтернативных функций состояний,
отобра-
жающих множество
I
в
O
и множество
I
в
F
.
Другими словами,
каж-
дая из функций
f
k
содержит две подфункции:
1)
выходов
f
Оk
,
ставит в соответствие некоторому значению
входа
m
значение выхода
n
;
2)
переходов
f
Sk
,
вычисляет функцию состояния для следующего
цикла из множества
F
:
y
=
f
Ok
(
x
),
f
Ok
(
x
)
O;
f
cur
=
f
Sk
(
x
),
f
Sk
(
x
)
F
,
f
cur
F
текущая функция состояния автомата для рассматриваемо-
го момента времени;
f
1
F
начальная функция состояния автома-
та, текущая функция состояния при начале работы.
Актуальное полное описание конечного автомата задается его те-
кущей функцией состояния
f
cur
для рассматриваемого момента вре-
мени (цикла).
Процесс и событийный полиморфизм.
Определим функции со-
стояния с учетом модели модернизированного конечного автомата (1)
F =
{
f
1
, …,
f
k
, …,
f
K
},
как множество альтернативных функций состо-