- •Воронежский государственный технический университет
- •Утверждено Редакционно-издательским советом университета в качестве учебного пособия
- •Введение
- •2. Классификация видов моделирования систем
- •3. Основные математические методы моделирования информационных процессов и систем
- •3.1. Виды математических моделей
- •3.2. Структурные математические модели
- •3.3. Функциональные математические модели
- •3.3.1. Непрерывно-детерминированные модели
- •3.3.2. Непрерывно-стохастические модели
- •3.3.2.1. Анализ работы разомкнутых смо
- •3.3.2.2. Замкнутые смо
- •3.4. Моделирование дискретных систем
- •3.4.1. Конечные автоматы
- •3.4.2. Дискретно-детерминированные модели
- •3.4.3. Вероятностные автоматы
- •3.5. Сетевые модели. Сети Петри (n-схемы)
- •4. Имитационное моделирование информационных процессов
- •4.1. Организация статистического моделирования
- •4.2Моделирование случайной величины с заданным законом распределения
- •4.3 Моделирование равномерно распределенных на отрезке [a,b] случайных чисел
- •4.4. Моделирование показательно распределенных св
- •4.5. Моделирование нормально распределенных случайных чисел
- •4.6. Проверка качества случайных чисел по критерию
- •4.7. Точность статистических оценок
- •4.8. Аппроксимация результатов моделирования
- •5. Формализация и алгоритмизация процессов функционирования систем
- •5.1. Методика разработки и машинной реализации моделей систем
- •5.2. Построение концептуальных моделей систем и их формализация
- •5.3. Алгоритмизация моделей систем и их машинная реализация
- •6. Планирование имитационных моделй с экспериментами
- •6.1. Полный факторный эксперимент
- •6.2. Дробные реплики
- •6.3. Общая схема планирования эксперимента
- •6.3.1. "Крутое восхождение"
- •6.3.2. Этапы планирования эксперимента
- •6.4. Стратегическое планирование
- •6.5. Тактическое планирование
- •7. Оценка точности и достоверности результатов моделирования
- •7.1. Общие положения
- •7.2. Регрессионный анализ
- •7.3. Корреляционный анализ
- •7.4. Экспертные оценки
- •8. Инструментальные средства моделирования систем
- •8.1. Архитектура языков имитационного моделирования
- •8.2. Задание времени в машинной модели
- •8.3. Сравнительный анализ языков моделирования
- •8.4. Примеры прикладных пакетов моделирования и языков моделирования
- •9. Правила построения моделирующих алгоритмов и способы реализации моделей
- •10. Сетевые модели вычислительных систем
- •10.1. Определение: Сеть Петри
- •Объекты, образующие сеть Петри
- •2Расширенная входная Расширенная выходная
- •10.2. Маркировка сети Петри.
- •10.3. Пространство состояний сети Петри
- •10.4. Моделирование параллельных процессов.
- •10.5. Моделирование процессора с конвейерной обработкой
- •10.6. Кратные функциональные блоки компьютера
- •10.7. Сети Петри и программирование
- •10.8. Взаимно исключающие параллельные процессы
- •10.9. Анализ сетей Петри
- •10.10. Дерево достижимости сети Петри
- •В позицию может входить и выходить только одна дуга
- •11. Система имитационного моделирования gpss/pc
- •11.1. Назначение и основные возможности системы
- •11. 2. Состав системы моделирования gpss/pc
- •11.3. Структура операторов языка gpss/pc
- •11.4. Команды среды gpss/pc
- •11.5. Основные операторы языка gpss/pc
- •11.5.1. Начало gpss-модели
- •11.5.2. Комментарии в gpss/pc
- •11.5.3. Имитация потоков событий. Транзакты
- •11.5.4. Имитация типовых узлов смо
- •11.6. Информация о ходе моделирования
- •11.6.1. Окно данных
- •11.6.2. Окно блоков
- •11.6.3. Окно устройств
- •11.6.4. Окно многоканальных устройств
- •11.7. Информация о результатах моделирования
- •11.7.1. Файл результатов моделирования
- •11.7.2. Содержание результатов моделирования
- •11.9. Управление движением транзактов
- •11.10. Дополнительные средства сбора информации о модели
- •11.11. Стандартные числовые атрибуты
- •11.12. Выбор направления движения транзактов с использованием сча
- •11.13. Датчики случайных чисел в gpss/pc
- •11.14. Функции в gpss/pc
- •11.14.1. Дискретные функции
- •11.14.2. Непрерывные функции
- •11.15. Переменные в gpss/pc
- •11.16. Организация циклов
- •11.17. Логические переключатели
- •11.18. Управление движением транзактов в зависимости от состояния элементов модели
- •11.19. Моделирование согласованных процессов на gpss-pc
- •11.19.1. Создание ансамблей транзактов
- •11.19.2. Накопление нескольких транзактов для последующей обработки
- •11.19.3. Объединение нескольких транзактов в один
- •11.19.4. Синхронизация движения транзактов в модели
- •11.20. Время пребывания транзакта в модели
- •11.21. Сбор данных о распределении значений характеристик модели. Таблицы
- •11.22. Изменение имени файла результатов моделирования
- •11.23. Приведение модели к исходному состоянию
- •11.24. Многократное выполнение моделирования
- •11.25. Моделирование нескольких вариантов системы в одной gpss-модели
- •11.26. Время моделирования
- •3 94026 Воронеж, Московский просп., 14
11.16. Организация циклов
Циклом будем называть повторяющееся несколько раз прохождение транзакта через определенную группу операторов GPSS-PC. Для организации цикла указывается оператор LOOP. Он всегда является ПОСЛЕДНИМ оператором в группе операторов, образующих цикл. Структура оператора LOOP следующая:
LOOP A,B
где A - номер параметра транзакта, в котором записано количество повторений цикла;
B - метка оператора, с которого начинается цикл.
Значение параметра, указанного в операнде A (счетчик цикла), должно быть задано оператором ASSIGN до начала цикла.
Оператор LOOP работает следующим образом. После входа транзакта в этот оператор значение его параметра, указанного в операнде A, уменьшается на 1. Если значение параметра после этого превышает ноль, то транзакт переходит на метку, указанную в операнде B, т.е. цикл повторяется. Если параметр оказывается равным нулю, то транзакт переходит в оператор, следующий за LOOP, т.е. цикл завершается.
11.17. Логические переключатели
Логические переключатели (называемые также просто переключателями или ключами) - это элементы GPSS-модели, которые могут находиться только в одном из двух состояний: установленном или сброшенном. Логические переключатели обычно используются для разрешения или запрещения движения транзактов через определенную часть модели. Для этого выполняется проверка состояния переключателей, например, с помощью рассматриваемого ниже оператора GATE.
Для управления состоянием логических переключателей используется оператор LOGIC:
LOGIC опер A
где "опер" - обозначение операции, выполняемой с логическим переключателем: S - установка, R - сброс, I - инвертирование (изменение текущего состояния на противоположное);
A - имя переключателя (числовое или символьное), с которым выполняется заданная операция.
Какое-либо объявление логических переключателей не требуется. По умолчанию в начале работы модели все логические переключатели сброшены.
Пример использования логических переключателей рассматривается в следующем разделе.
11.18. Управление движением транзактов в зависимости от состояния элементов модели
Во многих случаях выбор направления движения транзактов производится в зависимости от состояния устройств, многоканальных устройств или переключателей, используемых в модели. Для этого применяется оператор TEST, , и оператор GATE. Формат оператора GATE следующий.
GATE усл A,B
Здесь "усл" - условие. Оператор GATE проверяет, соответствует ли заданный элемент модели указанному условию, и в зависимости от этого выбирает направление дальнейшего движения транзакта (или задерживает этот транзакт на все время, пока заданное условие не выполняется). Некоторые из условий, которые могут задаваться в операторе GATE, следующие (полный список условий имеется в документации по GPSS/PC).
Для устройств: NU - устройство свободно; U - устройство занято; NI - устройство не находится в состоянии прерывания; I - устройство находится в состоянии прерывания; FV - устройство доступно; FNV - устройство недоступно.
Для многоканальных устройств: SE - многоканальное устройство пусто (т.е. в нем нет транзактов); SNE - многоканальное устройство не пусто; SF - многоканальное устройство заполнено; SNF - многоканальное устройство не заполнено; SV- многоканальное устройство доступно; SNV - многоканальное устройство недоступно.
Для логических переключателей: LS - переключатель установлен, LR - переключатель сброшен.
Назначение операндов оператора GATE следующее.
A - имя устройства, многоканального устройства или логического переключателя, для которого проверяется заданное условие.
B - метка оператора, на который должен перейти транзакт, если заданное условие не выполняется для элемента модели, указанного в операнде A.
Операнд A обязателен, B - необязателен.
Оператор GATE работает следующим образом. Для элемента модели, указанного в операнде A, проверяется заданное условие. Если оно выполняется, то транзакт пропускается на оператор, следующий за GATE. Если оно не выполняется, то транзакт передается на оператор, метка которого указана в операнде B, а если операнд B не указан - то задерживается на все время, пока не выполняется условие.