- •1. Постановка задачи
- •2. Обзор методов и средств решения задачи
- •3. Разработка концептуальной модели системы
- •4. Разработка структурной схемы модели системы
- •5. Разработка программы имитации работы системы
- •6. Анализ и оценка результатов моделирования
- •7.Оптимизация функционирования системы
- •8.Анализ результатов моделирования системы с оптимальными параметрами
- •9.Выводы по результатам исследования, рекомендации по использованию модели
- •10. Список использованных источников
- •Приложение а. Листинг.
- •Приложение b. Результаты моделирования
3. Разработка концептуальной модели системы
Концептуальная модель системы разрабатывается для облегчения дальнейшего создания программы имитации её работы, а также для определения целей моделирования.
Входные переменные:
TC –Диапазон поступления задач в систему (30±10 мин)
T1–Время выполнения задачи станком первого типа (30 мин; экспоненциальное распределение)
T2–Время выполнения задачи станком второго типа (20 мин; экспоненциальное распределение)
T3–Время выполнения задачи станком третьего типа (25 мин; нормальное распределение)
Выходные переменные:
Defect- ол-во забракованных деталей
Ki – коэффициент использования i-ого станка
P-прибыль цеха
M(назв.очереди)-максимальная длина очереди
A(назв.очереди)- среднее время пребывания в очереди
4. Разработка структурной схемы модели системы
Рис.1 Q-схема системы
Система включает в себя 5 станков 2-х типов, которые обрабатывают поступающие детали. После первичной обработки деталей, они поступают сначала на накопитель, а затем уже на вторичную обработку 2-мя дополнительными станками.
Рис.2 Блок-схема алгоритма работы системы
5. Разработка программы имитации работы системы
Реализация в среде GPSS
generate 30,10
split 2,tt
tt assign 1,2
queue sum_obr
;выбор минимальной очереди
t0 test l q$ss11,q$ss12,t1
test l q$ss11,q$ss13,t2
test l q$ss11,q$ss21,t3
test l q$ss11,q$ss22,next22
t5 transfer ,next11
t1 test l q$ss12,q$ss13,t2
test l q$ss12,q$ss21,t3
test l q$ss12,q$ss22,next22
t6 transfer ,next12
t2 test l q$ss13,q$ss21,t3
t4 test l q$ss13,q$ss22,next22
t7 transfer ,next13
t3 test l q$ss21,q$ss22,next22
t8 transfer ,next21
;первый станок первого типа
next11 queue ss11
seize stan11
depart ss11
advance(exponential(1,0,30))
savevalue Pp1,FR$stan11
release stan11
queue count11
transfer .06,to_nakop,reobr11
;второй станок первого типа
next12 queue ss12
seize stan12
depart ss12
advance(exponential(2,0,30))
savevalue Pp2,FR$stan12
release stan12
queue count12
transfer .06,to_nakop,reobr12
;третий станок первого типа
next13 queue ss13
seize stan13
depart ss13
advance(exponential(2,0,30))
savevalue Pp3,FR$stan13
release stan13
queue count13
transfer .06,to_nakop,reobr13
;первый станок второго типа
next21 queue ss21
seize stan21
depart ss21
advance(exponential(1,0,20))
savevalue Pp4,FR$stan21
release stan21
queue count21
transfer .1,to_nakop,reobr21
;второй станок второго типа
next22 queue ss22
seize stan22
depart ss22
advance(exponential(2,0,20))
savevalue Pp5,FR$stan22
release stan22
queue count22
transfer .1,to_nakop,reobr22
;дообработка брака
reobr11 loop 1,next11
queue brak
terminate 1
reobr12 loop 1,next12
queue brak
terminate 1
reobr13 loop 1,next13
queue brak
terminate 1
reobr21 loop 1,next21
queue brak
terminate 1
reobr22 loop 1,next22
queue brak
terminate 1
;накопитель и обработка на станках третьего типа
to_nakop queue nakop
test le q$nakop,3,met1
next31 seize stan31
depart nakop
advance(normal(1,25,2))
savevalue Pp6,FR$stan31
release stan31
queue count31
transfer ,end1
met1 transfer both next31,next32
next32 seize stan32
depart nakop
advance(normal(1,25,2))
savevalue Pp7,FR$stan32
release stan32
queue count32
transfer ,end1
;выходные данные
end1 depart sum_obr
queue obr
terminate 1
start 1000
