Оптимизация работы кладовой на промышленном предприятии методом имитационного моделирования

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

>

3. Создание имитационной модели

 

Для реализации модели была выбрана многоцелевая система имитационного моделирования GPSS World.

Модель на языке GPSS представляет собой последовательность блоков, с заданными параметрами, обозначенными метками для осуществления перехода, при необходимости изменить линейную структуру выполнения модели.

Текст модели разделен на логически обособленные сегменты.

. Описательный сегмент - содержит описание констант, используемых в модели.

 

ModelTimeEQU400EQU6EQU1EQU18

 

Константа ModelTime - используется для регламентирования длительности моделирования. Zaderjka - задает математическое ожидание времени, необходимого кладовщику на поиск детали. Zarplata - устанавливает уровень заработной платы выплачиваемой кладовщику за час работы. Poteri - сумма потерь при простое одного станка в течении часа.

. Сегмент, описывающий циклический процесс возникновения и устранения поломок станков:

 

GENERATE,,,100ADVANCE600,30NeRabotaet+,1BegPolomka,M1Q_KladovshikKladovshikQ_KladovshikZaderjka,2KladovshikProstoy+,((M1-P$BegPolomka)/60)NeRabotaet-,1,Rabota

 

Оператором GENERATE создается 100 транзактов, которые играют роль станков. При помощи оператора ADVANCE происходит задержка на время наработки станками на отказ. По окончании задержки будем считать транзакт вышедшим из строя станком - их количество фиксируется в сохраняемой величине NeRabotaet. Время выхода станка из строя фиксируем в его СЧА BegPolomka для последующего подсчета длительности простоя станка. Затем транзакт становиться в очередь Q_Kladovshik на получение деталей к кладовщику. Дождавшись освобождения кладовщика транзакт занимает одноканальное устройство Kladovshik и покидает очередь. После этого происходит задержка на время, необходимое для поиска детали. Затем одноканальное устройство Kladovshik освобождается. В хранимой величине Prostoy накапливается общее время простоя всех станков в часах, которое для каждого станка определяется как разность между моментом модельного времени устранения и возникновения неисправности, деленная на 60. На данном этапе транзакт считается нормально функционирующим станком и хранимая величина NeRabotaet уменьшается на 1, после чего происходит безусловный переход к метке Rabota - продолжается нормальное функционирование станка.

. Ограничение времени моделирования:

 

GENERATE(60#ModelTime)

SAVEVALUEZATRATI,(Zarplata#ModelTime)ZATRATI,(X$Prostoy#Poteri)

START

 

Время моделирования измеряется в минутах и ограничено 400 часами (значение задано в константе ModelTime). По истечении этого времени будет произведен учет затрат - выплата заработной платы кладовщику (стоимость часа работы, умноженная на количество часов моделирования), а также потери от простоя станков (потери от простоя одного станка в течении часа, умноженные на общее количество часов простоя станков).

При уничтожении данный транзакт увеличивает значение счетчика завершения на единицу. Команда START 1 позволяет запустить модель на исполнение сразу после трансляции со значением счетчика завершения, равным 1. Полный текст модели приводится в приложении 1.

 

. Моделирование системы

 

Перед трансляцией и запуском модели необходимо выполнить промежуточные действия для настройки отчета как показано на Рис. 2 (пункт меню Edit > Settings, вкладка Reports).

 

Рис 2. Окно SETTINGS вкладка Reports - настройка параметров отчета.

Затем подготовленная модель транслируется (Command > Create Simulation). В окне JOURNAL в виде сообщений отражается ход трансляции и исполнения модели.

 

06/15/09 07:16:15 Model Translation Begun.

/15/09 07:16:15 Ready.

/15/09 07:20:34 START 1

/15/09 07:20:34 Simulation in Progress.

/15/09 07:22:44 The Simulation has ended. Clock is 24000.000000.

/15/09 07:22:45 Reporting in Kladovaya.6.1 - REPORT Window.

 

После этого транслированная модель исполняется и автоматически выдается отчет. Текст отчета:

World Simulation Report - Kladovaya.20.1, May 24, 2010 09:26:59TIME END TIME BLOCKS FACILITIES STORAGES

.000 24000.000 16 1 0ENTRIES UTIL. AVE. TIME AVAIL. OWNER PEND INTER RETRY DELAY3771 0.943 6.002 1 51 0 0 0 1MAX CONT. ENTRY ENTRY(0) AVE.CONT. AVE.TIME AVE.(-0) RETRY_KLADOVSHIK 90 1 3772 218 3.487 22.186 23.547 0RETRY VALUE0 2.000

PROSTOY 0 1771.3600 31884.484

 

Для наглядного отображения динамики изменения простаивающих станков необходимо построить график. Для настройки графика нужно открыть окно Edit Plot Window (пункт меню Window > Simulation Window > Plot Window) и произвести настройки в соответствии с рис. 3.

 

Рис. 3. Окно настройки графика

 

В результате график имеет следующий вид:

 

Рис. 4. Доля станков простаивающих в каждый момент времени.

 

. Анализ результатов моделирования

 

В результате моделирования были получены следующие показатели функционирования системы:

загруженность кладовщика - 94,3%;

среднее время ожидания освобождения кладовщика в очереди - 22,186 мин;

суммарное время простоя станков за 400 часов работы системы - 1771,36 мин (29,5 часов);

суммарные затраты (зарплата кладовщика и убытки от простоя станков) - 31884.484.

Проведем серию экспериментов с моделью с целью проверки не случайности полученных результатов, варьируя значение показателя RMULT, результаты занесем в таблицу 1.

 

Таблица 1

Эксперименты с моделью при различных значениях RMULT

Экс. №RMULTЗагрузка кладовщика, %Среднее время ожидания в очереди к кладовщику, мин.Общее время простоя станков, ч.Затраты предприятия, $112349521,8175531602243219422176331743356789422,3178132066487659421,9175731643590129422,8181032590621099421171230821734569420,6168130260865439421,8175131534978909421,91757316341077779421,4172631070Среднее94,121,751749,331496,3

Стабильность показателей, выявленная в результате серии экспериментов с варьированием величины RMULT, говорит об их неслучайном характере.

 

6. Выработка предл