Лекция: Приоритетное обслуживание заявок в СМО
Если обслуживание приоритетное, и все заявки выстраиваются в одну очередь, то среднее время ожидания:
W=∑nk=1ρk⋅tk⋅(1+ν2k)2⋅(1−ρ)
Экспоненциальное обслуживание k-го потока:
ν2k=1
ρ=∑k=1nρk
Например, имеется 2 потока заявок:
λ1=0.3, μ1=1
λ2=0.25, μ2=0.5
Заявки обслуживаются в порядке поступления, приоритетов нет, обслуживание экспоненциальное.
t=1μ
W=ρ1⋅t1+ρ2⋅t21−ρ=0.3⋅1+0.5⋅21−0.8=6.5
Пояснения:
M/M/1:
ρ=λμ
Q=ρ21−ρ
L=Q+ρ=ρ1−ρ
W=Qλ=ρ2(1−ρ)⋅ρμ=ρ(1−ρ)⋅μ=ρ⋅t1−ρ
T=Lλ=ρ(1−ρ)⋅μ=t1−ρ=W+1μ=W+t
Относительные приоритеты[править]
Wk — среднее время ожидания в очереди заявки k-го приоритета
Wk=∑ni=1ρi⋅ti⋅(1+ν2k)2⋅(1−∑k−1i=1ρi)⋅(1−∑ki=1ρi)
где:
k−1 — количество приоритетов, предшествующих исходному;
n — общее число типов заявок, которые поступают в систему;
i — заявка i-го приоритета.
Относительные приоритеты — заявка, поступившая в систему, не прерывается, а обслуживается полностью. После этого в систему поступает заявка с наивысшим приоритетом.
Пример для двух классов приоритетов: выражение упрощается и принимает следующий вид:
W=ρ1⋅t1+ρ2⋅t21−ρ1=0.3⋅1+0.5⋅21−0.3=1.852
W=ρ1⋅t1+ρ2⋅t2(1−ρ1)⋅(1−ρ1−ρ2)=0.3⋅1+0.5⋅2(1−0.3)⋅(1−0.8)=9.280
Проверка правильности выполненных расчётов осуществляется по закону сохранения Клейрока (слева — относительный приоритет, справа — без приоритета):
ρ1⋅W1+ρ2⋅W2=ρ⋅W
0.3⋅1.852+0.5⋅9.280=0.8⋅6.5
5.2=5.2
Не рекомендуется вводить более 3 приоритетов.