- •Лекции по дисциплине «имитационное моделирование» Введение Основные понятия имитационного моделирования
- •Условия существования моделей
- •Типовые задачи, решаемые средствами им при управлении экономическими объектами
- •Основные этапы машинного моделирования систем
- •Правила и способы реализации моделей на эвм
- •Обзор программных систем имитационного моделирования
- •Разработка имитационных моделей в среде gpss
- •Объекты
- •Часы модельного времени
- •Типы операторов
- •Блоки языка gpss
- •Управление продолжительностью процесса моделирования
- •Элементы, отображающие одноканальные обслуживающие устройства
- •Переход транзакта в блок, отличный от последующего
- •Моделирование многоканальных устройств
- •Примеры построения gpss-моделей
- •Переменные
- •Определение функции в gpss
- •Моделирование неравномерных случайных величин
- •Моделирование вероятностных функций распределения в gpss-World
- •Табулирование результатов экспериментов
- •Сча транзакты
- •Математические предпосылки создания имитационной модели Процессы массового обслуживания в экономических системах
- •Системы с одним устройством обслуживания
- •Многоканальные смо
- •Вероятностное моделирование Метод Монте-Карло
- •Способы необходимой сходимости метода Монте-Карло
- •Определение количеств реализаций при моделировании случайных величин
- •Сбор статистических данных для получения оценок характеристик случайных величин
- •Получение и преобразование случайных чисел. Датчики случайных чисел
- •Получение случайных чисел с заданным законом распределения
- •Метод Неймана (разыгрывания случайной величины)
- •Проверка гипотез по категориям типа событие – явление – поведение
- •Риски и прогнозы
- •Распределительные процессы
- •Процессы обслуживания клиентов
- •Процессы управления разработками проектов
- •Имитация информационных ресурсов
- •Денежные ресурсы
- •Перспективные направления моделирования бизнеса
- •Оценка качества имитационной модели
- •Оценка адекватности модели
- •Оценка устойчивости системы
- •Оценка чувствительности имитационной модели
- •Калибровка модели
Примеры построения gpss-моделей
Пример 1. В парикмахерскую с одним креслом приходят клиенты двух типов. Клиенты первого типа хотят только стричься. Распределение интервалов их прихода 35 ± 10 мин. Клиенты второго типа хотят постричься и побриться. Распределение интервалов их прихода 60 ± 20 мин. Парикмахер обслуживает клиентов в порядке FIFO: «первым пришел, первым обслужился». Время, затраченное на стрижку составляет 18 ± 6 мин., а на бритье – 10±2 мин. Написать GPSS-модель парикмахерской, обеспечивая сбор данных об очереди клиентов.
Построение модели.
Необходимо реализовать отличие в обслуживании клиентов, которые только стригутся и которые стригутся и бреются. Такую систему можно промоделировать с помощью 2-х сегментов. Один из них моделирует обслуживание «только стригутся», а второй – «стригутся и бреются». В каждом из сегментов пара queue – depart должна описывать одну и ту же очередь. Таким образом, пара блоков seize - release должна описывать в каждом из двух сегментов одно и то же устройство и моделировать работу парикмахерской. Возьмем единицу модельного времени 1 минута.
Программа:
* HAIR CUT
generate 35, 10; приход клиентов, которые только стригутся;
queue BARBER Q; присоединение к очереди;
seize BARBER; переход в кресло парикмахера;
depart BARBER Q; выход из очереди;
advance 18, 6; стрижка у парикмахера;
release BARBER; освобождение парикмахера;
* HAIR CUT AND SHAVING
generate 60, 20; приход клиентов, которые стригутся и бреются;
queue BARBER Q; присоединение к общей очереди;
seize BARBER; переход в кресло парикмахера;
depart BARBER Q; выход из очереди;
advance 10,2; бритье у парикмахера;
advance 18,6; стрижка у парикмахера;
release BARBER; освобождение парикмахера;
terminate 0; уход из парикмахерской;
*сегмент – таймер
generate 480; транзакт – таймер приходит в момент 480;
terminate 1; комментарий завершения прогона;
***
start 1
480 – восьмичасовой рабочий день.
Пример 2. Морские суда 2-х типов пребывают в порт, где происходит их разгрузка. В порту есть 2 буксира, обеспечивающих ввод и вывод кораблей из порта. К 1-му типу относятся корабли малого тоннажа, которые требуют использования одного буксира. Корабли 2-го типа имеют большие размеры, и для их ввода и вывода из порта требуется 2 буксира. Из-за различия размеров 2-х типов кораблей необходимы и причалы различного размера. Кроме того, корабли имеют различное время погрузки-разгрузки. Исходные данные приведены в таблице:
Значение |
Тип корабля |
|
1 |
2 |
|
Интервал прибытия, мин. Время входа в порт, мин. Количество доступных причалов Время погрузки-разгрузки, час. Время выхода из порта, мин. |
130 ± 30 30 ± 7 6 12 ± 2 20 ± 5 |
390 ± 60 45 ± 12 3 18 ± 4 35 ± 10 |
Текст программы:
PRCH 1 storage 6; 6 причалов для кораблей 1-го типа
PRCH 2 storage 3; 3 причала для кораблей 2-го типа
BUKS storage 2; 2 буксира
* SHIPS OF TYPE 1; для кораблей 1-го типа определяем время ожидания
generate 130, 30; подход к порту
queue type 1; регистрируем очередь 1-го типа
enter PRCH 1; получение причала
enter BUKS 1;
depart type 1; изъятие причала
advance 30,7; буксирование до причала
leave BUKS; освобождение буксира
advance 720; 120; погрузка – разгрузка
enter BUKS; получение буксира
leave PRSH 1; освобождение причала
advance 20,5; буксирование / отчаливание
leave BUKS; освобождение буксира
terminate
* SHIPS OF TYPE 2
generate 390, 60
queue type 2
enter PRCH 2
enter BUKS 2
depart type 2
advance 45,12
leave BUKS 2
advance 1080, 240
enter BUKS 2
leave PRSH 2
advance 35,10
leave BUKS 2
terminate
generate 48000 время не критично (100 дней)
terminate 1
start 1