- •Оглавление
- •Предисловие
- •Введение
- •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.6. Имитационное моделирование систем массового обслуживания
- •6.6.1. Событийный метод моделирования
- •6.5.3. Создание и использование проблемно-ориентированных систем моделирования
- •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 Краткие сведения о специализированных языках и проблемно-ориентированных системах имитационного моделирования
- •Предметный указатель
- •Список сокращений
7.6.2. Главное окно исм рдо
Главное окно редактора РДО выглядит, как показано на рис. 7.8.
Рис. 7.8. Главное окно редактора РДО
Главное меню ИСМ РДО (рис. 7.9) содержит следующие элементы:
Рис. 7.9. Главное меню редактора РДО
Пункты меню реализуют все основные функции ИСМ.
Меню «File» содержит группы функций проекта и функций модели.
Меню «Edit» содержит функции редактирования текста.
Меню «Search» позволяет осуществлять поиск заданного текста в
редакторе.
Меню «RAO» содержит группу функций моделирования. Оно позволяет запустить и при необходимости указать путь к файлу РДО-имитатора.
Меню «View» содержит типовые функции просмотра.
Меню «Insert» содержит типовые конструкции RDO-языка и
инструмент работы с буфером обмена
Меню «Help» содержит группу функций помощи.
7.6.3. Инструментальная панель
— создать новую
модель
—
открыть модель
—
сохранить изменения
в модели
—
запустить активный
прогон на имитацию
—
остановить имитацию
прогона
—
указать путь к
файлу РДО-имитатора
—
считывание объекта
результатов
—
считывание объекта
трассировки
—
вырезание выделенного
фрагмента в буфер обмена
—
копирование
выделенного фрагмента в буфер обмена
—
вставка скопированного
фрагмента из буфера обмена
7.6.4. Работа с рдо-имитатором
После ввода необходимых объектов исходных данных можно выполнить моделирование прогона. В ИСМ моделирование выполняется в фоновом режиме, что дает возможность продолжать работу, не ожидая окончания выполнения прогона.
Чтобы выполнить моделирование, необходимо следующее:
1) иметь все необходимые исходные данные;
2) в системе не должен быть запущен какой-либо другой прогон;
3) данный прогон не должен быть выполнен, поскольку повторный запуск прогона приведет к уничтожению результатов первого запуска.
О к н о РДО-и м и т а т о р а
Рис. 7.10. Окно РДО-имитатора
Окно РДО-имитатора имеет вид, показанный на рис. 7.10.
И с п о л ь з о в а н и е а н и м а ц и и
Интегрированная среда моделирования РДО позволяет разработчику имитационной модели визуализировать процесс получения результирующей статистики, увеличивая наглядность протекающих процессов.
Описание кадров анимации производится в отдельном объекте, который является исходным для системы отображения. Этот объект имеет расширение .frm. Кадр представляет собой прямоугольную область экрана, в которой производится отображение. Он состоит из фоновой картинки и переменных элементов (элементов отображения или спрайтов), состав, форма, размеры и расположение которых определяются состоянием системы и, следовательно, могут изменяться во время просмотра кадра.
Описание кадра анимации
$Frame <имя_кадра>
[ Show_if <условие_показа_кадра> ]
$Back_picture = <описание_фоновой_картинки>
[ <описание_элементов_отображения> ]
$End
Имя кадра представляет собой простое имя. Имена должны быть различными для всех кадров и не должны совпадать с ранее определенными именами.
Условие показа кадра используется при автоматическом переключении кадров и представляет собой логическое выражение. Это логическое выражение вычисляется при каждом событии. Если оно истинно, то кадр отображается, если ложно – то нет. Если при очередном событии значение выражения меняется, то кадр появляется на экране либо исчезает.
Описание фоновой картинки имеет следующий формат:
[ <цвет_фона> ] (<размеры_кадра> | <имя_файла_фона>)
Цвет фона задает цвет части кадра, которая находится за пределами фоновой картинки. Цвет задается тремя численными константами целого типа, разделенными пробелами и заключенными в угловые скобки. Каждое число должно находиться в диапазоне 0..255, оно задает интенсивность одной из трех цветовых составляющих: первое – красной, второе – зеленой и третье – синей (модель RGB).
Для описания фоновой картинки задают либо имя файла, содержащего фоновое изображение, либо размер фоновой картинки. Файл фоновой картинки должен быть растровым изображением, сохраненным в формате независимой от устройства битовой карты (BMP-формате) и иметь расширение .bmp.
Пример: $Frame Frame_1
$Back_picture = <255 255 255> fon
Описание элементов отображения
Элементы отображения разбивают на множества отображения. Множества бывают условными (элементы множества отображаются только в том случае, если условие показа истинно)и безусловными.
Формат описания условного множества
Show_if <условие_показа>
<элемент_отображения> { <элемент_отображения> }
Формат описания безусловного множества
Show
<элемент_отображения> {<элемент_отображения> }
В кадре может быть произвольное количество условных и безусловных множеств, они могут располагаться в произвольном порядке. Количество и порядок следования элементов отображения в множестве также произвольны.
Виды элементов отображения
text — Текстовый элемент
bitmap — Битовая карта
s_bmp — Масштабируемая битовая карта
rect — Прямоугольник
r_rect — Прямоугольник со скругленными углами
ellipse — Эллипс (окружность)
line — Отрезок прямой
triang — Треугольник
Текстовый элемент (text)
text [ <X-координата>, <Y-координата>, <ширина>, <высота>, <цвет_фона>, <цвет>, [<способ_размещения>] <содержимое> ]
Способ размещения задает размещение выводимой строки (содержимого) в поле элемента. Он может быть опущен, в этом случае строка сдвигается к левому краю. Способ размещения задают одним из следующих символов:
< Сдвинуть к левому краю
= Выровнять по центру
> Сдвинуть к правому краю
В том случае, если длина выводимой строки больше ширины элемента, строка усекается.
Содержимое элемента описывают одним из следующих способов:
арифметическим выражением (выводимая строка представляет собой результат вычисления выражения; это целое либо вещественное число или имя значения перечислимого типа);
строковой константой (выводимой строке присваивается значение строковой константы).
Битовая карта (bitmap)
bitmap [ <X-координата>, <Y-координата>, <имя_файла_битовой_карты>
[ , <имя_файла_маски> ] ]
Для создания элемента отображения в виде битового образа произвольной формы необходимы два файла: файл изображения и файл маски. Оба этих файла должны иметь формат аппаратно независимой битовой карты (BMP-формат). Они могут быть созданы с помощью графического редактора. Имена этих файлов без типа указывают в описании свойств элемента. Расширение файлов должно быть .bmp.
Объект изображения содержит рисунок элемента (спрайта), изображенный на черном фоне, маска содержит силуэт спрайта, она черная на белом фоне. Такое сочетание изображения и маски приводит к тому, что в тех областях, где маска черная, будет изображаться рисунок спрайта, а там, где маска белая, будет виден фон, на котором изображается элемент. Файл маски может отсутствовать, в этом случае прямоугольный рисунок спрайта из файла будет изображаться поверх фона (то есть если маска не указана, используется полностью черная маска).
Масштабируемая битовая карта (s_bmp)
s_bmp [ <X-координата>, <Y-координата>, <ширина>, <высота>, <имя_файла_битовой_карты> [ , <имя_файла_маски> ] ]
Элементы этого типа описывают аналогично битовым картам.
Ширина и высота представляют собой арифметические выражения для вычисления размеров элемента.
Исходный битовый образ, находящийся в файлах изображения и маски, растягивается или сжимается независимо по двум осям так, чтобы его размеры стали равны размерам элемента.
Прямоугольник (rect)
rect [ <X-координата>, <Y-координата>, <ширина>, <высота>, <цвет_фона>, <цвет> ]
Этот элемент изображает в заданных координатах прямоугольник заданного размера с указанным цветом границы и заполнения. Стороны прямоугольника параллельны координатным осям. Граница изображается линией толщиной в один пиксел.
Прямоугольник со скругленными углами (r_rect)
r_rect [ <X-координата>, <Y-координата>, <ширина>, <высота>, <цвет_фона>, <цвет> ]
Этот элемент описывается так же как и прямоугольник. Различие в изображении состоит в скруглении углов прямоугольника, которое производится дугой окружности.
Эллипс (ellipse)
ellipse [ <X-координата>, <Y-координата>, <ширина>, <высота>, <цвет_фона>, <цвет> ]
Этот элемент изображает в заданных координатах эллипс с заданными длинами осей с указанным цветом границы и заполнения. Оси эллипса параллельны координатным осям.
Координаты задают положение левого верхнего угла описанного прямоугольника со сторонами, параллельными координатным осям.
Ширина определяет длину оси эллипса, параллельной оси X, высота – длину оси эллипса, параллельной оси Y.
Граница эллипса изображается линией толщиной в один пиксел.
