- •Язык имитационного моделирования gpssWorld
- •Базовые понятия системы имитационного моделирования gpssWorld.
- •Системные числовые атрибуты
- •Логические и условные операторы
- •Формат записи операторов языка gpss
- •Операторы, имитирующие работу динамической категории объектов.
- •Операторы, имитирующие работу аппаратной категории объектов.
- •Операторы, имитирующие работу статистической категории объектов
- •Операторы операционной категории
- •Блок выбора объекта из однородной совокупности объектов по заданному условию
- •Блоки, изменяющие маршрут движения транзактов.
- •Размножение транзактов.
- •Операторы вычислительной категории
- •Операторы, имитирующие работу группирующей категории
- •Операторы, имитирующие работу запоминающей категории
- •Примеры построения модели на языке gpssWorld
- •Пример №1
- •Пример №2
- •Пример №3
- •Пример №4
- •Пример №5
- •Пример №6
- •Редактор форм
- •Введение
- •Создание формы и указание модели
- •Ввод информации о модели
- •Настройка динамического мониторинга
- •Добавление пользовательского объекта мониторинга
- •Построение формы ввода одного эксперимента
- •Корневая панель
- •Команда «Надпись»
- •Команда «Группа»
- •Команда «Элемент управления вкладками»
- •Команда «Скрывающаяся панель»
- •Команда «Изображение»
- •Команда «Секция ввода»
- •Привязка к операнду
- •Связывание элемента диалога и элемента «надпись»
- •Добавление/удаление факторов
- •Команда «Выпадающий список»
- •Команда «Галка»
- •Команда «Кнопка»
- •Форма планирования экспериментов
- •Принципы планирования
- •Добавление факторов
- •Добавление показателей
- •Выбор серии экспериментов
- •Ручной план эксперимента
- •Автоматическое построение плана с использованием шага
- •Работа с exe-модулем
- •Ошибки во время моделирования
- •Анализ результатов
- •Открытие результатов
- •Анализ результатов моделирования одиночного эксперимента
- •Стандартный отчет
- •План полного факторного эксперимента.
- •План дробного факторного эксперимента
- •Планы второго порядка
- •Ортогональный центральный композиционный план
- •Ротатабельный центральный композиционный план
- •Планы Коно
- •Планы Кифера
- •Использование пакета Statistica10 для статистической обработки экспериментальных данных
- •Вычисление основных статистических характеристик
- •Оценка нормальности распределения
- •Необходимость проверки нормальности распределения анализируемых данных
- •Проверка на нормальность распределения анализируемых данных
- •Тесты Колмогорова – Смирнова и Шапиро – Уилка
- •График нормальных вероятностей
- •Корреляционный анализ
- •Коэффициент корреляции Пирсона
- •Коэффициент корреляции Спирмена
- •Факторный анализ
- •Выбор числа факторов
- •Кластерный анализ
- •Стандартизация данных
- •Кластерный анализ
- •Регрессионный анализ
- •Оптимизация
- •Пример моделирования предметной области и анализ результатов
- •Модель процесса сборки пк
- •Разработка модели процесса сборки пк
- •Моделирование процесса сборки пк
- •Настройки модели
- •Корреляционный анализ
- •Регрессионный анализ
- •Задание
- •Задание на лабораторную работу №1
- •Задания на лабораторную работу №2
- •Задание на лабораторную работу №3
- •Варианты заданий
- •Варианты первых заданий
- •Варианты вторых заданий
- •Варианты третьих заданий
Операторы, имитирующие работу динамической категории объектов.
В любой модели должны обязательно присутствовать как минимум: один блок GENERATE, один блокTERMINATEс непустым операндом А и одна командаSTARTс непустым операндом А. БлокADVANCEне является обязательным, но это единственный блок для задержки транзактов на заданное время и поэтому рассмотрим условия его применения вместе с «обязательными» блоками.
Для генерации (ввода транзактов в модель) используется блок GENERATEA,B,C,D,E. Операнды А и В данного блока и блокаADVANCEA,Bзаполняются одинаково. В операнде А записывается среднее значение и если в операнде В записан символFN, то среднее значение умножается на значение заданной функции. Если запись в операнде В начинается не сFN, а с любого другого символа или цифры, то это указывает на равномерный закон, ограниченный диапазоном от А – В до А + В.
В блоке GENERATEв операнде С можно указать начальную задержку поступления первого транзакта. В операндеDможно указать количество генерируемых транзактов (по умолчанию¥). В операнде Е можно указать приоритет транзактов от 0 до 127 (по умолчанию принимается нулевой т.е. низший приоритет).
Для вывода транзактов из системы используется блок TERMINATEA, в операндеAкоторого указывается количество единиц, вычитаемых из счетчика командыSTARTA, которая используется для запуска модели и для завершения ее работы, когда счетчик командыSTARTА обнулится.
Время задержки в блоке ADVANCEили время между поступлением соседних транзактов в блокеGENERATEкроме указанных способов, можно задать с помощью специальных функций, которые в этом случае берутся в скобки. Например, равномерный закон задается записью в поле операндов соответствующей функции (UNIFORM(A,B,C)); экспоненциальный закон функцией (EXPONENTIAL(A,B,C)); нормальный закон функцией (NORMAL(A,B,C)). Специальный эрланговский закон можно ввести частным случаем гамма-распределения с помощью функции (GAMMA(A,B,C,D)).
В аргументе А данных законов записывается номер генератора равномерно распределенных случайных чисел в диапазоне от 0 до 1, который рекомендуется выбирать из диапазона от 1 до 7. Для равномерного закона в аргументе В записывается левый предел диапазона существования, а в аргументе С – правый предел. Для экспоненциального закона аргумент В принимается равным 0, а в аргументе С записывается среднее значение. Для нормального закона в операнде В записывается среднее значение, а в операнде С стандартное отклонение. Отметим, что для нормального закона стандартное отклонение должно быть не более 0,2 от среднего значения (при невыполнении этого условия возможно появление отрицательных чисел, что недопустимо для имитации временных переменных). Для специального эрланговского закона аргумент Bпринимается равным 0, в аргументCзаписывается среднее значение, а в аргументDзаписывается количество фаз.
Примеры использования описанных выше блоков приведены в таблице 1 .5.
Таблица 1.5 Примеры использования операторов, имитирующих работу динамической категории объектов
Пример использования оператора |
Комментарии |
GENERATE0.1 |
Через каждые 10 единиц времени генерируется в процессе моделирования транзакт с нулевым приоритетом |
GENERATE,,0,3 |
Генерация трех транзактов в нулевой момент времени |
GENERATE15,5 |
Через каждые 15±5 единиц времени генерируется в процессе моделирования транзакт с нулевым приоритетом |
GENERATE (EXPONENTIAL (1,0,5)) |
Генерация транзактов происходит по экспоненциальному закону со средним значением 5 |
TERMINATE1 |
Удаление транзакта из процесса моделирования. Счетчик завершения процесса моделирования, который устанавливается командой START, уменьшается на 1. |
TERMINATE |
Удаление транзакта из процесса моделирования. Счетчик завершения процесса моделирования, который устанавливается командой START, не изменяется. |