Задача. Компания, работающая в области компьютерных технологий, изготавливает перфоленту с программой станков с ЧПУ для металлорежущей промышленности. Чертежи деталей предоставляются предприятиями-производителями. Программист изучает чертежи и составляет программу обработки заготовки для управления станком. Время программирования составляет в среднем 90 минут и имеет экспоненциальное распределение. Затем программа сохраняется в файл и обрабатывается, после чего перфорируется лента с программой управления станком с ЧПУ. Данный процесс занимает в среднем 60 минут и имеет экспоненциальное распределение. Далее лента загружается в соответствующий станок для проверки и исправления. Этот процесс занимает в среднем 70 минут и также имеет экспоненциальное распределение.
Политика компании, производящей программное обеспечение для станков, заключается в обеспечении быстрого и качественного обслуживания промышленных компаний. Компания хочет проверить несколько дисциплин массового обслуживания для обработки заказов и выбрать наиболее эффективную.
Были предложены три возможные дисциплины по обработке ожидающих заказов:
1. Сначала выполняются работы, имеющие самое короткое время выполнения.
2. Сначала выполняются работы, имеющие самое длительное время выполнения.
3. Сначала выполняются работы, имеющие ближайший срок сдачи, т.е. работы, которые требуется выполнить как можно скорее.
Время выполнения работы представляет собой общее время обработки, т.е. (P4 = P1 + P2 + P3) плюс 3±1 день. Срок выполнения равен сумме модельного времени, когда задание только поступило, и допустимого времени выполнения данного задания. Время задержки определяется как модельное время в момент завершения работы по заданию за вычетом срока выполнения.
Необходимо смоделировать выполнение компанией, производящей программное обеспечение, 100 заказов, а также:
1. Найти дисциплину обслуживания с наименьшим временем обработки.
2. Определить коэффициенты использования устройств, соответствующих составлению программ, подготовке ленты и корректировке.
3. Записать в таблицу время задержки при выполнении каждого заказа и транзитное время каждого заказа.
Решение.
RMULT 66753
Schedparm EQU 4 ;Сначала обрабатываются задания с наименьшим временем выполнения.
Var1 VARIABLE P1+P2+P3
Var2 VARIABLE P4+AC1+RN1@160+80
Var3 VARIABLE 10000-P4
Lateness VARIABLE AC1-P5
Transit TABLE M1,100,100,20 ;Запись в таблицу времени выполнения.
Late TABLE V$Lateness,-1000,200,20 ;Задержка.
GENERATE (Exponential(2,0,120)) ;Создание новых заказов.
ASSIGN 1,(Exponential(3,0,90)) ;Время программирования.
ASSIGN 2,(Exponential(4,0,60)) ;Время перфорации ленты.
ASSIGN 3,(Exponential(5,0,70)) ;Время загрузки и правки.
ASSIGN 4,V$Var1 ;Общее время выполнения.
ASSIGN 5,V$Var2 ;Срок сдачи из Р5.
ASSIGN 6,V$Var3 ;Наибольш. время выполнения.
LINK Program,P$Schedparm,Wrte ;Наименьш. время выполнения.
Wrte SEIZE Manuscript
ADVANCE P1 ;Составление программы.
RELEASE Manuscript
UNLINK Program,Wrte,1 ;Удаление из списка.
LINK Tape,P$Schedparm,Punch ;Добавление в список.
Punch SEIZE Tapepunch
ADVANCE P2 ;Время перфорации.
RELEASE Tapepunch
UNLINK Tape,Punch,1 ;Удаление из списка.
LINK Edit,P$Schedparm,Loadedit ;Добавление в список.
Loadedit SEIZE Edit
ADVANCE P3 ;Время загрузки и правки.
RELEASE Edit
UNLINK Edit,Loadedit,1 ;Удаление из списка.
TABULATE Late
TABULATE Transit
TERMINATE 1 ;Работа выполнена.
START 100
Результаты моделирования.