где
, , -
характеристики i-й системы.
Для
оценки динамических характеристик реализуем необходимые функции в среде Matlab. Функция odnourN(lam, m_1, m_2, L)
вычисляет значение -
среднее количество запросов, находящихся в системе, при одноуровневом
управлении:
function N = odnourN(lam, m_1, m_2, L)
%ODNOURN returns average queue length value for one-level control
system
% k state number = queue length
% lam input intensity
% m_1 output intensity for 1st mode
% m_2 output intensity for 2nd mode
% L one-level control
parameter_1=lam./m_1;_2=lam./m_2;_0=((1-r_1).*(1-r_2))./(1-r_2-r_1.^L.*(r_1-r_2));=(P_0).*(r_1./(1-r_1).^2-((r_1.^L.*(r_1-r_2))./((1-r_1).*(1-r_2))).*(L+(1-r_1.*r_2)./((1-r_1).*(1-r_2))));
end
Функция
odnourQ(lam, m_1, m_2, L) вычисляет значение -
среднее количество запросов, ожидающих обработки, при одноуровневом управлении:
function Q = odnourQ(lam, m_1, m_2, L)
%ODNOURQ returns average Q value for one-level control
system
% k state number = queue length
% lam input intensity
% m_1 output intensity for 1st mode
% m_2 output intensity for 2nd mode
% L one-level control
parameter_1=lam./m_1;_2=lam./m_2;_0=((1-r_1).*(1-r_2))./(1-r_2-r_1.^L.*(r_1-r_2));=P_0
+ P_0.*((r_1.^L.*r_2)./(r_2 - 1).^2 - (r_1.*(r_1.^L - 1))./(r_1 - 1).^2 +
(L.*r_1.*r_1.^(L - 1))./(r_1 - 1) - (L.*r_1.*r_1.^(L - 1))./(r_2 - 1)) -
P_0.*((r_1.^L - 1)./(r_1 - 1) - r_1.^L./(r_2 - 1));
end
Функция
gisterN(lam, m_1, m_2, L_1, L_2) вычисляет значение -
среднее количество запросов, находящихся в системе, при гистерезисном
управлении:
function N = gisterN(lam, m_1, m_2, L_1, L_2)
%GISTERN returns average queue length value for hysteresis
control system
% k state number = queue length
% lam input intensity
% m_1 output intensity for 1st mode
% m_2 output intensity for 2nd mode
% L_1 hysteresis control 1st parameter
% L_2 hysteresis control 2nd
parameter=lam./m_1;_1=lam./m_2;=L_2-L_1-1;_0=(1./(1-r)-((q+1).*r.^(L_1+q).*(r-r_1))./((1-r.^(q+1)).*(1-r_1))).^(-1);=P_0.*(r./(1-r).^2
-((q+1).*r.^(L_1+q).*(r-r_1 ))./((1-r.^(q+1) ).*(1-r_1 )
).*((2.*L_1+q)./2+(1-r.*r_1)./((1-r).*(1-r_1 ) )) );
end
Функция
gisterQ(lam, m_1, m_2, L_1, L_2) вычисляет значение -
среднее количество запросов, ожидающих обработки, при гистерезисном управлении:
function Q = gisterQ(lam, m_1, m_2, L_1, L_2)
%GISTERP returns average Q value for hysteresys control
system
% k state number = queue length
% lam input intensity
% m_1 output intensity for 1st mode
% m_2 output intensity for 2nd mode
% L_1 hysteresis control 1st parameter
% L_2 hysteresis control 2nd
parameter=lam./m_1;_1=lam./m_2;=L_2-L_1-1;_0=(1./(1-r)-((q+1).*r.^(L_1+q).*(r-r_1))./((1-r.^(q+1)).*(1-r_1))).^(-1);=P_0.*(((r-(L_1+1).*r.^(L_1+1)+L_1.*r.^(L_1+2))./(1-r).^2
-(r-r.^(L_1+1))./(1-r))+(r.^(L_1 ).*(1-r))./(1-r.^(q+1)
).*((L_1-1).*(((r-r.^(q+1))./(1-r)-q.*r.^(q+1))./(1-r)+(r.^q.*r_1.*(q-(r_1-r_1.^(q+1)
)./(1-r_1 )))./(1-r_1 ))+(((r-(q+1).*r.^(q+1)+q.*r.^(q+2))./(1-r).^2
-(r.^(q+1).*q.*(q+1))./2)./(1-r)+(r.^q.*r_1.*((q.*(q+1))./2-(r_1-(q+1).*r_1.^(q+1)+q.*r_1.^(q+2))./(1-r_1
).^2 ))./(1-r_1 )) )+((1-r_1.^(q+1) ).*(1-r).*r.^(L_1+q))./((1-r.^(q+1) ).*(1-r_1
) ).*((r_1.*(L_1+q-1))./(1-r_1 )+r_1./(1-r_1 ).^2 ) );
end
Реализуем также функции, позволяющие построить графики дискретного
распределения случайной величины N.
Функция gisterP(k, lam, m_1, m_2, L_1, L_2) вычисляет вероятность нахождения
системы в состоянии k при
гистерезисном управлении.
function Pn = gisterP(k, lam, m_1, m_2, L_1, L_2)
%GISTERP returns probability distribution for hysteresys
control system
% k state number = queue length
% lam input intensity
% m_1 output intensity for 1st mode
% m_2 output intensity for 2nd mode
% L_1 hysteresis control 1st parameter
% L_2 hysteresis control 2nd parameter=
floor(k);=lam./m_1;_1=lam./m_2;=L_2-L_1-1;_0=(1./(1-r)-((q+1).*r.^(L_1+q).*(r-r_1))./((1-r.^(q+1)).*(1-r_1))).^(-1);n=k(n>=0)
&& (n<=L_1)=(r.^n).*P_0;(n>L_1) && (n<L_2)
=(r.^(L_1).*(1-r))./(1-r.^(q+1)).*P_0.*((r.^(n-L_1)-r.^(q+1))./(1-r)+(r.^q.*r_1.*(1-r_1.^(n-L_1)))./(1-r_1));(n>=L_2)=((1-r_1.^(q+1)).*(1-r).*r.^(L_1+q))./((1-r.^(q+1)
).*(1-r_1)).*r_1.^(n-L_1-q).*P_0;
Pn=0;
end
end
end
Функция odnourP(k, lam, m_1, m_2, L)
вычисляет вероятность нахождения системы в состоянии k при одноуровневом управлении.
function Pn = odnourP(k, lam, m_1, m_2, L)
%ODNOURP returns probability distribution for one-level
control system
% k state number = queue length
% lam input intensity
% m_1 output intensity for 1st mode
% m_2 output intensity for 2nd mode
% L one-level control parameter=
floor(k);_1=lam./m_1;_2=lam./m_2;_0=((1-r_1).*(1-r_2))./(1-r_2-r_1.^L.*(r_1-r_2));n=k(n>=0)
&& (n<=L)=(r_1.^n).*P_0;(n>L)=(r_1.^L).*(r_2.^(n-L)).*P_0;
Pn=0;
end
end
end
Графики
зависимостей и для
исследуемых систем показаны на рис. 5.
Рис.5.
Графики зависимостей среднего количества запросов в системе и
среднего количества ожидающих обслуживания запросов от интенсивности входящего потока запросов , для
трех исследуемых
систем, в установившемся режиме работы
На
рис. 5 величины и -
характеристики для i-й системы. Из графиков видно, что характеристики и монотонно
возрастают с увеличением интенсивности входящего потока . Также
видно, что среднее количество ожидающих обслуживания запросов приблизительно
на 1 меньше среднего количества запросов в системе , что
соответствует сути данных характеристик.
При
длина
очереди не превышает порогового значения L для систем с одноуровневым
управлением и порогового значения для
систем с гистерезисным управлением, так как система работает преимущественно с
первым сервером. При приближении величины к
значению система
работает преимущественно со вторым сервером; длина очереди на некотором
интервале возрастает слабо, затем неограниченно возрастает. При система
уже не в состоянии обработать входящий поток запросов, характеристики и определить
нельзя.
что соответствует сделанному ранее предположению.
На
рис. 6 показаны графики зависимостей для
исследуемых систем.
Рис.
6. Графики зависимостей среднего времени простаивания в очереди от интенсивности входящего потока запросов , для
трех исследуемых
систем, в установившемся режиме работы
На
рис. 6 величина -
среднее время простаивания в очереди для i-й системы. Из
графиков видно, что значение монотонно
возрастает с увеличением интенсивности входящего потока при ; при близком
к функция имеет
локальный максимум. При приближении величины к
значению на
некотором интервале среднее время простаивания в очереди убывает, так как
возрастает вероятность нахождения системы в режиме работы со вторым сервером.
При близком
к функция неограниченно
возрастает. При система
уже не в состоянии обработать входящий поток запросов, и характеристику определить
нельзя. Также из графиков видно, что выполняется соотношение
что соответствует сделанному ранее предположению.
На
рис. 7 показаны графики зависимостей для исследуемых
систем.
Рис.
7. Графики зависимостей среднего времени обслуживания от интенсивности входящего потока запросов , для
трех исследуемых
систем, в установившемся режиме работы
На
рис. 7 величина -
среднее время обслуживания для i-й системы. Из графика видно, что при на
некотором интервале среднее время обслуживания не изменяется и равно
приблизительно , так как
система работает преимущественно в режиме с первым сервером. При приближении
величины к
значению среднее
время обслуживания монотонно убывает и стремится к величине , так как
увеличивается вероятность нахождения системы в режиме работы со вторым
сервером. Также из графиков видно, что выполняется соотношение
что соответствует сделанному ранее предположению.
Вычислим
характеристики работы систем, параметры которых определены в таблице 1, для
двух заданных значений интенсивности входящего потока запросов к серверу .
Результаты вычислений представлены в таблице 2.
Таблица
2: Характеристики работы системы при различной интенсивности входящего потока
|
|
|
System #1
|
|
|
|
|
|
|
|
|
|
|
|
System #2
|
|
|
|
|
|
|
|
|
|
|
|
System #3
|
|
|
|
|
|
|
|
|
|
|
|
В
таблице 2 величины , , -
характеристики i-й системы: среднее количество запросов в системе,
среднее время простаивания в очереди, среднее время обслуживания,
соответственно.
Также
построим для заданных значений интенсивности входящего потока графики
распределения случайной величины N (количества находящихся в системе запросов) и
проверим соответствие распределений полученным выше значениям
Рис.
8. Стационарное распределение вероятности количества находящихся в системе
запросов при интенсивности входящего потока
Рис.
9. Стационарное распределение вероятности количества находящихся в системе
запросов при интенсивности входящего потока
На
рис. 8, 9 величина -
стационарная вероятность нахождения i-й системы в состоянии n при
заданной интенсивности входящего потока.
|
(31)
|
Из
графиков видно, что при вероятность
нахождения системы в режиме работы первым сервером для всех исследуемых систем
выше вероятности нахождения системы в режиме работы со вторым сервером. Это
объясняется тем, что при данном значении переход
в режим работы с кешированием приводит к быстрому уменьшению длины очереди и
возвращению в режим работы без кеширования. При функции
распределения для систем с одноуровневым управлением имеют ярко выраженный
максимум вблизи значений n, равных заданным для систем параметрам L.
Функции распределения для системы с гистерезисным управлением не имеет ярко
выраженного максимума, т.е. дисперсия величины N значительно
выше. Характер
графиков распределения при позволяет
сделать следующий вывод: система с одноуровневым управлением при высокой
интенсивности входящего потока будет большую часть времени находиться в
состоянии, при котором длина очереди N близка к значению L.
Это означает, что в системе будет происходить частое переключение из одного
режима работы в другой, которое может негативно сказаться на динамических
характеристиках системы при наличии временных затрат на переключение. Система с
гистерезисным управлением лишена указанного недостатка, поскольку переключение
между режимами работы происходит при различных значениях N. Анализ графиков
показывает, что значения средней длины очереди ,
вычисленные и приведенные в таблице 2, соответствуют распределениям
вероятностей длины очереди N. Выполним проверку выполнения условия . Проверка для
системы с одноуровневым управлением:
sum1=0;
for i=0:500=sum1+odnourP(i, lamb, m_1, m_2, L_low);
end
Проверка для системы с гистерезисным управлением:
sum2=0;i=0:500=sum2+gisterP(i, lamb, m_1, m_2, L_1, L_2);
end
Результат преверки:
=
=
.0000
Результат подтверждает выполнение условия равенства суммы стационарных
вероятностей единице.