
- •Федеральное агентство по образованию
- •Оглавление
- •Глава 5. Моделирование вычислительных и операционных систем 289
- •Глава 6. Основы моделирования процессов 305
- •Глава 7. Задания для самостоятельной работы 311
- •Глава 8. Проектирование имитационных моделей 335
- •Глава 9. Технология имитационного моделирования 361
- •Глава 10. Примеры принятия решений с помощью имитационного моделирования 433
- •Глава 11. Задания для имитационных проектов 451
- •Предисловие
- •Введение
- •Глава 1. Модели массового обслуживания
- •1.1. Системы массового обслуживания и их характеристики
- •1.2. Системы с одним устройством обслуживания
- •1.3. Основы дискретно-событийного моделирования смо
- •1.4. Многоканальные системы массового обслуживания
- •Глава 2. Вероятностные сети систем массового обслуживания
- •2.1. Общие сведения о сетях
- •2.2. Операционный анализ вероятностных сетей
- •2.3. Операционные зависимости
- •2.4. Анализ узких мест в сети
- •Глава 3. Вероятностное моделирование
- •3.1. Метод статистических испытаний
- •3.2. Моделирование дискретных случайных величин
- •3.3. Моделирование непрерывных случайных величин
- •3.4. Сбор статистических данных для получения оценок характеристик случайных величин
- •Для оценки дисперсии случайной величины ξ используют формулу
- •3.5. Определение количества реализаций при моделировании случайных величин
- •По формулам (3.18-3.20) находим
- •Задачи для самостоятельной работы
- •Задача 6
- •Глава 4. Система моделированияgpss
- •4.1. Объекты
- •4.2. Часы модельного времени
- •4.3. Типы операторов
- •4.4. Внесение транзактов в модель. БлокGenerate
- •Задание для самостоятельной работы:
- •4.5. Удаление транзактов из модели. БлокTerminate
- •4.6. Элементы, отображающие одноканальные обслуживающие устройства
- •4.7. Реализация задержки во времени. БлокAdvance
- •Задания для самостоятельной работы:
- •4.8. Сбор статистики об ожидании. Блоки queue, depart
- •4.9. Переход транзакта в блок, отличный от последующего. БлокTransfer
- •Задания для самостоятельной работы:
- •4.10. Моделирование многоканальных устройств
- •4.11. Примеры построенияGpss-моделей
- •Построение модели
- •4.12. Переменные
- •4.13. Определение функции вGpss
- •Пример 4.23
- •4.14. Стандартные числовые атрибуты, параметры транзактов. Блоки assign, mark, loop
- •4.15. Изменение приоритета транзактов. БлокPriority
- •4.16. Организация обслуживания с прерыванием. Блоки preempt и return
- •Задание для самостоятельной работы:
- •4.17. Сохраняемые величины
- •4.18. Проверка числовых выражений. Блок test
- •Пример 4.40
- •Задание для самостоятельной работы:
- •4.19. Определение и использование таблиц
- •Задания для самостоятельной работы:
- •4.20. Косвенная адресация
- •4.21. Обработка транзактов, принадлежащих одному семейству
- •4.22. Управление процессом моделирования в системеGpss
- •4.23. Списки пользователей
- •4.24. Блоки управления потоками транзактовLogic,gatelr,gatelSиGate
- •7 Testne p1,p2,asn2 ; Повторить, если адресат
- •4.25. Организация вывода временных рядов изGpss-модели
- •4.26. Краткая характеристика языкаPlus
- •4.27. Команды gpss World
- •4.28. Диалоговые возможностиGpssWorld
- •4.29. Отличия между gpss World и gpss/pc
- •Глава 5. Моделирование вычислительных и операционных систем
- •5.1. Операционные системы компьютеров
- •5.2. Сети и системы передачи данных
- •5.3. Проблемы моделирования компьютеров и сетей
- •Глава 6. Основы моделирования процессов
- •6.1. Производственные процессы
- •6.2. Распределительные процессы
- •6.3. Процессы обслуживания клиентов
- •6.4. Процессы управления разработками проектов
- •Глава 7. Задания для самостоятельной работы Задание 1. Моделирование разливной линии
- •Глава 8. Проектирование имитационных моделей с помощью интерактивной системы имитационного моделирования
- •8.1. Структура интерактивной системы имитационного моделирования
- •8.2. Построение концептуальной схемы модели
- •8.3. Параметрическая настройка модели
- •8.4. Генератор формул
- •8.5. Управление экспериментом
- •8.6. Запуск эксперимента и обработка результатов моделирования
- •8.7. Управление проектами и общей настройкой системы
- •8.8. Пример построения модели средствамиIss2000
- •Глава 9. Технология имитационногомоделирования
- •9.1. Имитационные проекты
- •9.2. Организация экспериментов
- •9.3. Проблемы организации имитационных экспериментов
- •9.4. Оценка точности результатов моделирования
- •9.5. Факторный план
- •9.6. Дисперсионный анализAnovAв планированииэкспериментов
- •9.7. Библиотечная процедураAnova
- •9.8. Технология проведение дисперсионного анализа в системеGpss World
- •9.9. Особенности планирования экспериментов
- •9.10. Нахождение экстремальных значений на поверхности отклика
- •9.11. Организация экспериментов вGpssWorld
- •9.12. Выбор наилучшего варианта структуры системы
- •Глава 10. Примеры принятия решений с помощью имитационного моделирования
- •10.1. Моделирование производственного участка
- •10.2. Моделирование технологического процесса ремонта и замены оборудования
- •Глава 11. Задания для имитационных проектов
- •Приложение Системные сча
- •Сча транзактов
- •Сча блоков:
- •Сча одноканальных устройств:
- •Сча очередей
- •Сча таблиц
- •Сча ячеек и матриц ячеек сохраняемых величин:
- •Сча вычислительных объектов
- •Сча списков и групп
- •Список литературы
4.18. Проверка числовых выражений. Блок test
Сравнение СЧА может быть выполнено с помощью блока TEST (ПРОВЕРИТЬ).
Его формат:
TEST X А,В[,С]
Операнды А и В - имена СЧА, которые сравниваются. Вспомогательный оператор X указывает способ сравнения этих двух СЧА друг с другом.
Пример 4.40
Режим отказа
TEST LE Q1,Q2
Проверяющий транзакт будет задержан в предыдущем блоке до тех пор, пока длина первой очереди не станет меньше или равна длине второй очереди.
Пример 4.41
Режим условного перехода
TEST LE Qt,Q2,ZHVS
Проверяющий транзакт перейдет в следующий по порядку блок, если содержимое первой очереди меньше или равно содержимому второй очереди. Если это условие не выполняется, транзакт перейдет в блок с меткой ZHVS.
Пример 4.42
TEST L FSSCANNER,X$MAX_UTIL,LLL SEIZE -SCANNER
LLL QUEUE Q_SCANNER2
Если устройство SCANNER имеет коэффициент загрузки меньше, чем значение сохраняемой величины MAX_UTIL, то транзакт идет на обслуживание этим устройством, в противном случае -переходит к блоку с меткой LLL.
Пример 4.43
Пусть в точке модели DISPATCHER необходимо удалить те транзакты, которые находились в модели больше, чем 100ед. модельного времени. Для этого в модели можно использовать такие блоки:
GENERATE 18,6
DISPATCHER TESTL M1,100,KILL KILL TERMINATE
Задание для самостоятельной работы:
1. В отделе универсама есть две кассы. Покупатели становятся в очередь в ту кассу, у которой меньше очередь. Напишите фрагмент программы для этой ситуации.
2. Первые четыре часа работы парикмахерской клиенты обслуживаются одним мастером, следующие четыре - другим. Напишите фрагмент модели для этой ситуации.
4.19. Определение и использование таблиц
Для накопления выборочных значений случайных величин и статистической обработки этих выборок используются GPSS-таблицы. Графическим аналогом GPSS-таблицы является гистограмма выборочных значений случайной величины, которую можно просмотреть в окне таблицы. Прежде чем использовать таблицу, ее нужно определить, а потом задать собираемые выборочные значения.
Оператор TABLE (ТАБЛИЦА). В модели может быть несколько таблиц. Каждую таблицу нужно сначала определить и только потом использовать в модели. Для определения таблицы необходимо указать:
1) имя таблицы (числовое или символьное);
2) имя случайной переменной, значение которой будет табулироваться;
3) число, являющееся первым граничным значением. (Значения выборки, меньшие или равные этому числу, попадают в самый левый (нижний) интервал (частотный класс) таблицы);
4) ширину интервала, общую для всех интервалов таблицы за исключением левого (нижнего) и правого (верхнего);
5) общее число интервалов таблицы, включая нижний и верхний. Формат оператора представлен в таблице.
Таблица 4.44
На рис. 4.11 показана ось действительных значений и ее разделение на ряд интервалов таблицы.
Для сбора статистических данных об очередях используется оператор QTABLE. Его формат совпадает с форматом оператора TABLE, за исключением того, что операнд А задает имя очереди.
Блок TABULATE (ТАБУЛИРОВАТЬ). Выборочные значения попадают в таблицу в моменты вхождения транзактов в блок TABULATE. Его формат:
TABULATE A
Таблица 4.45
Операнд А задает имя таблицы, в которую попадают выборочные значения. Одну таблицу можно использовать в нескольких блоках TABULATE модели. Отметим, что СЧА, по которому собирается статистика, в блоке TABULATE не указывается, так как он уже записан в операторе TABLE.
Если в модели используется блок TABLE или QTABLE, в файле стандартной статистики информация будет представлена в таком виде:
Для получения этих данных была определена GPSS-таблица MVP, в которой фиксировалось время нахождения транзакта в модели:
MVP TABLE Ml,100,100,20
Стандартные числовые атрибуты таблицы:
ТВ<номер таблицы>, ТВ$<имя таблицы> - вычисленное среднее значение соответствующего СЧА;
ТС<номер таблицы>, ТС$<имя таблицы> - общее число входов в таблицу;
ТВ<номер таблицы>, ТВ$<имя таблицы> - вычисленное среднеквадратическое отклонение соответствующего СЧА.
Пример 4.44
TIMSERV TABLE МРЗ,10,5,б ; Оператор определения таблицы GENERATE 100,15
MARK 3
TABULATE TIMSERV ; Оператор табулирования
В таблице TIMSERV будет табулироваться частотное распределение случайной величины - времени пребывания транзакта между блоками MARK и TABULATE. В табл. 4.46 приведены интервалы регистрации времени пребывания между блоками MARK и TABULATE.
Таблица 4.46
Для того, чтобы данные, собираемые в таблицу, не попадали в один-два интервала, рекомендуется: 1) сначала сделать пробный прогон;
по пробному прогону определить диапазон значений, в которых может колебаться анализируемая случайная величина (в GPSS/PC перейти к окну таблиц с помощью клавиш [ALT+T]);
3) с учетом полученного диапазона скорректировать значения операндов В, С и D соответствующей таблицы.
Пример 4.45
В таблице SYSTIME собирается время пребывания транзакта в модели, которое предположительно принимает значения в интервале [100,2000].
SYSTIME TABLE М1,100,12,10 SAVEVALUE STD,TB$SYSTIME
При входе транзакта в блок SAVEVALUE среднее значение СЧА (времени пребывания), соответствующего таблице SYSTIME заносится в сохраняемую величину с именем STD.