poddergrukovodstkp (538827), страница 28
Текст из файла (страница 28)
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TRANSFER
MET3
работы мастеров 1 P1 P3 P1
Met24
Met25
Met26
Met27
CH*1,0,Met24 P1,Met3,1 ,Met7 4,(P1+1) CH*4,0,Met25 P4,Met27,1 ,Met7 4,(P1+1) CH*4,0,Met26 P4,Met27,1 ,Met7 4,(P1+1) CH*4,0,Met7 P4,Met27,1 ,Met7 1,1 ,Met3
Сегмент имитации
ENTER
ADVANCE
LEAVE
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TRANSFER
MET4
работы мастеров 2 P1 P3 P1
Met28
Met29
Met30
CH*1,0,Met28 P1,Met3,1 ,Met7 4,(P1+1) CH*4,0,Met29 P4,Met30,1 ,Met7 4,(P1+1) CH*4,0,Met7 P4,Met30,1 ,Met7 1,2 ,Met4
ENTER
ADVANCE
LEAVE
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
Сегмент имитации работы мастеров 3
MET5
PI
P3
PI
CH*1,0,Met31
Pl,Met5,1
,Met7
Met31
4,(Pl + D
CH*4,0,Met7
P4,Met32,1
,Met7
группы
Занять свободного мастера 1 группы
Имитация времени ремонта
Освободить свободного мастера 1 группы
Есть ли в очереди СС 1 типа? Если да,
тогда на ремонт СС 1 типа ; Отправить отремонтированное СС для учета
Есть ли в очереди СС 2 типа? Если да, тогда на ремонт СС 2 типа ; Отправить отремонтированное СС для учета
Есть ли в очереди СС 3 типа? Если да,
тогда на ремонт СС 3 типа
Отправить отремонтированное СС для учета
Есть ли в очереди СС 4 типа? Если да, тогда на ремонт СС 4 типа Отправить отремонтированное СС для учета Код 1 в Р1, чтобы занять мастеров 1 группы Направить СС в 1 группу мастеров
группы
Занять свободного мастера 2 группы
Имитация времени ремонта
Освободить свободного мастера 2 группы
Есть ли в очереди СС 2 типа? Если да,
тогда на ремонт СС 2 типа ; Отправить отремонтированное СС для учета
Есть ли в очереди СС 3 типа? Если да,
тогда на ремонт СС 3 типа
Отправить отремонтированное СС для учета
Есть ли в очереди СС 4 типа? Если да, тогда на ремонт СС 4 типа Отправить отремонтированное СС для учета Код 2 в Р1, чтобы занять мастеров 2 группы Направить СС во 2 группу мастеров
группы
Занять свободного мастера 3 группы
Имитация времени ремонта
Освободить свободного мастера 3 группы
Есть ли в очереди СС 3 типа? Если да,
тогда на ремонт СС 3 типа ; Отправить отремонтированное СС для учета
Есть ли в очереди СС 4 типа? Если да,
тогда на ремонт СС 4 типа
111
Отправить отремонтированное СС для учета
Met32 ASSIGN 1,3 ; Код 3 в Р1, чтобы занять мастеров 3 группы
TRANSFER ,Met5 ; Направить СС в 3 группу мастеров
; Сегмент имитации работы мастеров 4 группы
MET6 ENTER P1 ; Занять свободного мастера 4 группы
ADVANCE P3 ; Имитация времени ремонта
LEAVE P1 ; Освободить свободного мастера 4 группы
UNLINK P1,Met6,1 ; Отправить на ремонт в 4 группу СС 4 типа
7 | TRANSFER | ,(Met7+P5) | |
8 | TERMINATE | ; 1 типа | |
9 | TERMINATE | ; 2 типа | |
10 | TERMINATE | ; 3 типа | |
11 | TERMINATE | ; 4 типа | |
20 | TERMINATE | ; Не доп |
; Не допущенные к ремонту СС
; Сегмент счета отремонтированных СС
задания времени моделирования и расчета результатов моделирования
GENERATE VrMod ; Время моделирования
TEST L X$Prog,TG1,Met41 ; Если X$Prog SAVEVALUE Prog,TG1 ; запомнить в X$Prog количество прогонов
; Сегмент
Met41
Met42
TEST E TG1,1,Met42 ; Если TG1=1, SAVEVALUE KolSS1,(INT(N$Met8/X$Prog)) ; SAVEVALUE KolSS2,(INT(N$Met9/X$Prog)) ; SAVEVALUE KolSS3,(INT(N$Met10/X$Prog)); SAVEVALUE KolSS4,(INT(N$Met11/X$Prog)); SAVEVALUE VerSS1,(N$Met8/N$Met01) SAVEVALUE VerSS2,(N$Met9/N$Met02) SAVEVALUE VerSS3,(N$Met10/N$Met03) SAVEVALUE VerSS4,(N$Met11/N$Met04) SAVEVALUE VerSS,(N$Met7/N$Met0) TERMINATE 1
;
то расчет результатов моделирования Количество отремонтированных СС 1 типа Количество отремонтированных СС 2 типа Количество отремонтированных СС 3 типа Количество отремонтированных СС 4 типа ; Вероятность ремонта СС 1 типа ; Вероятность ремонта СС 2 типа ; Вероятность ремонта СС 3 типа ; Вероятность ремонта СС 4 типа Вероятность ремонта СС всех типов
Вариант 27 Постановка задачи
В ремонтное подразделение средств связи (СС) поступают неисправные СС n типов с вероятностями р1, р2, …, рn соответственно. Интервалы времени Тп между двумя очередными поступлениями случайные. Каждое СС любого типа может требовать одного из трех видов ремонта с вероятностями р11, р21 или р31 соответственно.
В ремонтном подразделении имеются n1, n2, …, nn мастеров для ремонта СС каждого типа соответственно. Мастера n1 ремонтируют СС первого типа. Если их нет и мастера n2, …, nn групп заняты, они ремонтирует СС этих типов. При этом поступающие СС первого типа ожидают их освобождения. Мастера n2 ремонтируют СС второго типа. Если их нет и мастера n3, n4, …, nn групп заняты, они ремонтирует СС этих типов. При этом поступающие СС второго типа ожидают их освобождения. Аналогичные обязанности и у мастеров остальных групп. Только мастера nn ремонтируют СС одного n-го типа.
Время ремонта n-го типа СС случайное, не зависит от мастера, а зависит только от вида ремонта: Т11, Т12, Т13 – для СС первого типа, Т21, Т22, Т23 – для СС второго типа, …, Tn1, Tn2, …, Tnn – для СС n-го типа.
Прием и распределение неисправных СС между мастерами осуществляется диспетчером. Время, затрачиваемое диспетчером на одно СС, Т1, случайное. Диспетчером не допускается к ремонту q % СС всех типов.
112
Исходные данные
Ехю(Тп) ~~ | Ехр (30); | ||||
п = 4; | |||||
ю 1 ~~ 0 2 | р2 = 0.3, рЗ = 0.25, р | 4 = 0.25; | |||
ю 11 ~~ 0 | , р2 = 0.25, рЗ = 0.25; | ||||
nl = 2; | Ехр (Т11) = Ехр(30); | Ехр (Т12) | = Ехр (40); | Ехр(Т13) | = Ехр (50); |
п2 = 1 | Ехр (Т21) = Ехр (20); | Ехр (Т22) | = Ехр(30); | Ехр(Т23) | = Ехр (40); |
пЗ = 1 | Ехр(Т31) = Ехр (15); | Ехр (Т32) | = Ехр (25); | Ехр(ТЗЗ) | = Ехр (35); |
п4 = 1 | Ехр(Т41) = Ехр(25); | Ехр (Т42) | = Ехр(35); | Ехр(Т43) | = Ехр (45); |
Nor(T1, | Tol) = Nor(15, 2); | ||||
q = 2 % | . |
Значения p1, p2, p3, p4 исследователь изменяет от исходных самостоятельно.
Результаты моделирования необходимо получить с точностью ε = 0,1 и доверительной вероятностью α = 0,99.
Задание на исследование
Разработать имитационную модель функционирования ремонтного подразделения. Исследовать зависимость времени и вероятностей выполнения ремонта 35 СС первого и второго типов от интервала Тп поступления их в ремонт и вероятностей p1, p2, p3, p4.
Сделать выводы о загруженности каждой группы мастеров и необходимых мерах по повышению эффективности работы ремонтного подразделения.
Программа модели
Reml | EQU | 1 |
Rem2 | EQU | 2 |
Rem3 | EQU | 3 |
Rem4 | EQU | 4 |
; Вариант 27
; Модель ремонтного подразделения связи
; Замена имен МКУ номерами
; Задание МКУ-групп мастеров Dis STORAGE 2 Rem1 STORAGE 2 Rem2 STORAGE 1 Rem3 STORAGE 1 Rem4 STORAGE 1
данных
,4,3 ; Задание матрицы времени ремонта
4 ; Количество типов СС
35 ; Количество СС 1 и 2 типов, которые нужно отремонтировать
15 ; Среднее время работы диспетчера с поступившим СС
2 ; Среднеквадратическое отклонение времени работы диспетчера с по-
Средний интервал времени поступления одного типа СС
; Задание исходных TRem MATRIX n_ EQU n1_ EQU T1 EQU To1 EQU ступившим СС
Tp | EQU |
q_ | EQU |
INITIAL | |
INITIAL | |
INITIAL | |
INITIAL | |
INITIAL | |
INITIAL |
30 ; 0.02
MX$TRem(l,1),30 MX$TRem(l,2),40 MX$TRem(l,3),50 MX$TRem(2,1),20 MX$TRem(2,2),30 MX$TRem(2,3),40
; 1 группа мастеров ; 2 группа мастеров ; 3 группа мастеров ; 4 группа мастеров
; Количество диспетчеров
Количество мастеров 1 группы Количество мастеров 2 группы
; Количество мастеров 3 группы Количество мастеров 4 группы
Доля не допущенных диспетчером к ремонту СС Среднее время 1 вида ремонта СС 1 типа
Среднее время Среднее время
Среднее время 1 вида ремонта СС 2 типа Среднее время 2 вида ремонта СС 2 типа Среднее время 3 вида ремонта СС 2 типа
-
вида ремонта СС 1 типа
-
вида ремонта СС 1 типа
113
INITIAL INITIAL INITIAL INITIAL INITIAL INITIAL FUNCTION
Среднее время Среднее время Среднее время Среднее время Среднее время Среднее время
MX$TRem(3,1),15 MX$TRem(3,2),25 MX$TRem(3,3),35 MX$TRem(4,1),25 MX$TRem(4,2),35 MX$TRem(4,3),45 RN27,D4
1 | вида | ремонта | СС | 3 | типа |
2 | вида | ремонта | СС | 3 | типа |
3 | вида | ремонта | СС | 3 | типа |
1 | вида | ремонта | СС | 4 | типа |
2 | вида | ремонта | СС | 4 | типа |
3 | вида | ремонта | СС | 4 | типа |
TipSS
.2,1/.5,2/.75,3/1,4 VidRem FUNCTION .5,1/.75,2/1,3
Функция распределения поступающих типов СС RN72,D3 ; Функция распределения видов ремонтов поступающих СС
; Сегмент имитации поступления СС различных типов, требующих различных видов ремонта
Источники СС
ASSIGN ASSIGN ASSIGN ASSIGN
Код типа СС в Р1
Код вида ремонта СС в Р2
Подготовка
Код типа СС также в Р5
GENERATE (Exponential(67,0,(Tp_/n_)))
l,FN$TipSS 2,FN$VidRem 4,0 5,PI
TRANSFER TRANSFER TRANSFER TRANSFER TRANSFER
MetO
MetOl
Met02
Met03
Met04
,(Met0+P5)
,Metl
,Metl
,Metl
,Metl
Счет поступивших в ремонт СС
Сегмент имитации
работы диспетчеров OCH DIS OCH
(Normal(35,T1,To1) DIS
q_,,MET20 3,(Exponential(317 P1,1,MET21 P1,Met3 P1,FIFO P1,2,MET22 P1,Met4 P1,FIFO P1,3,MET23 P1,Met5 P1,FIFO P1,4 P1,Met6 P1,FIFO
-
типа
-
типа
-
типа
-
типа
QUEUE
ENTER
DEPART
ADVANCE
LEAVE
TRANSFER
ASSIGN
TEST E
GATE SF
LINK
TEST E
GATE SF
LINK
TEST E
GATE SF
LINK
TEST E
GATE SF
LINK
Metl
Занять очередь к диспетчеру
Занять свободного диспетчера
Покинуть очередь к диспетчеру ) ; Имитация работы диспетчера со СС
Освободить диспетчера
Не допустить q СС к ремонту ,0,MX$TRem(P1,P2))) ; Время ремонта-в P3
Мастерам 1 группы
Мастера 1 группы заняты? Если да,
то тогда ожидать
Met21
Мастерам 2 группы
Мастера 2 группы заняты? Если да,
то тогда ожидать
Met22
Мастерам 3 группы
Мастера 3 группы заняты? Если да,
то тогда ожидать
Met23
Мастерам 4 группы
Мастера 4 группы заняты? Если да,
Сегмент имитации
работы мастеров 1 P1 P3 P1
CH*1,0,Met24 P1,Met3,1 ,Met7 4,(P1+1) CH*4,0,Met25 P4,Met27,1 ,Met7 4,(P1+1) CH*4,0,Met26 P4,Met27,1 ,Met7 4,(P1+1) CH*4,0,Met7 P4,Met27,1 ,Met7
группы
Занять свободного мастера 1 группы
Имитация времени ремонта
Освободить свободного мастера 1 группы
Есть ли в очереди СС 1 типа? Если да,
тогда на ремонт СС 1 типа ; Отправить отремонтированное СС для учета
Есть ли в очереди СС 2 типа? Если да,
тогда на ремонт СС 2 типа
Отправить отремонтированное СС для учета
Есть ли в очереди СС 3 типа? Если да, тогда на ремонт СС 3 типа ; Отправить отремонтированное СС для учета
Есть ли в очереди СС 4 типа? Если да,
тогда на ремонт СС 4 типа
Отправить отремонтированное СС для учета
ENTER
ADVANCE
LEAVE
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
MET3
Met24
Met25
Met26
114
то тогда ожидать
7 | TRANSFER | ,(Met7+P5) | |
8 | TRANSFER | ,Metl7 | ; 1 типа |
9 | TRANSFER | ,Metl7 | ; 2 типа |
10 | TRANSFER | ,Metl7 | ; 3 типа |
11 | TRANSFER | ,Metl7 | ; 4 типа |
20 | TERMINATE | ; Не доп |
; Сегмент имитации работы мастеров 4 группы
MET6 ENTER P1 ; Занять свободного мастера 4 группы
ADVANCE P3 ; Имитация времени ремонта
LEAVE P1 ; Освободить свободного мастера 4 группы
UNLINK P1,Met6,1 ; Отправить на ремонт в 4 группу СС 4 типа
Met27 ASSIGN 1,1
TRANSFER ,Met3
Сегмент имитации
ENTER
ADVANCE
LEAVE
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TRANSFER
MET4
работы мастеров 2 P1 P3 P1
Met28
Met29
Met30
CH*1,0,Met28 P1,Met3,1 ,Met7 4,(P1+1) CH*4,0,Met29 P4,Met30,1 ,Met7 4,(P1+1) CH*4,0,Met7 P4,Met30,1 ,Met7 1,2 ,Met4
ENTER
ADVANCE
LEAVE
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TRANSFER
Сегмент имитации работы мастеров 3
MET5
PI
P3
PI
CH*1,0,Met31
Pl,Met5,1
,Met7
Met31
4,(Pl + D
CH*4,0,Met7
P4,Met32,1
,Met7
Met32
1,3
; Сегмент счета отремонтированных СС
,Met5
Код 1 в Р1, чтобы занять мастеров 1 группы Направить СС в 1 группу мастеров
группы
Занять свободного мастера 2 группы
Имитация времени ремонта
Освободить свободного мастера 2 группы
Есть ли в очереди СС 2 типа? Если да,
тогда на ремонт СС 2 типа ; Отправить отремонтированное СС для учета
Есть ли в очереди СС 3 типа? Если да,
тогда на ремонт СС 3 типа
Отправить отремонтированное СС для учета
Есть ли в очереди СС 4 типа? Если да, тогда на ремонт СС 4 типа Отправить отремонтированное СС для учета Код 2 в Р1, чтобы занять мастеров 2 группы Направить СС во 2 группу мастеров
группы
Занять свободного мастера 3 группы
Имитация времени ремонта
Освободить свободного мастера 3 группы
Есть ли в очереди СС 3 типа? Если да,
тогда на ремонт СС 3 типа
Отправить отремонтированное СС для учета
Не допущенные к ремонту СС
Есть ли в очереди СС 4 типа? Если да, тогда на ремонт СС 4 типа Отправить отремонтированное СС для учета Код 3 в Р1, чтобы занять мастеров 3 группы Направить СС в 3 группу мастеров
Cегмент организации завершения моделирования и расчета результатов моделирования
Met17
Met13
прогон расчет типа
TEST L X$Prog,TGl,Metl3
SAVEVALUE Prog,TGI
SAVEVALUE NDet,0
TEST LE P5,2,Metl5
SAVEVALUE NDet+,1
TEST E X$NDet,nl ,Metl5
Если X$Prog< содержимого счетчика завершений, то записать в X$Prog содержимое счетчика завершений Обнуление счетчика отремонтированных СС Если отремонтированное СС 1 или 2 типа, то счет количества отремонтированных СС 1 и 2 типов Если отремонтировано n1_ СС, зафиксировать один
TEST E TG1,1,Met12 результатов моделирования
SAVEVALUE KolSS1,(INT(N$Met8/X$Prog)+1)
; Если содержимое счетчика завершений равно 1, то
; Количество отремонтированных СС 1
SAVEVALUE KolSS2,(INT(N$Met9/X$Prog)); Количество отремонтированных СС 2 типа SAVEVALUE KolSS3,(INT(N$Met10/X$Prog); Количество отремонтированных СС 3 типа
115
па
Metl2 Metl5
SAVEVALUE KolSS4,(INT(N$Met11/X$Prog)) ; Количество отремонтированных СС 4 ти-
SAVEVALUE VerSSl,(N$Met8/N$Met01) SAVEVALUE VerSS2,(N$Met9/N$Met02) SAVEVALUE VerSS3,(N$MetlO/N$Met03) SAVEVALUE VerSS4,(N$Metll/N$Met04) SAVEVALUE VerSS,(N$Met7/N$MetO) SAVEVALUE TRemSS,(ACl/N$Met7) SAVEVALUE STime,(X$TRemSS#nl_) ; SAVEVALUE NDet,0 TERMINATE 1 TERMINATE
; Вероятность ремонта СС 1 типа ; Вероятность ремонта СС 2 типа ; Вероятность ремонта СС 3 типа ; Вероятность ремонта СС 4 типа ; Вероятность ремонта СС всех типов ; Среднее время ремонта одного СС, мин Среднее время ремонта n1_ СС 1 и 2 типов, мин ; Обнуление счетчика отремонтированных СС
Вариант 28 Постановка задачи
В ремонтное подразделение средств связи (СС) поступают неисправные СС n типов с вероятностями р1, р2, …, рn соответственно. Интервалы времени Тп между двумя очередными поступлениями случайные. Каждое СС любого типа может требовать одного из трех видов ремонта с вероятностями р11, р21 или р31 соответственно.
В ремонтном подразделении имеются n1, n2, …, nn мастеров для ремонта СС каждого типа соответственно. Мастера n1 ремонтируют СС первого типа. Если их нет и мастера n2, …, nn групп заняты, они ремонтирует СС этих типов. При этом поступающие СС первого типа ожидают их освобождения. Мастера n2 ремонтируют СС второго типа. Если их нет и мастера n3, n4, …, nn групп заняты, они ремонтирует СС этих типов. При этом поступающие СС второго типа ожидают их освобождения. Аналогичные обязанности и у мастеров остальных групп. Только мастера nn ремонтируют СС одного n-го типа.
Время ремонта n-го типа СС случайное, не зависит от мастера, а зависит только от вида ремонта: Т11, Т12, Т13 – для СС первого типа, Т21, Т22, Т23 – для СС второго типа, …, Tn1, Tn2, …, Tnn – для СС n-го типа.
Прием и распределение неисправных СС между мастерами осуществляется диспетчером. Время, затрачиваемое диспетчером на одно СС, Т1, случайное. Диспетчером не допускается к ремонту q % СС всех типов.
Исходные данные
Ехю f Тп) ~~ | Exp(30); | ||||
n = 4; | |||||
ю 1 ~~ 0 2 | p2 = 0.3, p3 = 0.25, p | 4 = 0.25; | |||
ю 11 ~~ 0 | , p2 = 0.25, p3 = 0.25; | ||||
nl = 2; | Exp(Til) = Exp(30); | Exp(T12) | = Exp(40); | Exp(T13) | = Exp(50); |
n2 = 2 | Exp(T21) = Exp(20); | Exp(T22) | = Exp(30); | Exp(T23) | = Exp(40); |
n3 = 1 | Exp(T31) = Exp(15); | Exp(T32) | = Exp(25); | Exp(T33) | = Exp(35); |
n4 = 2 | Exp(T41) = Exp(25); | Exp(T42) | = Exp(35); | Exp(T43) | = Exp(45); |
Nor(Tl, | Tol) = Nor(15, 2); | ||||
q = 2 % | . |
но
Значения p1, p2, p3, p4 исследователь изменяет от исходных самостоятель-
Результаты моделирования необходимо получить с точностью ε = 0,1 и доверительной вероятностью α = 0,99.
116
Задание на исследование
Разработать имитационную модель функционирования ремонтного подразделения. Исследовать зависимость времени и вероятностей выполнения ремонта 50 СС первого, второго и четвертого типов от интервала Тп поступления их в ремонт и вероятностей p1, p2, p3, p4.
Сделать выводы о загруженности каждой группы мастеров и необходимых мерах по повышению эффективности работы ремонтного подразделения.
Программа модели
; Вариант 28
связи
; Модель ремонтного подразделения
; Замена имен МКУ номерами
-
группа мастеров
-
группа мастеров
-
группа мастеров
-
группа мастеров
Rem1 EQU 1
Rem2 EQU 2
Rem3 EQU 3
; Задание МКУ-групп мастеров Dis STORAGE 2 Rem1 STORAGE 2 Rem2 STORAGE 1 Rem3 STORAGE 1 Rem4 STORAGE 1
; Количество диспетчеров ; Количество мастеров 1 группы ; Количество мастеров 2 группы ; Количество мастеров 3 группы ; Количество мастеров 4 группы
Rem4 EQU 4
; Задание исходных TRem MATRIX n_ EQU n1_ EQU T1 EQU To1 EQU ступившим СС Tp_ q_
данных
,4,3 ; Задание матрицы времени ремонта
4 ; Количество типов СС
50 ; Количество СС 1 и 2 типов, которые нужно отремонтировать
15 ; Среднее время работы диспетчера с поступившим СС
EQU | 30 ; Средний | интер |
EQU | 0.02 | ; |
INITIAL | MX$TRem(l,1) | ,30 ; |
INITIAL | MX$TRem(l,2) | ,40 ; |
INITIAL | MX$TRem(l,3) | ,50 ; |
INITIAL | MX$TRem(2,1) | ,20 ; |
INITIAL | MX$TRem(2,2) | ,30 ; |
INITIAL | MX$TRem(2,3) | ,40 ; |
INITIAL | MX$TRem(3,1) | ,15 ; |
INITIAL | MX$TRem(3,2) | ,25 ; |
INITIAL | MX$TRem(3,3) | ,35 ; |
INITIAL | MX$TRem(4,1) | ,25 ; |
INITIAL | MX$TRem(4,2) | ,35 ; |
INITIAL | MX$TRem(4,3) | ,45 ; |
FUNCTION | RN27,D4 | ; |
2 ; Среднеквадратическое отклонение времени работы диспетчера с по-интервал времени поступления одного типа СС
TipSS
.2,1/.5,2/.75,3/1,4 VidRem FUNCTION .5,1/.75,2/1,3
; Доля не допущенных диспетчером к ремонту СС ; Среднее время 1 вида ремонта СС 1 типа ; Среднее время 2 вида ремонта СС 1 типа ; Среднее время 3 вида ремонта СС 1 типа ; Среднее время 1 вида ремонта СС 2 типа ; Среднее время 2 вида ремонта СС 2 типа ; Среднее время 3 вида ремонта СС 2 типа ; Среднее время 1 вида ремонта СС 3 типа ; Среднее время 2 вида ремонта СС 3 типа ; Среднее время 3 вида ремонта СС 3 типа ; Среднее время 1 вида ремонта СС 4 типа ; Среднее время 2 вида ремонта СС 4 типа ; Среднее время 3 вида ремонта СС 4 типа ; Функция распределения поступающих типов СС
RN72,D3 ; Функция распределения видов ремонтов поступающих СС
; Сегмент имитации поступления СС различных типов, требующих различных видов ремонта
GENERATE (Exponential(67,0,(Tp_/n_))) ; Источники СС
ASSIGN 1,FN$TipSS ; Код типа СС в Р1
ASSIGN 2,FN$VidRem ; Код вида ремонта СС в Р2
ASSIGN 4,0 ; Подготовка
; Счет поступивших в ремонт СС Met0 TRANSFER ,(Met0+P5)
ASSIGN 5,P1 ; Код типа СС также в Р5
117
работы диспетчеров OCH DIS OCH
(Normal(35,T1,To1) DIS
q_,,MET20 3,(Exponential(317 P1,1,MET21 P1,Met3 P1,FIFO P1,2,MET22 P1,Met4 P1,FIFO P1,3,MET23 P1,Met5 P1,FIFO P1,4 P1,Met6 P1,FIFO
Met01 TRANSFER ,Met1
Met02 TRANSFER ,Met1
Met03 TRANSFER ,Met1
Met04 TRANSFER ,Met1
QUEUE
ENTER
DEPART
ADVANCE
LEAVE
TRANSFER
ASSIGN
TEST E
GATE SF
LINK
TEST E
GATE SF
LINK
TEST E
GATE SF
LINK
TEST E
GATE SF
LINK
Сегмент имитации
Metl
Met21
Met22
Met23
Сегмент имитации
ENTER
ADVANCE
LEAVE
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TRANSFER
MET3
работы мастеров 1 P1 P3 P1
Met24
Met25
Met26
Met27
CH*1,0,Met24 P1,Met3,1 ,Met7 4,(P1+1) CH*4,0,Met25 P4,Met27,1 ,Met7 4,(P1+1) CH*4,0,Met26 P4,Met27,1 ,Met7 4,(P1+1) CH*4,0,Met7 P4,Met27,1 ,Met7 1,1 ,Met3
Сегмент имитации
ENTER
ADVANCE
LEAVE
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TRANSFER
MET4
работы мастеров 2 P1 P3 P1
Met28
Met29
Met30
CH*1,0,Met28 P1,Met3,1 ,Met7 4,(P1+1) CH*4,0,Met29 P4,Met30,1 ,Met7 4,(P1+1) CH*4,0,Met7 P4,Met30,1 ,Met7 1,2 ,Met4
-
типа
-
типа
-
типа
-
типа
Занять очередь к диспетчеру
Занять свободного диспетчера
Покинуть очередь к диспетчеру ) ; Имитация работы диспетчера со СС
Освободить диспетчера
Не допустить q СС к ремонту ,0,MX$TRem(P1,P2))) ; Время ремонта-в P3
Мастерам 1 группы
Мастера 1 группы заняты? Если да,
то тогда ожидать
Мастерам 2 группы
Мастера 2 группы заняты? Если да,
то тогда ожидать
Мастерам 3 группы
Мастера 3 группы заняты? Если да,
то тогда ожидать
Мастерам 4 группы
Мастера 4 группы заняты? Если да,
группы
Занять свободного мастера 1 группы
Имитация времени ремонта
Освободить свободного мастера 1 группы
Есть ли в очереди СС 1 типа? Если да,
тогда на ремонт СС 1 типа ; Отправить отремонтированное СС для учета
Есть ли в очереди СС 2 типа? Если да,
тогда на ремонт СС 2 типа
Отправить отремонтированное СС для учета
Есть ли в очереди СС 3 типа? Если да, тогда на ремонт СС 3 типа ; Отправить отремонтированное СС для учета
Есть ли в очереди СС 4 типа? Если да, тогда на ремонт СС 4 типа Отправить отремонтированное СС для учета Код 1 в Р1, чтобы занять мастеров 1 группы Направить СС в 1 группу мастеров
то тогда ожидать
группы
Занять свободного мастера 2 группы
Имитация времени ремонта
Освободить свободного мастера 2 группы
Есть ли в очереди СС 2 типа? Если да,
тогда на ремонт СС 2 типа ; Отправить отремонтированное СС для учета
Есть ли в очереди СС 3 типа? Если да,
тогда на ремонт СС 3 типа
Отправить отремонтированное СС для учета
Есть ли в очереди СС 4 типа? Если да, тогда на ремонт СС 4 типа Отправить отремонтированное СС для учета Код 2 в Р1, чтобы занять мастеров 2 группы Направить СС во 2 группу мастеров
118
7 | TRANSFER | ,(Met7+P5) | |
8 | TRANSFER | ,Metl7 | ; 1 типа |
9 | TRANSFER | ,Metl7 | ; 2 типа |
10 | TRANSFER | ,Metl7 | ; 3 типа |
11 | TRANSFER | ,Metl7 | ; 4 типа |
20 | TERMINATE | ; Не доп |
ENTER
ADVANCE
LEAVE
TEST NE
UNLINK
TRANSFER
ASSIGN
TEST NE
UNLINK
TRANSFER
ASSIGN
TRANSFER
; Сегмент имитации работы мастеров 4 группы
MET6 ENTER P1 ; Занять свободного мастера 4 группы
ADVANCE P3 ; Имитация времени ремонта
LEAVE P1 ; Освободить свободного мастера 4 группы
UNLINK P1,Met6,1 ; Отправить на ремонт в 4 группу СС 4 типа
Сегмент имитации работы мастеров 3
MET5
PI
P3
PI
CH*1,0,Met31
Pl,Met5,1
,Met7
Met31
4,(Pl + D
CH*4,0,Met7
P4,Met32,1
,Met7
Met32
1,3
Сегмент счета отремонтированных СС
,Met5
группы
Занять свободного мастера 3 группы
Имитация времени ремонта
Освободить свободного мастера 3 группы
Есть ли в очереди СС 3 типа? Если да,
тогда на ремонт СС 3 типа ; Отправить отремонтированное СС для учета
; Не допущенные к ремонту СС
Есть ли в очереди СС 4 типа? Если да, тогда на ремонт СС 4 типа Отправить отремонтированное СС для учета Код 3 в Р1, чтобы занять мастеров 3 группы Направить СС в 3 группу мастеров
Cегмент организации завершения моделирования и расчета результатов моделирования
Met17
Met13
Met16
прогон
расчет
типа
TEST L X$Prog,TG1,Met13 SAVEVALUE Prog,TG1 SAVEVALUE NDet,0 TEST NE P5,4,Met16 TEST LE P5,2,Met15
Если X$Prog< содержимого счетчика завершений, то записать в X$Prog содержимое счетчика завершений Обнуление счетчика отремонтированных СС Если отремонтированное СС 4 типа, или отремонтированное СС 1 или 2 типа, то SAVEVALUE NDet+,1 ; счет количества отремонтированных СС 1, 2 и 4 типов TEST E X$NDet,n1_,Met15 ; Если отремонтировано n1_ СС, зафиксировать один
TEST E TG1,1,Met12 результатов моделирования
SAVEVALUE KolSS1,(INT(N$Met8/X$Prog)+1)
; Если содержимое счетчика завершений равно 1, то
; Количество отремонтированных СС 1
SAVEVALUE KolSS2,(INT(N$Met9/X$Prog)) ; SAVEVALUE KolSS3,(INT(N$MetlO/X$Prog)); SAVEVALUE KolSS4,(INT(N$Metll/X$Prog)); SAVEVALUE VerSSl,(N$Met8/N$Met01) SAVEVALUE VerSS2,(N$Met9/N$Met02) SAVEVALUE VerSS3,(N$MetlO/N$Met03) SAVEVALUE VerSS4,(N$Metll/N$Met04) SAVEVALUE VerSS,(N$Met7/N$MetO) SAVEVALUE TRemSS,(ACl/N$Met7) SAVEVALUE STime,(X$TRemSS#nl )
типов, Met12
Met15
мин
Количество отремонтированных СС 2 типа Количество отремонтированных СС 3 типа Количество отремонтированных СС 4 типа Вероятность ремонта СС 1 типа Вероятность ремонта СС 2 типа Вероятность ремонта СС 3 типа Вероятность ремонта СС 4 типа Вероятность ремонта СС всех типов Среднее время ремонта одного СС, мин Среднее время ремонта n1_ СС 1 и 2
SAVEVALUE NDet,0 TERMINATE 1 TERMINATE
; Обнуление счетчика отремонтированных СС
119
3. ПРОГРАММНЫЙ МОДУЛЬ РУКОВОДИТЕЛЯ КУРСОВЫМ
ПРОЕКТИРОВАНИЕМ
3.1. Интерфейс руководителя курсовым проектированием
Интерфейс руководителя курсовым проектированием (ИРКП) должен быть интуитивно понятным, что подразумевает не очень большое количество разнообразных кнопок, однако при этом он не должен проигрывать в функциональности. Внешний вид должен соответствовать предназначению программы и настраивать пользователя на работу с конкретными средствами (в данном случае это GPSS World). Исходя из этого, был сделан выбор в пользу сине-оранжевых тонов оформления, т.к. синий это информативный цвет. Внешне программа вызывает ассоциацию с учебником по GPSS World, но это только внешне, на самом деле это совершенно иной продукт, как по предназначению, так и по исполнению. Давайте рассмотрим подробнее каждое окно программы.
После запуска приложения появляется первая форма, которая является главным меню приложения. На ней представлены 4 кнопки выполняющие различные функции (рис 3.1).
Рис 3.1. Функции кнопок «О программе» и «Выход» особых разъяснений не требуют, а вот кнопки «Новое задание» и «Варианты заданий» рассмотрим подробнее. «Варианты
120
задания» является скорее вспомогательной кнопкой и представляет нам следующую форму, где мы можем просмотреть варианты заданий на курсовой проект (рис 3.2).
Выбор варианта |
|
Загрузить вариант | |
°™» | |
Возврат в меню | |
INIT зр | |
Рис 3.2.
Для просмотра задания необходимо щелкнуть на кнопку «Выбор варианта» , при этом открывается стандартный диалог для выбора. При нажатии на кнопку «Загрузить вариант» появляется окно «Новое задание» (рис 3.3). Кнопка отмена сбрасывает загруженный файл, а кнопка «Возврат в меню» возвращает пользователя в основное меню.
Рис 3.3.
Окно «Новое задание» предоставляет возможность загрузки и просмотра текста модели, для этого необходимо щелкнуть «Загрузить модель1» , как и на предыдущей форме открывается стандартный диалог, а также последовательно появляется ряд дополнительных элементов (рис 3.4).
121
Рис 3.4.
Один из таких элементов, кнопка «Изменить входные параметры» , предоставляет пользователю возможность до начала проведения эксперимента внести коррективы в список констант, здесь реализован алгоритм динамического добавления элементов. После ввода названий констант и их новых значений в соответствующие поля необходимо щелкнуть кнопку «Сохранить» , чтобы изменения были внесены в текст GPSSмодели. Если проводить изменения необязательно, то щелчком на «Начать эксперимент» переходим к следующему окну «1 эксперимент» (рис 3.5).
Программа модели загружается автоматически, далее для проведения эксперимента запускаем среду GPSS World нажатием кнопки «Запуск GPSS» . После запуска модели сохраняем отчет о проведении эксперимента и закрываем среду GPSS World. Далее загружаем отчет, опять же через стандартный диалог, который вызывается нажатием кнопки «Загрузить отчет» .
122
Рис 3.5.
После вышеописанных действий можно производить анализ результатов, для этого в разделе описания переменных берем интересующую нас переменную и вводим ее в поле для поиска, нажимаем кнопку «Найти», после этого значение данной переменной выводится в поле для вывода. Возможен поиск значения переменной в отчете, что называется вручную, для этого нужно поставить галочку в поле «Показать отчет» , при этом в отдельном окне высветится отчет проведенного эксперимента (рис 3.5.1)
123
Cl | Ш | |
GPSS World Simulation Report - Modell .84.1 | ||
l\par | ||
■ Vpar | ||
■ \par Monday, May 22,2006 11:43:25 | ||
И Vpar | ||
■ \par START TIME END TIME BLOCKS FACILITIES STORAGES | ||
■ \par 0.000 3600.000 81 4 0 | ||
■ ■■.par | j | |
1 Vpar | ||
■ \par NAME VALUE | ||
■ \par EMK 2.000 | ||
■ \par KOEF1 1.000 | ||
■ \par KOEF2 1.000 | ||
■ \par МЕТ1 15.000 | ||
■ \раг МЕТ11 25.000 | ||
■ \par MET12 26.000 | ||
■ \раг МЕТ13 64.000 | ||
■ \par MET14 67.000 | ||
■ \par МЕТ2 18.000 | ||
■ \раг МЕТ21 42.000 | ||
■ \par MET22 44.000 | ||
■ \par МЕТЗ 21.000 | ||
Vpar MET4 50.000 | ||
Vpar MET5 54.000 | ||
Vpar METS 5Э.000 | ||
\par NAK 10029.000 | ||
Vpar NKANOSN 2.000 | ||
Vpar NKANREZ 2.000 | ||
\par POISKOSN 14.000 | ||
Vpar POISKREZ 53.000 | ||
Vpar ROZIGR1 38.000 | ||
\par SOOB1 2.000 | ||
Vpar SOOB2 6.000 | ||
Vpar SOOB3 10.000 | ||
Vpar SPIS 13.000 | ||
Vpar T02 1.200 | ||
\par T1 2.700 | ||
Vpar T2 3.800 | ||
Vpar T3 2.200 | 51] | |
Hi Показывать измененные параметрь-i 1 L-крыть | ||
Рис 3.5.1.
Если поставить галочку в поле «Показывать измененные параметры» , то появится окно, в котором отобразятся измененные пользователем константы, если же пользователь не менял их, то появится соответствующее сообщение (рис 3.5.2).
Рис 3.5.2.
Если пользователю нужно сравнить результаты проведения двух экспериментов, а не единичное значение переменной, то продолжаем работу с приложением нажатием кнопки «Загрузить 2 модель» . Выполняем все действия описанные выше.
124
Для наглядности предусмотрен параллельный вывод переменных (рис 3.6 и рис 3.7).
Рис 3.6.

Рис 3.7.
3.2. Рекомендации руководителю курсовым проектированием по применению
программного модуля
Для логичной и корректной работы приложения пользователю необходимо поместить приложение и сопутствующие файлы и папки в директорию c:\DipA и иметь модели в текстовом формате *.txt и в формате *.gps, т.к. стандартные средства отображения Delphi (а именно в среде Delphi7 написано данное приложение), не всегда верно отображают файлы с иным (не *.txt) расширениями.
Также для реализации функции замены значений констант GPSSмодель должна, после блока описания констант, содержать следующие строки:
125
include “c:\VrFail\var.txt” include “c:\VrFail\var1.txt”.
126
СПИСОК ЛИТЕРАТУРЫ
-
Образцов П.И. Дидактический комплекс информационного обеспечения учебной дисциплины в системе ДО // Открытое образование. 2001. № 5
-
Образцов П.И Психолого-педагогические аспекты разработки и применения в вузе информационных технологий обучения. Монография. - Орел, 2000.
-
Боев В. Д. Моделирование систем. Инструментальные средства GPSS World: Учеб. Пособие. — Спб.: БХВ-Петербург, 2004. — 368 с.
-
Боев В. Д., Сыпченко Р. П. Компьютерное моделирование: Руководство по курсовому проектированию. — СПб.: ВАУ, 2002. — 96 с.
-
Архангельский А. Я. Приемы программирования в Delphi. – М.:ООО «Бином -Пресс», 2004г. – 848с.: ил.
-
Архангельский А. Я. Delphi7. Справочное пособие. . – М.:ООО «Бином - Пресс», 2004г. – 1024с.: ил.
-
Фленов М.Е. Библия Delphi. — СПб.: БВХ—Петербург, 2005г. —880 с.: ил.
127