DEVS , сокращение от Discrete Event System Specification , представляет собой модульный и иерархический формализм для моделирования и анализа общих систем, которые могут быть системами дискретных событий, которые могут быть описаны таблицами переходов состояний , и системами непрерывных состояний, которые могут быть описаны дифференциальными уравнениями , и гибридными системами непрерывных состояний и дискретных событий. DEVS — это система хронированных событий .
DEVS — это формализм для моделирования и анализа дискретно-событийных систем (DES). Формализм DEVS был изобретен Бернардом П. Зейглером , почетным профессором Аризонского университета . DEVS был представлен публике в первой книге Зейглера «Теория моделирования и имитации», архивированной 2012-06-21 в Wayback Machine , в 1976 году, когда Зейглер был доцентом Мичиганского университета . DEVS можно рассматривать как расширение формализма машины Мура [1] , которая представляет собой конечный автомат, где выходные данные определяются только текущим состоянием (и не зависят напрямую от входных данных). Расширение было сделано
Поскольку продолжительность жизни каждого состояния является действительным числом (точнее, неотрицательным действительным числом) или бесконечностью, она отличается от систем с дискретным временем, последовательных машин и машин Мура , в которых время определяется тиковым временем, умноженным на неотрицательные целые числа. Более того, продолжительность жизни может быть случайной величиной ; например, продолжительность жизни данного состояния может быть распределена экспоненциально или равномерно . Функции перехода между состояниями и выходы DEVS также могут быть стохастическими .
В 1984 году Зейглер предложил иерархический алгоритм для моделирования модели DEVS [Zeigler84], который был опубликован в журнале Simulation в 1987 году. С тех пор было введено много расширенных формализмов из DEVS для их собственных целей: DESS/DEVS для комбинированных непрерывных и дискретных событийных систем, P-DEVS для параллельных DES, G-DEVS для кусочно-непрерывного моделирования траектории состояния DES, RT-DEVS для DES в реальном времени, Cell-DEVS для клеточных DES, Fuzzy-DEVS для нечетких DES, Dynamic Structuring DEVS для DES, динамически изменяющих свои структуры связи, и т. д. В дополнение к его расширениям, существуют некоторые подклассы, такие как SP-DEVS и FD-DEVS, которые были исследованы для достижения разрешимости свойств системы.
Благодаря модульным и иерархическим представлениям моделирования, а также возможности анализа на основе имитационного моделирования, формализм DEVS и его вариации используются во многих приложениях в области техники (например, проектирование аппаратного обеспечения, проектирование аппаратного и программного обеспечения, систем связи , производственных систем) и науки (например , биологии и социологии ).
DEVS определяет поведение системы, а также ее структуру. Поведение системы в формализме DEVS описывается с использованием входных и выходных событий, а также состояний. Например, для игрока в пинг-понг на рис. 1 входное событие — ?receive , а выходное событие — !send . Каждый игрок, A , B , имеет свои состояния: Send и Wait . Состояние Send занимает 0,1 секунды, чтобы отправить мяч обратно, что является выходным событием !send , в то время как состояние Wait длится до тех пор, пока игрок не получит мяч, что является входным событием ?receive .
Структура игры в пинг-понг заключается в соединении двух игроков: выходное событие игрока A !send передается входному событию игрока B ?receive , и наоборот.
В классическом формализме DEVS атомарный DEVS описывает поведение системы, тогда как связанный DEVS описывает структуру системы.
Следующее формальное определение относится к Classic DEVS [ZKP00]. В этой статье мы будем использовать базу времени, то есть множество неотрицательных действительных чисел; расширенную базу времени, то есть множество неотрицательных действительных чисел плюс бесконечность.
Атомная модель DEVS определяется как 7- кортежная
где
- — это набор входных событий ;
- — набор выходных событий ;
- — это набор последовательных состояний (или также называемый набором частичных состояний );
- — начальное состояние ;
- — это функция опережения во времени , которая используется для определения продолжительности жизни состояния;
- — внешняя функция перехода , которая определяет, как входное событие изменяет состояние системы, где — множество всех состояний , а — время, прошедшее с момента последнего события ; [2]
- — внутренняя функция перехода , которая определяет, как состояние системы изменяется внутренне (когда прошедшее время достигает времени жизни состояния);
- — выходная функция , где и — тихое событие или ненаблюдаемое событие. Эта функция определяет, как состояние системы генерирует выходное событие (когда прошедшее время достигает времени жизни состояния);
Атомарной модели DEVS для игрока A на рис. 1 дается Player=, такой что
Оба игрока — Игрок А и Игрок Б — являются атомарными моделями DEVS.
Проще говоря, есть два случая, когда атомарная модель DEVS может изменить свое состояние : (1) когда в систему поступает внешний вход ; (2) когда прошедшее время достигает срока службы , который определяется как . (В то же время (2) генерирует выход , который определяется как .) .
Для формального описания поведения заданной модели Atomic DEVS обратитесь к странице Поведение DEVS . Компьютерные алгоритмы для реализации поведения заданной модели Atomic DEVS доступны на странице Алгоритмы моделирования для Atomic DEVS .
Связанный DEVS определяет, какие подкомпоненты принадлежат ему и как они связаны друг с другом. Связанная модель DEVS определяется как 8- кортеж
где
- — это набор входных событий ;
- — набор выходных событий ;
- — это набор имен подкомпонентов ;
- представляет собой набор подкомпонентов , где для каждого может быть либо атомарная модель DEVS, либо связанная модель DEVS.
- - набор внешних входных муфт ;
- представляет собой набор внутренних муфт ;
- - функция внешней выходной связи ;
- — это функция разрешения конфликтов , которая определяет, как выбрать событие из набора одновременных событий;
Игру в пинг-понг на рис. 1 можно смоделировать как связанную модель DEVS, где ; ; ; описано выше; ; ; и .
Проще говоря, подобно поведению атомарного класса DEVS, связанная модель DEVS изменяет состояния своих компонентов (1) когда внешнее событие входит в ; (2) когда один из компонентов выполняет свой внутренний переход состояния и генерирует свой выход . В обоих случаях (1) и (2) событие запуска передается всем влияниям, которые определяются наборами связей и .
Для формального определения поведения связанных DEVS вы можете обратиться к Поведению связанных DEVS . Компьютерные алгоритмы для реализации поведения заданного режима связанных DEVS доступны в Алгоритмах моделирования для связанных DEVS .
Алгоритм моделирования моделей DEVS учитывает две проблемы: синхронизацию времени и распространение сообщений. Синхронизация времени DEVS заключается в управлении всеми моделями для получения одинакового текущего времени. Однако для эффективного выполнения алгоритм делает скачок текущего времени на самое срочное время, когда запланировано событие для выполнения его внутреннего перехода состояния, а также генерации его выходных данных. Распространение сообщений заключается в передаче инициирующего сообщения, которое может быть как входным, так и выходным событием по связанным связям, которые определены в связанной модели DEVS. Для получения более подробной информации читатель может обратиться к разделам Алгоритмы моделирования для атомарных DEVS и Алгоритмы моделирования для связанных DEVS .
Вводя метод квантования, который абстрагирует непрерывный сегмент как кусочно-константный сегмент, DEVS может моделировать поведение непрерывных систем состояний, которые описываются сетями дифференциальных алгебраических уравнений . Это исследование было инициировано Зейглером в 1990-х годах [3] , и многие свойства были разъяснены профессором Кофманом в 2000-х годах и доктором Нутаро. В 2006 году профессор Селье, который является автором Continuous System Modeling [Cellier91], и профессор Кофман написали учебник Continuous System Simulation [CK06], в главах 11 и 12 которого описывается, как DEVS моделирует непрерывные системы состояний. Книга доктора Нутаро [Nutaro10] также охватывает дискретно-событийное моделирование непрерывных систем состояний.
В качестве альтернативного метода анализа по сравнению с методом моделирования на основе выборки для анализа моделей DEVS был применен подход исчерпывающего генерирования поведения, обычно называемый проверкой . Доказано, что бесконечные состояния данной модели DEVS (особенно связанной модели DEVS) могут быть абстрагированы с помощью поведенчески изоморфной конечной структуры, называемой графом достижимости , когда данная модель DEVS является подклассом DEVS, таким как DEVS с сохранением расписания ( SP-DEVS ), конечные и детерминированные DEVS ( FD-DEVS ) [HZ09] и конечные и реальные DEVS (FRT-DEVS) [Hwang12]. В результате, основываясь на графе достижимости, (1) свобода от тупиков и живых блокировок как качественные свойства разрешимы с помощью SP-DEVS [Hwang05], FD-DEVS [HZ06] и FRT-DEVS [Hwang12]; и (2) минимальные/максимальные границы времени обработки как количественное свойство разрешимы с помощью SP-DEVS к 2012 году.
За последние десятилетия были разработаны многочисленные расширения классического формализма DEVS. Среди них формализмы, которые позволяют изменять структуры моделей по мере развития времени моделирования.
G-DEVS [Giambiasi01][Zacharewicz08], параллельные DEVS, динамические структурированные DEVS, Cell-DEVS [Wainer09], dynDEVS, нечеткие DEVS, GK-DEVS, ml-DEVS, символьные DEVS, DEVS в реальном времени, rho-DEVS
Существуют некоторые подклассы, известные как DEVS, сохраняющие расписание ( SP-DEVS ) и конечные и детерминированные DEVS ( FD-DEVS ), которые были предназначены для поддержки проверочного анализа. SP-DEVS и FD-DEVS, выразительность которых равна E ( SP-DEVS ) E ( FD-DEVS ) E (DEVS), где E ( formalism ) обозначает выразительность формализма .
{{cite journal}}
: Цитировать журнал требует |journal=
( помощь )