Выручайте! Разобраться с задачей GPSS
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.217.138] |
|
|
Выручайте! Разобраться с задачей GPSS
|
Сообщ.
#1
,
|
|
|
|
Задача уже решена и работает, но не могу разобраться никак в решении и в отчете что выдает GPSS, непонятно что, зачем и как(( Непонимаю где в отчете проследить задание, данное в задаче! Выручайте народ, курсовик сдавать со дня на день, до экзаменов не допускают! (как жаль, что с тем челом, что ее решал никак не связаться...)
____________ Задача- Отдел обслуживания ЭВМ готовит носители с программами для металлорежущих станков с числовым программным управлением. Чертежи деталей поступают из конструкторско-чертежного отдела. Программист изучает чертеж и пишет программу управления станком, обрабатывающим заготовки. Программирование занимает интервал времени, распределенный по экспоненциальному закону со средним временем T1 минут. Затем текст программы вводится в ЭВМ, обрабатывается и записывается на носитель (длительность операции - экспоненциально распределенная величина со средним временем Т2 минут). Потом носитель с программой устанавливается на соответствующий станок для испытания. Этот процесс занимает промежуток времени, распределенный экспоненциально со средним временем Т3 минут. Заказы на подготовку носителей с программами поступают через промежутки времени, распределенные равномерно в интервале А±В минут. В момент прихода заказа для него определяют директивное время - время, до которого заказ должен быть выполнен. Директивное время определяется как сумма времени поступления заказа и технологического времени выполнения работы - это общее время обработки (Т1 + Т2 + Т3) плюс дополнительное время, равномерно распределенное в интервале С±D минут. Руководство отдела желает проанализировать несколько способов очередности обработки заказов с целью определения наилучшего из них. Предложено четыре варианта порядка выполнения ожидающих в каждой из очередей работ: • сначала выполняются те заказы, которые имеют самое маленькое технологическое время выполнения; • сначала выполняются те заказы, которые имеют самое большое технологическое время выполнения; • сначала выполняются те заказы, которые имеют наименьшее оставшееся время обработки; • сначала выполняются те заказы, которые имеют ближайший директивный срок. Самостоятельно ВЫБРАТЬ критерий оценки эффективности системы и ОЦЕНИТЬ предложенные дисциплины выбора из очереди. Время моделирования необходимо выбрать так, чтобы модель работала в переходном режиме. (В решении задачи приведено решение сразу всех 4 вариантов) Вариант Параметры Т1 Т2 Т3 А В С D 1 90 70 60 100 20 40 10 2 100 80 90 140 35 30 10 3 120 110 90 150 50 40 15 4 110 100 85 145 40 45 20 Решение задачи: **************************************************************************** * Моделирование работы отдела обслуживания ЭВМ * **************************************************************************** matrixvar EQU 1 matrixvar matrix ,4,7 initial mx1(1,1),90 ;T1 initial mx1(2,1),100 initial mx1(3,1),120 initial mx1(4,1),110 initial mx1(1,2),70 ;T2 initial mx1(2,2),80 initial mx1(3,2),110 initial mx1(4,2),100 initial mx1(1,3),60 ;T3 initial mx1(2,3),90 initial mx1(3,3),90 initial mx1(4,3),85 initial mx1(1,4),100 ;A initial mx1(2,4),140 initial mx1(3,4),150 initial mx1(4,4),145 initial mx1(1,5),20 ;B initial mx1(2,5),35 initial mx1(3,5),50 initial mx1(4,5),40 initial mx1(1,6),40 ;C initial mx1(2,6),30 initial mx1(3,6),40 initial mx1(4,6),45 initial mx1(1,7),10 ;D initial mx1(2,7),10 initial mx1(3,7),15 initial mx1(4,7),20 prov matrix ,1,4 GENERATE ,,,1 SAVEVALUE NVar+,1 ;Определение варианта параметров ASSIGN nmod,x$NVar met1 ADVANCE mx1(P$nmod,4),mx1(P$nmod,5) SPLIT 1,met1 ;чтобы сравнить "четыре варианта порядка выполнения ожидающих в каждой из очередей работ", время обработки в каждой стадии "разыгрываем" заранее, потом создаем 3 копии этого транзакта и распределяем их по спискам пользователя(1 - 1й порядок и 1я стадия; 2 - 1й порядок и 2я стадия; 3 - 1й порядок и 3я стадия; 4 - 2й порядок и 1я стадия;...; 12 - 4й порядок и 3я стадия) номера списка совпадают с номерами устройств. ASSIGN 1,(Exponential(1,mx1(P$nmod,1),1)) ; ASSIGN 2,(Exponential(1,mx1(P$nmod,2),1)) ASSIGN 3,(Exponential(1,mx1(P$nmod,3),1)) ASSIGN 4,(AC1 + mx1(P$nmod,1)+mx1(P$nmod,2)+mx1(P$nmod,3)+Uniform(1,(mx1(P$nmod,6)-mx1(P$nmod,7)),(mx1(P$nmod,6)+mx1(P$nmod,7)))) ;Директивное время, определяется как сумма времени поступления заказа и технологического времени выполнения работы - это общее время обработки (Т1 + Т2 + Т3) плюс дополнительное время, равномерно распределенное в интервале С±D минут. ASSIGN 5,1 ;стадия подготовки программ SPLIT 3,,6 ASSIGN Ttexn,1 ASSIGN TminObr,(mx1(P$nmod,1)+mx1(P$nmod,2)+mx1(P$nmod,3)) ;минимальное время обработки, т.е. предполагаемое оставшееся время обработки met4 GATE U ((P6-1)#3+P5),met2 ;занято, присоединить транзакт к списку пользователя TRANSFER ,(met4+1+P6) LINK ((P6-1)#3+P5),P$Ttexn ;помещает транзакт в список пользователя с номером 1 или 2 или 3, упорядочивая их по возрастанию значения параметра с именем P$Ttexn LINK ((P6-1)#3+P5),P$Ttexn ;с номером 4 или 5 или 6 LINK ((P6-1)#3+P5),P$TminObr ;с номером 7 или 8 или 9 LINK ((P6-1)#3+P5),P4 ;с номером 10 или 11 или 12 met2 SEIZE ((P6-1)#3+P5) ADVANCE P*5 ;задержать на время указанное в параметре, номер которого определяет параметр №5 ASSIGN Ttexn+,P*5 ;для 1,2 "варианта очередей" ASSIGN TminObr-,mx1(P5,1) ;для 3-го RELEASE ((P6-1)#3+P5) ASSIGN 5+,1 ;переход к следующей стадии TEST L P5,4,met3 ;2,3 стадии - создать копию (вниз) и направить на доработку(к метке met4) SPLIT 1,met4 ;оригинал выведет из списка пользователя транзакт и уничтожится met3 ASSIGN 7,((P6-1)#3+P5-1) TRANSFER ,(met3+P6#2) UNLINK P7,met2,1 ;вывести один транзакт с начала списка (которые имеют самое маленькое технологическое время выполнения;) TERMINATE UNLINK P7,met2,1,BACK ;вывести один транзакт с конца (которые имеют самое большое технологическое время выполнения;) TERMINATE UNLINK P7,met2,1 ;вывести один транзакт с начала списка (которые имеют наименьшее оставшееся время обработки;) TERMINATE UNLINK P7,met2,1 ;вывести один транзакт с начала списка(которые имеют ближайший директивный срок) TERMINATE GENERATE ,,12000,1 ;1месяц(25дн.) по 8часов TERMINATE 1 start 1 ;эксперимент №1(вариант параметров 1) CLEAR OFF ;"off" - чтобы сохранить переменную "NVar" RESET ;чтобы сбросить статистику start 1 ;эксперимент №2(вариант параметров 2) CLEAR OFF RESET start 1 ;№3 CLEAR OFF RESET start 1 ;№4 _________________ списки пользователя не задействованы (статистика по ним) потому что время (A±B) сопоставимо с T1,T2,T3 - т.е. очереди образуются редко (T1 > T2 > T3). ASSIGN 1,(Exponential(1,mx1(P$nmod,1),1)); для экспоненциального распределения надо проверить соответствие 2,3го параметра условиям задачи |
|
Сообщ.
#2
,
|
|
|
|
Подскажите пожалуйста ,как будет выглядеть это же задача только с первым вариантом параметров
Т1 Т2 Т3 А В С D 1 90 70 60 100 20 40 10 очень нужно !!!!!! |