- •Лекции по дисциплине «имитационное моделирование» Введение Основные понятия имитационного моделирования
- •Условия существования моделей
- •Типовые задачи, решаемые средствами им при управлении экономическими объектами
- •Основные этапы машинного моделирования систем
- •Правила и способы реализации моделей на эвм
- •Обзор программных систем имитационного моделирования
- •Разработка имитационных моделей в среде gpss
- •Объекты
- •Часы модельного времени
- •Типы операторов
- •Блоки языка gpss
- •Управление продолжительностью процесса моделирования
- •Элементы, отображающие одноканальные обслуживающие устройства
- •Переход транзакта в блок, отличный от последующего
- •Моделирование многоканальных устройств
- •Примеры построения gpss-моделей
- •Переменные
- •Определение функции в gpss
- •Моделирование неравномерных случайных величин
- •Моделирование вероятностных функций распределения в gpss-World
- •Табулирование результатов экспериментов
- •Сча транзакты
- •Математические предпосылки создания имитационной модели Процессы массового обслуживания в экономических системах
- •Системы с одним устройством обслуживания
- •Многоканальные смо
- •Вероятностное моделирование Метод Монте-Карло
- •Способы необходимой сходимости метода Монте-Карло
- •Определение количеств реализаций при моделировании случайных величин
- •Сбор статистических данных для получения оценок характеристик случайных величин
- •Получение и преобразование случайных чисел. Датчики случайных чисел
- •Получение случайных чисел с заданным законом распределения
- •Метод Неймана (разыгрывания случайной величины)
- •Проверка гипотез по категориям типа событие – явление – поведение
- •Риски и прогнозы
- •Распределительные процессы
- •Процессы обслуживания клиентов
- •Процессы управления разработками проектов
- •Имитация информационных ресурсов
- •Денежные ресурсы
- •Перспективные направления моделирования бизнеса
- •Оценка качества имитационной модели
- •Оценка адекватности модели
- •Оценка устойчивости системы
- •Оценка чувствительности имитационной модели
- •Калибровка модели
Переход транзакта в блок, отличный от последующего
Для реализации этого действия в GPSS используется блок transfer (передать). Этот блок может быть использован в девяти разных режимах.
Рассмотрим три основных режима:
1. Режим безусловной передачи transfer ,В
А – не используется, В – позиция блока, в которую должен перейти транзакт (это номер или имя блока).
2. Статический режим. В этом режиме осуществляется передача транзактов в один из 2-х блоков случайным образом: transfer А, [B], С
А – вероятность передачи транзакта в блок, указанный в позиции С (РПУ – ошибка);
[В] – позиция блока, в которую должен перейти транзакт с вероятностью (1-A) (РПУ – следующий по порядку блок);
С – позиция блока, в которую должен перейти транзакт с вероятностью А.
Пример: transfer .333, LPRIB1, LPRIB2
LPRIB1 seize PR1 (L – Lable)
LPRIB2, seize PR2
При задании вероятности (операнд А) используется не более трех цифр, причем первый символ записи частоты – точка. Например, 0,235 → . 235
Если операнд – положительное целое число, то вероятность интегрируется в долях тысячи.
3. Режим BOTH. Если в операнде А стоит зарезервированное слово ВОТН, то входящий транзакт сначала пытается перейти к блоку, указанному в операнде В, а если это не удается, то пытается перейти к блоку, указанному в операнде С. Если он не может перейти ни к одному, ни к другому блоку (ни к В, ни к С), то транзакт остается в блоке transfert, до тех пор, пока он не сможет выйти из блока.
Пример: transfer ВОТН, LL1, LL2.
LL1 seize PRI 1
…
LL2 seize PRI2
…
Моделирование многоканальных устройств
Два или более обслуживающих устройств, работающих параллельно, могут моделироваться в GPSS двумя или более одноканальными устройствами. Это необходимо, когда отдельные устройства являются разнородными и имеют разную интенсивность обслуживания. Однако очень часто параллельно работающие устройства являются одинаковыми, и GPSS для их моделирования предоставляет объект, называемый многоканальным устройством (МКУ).
Количество устройств, которое моделируется в каждом из МКУ, определяется пользователем. В этом случае употребляют термин «емкость МКУ». Она должна быть определена пользователем заранее.
При моделировании МКУ события происходят в следующем порядке:
транзакт ожидает своей очереди, если это необходимо;
транзакт занимает устройство;
устройство осуществляет обслуживание в течение некоторого времени;
транзакт освобождает устройство.
События 2 и 4 моделируют блоки enter и leave. Формат блоков:
enter А [, B]
leave А [, B]
где А – имя МКУ (РПУ – ошибка);
В – количество занимаемых одновременно устройств.
Когда транзакт входит в блок enter, выполняются следующие действия:
увеличивается счетчик входов МКУ на значение операнда В;
увеличивается текущее содержимое МКУ на значение операнда В;
уменьшается доступная емкость МКУ на значение операнда В.
Когда транзакт входит в блок leave, интерпретатор выполняет обратные действия.
Для определения емкости МКУ используют оператор storage (хранилище).
Пример: Пусть система состоит из 8 механиков и 10 подъемных кранов, тогда в GPSS-модель могут быть введены такие МКУ:
MECHANICIAN storage 8
LIFTING_GRANE storage 10
Пример: Возможно переопределять емкость МКУ при выполнении нескольких прогонов моделирования. Пусть необходимо найти лучшую комбинацию среди значений пар «количество механиков – количество кранов» за один этап моделирования. Для этого надо использовать следующую последовательность операторов storage и команды start:
MECHANICIAN storage < значение 1.1 >
LIFTING _ CRANE storage < значение 1.2 >
… работа механиков
< текст GPSS-программы >
…
start 1
result rez.txt, 1, 1112
clear
MECHANICIAN storage < значение 2.1 >
LIFTING _CRANE storage < значение 2.2 >
start 1
result rez.txt, 1, 2122
clear
MECHANICIAN storage < значение 3.1 >
LIFTING _ CRANE storage < значение 3.2 >
start 1
result rez.txt, 1, 3132
clear
… и т.д.
Команда result указывает на ячейку сохраняемых величин, в которой хранится значение критерия, по которому сравнивают комбинации пар значений. Эта команда используется только в GPSS и С.
