Лабораторная работа №21
.docМИНИСТЕРСТВО ПО ОБРАЗОВАНИЮ И НАУКЕ РОССИЙСКОЙ ФЕДЕРАЦИИ
УФИМСКИЙ ГОСУДАРСТВЕННЫЙ АВИАЦИОННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
Кафедра АСУ
Лабораторная работа №2
МОДЕЛИРОВАНИЕ ОДНОКАНАЛЬНОЙ СИСТЕМЫ МАССОВОГО ОБСЛУЖИВАНИЯ С ОТКАЗАМИ.
Выполнили:
Проверил:
Бакусов Л.М.
Уфа 2008г.
1.Задание:
Вариант 4: величина η подчиняется равномерному закону распределения, а µ - нормальному.
2.Выполнение задания:
блок-схема
2.2.Скриншот программы:
2.3.Вырезка из полученного отчета:
[0.00000] Заявка №1 принята, время конца обработки: 0.22363мс
[0.54000] Заявка №2 принята, время конца обработки: 0.88304мс
[1.12969] Заявка №3 принята, время конца обработки: 1.17278мс
[2.12691] Заявка №4 принята, время конца обработки: 2.20749мс
[2.50983] Заявка №5 принята, время конца обработки: 2.54624мс
[3.37145] Заявка №6 принята, время конца обработки: 3.77796мс
[4.77442] Заявка №7 принята, время конца обработки: 4.81430мс
[5.95581] Заявка №8 принята, время конца обработки: 6.47774мс
[6.41189] Заявке №9 отказано в обработке
[7.50375] Заявка №10 принята, время конца обработки: 7.53735мс
[8.61940] Заявка №11 принята, время конца обработки: 8.76237мс
[10.45073] Заявка №12 принята, время конца обработки: 10.83268мс
[10.74247] Заявке №13 отказано в обработке
[11.74533] Заявка №14 принята, время конца обработки: 11.90307мс
2.3.Листинг программы:
program laba2;
uses dos, crt;
const
m=1;//мат ожидание
d=0.3;//среднее квадратическое отклонение
var
x:array[0..1000] of real;
mu:array[0..1000] of real;
etA:array[0..1000] of real;
i,otk:integer;
t,t1, r:real;
otch:text;
BEGIN
clrscr;
t:=0;
randomize;
for i:=1 to 1000 do begin
x[i]:=random(9999)*0.0001;
if (x[i]=0) then x[i]:=0.9999;
end;
for i:=1 to 1000 do begin
x[i]:=random(9999)*0.0001;
if (x[i]=0) then x[i]:=0.9999;
end;
for i:=1 to 999 do begin
eta[i]:=sqrt(-m*m*ln(x[i])/(d*sqrt(6.2831853)))-m+1;
end;
assign(otch,'otch.txt');
rewrite(otch);
t:=t+mu[1];
writeln(otch,'[0.00000] Заявка №1 принята, время конца обработки: ',mu[1]:5:5,'мс');
t1:=n[1];
otk:=0;
for i:=2 to 1000 do begin
if t<=t1 then begin
t:=t1+mu[i];
writeln(otch,'[',(t-mu[i]):5:5,'] Заявка №',i,' принята, время конца обработки: ',t:5:5,'мс');
end else begin
writeln(otch,'[',t1:5:5,'] Заявке №',i,' отказано в обработке');otk:=otk+1;
end;
t1:=t1+n[i];
end;
close(otch);
writeln('Vsego zayavok: 1000');
writeln('Ne obrabotano: ',otk);
close(otch);
writeln('Всего заявок: 1000');
writeln('Не обработано: ',otk);
writeln('Доля обслуженных: ',(1000-otk)/1000:4:4);
writeln('Время простоя: ',z:4:4);
z:=0;
for i:=1 to 1000 do
z:=z+mu[i];
z:=z/1000;
writeln('Среднее время обслуживания: ',z:4:4);
writeln('Интенсивность обслуживания: ',1/z:4:4);
l:=0;
for i:=1 to 1000 do
l:=l+eta[i];
l:=l/1000;
writeln('Интенсивность поступления: ',l:4:4);
p:=l*z/(1-l*z);
writeln('Вероятность отказа: ',p*100:4:2,'%');
readkey;
END.
3.Вывод по проделанной работе:
В данной лабораторной работе была смоделирована система массового обслуживания, где в систему поступали и в последствии были приняты, либо заявкам было отказано в обработке. Экспериментально были получены значения: доля обслуженных заявок 0,962, время простоя 885,6095, среднее время обслуживания 0,1444, интенсивность обслуживания 6,9266, интенсивность поступления 1,0251, вероятность отказа 17,37%.