Разработка имитационной модели грузового терминала

Формулировка задания:

У компании ОАО «МОЛОКО» отгрузка заказов потребителям организована следующим образом. Грузовые автомобили начинают прибывать на погрузку на терминал в 5 часов 00 минут утра с экспоненциально распределенными интервалами времени между прибытиями со средним значением 3 мин. Причем под погрузку прибывают автомобили различного типа (грузоподъемности):

· 10% из них — к

рупнотоннажные автомобили (свыше 6.0 т);

· 20% — среднетоннажные автомобили (свыше 1,5 до 6,0 т):

· 70% — малотоннажные автомобили (до 1,5 т).

Каждый грузовой автомобиль проходит диспетчера и пост погрузки. Оформление товаросопроводительных документов у диспетчера происходит параллельно с погрузкой автомобиля и не требует дополнительных затрат времени. Время погрузки грузового автомобиля зависит от его типа (грузоподъемности) и равномерно распределено в интервале:

· для крупнотоннажных автомобилей (св. 6,0 т) — от 40 до 60 минут:

· для среднетоннажных автомобилей (св. 1.5 до 6.0 т) — от 30 до 40 мл нут;

· для малотоннажных автомобилей (до 1,5 т) — от 20 до 30 минут.

Имеются участки погрузки крупнотоннажных, среднетоннажных и малотоннажных автомобилей, оборудованные двумя, пятью и восемью параллельными постами соответственно. Каждый автомобиль, прибывающий на погрузку, направляется диспетчером на участок погрузки данного типа подвижного состава, где он либо занимает свободный пост, либо встает в единственную очередь с дисциплиной обслуживания FIFO. После погрузки автомобиль покидает терминал (рис. 5.23). Прохождение автомобилем КПП и движение по территории грузового терминала занимает незначительное время и при моделировании может не учитываться.

Требуется разработать имитационную модель грузового терминала. Выполнить пять прогонов имитационной модели для 120 минут (планируемое время погрузки автомобилей с 5 часов 00 минут до 7 часов 00 минут утр и вычислить среднее количество занятых постов погрузки, среднее время задержки автомобилей на терминале и средний коэффициент использования каждого участка погрузки. Достаточно ли для эффективной работ терминала выделение под погрузку крупнотоннажных, среднетоннажных и малотоннажных грузовиков двух, пяти и восьми параллельных постов соответственно?

Ход работы:

Для создания модели были использованы блоки

• Activity, Multiple, Executive, Exit (4), Catch, Generator, Set Attribute, Queue, FIFO и Throw библиотеки Discrete Event;

• Input Random Number библиотеки Generic;

• Buffer библиотеки Manufacturing;

• Plotter, Discrete Event библиотеки Plotter.

Рассмотрим подробнее предназначение о особенности каждого из них:

Первым блоком, создаваемым в рамках данной модели является блок Executive (рисунок 1). Этот блок - сердце каждой отдельной модели и должен быть помещен в левый верхний угол от всех других блоков в модели. Он позволяет процессу моделирования остановиться ко времени завершения. Коней процесса можно задать и другой величиной, например после определенного количества повторений цикла, но у нас нет причин менять настройки заданные по молчанию.

Рисунок 1 – Блок Executive

Вторым создаем блок Generator (рисунок 2). Этот блок генерирует транзакты для процесса моделирования в указанные интервалы времени.

Рисунок 2 - Блок Generator

Параметры распределения времени между создаваемыми транзактами задаются в диалоговом окне. Например: постоянное распределение, эмпирическое, показательное, нормальное и т.д. Входы 1, 2, и 3 позволяют Вам изменять параметры случайного распределения в процессе моделирования. Вход V позволяет управлять количеством производимых транзактов. Для конкретной модели зададим параметры блока следующим образом –

Рисунок 3.

Рисунок 3 – Задание параметров для блока Generator

Транзакты, созданные в модели попадают в блок Set Attribute (рисунок4).

Рисунок 4 - Блок Set Attribute

Устанавливает признаки пунктов, проходящих через блок. Возможно до семи названий различных атрибутов. Для каждого признака определяется количество вариантов. Название атрибута выбирается из списка, который появляется после создания разветвления в модели. Отладку этого блока проведем позже. Чтобы задать вероятность идентифицирования приходящих из блока Generator транзактов, как принадлежащих к каждому конкретному типу атрибута, создадим блок Input Random Number (рисунок 5).

Рисунок 5 – Блок Input Random Number

Блок производит случайные целые числа или действительные числа, основанные на выбранном распределении. Для нашей модели используем эмпирическое рапределение в котором вероятности заданы при помощи эмпирической таблицы. Настроим блок следующим образом – рисунок 6.

Рисунок 6 – Настройка блока Input Random Number

После прохождения блока Set Attribute транзакты попадают в блок Buffer (рисунок 7). По подобию очереди типа «first in – first out» моделирует накопление транзактов для того, чтобы буферизовать пункты, необходимые последующим операциями моделирования. Максимальная длина, определяемая количеством пунктов в очереди может быть установлена в диалоговом окне.

Рисунок 7 – Блок Buffer

Мгновенная буферная длина и время ожидания, время может быть проверено в L и соединителях W соответственно.

Когда буфер заполнен он перестает принимать транзакты, пока транзакты не будут удалены; или конец моделирования может быть определен как момент заполнения буфера. В диалоговом окне так же можем рассмотреть среднюю и максимальную длину очереди и время ожидания, число пунктов, которые вошли и вышли из буфера. Настройки, установленные в блоке по умолчанию удовлетворяют условиям нашей модели (рисунок 8).

Рисунок 8 – Настройка блока Buffer

Из буфера транзакты попадают в блок Throw (рисунок 9). Этот блок позволяет создать разветвление в схеме, чтобы разделить обработку транзактов разного типа. Этот блок "бросает" транзакты в блок Catch (рисунок 10), не используя соединители или линии связи. Связь между блоками Throw и Catch определяется лейбл и номер блока Catch в его диалоговом окне. Такие блоки можно использовать и не создавая разветвлений в цепи.

Рисунок 9 – Блок Throw

Рисунок 10 – Блок Catch

Чтобы «бросить» транзакт необходимо создать связи, основанные на значении атрибута. Для этого сначала настроим блоки принимающие транзакты (рисунок 11). Для каждого блока Catch присвоим имя (тип 1, тип 2, и тип 3).

Страница:  1  2 


Другие рефераты на тему «Экономико-математическое моделирование»:

Поиск рефератов

Последние рефераты раздела

Copyright © 2010-2024 - www.refsru.com - рефераты, курсовые и дипломные работы