6.1 Постановка задачи
Требуется промоделировать работу склада материалов на предприятии. Вместимость склада составляет 10000 единиц материала. Периодичность поставок на склад равна пяти дням в размере 1000 единиц материала. Начальный запас материалов на складе составляет 1000 единиц. Ежедневный спрос материала изменяется в пределах от 35 до 50 единиц с равной вероятностью. Если текущий запас равен или больше 800, то никаких поставок материалов на склад в течение недели не производится. Продолжительность моделирования – 200 дней.
Требуется построить гистограмму изменения запаса на всём периоде моделирования.
6.2 Решение задачи на основе имитационного моделирования
Код программы в системе GPSS World:
Rmult 413 ; Установка начального числа для ДСЧ1
Zapas Storage 2000 ; Вместимость склада
Zapas Table S$Zapas,100,100,20 ; Таблица с ежедневным уровнем запаса
Material Variable Nach_ur - S$Zapas ; Размер заказа
Spros_m Variable RN1@15+35 ; Размер ежедневного спроса
Nach_ur Equ 1500 ; Начальный уровень запаса
Postavka Equ 1200 ; Размер поставки
* Второй сегмент – поставка материала на склад
GENERATE 5,,,,1 ; Поставка через пять дней, приоритет 1
TEST L S$Zapas,Postavka,Out ; Нужна ли поставка?
ASSIGN 2,V$Material ; Да. Размер заказа в параметр 2
ADVANCE 5 ; Интервал поставки
ENTER Zapas,P2 ; Увеличить запас на Р2
Out TERMINATE ; Удаляет требование из системы
* Третий сегмент – моделирование текущего запаса
GENERATE 1 ; Формирование заявки – день работы склада
ASSIGN 1,V$Spros_m ; Размер спроса в параметр 1 транзакта – дня работы
TABULATE Zapas ; Запись текущего запаса TEST GE S$Zapas,P1,Zapasout ; Можно ли заказать?
LEAVE Zapas,P1 ; Да. Уменьшить запас на Р1
TERMINATE 1 ; Минус заказ
Zapasout TERMINATE 1 ; Удалить транзакт
* Четвёртый сегмент модели
GENERATE ,,,1,10 ; Начальный запас
ENTER Zapas,Nach_ur ;Установка начального запаса
TERMINATE ; Завершение установки
******************************************************
Гистограмма изменения запаса на складе представлена на рисунке 6.
Р исунок 6 — Гистограмма изменения запаса на складе
6.3 Выводы по результатам моделирования
При заданном начальном значении продукта на складе в 1500 единиц его дополнительных поставок не потребуется в течение 40 дней. Затем число поставок изменяется по квадратичному закону в течение 120 дней.
7 Моделирование работы телефонной сети
7.1 Постановка задачи
Телефонная сеть имеет 50 абонентских линий связи, причём одновременно может быть задействовано не более 10 связей между абонентами. Каждый абонент может соединиться с остальными, если свободны его входная линия связи и входная линия вызываемого абонента. Из 50 линий для организации связи могут использоваться любые две свободных линии. Интервалы между вызовами и длительность разговора распределены по экспоненциальному закону. Первые 15 вызовов образуют переходной процесс в сети и эти данные не нужно учитывать. Необходимо промоделировать работу данной сети для 1000 вызовов и получить данные по всем её устройствам.
Также требуется построить гистограмму о связях между абонентами.
7.2 Решение задачи на основе имитационного моделирования
Код программы в системе GPSS World:
MyTable Table S$LNKS,1,1,12
GENERATE (Exponential(1,0,12)) ; Генерация вызовов с экспоненциальным распределением
TEST G V$FREELN,2,ABND ; Система заполнена? (Значение FREELN больше 2?)
ASN1 ASSIGN 1,V$LINE ; Нет, указать номер входной линии абонента, вызывающего другого
GATE LR *1,ASN1 ; Проверка занятости линии (выкл. логический ключ линии? - идти к ASN2)
ASN2 ASSIGN 2,V$LINE ; Выбор адресата связи
TEST NE P1,P2,ASN2 ; Повторить, если адресат совпадает со входной линией абонента
LOGIC S *1 ; Установить выходную линию абонента занятой
TRANSFER BOTH,,BLKD ; Дождаться связи
GETL ENTER LNKS ; Установить связь
GATE LR *2,BUSY ; Проверить занятость
LOGIC S *2 ; Установить адресата занятым
TABULATE MyTable
ADVANCE (Exponential(1,0,120)) ; Разговор
LOGIC R *1 ; Установить входную линию абонента свободным
LOGIC R *2 ; Установить адресата свободным
LEAVE LNKS ; Освободить связь
CKCH TEST G CH$WAIT,0,MTRM ; Есть ли ожидающие вызовы?
GATE LR 1,GETF ; Проверить свободна ли выходная линия
UNLINK WAIT,GETL,1,2,1,GETF ; Установить связь с первым ожидающим вызовом
MTRM TERMINATE 1; Удалить вызов
GETF UNLINK WAIT,GETL,1 ; Подключить первый ожидающий вызов
TRANSFER ,MTRM ; Идти к MTRM
ABND TERMINATE ; Отказаться от вызова
BLKD LINK WAIT,P1 ; Ожидать в порядке поступления вызовов
BUSY LOGIC R *1 ; Освободить линию
LEAVE LNKS ;Освободить связь
TRANSFER ,CKCH ; Идти к CKCH
LNKS STORAGE 10 ; Количество одновременных связей между абонентами
LINE Variable X$NRLINES#RN1/1000+1 ; Выбор линии
FREELN Variable X$NRLINES-2#S$LNKS-CH$WAIT ; Номер свободной линии
Initial X$NRLINES,50 ; Количество линий для связи
Start 15,NP ; 15 холостых проходов
Reset ; Начать сбор статистики
Start 1000 ; Моделирование 1000 вызовов
****************************************************************
-
общие:
а) время окончания моделирования – 12646.024;
б) число блоков в модели – 26;
в) число каналов обслуживания –0;
г) число накопителей –1.
-
результаты моделирования накопителя LNKS:
а) максимальная вместимость —10;
б) средняя вместимость —6.676;
в) число входов –1009;
г) коэффициент использования – 0.668.
-
результаты функционирования цепи пользователя WAIT:
а) число входов –105;
б) максимальное содержимое – 6;
в) среднее время пребывания транзакта в цепи –12.929;
г) коэффициент использования – 0.110;
д) число повторных попыток входа – 0.
Гистограмма связей между абонентами представлена на рисунке 7.
Рисунок 7 – Гистограмма связей между абонентами
7.3 Выводы по результатам моделирования
Моделируемая система телефонной сети сбалансирована, нагрузка между её элементами распределена равномерно, что повышает надёжность системы. Число связей между абонентами равномерно возрастает с течением времени работы системы.
8 Анализ результатов работы и выводы по достижению цели работы
В результате лабораторной работы были промоделированы реально существующие сложные системы производственных и непроизводственных процессов. Это потребовало применения всех возможностей системы GPSS World, в частности, возможность просмотра перемещения транзактов между блоками модели в процессе моделирования, что упрощает отладку модели, имеющей сложную структуру. Система GPSS World даёт в целом достоверные результаты моделирования. Исключение составляют лишь генераторы случайных чисел, из-за которых транзакты в большинстве случаев появляются лишь на одном временном интервале. Однако применение рассмотренного в работе распределения Эрланга даёт возможность исправить этот недостаток, однако требует ввода дополнительной функции в модель.