
- •Системы массового обслуживания.
- •Формирование реализации случайных потоков однородных событий
- •Одноканальная система.
- •Простейшая многоканальная система.
- •Точность и вероятность в имитации смо
- •Алгоритм имитации работы смо
- •Описание Процедур и Функций.
- •Текст программы.
- •Результат работы программы.
- •Список использованной литературы.
- •«Моделирование сложных систем» н. П. Бусленко
- •«Исследование Операций » е. С. Вентцель
Текст программы.
uses crt;
const n=4;
TYPE int=array [1..n,1..2] of real;
var b1,b,t,zin,zout,lambda,nu,fin:real;
ii,i,j,otkaz,obsluj:integer;
k:longint;
Tin:int ;
Status: array [1..n] of boolean;
tt:TEXT;
{-------------- Функции пользователя ----------- }
function timein: real;
begin
timein:=(1-sqrt(1-random(100)/100));
end ;
function sta(var t:real; time:int) : integer;
label exitt;
var i,j:integer;
begin
sta:=0;
for i:=1 to n do
if time[i,1]+time[i,2]<t then begin sta:=i; goto exitt; end;
exitt : end;
procedure writezn(var y:int;var tt:text);
var i:integer;
begin
for i:= 1 to n do
writeln(tt,'Время поступления ',Y[i,1]:2:2,' время обслуживания ',Y[i,2]:2:2,' Окончание ',Y[i,2]+Y[i,1]:2:2)
end;
{--------------- Конец Функций ------------------ }
begin
clrscr;
randomize;
lambda:=12;
nu:=2;
t:=0;
fin:=1.5;
b:=2/lambda;
b1:=2/nu;
otkaz:=0;obsluj:=0;
for i:=1 to n do begin
status[i]:=true;
for j:=1 to 2 do
Tin[i,j]:=0;
end;
{ вычисление времени прихода заявок }
assign(tt,'res.dat');
rewrite(tt);
t:=0;
k:=1;
repeat
zin:=b*timein;
t:=t+zin;
if sta(t,Tin)<>0 then begin ii:=sta(t,Tin); tin[ii,1]:=t;
tin[ii,2]:=b1*timein;
obsluj:=obsluj+1;
end
else otkaz:=otkaz+1;
writezn(Tin,tt);
writeln(tt,'Время прихода ',k,'-ой заявки ',t:2:2);
writeln('free chanel ',ii);
k:=k+1;
writeln(tt);
writeln(tt,'кол-во отказов = ',otkaz);
writeln(tt,'кол-во обслуженых = ',obsluj);
writeln(tt);writeln(tt);
writeln(tt,'ШАГ ',k);
until t>=fin;
writeln(tt);writeln(tt);writeln(tt);
writeln(tt,'Средняя доля отказа = ',otkaz/obsluj:2:2);
close(tt);
end.
Результат работы программы.
Время поступления 0.03 время обслуживания 0.39 Окончание 0.42
Время поступления 0.00 время обслуживания 0.00 Окончание 0.00
Время поступления 0.00 время обслуживания 0.00 Окончание 0.00
Время поступления 0.00 время обслуживания 0.00 Окончание 0.00
Время прихода 1-ой заявки 0.03
кол-во отказов = 0
кол-во обслуженых = 1
ШАГ 2
Время поступления 0.03 время обслуживания 0.39 Окончание 0.42
Время поступления 0.03 время обслуживания 0.15 Окончание 0.18
Время поступления 0.00 время обслуживания 0.00 Окончание 0.00
Время поступления 0.00 время обслуживания 0.00 Окончание 0.00
Время прихода 2-ой заявки 0.03
кол-во отказов = 0
кол-во обслуженых = 2
ШАГ 3
Время поступления 0.03 время обслуживания 0.39 Окончание 0.42
Время поступления 0.03 время обслуживания 0.15 Окончание 0.18
Время поступления 0.10 время обслуживания 0.20 Окончание 0.30
Время поступления 0.00 время обслуживания 0.00 Окончание 0.00
Время прихода 3-ой заявки 0.10
кол-во отказов = 0
кол-во обслуженых = 3
ШАГ 4
Время поступления 0.03 время обслуживания 0.39 Окончание 0.42
Время поступления 0.21 время обслуживания 0.00 Окончание 0.21
Время поступления 0.10 время обслуживания 0.20 Окончание 0.30
Время поступления 0.00 время обслуживания 0.00 Окончание 0.00
Время прихода 4-ой заявки 0.21
кол-во отказов = 0
кол-во обслуженых = 4
ШАГ 5
Время поступления 0.03 время обслуживания 0.39 Окончание 0.42
Время поступления 0.27 время обслуживания 0.50 Окончание 0.77
Время поступления 0.10 время обслуживания 0.20 Окончание 0.30
Время поступления 0.00 время обслуживания 0.00 Окончание 0.00
Время прихода 5-ой заявки 0.27
кол-во отказов = 0
кол-во обслуженых = 5
ШАГ 6
Время поступления 0.03 время обслуживания 0.39 Окончание 0.42
Время поступления 0.27 время обслуживания 0.50 Окончание 0.77
Время поступления 0.37 время обслуживания 0.31 Окончание 0.68
Время поступления 0.00 время обслуживания 0.00 Окончание 0.00
Время прихода 6-ой заявки 0.37
кол-во отказов = 0
кол-во обслуженых = 6
ШАГ 7
Время поступления 0.03 время обслуживания 0.39 Окончание 0.42
Время поступления 0.27 время обслуживания 0.50 Окончание 0.77
Время поступления 0.37 время обслуживания 0.31 Окончание 0.68
Время поступления 0.41 время обслуживания 0.59 Окончание 1.00
Время прихода 7-ой заявки 0.41
кол-во отказов = 0
кол-во обслуженых = 7
ШАГ 8
Время поступления 0.50 время обслуживания 0.58 Окончание 1.08
Время поступления 0.27 время обслуживания 0.50 Окончание 0.77
Время поступления 0.37 время обслуживания 0.31 Окончание 0.68
Время поступления 0.41 время обслуживания 0.59 Окончание 1.00
Время прихода 8-ой заявки 0.50
кол-во отказов = 0
кол-во обслуженых = 8
ШАГ 9
Время поступления 0.50 время обслуживания 0.58 Окончание 1.08
Время поступления 0.27 время обслуживания 0.50 Окончание 0.77
Время поступления 0.37 время обслуживания 0.31 Окончание 0.68
Время поступления 0.41 время обслуживания 0.59 Окончание 1.00
Время прихода 9-ой заявки 0.56
кол-во отказов = 1
кол-во обслуженых = 8
ШАГ 10
Время поступления 0.50 время обслуживания 0.58 Окончание 1.08
Время поступления 0.27 время обслуживания 0.50 Окончание 0.77
Время поступления 0.37 время обслуживания 0.31 Окончание 0.68
Время поступления 0.41 время обслуживания 0.59 Окончание 1.00
Время прихода 10-ой заявки 0.58
кол-во отказов = 2
кол-во обслуженых = 8
Средняя доля отказа = 0.25