- •Предисловие
- •Введение
- •Глава 1. Модели массового обслуживания
- •1.1. Системы массового обслуживания и их характеристики
- •1.2. Системы c одним устройством обслуживания
- •1.3. Основы дискретно-событийного моделирования cmo
- •1.4. Многоканальные системы массового обслуживания
- •Переменная vаr1, экспоненциальное распределение
- •Глава 2. Вероятностные сети систем массового обслуживания
- •2.1. Общие сведения о сетях
- •2.2. Операционный анализ вероятностных сетей
- •2.3. Операционные зависимости
- •2.4. Анализ узких мест в сети
- •Глава 3. Вероятностное моделирование
- •3.1. Метод статистических испытаний
- •3.2. Моделирование дискретных случайных величин
- •3.3. Моделирование непрерывных случайных величин
- •3.4. Сбор статистических данных для получения оценок характеристик случайных величин
- •3.5. Определение количества реализаций при моделировании случайных величин
- •Глава 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.14. Стандартные числовые атрибуты, параметры транзактов. Блоки assign, mark, loop
- •Примеры фрагментов gpss-моделей c использованием сча и параметров гранзактов
- •4.15. Изменение приоритета транзактов. Блок priority
- •4.16. Организация обслуживания c прерыванием. Блоки preempt и return
- •4.17. Сохраняемые величины
- •4.18. Проверка числовых выражений. Блок test
- •4.19. Определение и использование таблиц
- •4.20. Косвенная адресация
- •4.21. Обработка транзактов, принадлежащих одному семейству
- •4.22. Управление процессом моделирования в системе gpss
- •4.23. Списки пользователей
- •4.24. Блоки управления потоками транзактов logic, gate lr, gate ls и gate
- •4.25. Организация вывода временных рядов из gpss-модели
- •4.26. Краткая характеристика языка plus
- •4.27. Команды gpss WorId
- •4.28. Диалоговые возможности gpss World
- •4.29. Отличия между gpss World и gpss/pc
- •Глава 5. Моделирование вычислительных и операционных систем
- •5.1. Операционные системы компьютеров
- •5.2. Сети и системы передачи данных
- •5.3. Проблемы моделирования компьютеров и сетей
- •Глава 6. Основы моделирования процессов
- •6.1. Производственные процессы
- •6.2. Распределительные процессы
- •6.3. Процессы обслуживания клиентов
- •6.4. Процессы управления разработками проектов
- •Глава 7. Задания для самостоятельной работы Задание 1. Моделирование разливной линии
- •Задание 2 [10]. Моделирование контроля и настройки телевизоров
- •Задание 3. Моделирование работы кафе
- •Задание 4. Моделирование работы обрабатывающего цеха
- •Задание 5. Моделирование работы обрабатывающего цеха
- •Задание 6. Моделирование работы обрабатывающего цеха
- •Задание 7. Моделирование работы cmo
- •Задание 8. Моделирование функций
- •Задание 9 [10]. Моделирование системы обслуживания
- •Задание 10 [16]. Моделирование системы автоматизации проектирования
- •Задание 11 [16]. Моделирование работы транспортного цеха
- •Задание 12 [16]. Моделирование системы передачи разговора
- •Задание 13 [16]. Моделирование системы передачи данных
- •Задание 14 [16]. Моделирование узла коммутации сообщений
- •Задание 15 [16]. Моделирование процесса сборки
- •Задание 16 [16]. Моделирование работы цеха
- •Задание 17 [16]. Моделирование системы управления производством
- •Задание 18. Моделирование производственного процесса
- •Задание 19. Моделирование работы заправочной станции
- •Задание 20. Моделированиеработы станции технического обслуживания
- •Задание 21. Моделирование работы станции скорой помощи
- •Задание 22. Моделирование работы госпиталя
- •Задание 23. Моделирование работы маршрутных такси
- •Задание 24. Моделирование работы печатной системы
- •Задание 25. Моделирование процесса сборки пк
- •Глава8. Проектирование имитационных моделей c помощью интерактивной системы имитационного моделирования
- •8.1. Структура интерактивной системы имитационного моделирования
- •8.2. Построение концептуальной схемы модели
- •8.3. Параметрическая настройка модели
- •8.4. Генератор формул
- •8.5. Управление экспериментом
- •8.6. Запуск эксперимента и обработка результатов моделирования
- •8.7. Управление проектами и общей настройкой системы
- •8.8. Пример построения модели средствами iss 2000
- •Глава 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. Организация экспериментов в gpss WorId
- •9.L2. Выбор наилучшего варианта структуры системы
- •Глава 10. Примеры принятия решений c помощью имитационного моделирования
- •10.1. Моделирование производственного участка
- •10.2. Моделирование технологического процесса ремонта и замены оборудования
- •Приложение Системные сча
- •Сча транзактов
- •Сча блоков:
- •Сча одноканальных устройств:
- •Список литературы
- •Глава 9. Технология имитационного моделирования 167
- •Глава 10. Примеры принятия решений c помощью имитационного моделирования 203
4.11. Примеры построения gpss-моделей
Пример4.11 [10]
Интервалы прихода клиентов в парикмахерскую c одним креслом распределены равномерно на интервале 18±6мин. Время стрижки также распределено равномерно на интервале 16±4мин. Клиенты приходят в парикмахерскую, стригутся в порядке очереди: «первым пришел – первым обслужился». Необходимо построить GPSS-модель парикмахерской, которая должна обеспечить сбор статистических данных об очереди. Промоделируйте работу парикмахерской в течение 8 часов.
Построение модели
Порядок блоков в модели соответствует порядку фаз, в которых клиент оказывается при движении в реальной системе:
1) клиент приходит;
2) если необходимо, ждет своей очереди;
3) садится в кресло парикмахера;
4) парикмахер обслуживает клиента;
5) клиент уходит из парикмахерской.
Таблица 4.12 (Таблица определений)
Элементы GPSS |
Интерпретация |
Транзакты В первом сегменте модели Во втором сегменте модели |
Клиенты Таймер |
Устройство BARBER |
Парикмахер |
Очередь BARBERQ |
Очередь, используемая для сбора статистики об ожидании клиентов |
Единица модельного времени – 1 минута.
Программа:
Пример 4.12[10]
В парикмахерскую c одним креслом приходят клиенты двух типов. Клиенты первого типа желают только стричься. Распределение интервалов их прихода – 35±10 мин. Клиенты второго типа желают постричься и побриться. Распределение интервалов их прихода – 60±20 мин. Парикмахер обслуживает клиентов в порядке «первым пришел – первым обслужился». Время, затраченное на стрижку, составляет 18±6мин, А на бритье – 10±2мин. Написать GPSS-модель парикмахерской, обеспечив сбор данных об очереди клиентов.
Построение модели
Необходимо реализовать отличие в обслуживании клиентов, которые только стригутся, и клиентов, которые стригутся и бреются.
Такую систему можно промоделировать c помощью двух сегментов. Один из них моделирует обслуживание только стригущихся клиентов, А второй – стригущихся и бреющихся. В каждом из сегментов пара QUEUE-DEPART должна описывать одну и ту же очередь. Таким же образом пара блоков SEIZE-RELEASE должна описывать в каждом из двух сегментов одно и то же устройство и моделировать работу парикмахера.
Таблица 4.13 (Таблица определений)
Элементы GPSS |
Интерпретация |
Транзакты В 1 сегменте модели Во 2 сегменте модели В 3 сегменте модели |
Клиенты, которые только стригутся Клиенты, которые бреются и стригутся Таймер |
Устройство BARBER |
Парикмахер |
Очередь BARBERQ |
Очередь, используемая для сбора статистики об ожидании клиентов обоих типов |
Единица модельного времени – 1 мин.
Программа:
Пример 4.13 [10]
На фабрике в кладовой работает один кладовщик. Он выдает запасные части механикам, обслуживающим станки и устанавливающим эти части на испорченных станках. Запасные части довольно дорогие и, кроме того, их ассортимент слишком велик для того, чтобы каждый механик мог иметь все запасные части в своем ящике. Время, необходимое для удовлетворения запроса, зависит от типа запасной части. Запросы бывают двух категорий. Соответствующие данные приведены в табл. 4.14.
Таблица 4.14
Категория запроса |
Интервал времени прихода механиков, с |
Время обслуживания, с |
1 |
420±360 |
300±90 |
2 |
360±240 |
100±30 |
Порядок обслуживания механиков кладовщиком такой: запросы первой категории обслуживаются только в том случае, когда в очереди нет ни одного запроса второй категории. Внутри одной категории дисциплина обслуживания – «первым пришел – первым обслужился». Необходимо создать модель работы кладовой, моделирование выполнять в течение восьмичасового рабочего дня.
Дисциплина обслуживания «первый пришел – первый обслужился» для двух категорий запросов c соответствующим приоритетом изображена на рис. 4.1.
Рис. 4.1
Построение модели
Эта система очень похожа на систему из примера 4.12. Есть два различных типа заявок, поступающих на обслуживание к одному устройству. Различаются распределения интервалов приходов и времени обслуживания для этих типов заявок. Трудность заключается в том, что один из типов имеет преимущество в обслуживании. Построить модель можно, используя тот же подход, что и в примере 4.12. Но при этом необходимо использовать средство задания заявкам различных приоритетов. Итак, запросы первой категории будем моделировать одним сегментом, А запросы второй категории – другим. Разные относительные приоритеты задаются путем использования для операнда E блока GENERATE запросов второй категории большего значения, чем для запросов первой категории.
Таблица 4.15 (Таблица определений)
Элементы GPSS |
Интерпретация |
Транзакты В первом сегменте модели Во втором сегменте модели В третьем сегменте модели |
Механики, делающие запрос первой категории Механики, делающие запрос второй категории Таймер |
Устройство STOCKMAN |
Кладовщик |
Очереди QSTCKM1 QSTCKM2 |
Очереди, используемые для сбора статистики об ожидании механиков различных категорий |
Единица модельного времени – 1 c.
Программа:
Пример 4.14 [10]
Изготовление деталей определенного вида включает длительный процесс сборки, который заканчивается коротким периодом обжига в печи. Поскольку эксплуатация печи обходится очень дорого, несколько сборщиков используют одну печь, в которой одновременно можно обжигать только одну деталь. Сборщик не может начать новую сборку, пока не вытащит из печи предыдущую деталь.
Таким образом, сборщик работает в таком режиме:
1) собирает следующую деталь;
2) ожидает возможности использования печи по принципу FIFO;
3) использует печь;
4) возвращается к п. 1.
Время, необходимое на выполнение различных операций, приведено в табл. 4.16.
Таблица 4.16
Операция |
Необходимое время, мин |
Сборка |
30±5 |
Обжиг |
8±2 |
Необходимо построить на GPSS модель описанного процесса. Определить оптимальное число сборщиков, использующих одну печь, т.е. такое количество, которое дает наибольшую прибыль при моделировании в течение 40 часов модельного времени. Предполагается, что в течение рабочего дня нет перерывов, А рабочими днями являются все дни (без выходных).
Построение модели
В данном случае есть два ограничивающих условия, влияющих на пропускную способность системы: одна печь и некоторое фиксированное количество сборщиков, работающих в системе.
Естественно для моделирования печи использовать понятие «устройство», также естественно отождествлять сборщиков c транзактами. Тогда можно считать, что сборщики «циркулируют» в системе, периодически осуществляя сборку и обжиг. Аналогично и транзакты должны циркулировать в GPSS-модели системы. Как видно из постановки задачи, модель представляет собой замкнутую CMO c одним устройством обслуживания.
В реальной системе, после того, как сборщик вынимает из печи обожженную деталь, он возвращается и начинает новый этап сборки. В модели после того, как транзакт завершает использование устройства, он должен быть перемещен c помощью блока TRANSFER в блок следующей сборки. Для ограничения общего количества транзактов, циркулирующих в модели, необходимо использовать операнд D блока GENERATE.
Для вычисления прибыли при заданном числе сборщиков необходимо знать, сколько готовых деталей они сделают на протяжении моделируемого периода. Это значение дает количество выходов из печи, т.е. в процессе моделирования нас интересует именно эта величина.
Таблица 4.17 (Таблица определений )
Элементы GPSS |
Интерпретация |
Транзакты В 1 сегменте модели Во 2 сегменте модели |
Сборщики Таймер |
Устройство OVEN |
Печь |
Единица модельного времени – 1 мин.
Программа:
Пример 4.15 [10]
Морские судна двух типов прибывают в порт, где происходит их разгрузка. В порту есть два буксира, обеспечивающих ввод и вывод кораблей из порта. К первому типу судов относятся корабли малого тоннажа, которые требуют использования одного буксира. Корабли второго типа имеют большие размеры, и для их ввода и вывода из порта требуется два буксира. Из-за различия размеров двух типов кораблей необходимы и причалы различного размера. Кроме того, корабли имеют различное время погрузки-разгрузки. Исходные данные приведены в табл. 4.18.
Построить модель системы, в которой можно оценить время ожидания кораблями каждого типа входа в порт. (Время ожидания входа в порт включает время ожидания освобождения причала и буксира). Корабль, ожидающий освобождения причала, не обслуживается буксиром до тех пор, пока не будет предоставлен нужный причал. Корабль второго типа не займет буксир до тех пор, пока ему не будут доступны оба буксира.
Таблица 4.18
Значение |
Тип корабля |
|
1 |
2 |
|
Интервал прибытия, мин |
130 ± 30 |
390 ± 60 |
Время входа в порт, мин |
30 ± 7 |
45 ± 12 |
Количество доступных причалов |
6 |
3 |
Время погрузки-разгрузки, час |
12 ± 2 |
18 ± 4 |
Время выхода из порта, мин |
20 ± 5 |
35 ± 10 |
Программа:
Среднее время ожидания кораблями каждого типа входа в порт получаем в конце моделирования из стандартной статистики об очередях: оно равно показателю AVERAGE TIME соответствующей очереди. (Эти же значения дают СЧА QT$TYPE1 и QT$TYPE2).