Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Программа модели. В программе модели те же сегменты (п





В программе модели те же сегменты (п. 6.4.1.6), только вместо сегмента задания времени моделирования и расчета результатов включен сегмент организации завершения моделирования и расчета результатов моделирования.

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

В блоке

Met10 SAVEVALUE NIzd+,1

подсчитывается количество подготовленных изделий. Если это количество равно N_, т. е. выполняется условие

TEST E X$NIzd,N_,Term5

фиксируется один прогон.

С целью сокращения машинного времени расчет результатов моделирования производится один раз по накопленной статистике за все прогоны. Программа, как и в п. 6.3.2.2, построена так, чтобы расчет результатов моделирования не требовал ее изменения при различном числе прогонов, задаваемом пользователем.

Ниже приведена программа обратной задачи.

; Модель функционирования предприятия. Обратная задача; Замена имен МКУ номерами

Kontr1 EQU 1; Замена имени МКУ Kontr1 номером

Kontr2 EQU 2; Замена имени МКУ Kontr2 номером

Kontr3 EQU 3; Замена имени МКУ Kontr3 номером

Kontr4 EQU 4; Замена имени МКУ Kontr4 номером

; Задание исходных данных

q11_ EQU 0.02; Доля забракованных блоков на постах n11

q12_ EQU 0.03; Доля забракованных блоков на постах n12

q13_ EQU 0.04; Доля забракованных блоков на постах n13

q14_ EQU 0.06; Доля забракованных блоков на постах n14

q2_ EQU 0.05; Доля брака изделий на пункте выходного контроля

q4_ EQU 0.03; Доля забракованных изделий приемкой

TipBl EQU 4; Максимальное количество типов блоков, изготавливаемых цехами

T1_ EQU 19; Средний интервал выпуска блоков типа 1

T01_ EQU 6; Стандартное отклонение времени выпуска блоков типа 1

T2_ EQU 11; Средний интервал выпуска блоков типа 2

T3_ EQU 15; Средний интервал выпуска блоков типа 3

T03_ EQU 8; Стандартное отклонение времени выпуска блоков типа 3

T4_ EQU 18; Средний интервал выпуска блоков типа 4

T11_ EQU 12; Среднее время контроля на постах n11

T011_ EQU 6; Стандартное отклонение времени контроля на постах n11

T12_ EQU 16; Среднее время контроля на постах n12 T13_ EQU 21;

Среднее время контроля на постах n13 T14_ EQU 17;

Среднее время контроля на постах n14 Tc_ EQU 22; Среднее время сборки изделия

T0c_ EQU 2; Стандартное отклонение времени сборки изделия

Tp_ EQU 15; Среднее время проверки изделия

Tpr_ EQU 18; Среднее время приема изделия

T0pr_ EQU 2; Стандартное отклонение времени приема изделия

N_ EQU 122; Количество изделий, которое необходимо подготовить

; Задание количества пунктов сборки и контроля

Sbor STORAGE 2; Количество пунктов сборки

Kontr1 STORAGE 3; Количество постов n11

Kontr2 STORAGE 2; Количество постов n12

Kontr3 STORAGE 2; Количество постов n13

Kontr4 STORAGE 2; Количество постов n14

Kontsb STORAGE 2; Количество пунктов сборки

; Сегмент имитации работы цеха 1 без постов контроля

GENERATE T1_,T01_; Источник блоков типа 1

ASSIGN 1,1; Код 1 в параметре 1 транзакта - тип 1 блока

ASSIGN 2,((T11_-T011_)+2#T011_#(RN27/1000))

; Розыгрыш времени контроля и запись в Р2

ASSIGN 9,q11_; Запись в Р9 доли брака блоков после постов контроля

TRANSFER,Met1

; Сегмент имитации работы цеха 2 без постов контроля

GENERATE (Exponential(32,0,T2_)); Источник блоков типа 2

ASSIGN 1,2; Код 2 в параметре 1 транзакта - тип 2 блока

ASSIGN 2,(Exponential(23,0,T12_)); Розыгрыш времени контроля и запись в Р2

ASSIGN 9,q12_; Запись в Р9 доли брака блоков после постов контроля

TRANSFER,Met1

; Сегмент имитации работы цеха 3 без постов контроля

GENERATE T3_,T03_; Источник блоков типа 3

ASSIGN 1,3; Код 3 в параметре 1 транзакта - тип 3 блока

ASSIGN 2,(Exponential(22,0,T13_)); Розыгрыш времени контроля и запись в Р2

ASSIGN 9,q13_; Запись в Р9 доли брака блоков после постов контроля

TRANSFER,Met1

; Сегмент имитации работы цеха 4 без постов контроля

GENERATE (Exponential(32,0,T4_)); Источник блоков типа 4

ASSIGN 1,4; Код 4 в параметре 1 транзакта - тип 4 блока

ASSIGN 2,(Exponential(22,0,T14_)); Розыгрыш времени контроля блока и запись в Р2

ASSIGN 9,q14_; Запись в Р9 доли брака блоков после постов контроля

; Сегмент имитации работы постов контроля блоков

Met1 QUEUE P1; Встать в очередь с номером в Р1

ENTER P1; Занять МКУ с номером в Р1


DEPART P1; Покинуть очередь с номером в Р1

ADVANCE P2; Имитация контроля качества блока с временем контроля в Р2

LEAVE P1; Освободить МКУ с номером в Р1

ASSIGN 10,0; Подготовка к циклу

Met21 ASSIGN 10+,1; Начало цикла по числу типов блоков

TEST E P10,P1,Met21; Какой тип блока подготовлен?

TRANSFER P9,,Met14; Отправить брак блоков к Met14

LINK P1,FIFO; Готовые блоки на склад с номером в Р1

; Сегмент имитации сборки изделий

GENERATE,,,1

Met3 ASSIGN 1,0; Подготовка к циклу

Met13 ASSIGN 1+,1; Начало цикла по числу типов блоков

TEST L P1,TipBl,Met4; Все ли типы блоков?

TEST NE CH*1,0; Есть на складе готовые блоки?

UNLINK P1,Term5,1; Да

TEST G P1,TipBl,Met13; Блоки всех типов есть? Если да,

Met4 UNLINK P1,Met5,1; то отправить блоки на сборку

TRANSFER,Met3; Вернуться для проверки наличия всех типов блоков для следующего изделия

Met5 QUEUE Sbor; Занять очередь на пункты сборки

ENTER Sb; Занять пункт сборки

DEPART Sbor; Освободить очередь на пункт сборки

ADVANCE (Normal(15,Tc_,T0c_)); Имитация сборки

LEAVE Sb; Освободить пункт сборки

; Cегмент имитации работы стендов выходного контроля

Met9 QUEUE KSbor; Занять очередь на стенд выходного контроля

ENTER KSb; Занять стенд выходного контроля

DEPART KSbor; Освободить очередь на стенд выходного контроля

ADVANCE (Exponential(11,0,Tp_)); Имитация работы стенда выходного контроля

LEAVE KSb; Освободить стенд выходного контроля

TRANSFER q2_,,Met5; Направить изделие в приемку, а брак -на замену на пункт сборки

; Сегмент имитации работы приемки

QUEUE Opr; Занять очередь на пункт приемки

SEIZE KPr; Занять пункт приемки

DEPART Opr;Освободить очередь пункта приемки

ADVANCE (Normal(11,Tpr_,T0pr_)); Имитация работы приемки

RELEASE KPr; Освободить пункт приемки

TRANSFER q4_,,Met9; Готовые изделия - на склад

; Сегмент организации завершения моделирования и расчета результатов моделирования

TEST L X$Prog,TG1,Met10; Если X$Prog< содержимого счетчика завершений, то

SAVEVALUE Prog,TG1; записать в X$Prog содержимое счетчика завершений - количество прогонов из TG1

SAVEVALUE NIzd,0 Met10 SAVEVALUE NIzd+,1;

Счет и сохранение в ячейке NIzd количества принятых приемкой изделий

TEST E X$NIzd,N_,Term5; Если принято N_изделий, зафиксировать один прогон

TEST E TG1,1,Met12; Если содержимое счетчика завершений равно 1, то расчет результатов моделирования

ASSIGN 1,0; Подготовка к циклу

Met15 ASSIGN 1+,1; Начало цикла по числу типов блоков

SAVEVALUE (10+P1),(INT(CH*1/X$Prog)); Количество готовых блоков всех типов, оставшихся на складах

SAVEVALUE P1,(INT(X*1/X$Prog)); Количество забракованных блоков всех типов

ASSIGN 11,(20+P1); Задание номера сохраняемой ячейки и запись его в Р11

TEST GE P1,TipBl,Met15; Все ли типы блоков для подготовки изделия имеются на складах цехов?

SAVEVALUE TIzd,((AC1/X$Prog)/60); Расчет и сохранение в ячейке TIzd времени подготовки N_изделий, час

SAVEVALUE STIzd,((X$TIzd/N_)#60); Расчет и сохранение в ячейке STIzd среднего времени подготовки одного изделия, мин

Met12 SAVEVALUE NIzd,0; Обнуление X$NIzd - подготовка к очередному прогону

TERMINATE 1

Met14 SAVEVALUE P1+,1; Количество брака блоков всех типов


TERMINATE Term5

TERMINATE; Вывод вспомогательных транзактов

Отладьте модель. Запустите модель, указав в команде START 1000 прогонов. По окончании моделирования в отчете, фрагмент которого приведен ниже,

SAVEVALUE RETRY VALUE

TIZD 0 39.438

STIZD 0 19.396

получите, что среднее время подготовки N_=122 изделий составляет 40 ч (39,438) при среднем времени подготовки одного изделия 20 мин (19,396). Как видно, эти результаты согласуются с исходными данными и результатами решения прямой задачи.

Результаты решения обратной задачи можно проверить. Найдите в самом начале отчета

START TIME END TIME BLOCKS FACILITIES STORAGES

0.000 2366280.440 74 1 6

Разделите END TIME (абсолютное модельное время АС1) на количество прогонов и минут в одном часе, т. е. на 60 000, получите?40 ч.

Теперь в программе модели укажите командой EQU количество изделий N_=244:

N_ EQU 244

Выполните моделирование, указав, как и в предыдущем случае, в команде START 1000 прогонов. Из отчета

SAVEVALUE RETRY VALUE
TIZD   78.863
STIZD   19.393

видно, что время подготовки, как и число изделий, увеличивается в два раза при неизменном времени изготовления одного изделия.

Сделайте выводы: влияет ли стохастичность, как и при решении прямой задачи, на результаты моделирования.







Date: 2015-07-17; view: 409; Нарушение авторских прав



mydocx.ru - 2015-2024 year. (0.013 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию