
- •Оглавление
- •Предисловие
- •Введение
- •1. Модели и их свойства
- •Основные понятия и определения
- •Вопросы к разделу 1.1
- •Целенаправленность моделей
- •Вопросы к разделу 1.2
- •Свойства моделей
- •Вопросы к разделу 1.3
- •Способы реализации моделей
- •1.4.1. Материальные модели
- •1.4.2. Виды подобия
- •1.4.3. Идеальные модели
- •Вопросы к разделу 1.4
- •1.5. Виды моделей
- •1.5.1. Познавательные и прагматические модели
- •1.5.2. Детерминированные и вероятностные модели
- •1.5.3. Непрерывные и дискретные модели
- •1.5.4. Статические и динамические модели
- •1.5.5. Линейные и нелинейные модели
- •1.5.6. Стационарные и нестационарные модели
- •1.5.7. Сосредоточенные и распределенные модели
- •1.5.8. Классификация видов моделей
- •Вопросы к разделу 1.5
- •Кибернетические модели систем
- •1.6.1. Модель типа «черный ящик»
- •1.6.2. Модель состава системы
- •1.6.3. Модель структуры системы
- •1.6.4. Графы
- •1.6.5. Структурная схема системы
- •1.6.6. Итоги анализа моделей систем.
- •Вопросы к разделу 1.6
- •2. Аналитические математические модели систем
- •2.1. Общая математическая модель динамической системы
- •Вопросы к разделу 2.1
- •2.2. Частные математические модели динамических систем
- •2.2.1. Модели детерминированных линейных непрерывных систем
- •Модели дискретных систем. Конечные автоматы
- •Вопросы к разделу 2.2
- •2.3. Свойства динамических систем
- •2.4. Линейная непрерывная детерминированная модель многомерной динамической системы в переменных состояния
- •Вопросы к разделу 2.4
- •2.5.7. Определитель Грама
- •Вопросы к разделу 2.5
- •Линейное векторное пространство
- •2.6.1. Характеристические числа и характеристические векторы
- •2.6.2. Формула Бохера
- •2.6.3. Модальная матрица
- •2.6.4. Диагонализация квадратной матрицы
- •Вопросы к разделу 2.6
- •Управляемость и наблюдаемость
- •Вопросы к разделу 2.7
- •Компьютерное моделирование. Численное интегрирование дифференциальных уравнений
- •3.1. Ошибки усечения и округления
- •3.2. Метод Эйлера
- •3.3. Методы Рунге–Кутта
- •Сравнение различных методов решения. Контроль величины шага и устойчивость
- •Вопросы к главе 3
- •4. Динамика развития и использования моделей
- •4.1. Сложности алгоритмизации моделирования
- •Вопросы к главе 4
- •5. Аналитические вероятностные математические модели систем
- •5.1. Аналитические модели систем массового обслуживания
- •5.1.1. Важнейшие выходные параметры смо
- •5.1.2. Простейшие модели смо
- •5.1.3. Общая характеристика моделей смо
- •5.1.4. Дисциплины обслуживания
- •5.1.5. Характеристики входного потока заявок
- •5.1.6. Функция распределения Пуассона
- •5.1.7. Характеристики обслуживания
- •5.1.8. Показательный закон распределения времени обслуживания
- •5.1.9. Показатели качества обслуживания
- •5.1.10. Согласование источника заявок с каналом обслуживания
- •5.1.11. Оценка эффективности многоканальной смо
- •Вопросы к разделу 5.1
- •5.2. Сети Петри
- •5.2.1. Маркировка
- •5.2.2. Правила срабатывания переходов
- •5.2.3. Разновидности сетей Петри
- •5.2.4. Конфликтные ситуации в сетях Петри
- •5.2.5. Пример сети Петри для работы группы пользователей на одной рабочей станции
- •5.2.6. Пример сети Петри для системы обнаружения и устранения неисправностей в технической системе
- •5.2.7. Анализ сетей Петри
- •Вопросы к разделу 5.2
- •6. Имитационные модели систем
- •6.1. Имитационный эксперимент
- •Недостатки имитационного моделирования
- •6.2. Развитие имитационного моделирования
- •Основные фазы развития средств им
- •6.3. Этапы имитационного моделирования
- •6.4. Подходы к построению имитационных моделей
- •6.4.1. Событийный подход
- •6.4.2. Подход сканирования активностей
- •6.4.3. Процессно-ориентированный подход
- •6.5. Разработка программ им
- •6.5.1. Использование для им универсальных языков программирования
- •6.5.2. Использование для им специализированных языков моделирования
- •6.5.3. Создание и использование проблемно-ориентированных систем моделирования
- •6.6. Имитационное моделирование систем массового обслуживания
- •6.6.1. Событийный метод моделирования
- •6.6.2. Схема реализации событийного метода имитационного моделирования
- •Вопросы к главе 6
- •7. Метод «ресурсы–действия–операции» (рдо)
- •7.1. Основные положения метода рдо
- •7.1.1. Ресурсы сложной дискретной системы
- •7.1.2. Действия в сдс
- •7.1.3. Операции в сдс
- •7.1.4. Основные положения рдо-метода
- •7.2. Представление сдс в рдо-методе
- •7.3. Базовая структура инструментальной среды интеллектуальной системы
- •7.4. Продукционный имитатор
- •7.5. Моделирование в среде рдо
- •7.5.1. Основные понятия
- •7.5.2. Объекты исходных данных и объекты, создаваемые рдо-имитатором при выполнении прогона
- •7.5.3. Состав объектов модели
- •7.5.4. Назначение объектов модели
- •7.6. Интегрированная среда моделирования рдо
- •7.6.1. Состав функций исм
- •7.6.2. Главное окно исм рдо
- •7.6.3. Инструментальная панель
- •7.6.4. Работа с рдо-имитатором
- •Описание кадра анимации
- •Пример описания кадра анимации
- •Вопросы к главе 7
- •8. Краткое описание языка gpss
- •8.1. Оператор generate
- •8.2. Оператор function
- •8.3. Операторы split и assemble
- •8.4. Операторы seize и release
- •8.5. Оператор advance
- •8.6. Операторы enter и leave
- •8.7. Операторы queue и depart
- •8.8. Оператор test
- •8.9. Операторы start и terminate
- •8.10. Оператор transfer
- •8.11. Оператор assigne
- •8.12. Операторы управления движением заявок
- •8.13. Вычислительный оператор variable
- •8.14. Оператор синхронизации матсн
- •8.15. Пример программы на языке gpss для смо
- •Программа к примеру смо
- •Вопросы к главе 8
- •9. Планирование компьютерных экспериментов с моделями систем
- •9.1. Основные понятия теории планирования экспериментов
- •9.2. Модели планирования эксперимента
- •9.3. Виды планов экспериментов
- •Вопросы к главе 9
- •10. Обработка и анализ результатов компьютерного моделирования
- •10.1. Методы оценки
- •10.2. Статистические методы обработки
- •10.3. Задачи обработки результатов моделирования
- •10.3.1. Критерий согласия Колмогорова
- •10.3.2. Критерий согласия Пирсона
- •10.3.3. Критерий согласия Смирнова
- •10.3.4. Критерий согласия Стьюдента
- •10.3.5. Критерий согласия Фишера
- •10.4. Анализ и интерпретация результатов компьютерного моделирования
- •10.4.1. Корреляционный анализ результатов моделирования
- •10.4.2. Регрессионный анализ результатов моделирования
- •10.4.3. Дисперсионный анализ результатов моделирования
- •Вопросы к главе 10
- •Заключение
- •Список литературы
- •Приложение 1 Некоторые сведения из теории матриц
- •Основные типы матриц
- •Специальные типы матриц
- •Операции над матрицами Сложение матриц
- •Умножение матриц
- •Дифференцирование матриц
- •Интегрирование матриц
- •Определители
- •Свойства определителей
- •Нуль-граф и полный граф
- •Изоморфные графы
- •Плоские графы
- •Число ребер графа
- •Формула Эйлера для числа вершин, ребер и граней плоского графа
- •Распределение Лапласа
- •Вырожденное (причинное) распределение
- •Приложение 4 Краткие сведения о специализированных языках и проблемно-ориентированных системах имитационного моделирования
- •Предметный указатель
- •Список сокращений
2.2.1. Модели детерминированных линейных непрерывных систем
Такие динамические модели, описываемые обыкновенными линейными дифференциальными уравнениями, а также передаточными функциями и частотными характеристиками, хорошо изучены и уже обсуждались в этом учебном пособии (п. 1.5.4, 1.5.5). В дальнейшем (п. 2.4, 2.6, 2.7) будут подробно рассмотрены модели многомерных линейных систем в переменных состояния. Это избавляет от необходимости более детального изложения материала в данном пункте.
Модели дискретных систем. Конечные автоматы
Автомат можно представить как некоторое устройство (черный ящик), на которое подаются входные сигналы и с которого снимаются выходные сигналы. Кроме того, оно может иметь некоторые внутренние состояния. Конечным автоматом называется автомат, у которого множества внутренних состояний и входных сигналов (а следовательно, и множество выходных сигналов) являются конечными множествами.
Абстрактно конечный автомат (англ. finite automat) можно представить как математическую схему (F-схему), характеризующуюся шестью элементами: конечным множеством Х входных сигналов (входным алфавитом); конечным множеством Y выходных сигналов (выходным алфавитом); конечным множеством Z внутренних состояний (внутренним алфавитом, или алфавитом состояний); начальным состоянием z0 , z0 Z; функцией переходов φ(z, х); функцией выходов ψ(z, х).
Автомат, задаваемый F-схемой: F = <Z, Х, Y, φ, ψ, z0>, функционирует в дискретном автоматном времени, моментами которого являются такты, т.е. примыкающие друг к другу равные интервалы времени, каждому из которых соответствуют постоянные значения входного и выходного сигналов и внутренние состояния. Обозначим состояние, а также входной и выходной сигналы, соответствующие 1-му такту при t = 0, 1, 2, ..., через z(t), x(t), y(t). По условию, z(0)= z0, z(t) Z, x(t) X, y(t) Y.
Абстрактный конечный автомат имеет один вход и один выход. В каждый момент t = 0, 1, 2, ... дискретного времени F-автомат находится в определенном состоянии z(t) из множества Z состояний автомата, причем в начальный момент времени t = 0 он всегда находится в начальном состоянии z(0)= z0 . В момент t, будучи в состоянии z(t), автомат способен воспринять на входе сигнал x(t) X и выдать на выходе сигнал y(t)=ψ[z(t), x(t)], переходя в состояние z(t+1)=φ [z(t), x(t)], z(t) Z, y (t) Y.
Абстрактный конечный автомат реализует некоторое отображение множества слов входного алфавита X на множество слов выходного алфавита Y. Другими словами, если на вход конечного автомата, установленного в начальное состояние z0, подавать в некоторой последовательности буквы входного алфавита х(0), х(1), х(2), ..., т.е. входное слово, то на выходе автомата будут последовательно появляться буквы выходного алфавита у(0), у(1), у(2), ..., образуя выходное слово.
Таким образом, работа конечного автомата происходит по следующей схеме: в каждом t-м такте на вход автомата, находящегося в состоянии z(t), подается некоторый сигнал х(t), на который он реагирует переходом в (t+1)-м такте в новое состояние z(t+1) и выдачей некоторого выходного сигнала. Сказанное можно описать следующими уравнениями: для F-автомата первого рода, называемого также автоматом Мили,
z(t+1)=φ[z(t), x(t)], t=0, 1, 2, ...;
у(t) = ψ[z(t), x(t)], t = 0, 1, 2, ...;
для F-автомата второго рода
z(t+1)=φ [z(t), x(t)], t = 0, 1, 2, ...;
y (t) = ψ[z(t), x(t – 1)], t = l, 2, 3, ...
Автомат второго рода, для которого
y(t) = ψ [z(t)], t = 0,1,2, ...,
т.е. функция выходов не зависит от входной переменной x(t), называется автоматом Мура.
Таким образом, все указанные уравнения, полностью задающие F-автомат, являются частным случаем уравнений, задающих детерминированную систему S, на единственный вход которой поступает дискретный сигнал Х. Поэтому рассмотренные конечные автоматы являются детерминированными.
По числу состояний различают конечные автоматы с памятью и без памяти. Автоматы с памятью имеют более одного состояния, а автоматы без памяти (комбинационные или логические схемы) обладают лишь одним состоянием. При этом работа комбинационной схемы заключается в том, что она ставит в соответствие каждому входному сигналу x(t) определенный выходной сигнал у(t), т.е. реализует логическую функцию вида
у(t) = ψ [х(t)], t = 0, 1, 2, ....
Эта функция называется булевой, если алфавиты Х и Y, которым принадлежат значения сигналов х и у, состоят из двух букв.
По характеру отсчета дискретного времени конечные автоматы делятся на синхронные и асинхронные. В синхронных F-автоматах моменты времени, в которые автомат «считывает» входные сигналы, определяются принудительно синхронизирующими сигналами. После очередного синхронизирующего сигнала с учетом «считанного» и в соответствии с вышеприведенными уравнениями происходит переход в новое состояние и выдача сигнала на выходе, после чего автомат может воспринимать следующее значение входного сигнала. Таким образом, реакция автомата на каждое значение входного сигнала заканчивается за один такт, длительность которого определяется интервалом между соседними синхронизирующими сигналами.
Асинхронный F-автомат считывает входной сигнал непрерывно. Реагируя на достаточно длинный входной сигнал постоянной величины х, он может, как следует из вышеприведенных уравнений, несколько раз изменять состояние, выдавая соответствующее число выходных сигналов, пока не перейдет в устойчивое, которое уже не может быть изменено данным входным сигналом. Чтобы задать конечный F-автомат, необходимо описать все элементы множества F = <Z, Х, Y, φ, ψ, z0>, т.е. входной, внутренний и выходной алфавиты, а также функции переходов и выходов, причем среди множества состояний необходимо выделить состояние z0, в котором автомат находился в момент времени t = 0. Наиболее часто используются следующие способы задания работы F-автоматов: табличный, графический и матричный.
Простейший табличный способ задания конечного автомата основан на использовании таблиц переходов и выходов, строки которых соответствуют входным сигналам автомата, а столбцы – его состояниям. При этом обычно первый слева столбец соответствует начальному состоянию z0. На пересечении i-й строки и k-го столбца таблицы переходов помещается соответствующее значение φ(zk, хi) функции переходов, а в таблице выходов – соответствующее значение ψ(zk, хi) функции выходов. Для F-автомата Мура обе таблицы можно совместить, получив так называемую отмеченную таблицу переходов, в которой над каждым состоянием zk автомата, обозначающим столбец таблицы, стоит соответствующий этому состоянию (согласно уравнению) выходной сигнал ψ(zk). Описание работы F-автомата Мили дано таблицей 1 переходов φ и выходов ψ.
Таблица 1
Таблица переходов φ и выходов ψ для F-автомата Мили
xi |
zk |
|||
z0 |
z1 |
… |
zk |
|
Переходы |
||||
x1 |
φ ( z0 , x1) |
φ (z1, x1) |
… |
φ (zk, x1) |
x2 |
φ ( z0 , x2) |
φ (z1, x2) |
… |
φ (zk, x2) |
… |
… |
… |
… |
… |
xm |
φ ( z0 , xm) |
φ (z1, xm) |
… |
φ (zk, xm) |
|
Выходы |
|||
x1 |
ψ ( z0 , x1) |
ψ (z1, x1) |
… |
ψ (zk, x1) |
x2 |
ψ ( z0 , x2) |
ψ (z1, x2) |
… |
ψ (zk, x2) |
… |
… |
… |
… |
… |
xm |
ψ ( z0 , xm) |
ψ (z1, xm) |
… |
ψ (zk, xm) |
Описание F-автомата Мура дано таблицей переходов 2.
Таблица 2
Таблица переходов для F-автомата Мура
xi |
ψ(zk) |
||||
ψ (z0) |
ψ (z1) |
… |
ψ (zk) |
||
z0 |
z1 |
… |
zk |
||
x1 |
φ ( z0 , x1) |
φ (z1, x1) |
… |
φ (zk, x1) |
|
x2 |
φ ( z0 , x2) |
φ (z1, x2) |
… |
φ (zk, x2) |
|
… |
… |
… |
… |
… |
|
xm |
φ ( z0 , xm) |
φ (z1, xm) |
… |
φ (zk, xm) |
Примеры табличного способа задания работы F-автомата Мили F1 с тремя состояниями, двумя входными и двумя выходными сигналами приведены в табл. 3, а F-автомата Мура F2 – в табл. 4.
Таблица 3
F-автомат Мили
xi |
zk |
||
z0 |
z1 |
z2 |
|
Переходы |
|||
x1 |
z2 |
z0 |
z0 |
x2 |
z0 |
z2 |
z1 |
|
Выходы |
||
x1 |
y1 |
y1 |
y2 |
x2 |
y1 |
y2 |
y1 |
Таблица 4
F- автомат Мура
xi |
y |
||||
y1 |
y1 |
y3 |
y2 |
y3 |
|
z0 |
z1 |
z2 |
z3 |
z4 |
|
x1 |
z1 |
z4 |
z4 |
z2 |
z2 |
x2 |
z3 |
z1 |
z1 |
z0 |
z0 |
При другом способе задания конечного автомата используется понятие направленного графа. Граф автомата представляет собой набор вершин, соответствующих различным состояниям автомата и соединяющих вершины дуг графа, соответствующих тем или иным переходам автомата. Если входной сигнал хk вызывает переход из состояния zi в состояние zj, то на графе автомата дуга, соединяющая вершину zi с вершиной zj, обозначается хk. Для того чтобы задать функцию выходов, дуги графа необходимо отметить соответствующими выходными сигналами. Для автоматов Мили эта разметка производится так: если входной сигнал хk действует на состояние zi, то, согласно сказанному, получается дуга, исходящая из zi и помеченная хk. Эту дугу дополнительно отмечают выходным сигналом y = ψ(zi, хk) (рис. 2.2).
Рис. 2.2. Граф автомата Мили F1, соответствующий таблице 3
Для автомата Мура аналогичная разметка графа такова: если входной сигнал хk, действуя на некоторое состояние автомата, вызывает переход в состояние zj, то дугу, направленную в zj и помеченную хk, дополнительно отмечают выходным сигналом y = ψ(zj, хk) (рис. 2.3).
Рис. 2.3. Граф автомата Мура F2, соответствующий таблице 4
При решении задач моделирования систем часто более удобной формой является матричное задание конечного автомата. При этом матрица соединений автомата есть квадратная матрица С = [cij], строки которой соответствуют исходным состояниям, а столбцы – состояниям перехода. Элемент cij = хk/уs, стоящий на пересечении i-й строки и j-го столбца, в случае автомата Мили соответствует входному сигналу хk, вызывающему переход из состояния zi в состоянии zj, и выходному сигналу уs, выдаваемому при этом переходе. Для автомата Мили F1 матрица соединений имеет вид:
Если переход из состояния zi в состояние zj происходит под действием нескольких сигналов, то элемент матрицы cij представляет собой множество пар «вход-выход» для этого перехода, соединенных знаком дизъюнкции. Для F-автомата Мура элемент cij равен множеству входных сигналов на переходе (zi, zj), а выход описывается вектором выходов
i-я компонента которого – выходной сигнал, отмечающий состояние zi.
Пример 1. Для рассмотренного выше F-автомата Мура F2 запишем матрицу соединений и вектор выходов:
Для детерминированных автоматов выполняется условие однозначности переходов: автомат, находящийся в некотором состоянии, под действием любого входного сигнала не может перейти более чем в одно состояние. Применительно к графическому способу задания F-автомата это означает, что в графе автомата из любой вершины не могут выходить два ребра и более, отмеченные одним и тем же входным сигналом. Аналогично этому в матрице соединений автомата С в каждой строке любой входной сигнал не должен встречаться более одного раза.
Рассмотрим таблицу переходов и граф асинхронного конечного автомата. Для F-автомата состояние zk называется устойчивым, если для любого входа хi Х, для которого φ(zk, хi)= zk, имеет место ψ(zk, хi)=yk. Таким образом, F-автомат называется асинхронным, если каждое его состояние zk Z устойчиво.
Необходимо отметить, что на практике автоматы всегда являются асинхронными, а устойчивость их состояний обеспечивается тем или иным способом, например введением сигналов синхронизации. Однако на уровне абстрактной теории, когда конечный автомат выступает в виде математической схемы для формализации конкретных объектов без учета ряда второстепенных особенностей, часто оказывается удобным оперировать с синхронными конечными автоматами.
Рис. 2.4. Граф асинхронного автомата Мура
Пример 2. Рассмотрим асинхронный F-автомат Мура, который описан табл. 5 и приведен на рис. 2.4. Очевидно, что если в таблице переходов асинхронного автомата некоторое состояние zk стоит на пересечении строки хi и столбца zs (s≠k), то это состояние zk обязательно должно встретиться в этой же строке в столбце zk. В графе асинхронного автомата, если в некоторое состояние имеются переходы из других состояний под действием каких-то сигналов, то в вершине zk должна быть петля, отмеченная символами тех же входных сигналов. Анализ табл. 3 и 4 или рис. 2.2 и 2.3 показывает, что представленные там F-автоматы F1 и F2 являются синхронными.
Таблица 5
xi |
y |
||
y1 |
y2 |
y3 |
|
z0 |
z1 |
z2 |
|
x1 |
z1 |
z1 |
z1 |
x2 |
z2 |
z1 |
z2 |
x3 |
z0 |
z0 |
z2 |
Пример 3. Рассмотрим совсем простой пример описания конечного автомата, предназначенного для торговли напитками. Допустим, что чашка чая стоит 10 руб., а чашка кофе – 50 руб. Пусть автомат может принимать денежные купюры достоинством 10 и 50 рублей. Это значит, что входной алфавит автомата состоит из двух сигналов: x1={10 руб.} и x2={50 руб.}. Пусть автомат может выдавать чай или кофе. Это означает, что выходной алфавит автомата состоит из двух сигналов: y1={чай} и y2={кофе}. Наконец, пусть внутренних состояний такого автомата тоже будет только два: z1={готов к выдаче чая} и z2={готов к выдаче кофе}. Предположим, что подачи в приемное отверстие купюр достоинством 10 руб. или 50 руб. являются непосредственно управляющими входными сигналами, сразу вызывающими изменение состояния автомата и выдачу напитков, так что не требуется дополнительно нажимать никакие кнопки. Такой автомат в упрощенном виде изображен на рис. 2.5. На рисунке никак не отражен процесс приготовления кофе или чая (размельчение зерен, нагрев воды, заваривание и т.д.), а только условно показаны две емкости, из которых осуществляется разлив. В положении, показанном на рисунке, автомат готов к разливу кофе, т.е. он находится в состоянии z2.
Рис. 2.5. Автомат для продажи чая и кофе
Граф, соответствующий работе рассмотренного автомата для продажи напитков, показан на рис. 2.6. Если в момент подачи на вход купюры 10 руб. (x1) он уже находился в состоянии готовности к выдаче чая (z1), то он сразу выдаст чай (y1) – этому соответствует петля из состояния z1. Если же автомат находился в этот момент в состоянии готовности к выдаче кофе (z2), то сначала он перейдет в состояние z1, а затем сразу выдаст чай – этому соответствует дуга, ведущая из состояния z2 в состояние z1 . Аналогично все происходит при подаче на вход купюры 50 руб. (x2). Если автомат был в состоянии z2, то он сразу выдаст кофе (y2), а если был в состоянии z1, то сначала перейдет в z2 , а затем выдаст кофе. Очевидно, что этот автомат детерминированный, асинхронный.
Рис. 2.6. Граф автомата для продажи напитков из примера 3
Таким образом, понятие F-автомата в дискретно-детерминированном подходе к исследованию на моделях свойств объектов является математической абстракцией, удобной для описания широкого класса процессов функционирования реальных объектов в автоматизированных системах обработки информации и управления. В качестве таких объектов в первую очередь следует назвать элементы и узлы компьютеров, устройства контроля, регулирования и управления, системы временной и пространственной коммутации в технике обмена информацией и т.д. Для всех перечисленных объектов характерно наличие дискретных состояний и дискретный характер работы во времени, т.е. их описание с помощью F-схем является эффективным. Но широта их применения не означает универсальности этих математических схем. Например, этот подход непригоден для описания процессов принятия решений, процессов в динамических системах с наличием переходных процессов и стохастических элементов.
Кроме конечных автоматов, которые относятся к дискретно-детерминированным моделям, или F-схемам, существуют также и вероятностные автоматы, или P-схемы (от англ. probabilistic automat), которые относятся к дискретно-стохастическим моделям. В вероятностных автоматах переходы из одного состояние в другое и появление сигналов на выходе могут происходить с вероятностями, которые определяются заданными функциями распределения.