Рассмотрим СМО следующего вида: в моменты времени , образующие случайный поток однородных событий, в систему поступают заявки. Заявка, поступившая в момент времени
, характеризуется параметром
. Если в
момент времени канал свободен, заявка немедленно принимается к обслуживанию. В противном случае заявка ставится в очередь, где может находиться некоторое ограниченное время
=
,
) где
– параметр системы. Если до момента времени
+
заявка не будет принята к обслуживанию, она получает отказ. Заявки принимаются к обслуживанию в порядке очереди. Длительность обслуживания
,
).
Consider the CFR of the following type: at time t_j, forming a random stream of homogeneous events, applications are received into the system. The application received at time t_(j ) is characterized by the parameter a_j. If
the channel is free at time t_(j ), the request is immediately accepted for service. Otherwise, the application is put in a queue, where there may be some limited time τ=
,
) where β is the parameter the system. If the application is not accepted for service before the time
+
it is refused. Applications are accepted for service on a first-come, first-served basis. Service duration τ^vol= ψ(α_j,β).
Техническое задание.
1. Представить в виде агрегата n-канальную СМО с ожиданием. Величина управляющего воздействия изменяется через j приходов заявок. Смысл управляющего воздействия – путём изменения количества мест в очереди обеспечить требуемую . и
Правило выбора каналов – «по жребию». Заявки принимаются к обслуживанию в порядке поступления. Характеристика входного потока גּ , потока обслуженных заявок μ ; значения n,j,
Δg приведены в таблице.
Номер варианта |
1 |
n |
1 |
j |
10 |
, |
0,1 |
גּ |
1 |
Cреднее время обслуживание |
0,2 |
Δg |
1 |
2. Представить СМО в виде агрегата, для чего в первую очередь записать состояния агрегата zl(t).
3. Составить блок-схему алгоритма решения задачи и составить программу. 4. После проверки алгоритма преподавателем решить задачу на ЦВМ.
5. Провести анализ полученных результатов.
Целью моделирования является оценка доли обслуженных заявок и доли отказов. Состояния агрегата следующие:
(t) - время, оставшееся до конца обслуживания заявки;
(t) - величина управляющего сигнала.
Для построения операторной схемы алгоритма необходимы следующие операторы:
1. - ввод исходных данных;
2. - определение параметра
по формуле:
:=
;
3. - определение а по формуле:
a:=+
;
4. - определение
формуле:
:=
5. - проверка условия а < 4;
6. - определение a по формуле:
а := а - 4 ;
7. – определение
по формуле:
:= a ;
8. - определение числа
из ряда случайных чисел с равномерным распределением в интервале [0;1] (РСЧ) по формуле:
:=
;
9. - формирование интервала между последовательными приходами заявок
по формуле:
:= -
10. - определение моментов прихода заявок
по формуле:
:=
11. - проверка условия
< T ;
12. - счётчик количества заявок, поступивших в систему, J:
J := J +1;
13. - проверка условия (J mod J _ Control) = 0;
14. – проверка условия
>
;
15. определение числа мест в очереди Quic_Maximum по формуле:
Quic _ Maximum := Queic _ Maximum + ;
16. - определение k по формуле:
k := 1;
17. - определение минимального времени освобождения канала
по формуле:
:=
;
18. - определение номера Channel по формуле:
Channel := к;
19. - счётчик номера канала k:
k := k +1;
20. - проверка условия k <= Number _ Of _ Channels;
21. - проверка условия
<
;
22. - проверка условия
>
;
23. - проверка условия Length _ Of _ Quic = 0;
24. - формирование момента начала обслуживания заявки
по формуле:
:=
;
25. - формирование случайного времени обслуживания заявки
по формуле:
:= -
26. – проверка условия
;
27– определение момента освобождения канала номер Channel от обслуживания заявки
по формуле:
28. – счётчик количества обслуженных заявок M :
M:=M+1
29. . – счётчик количества заявок, получивших отказ, L:
L:=L+1
30. . – проверка условия max J<
;
31. . – определение w по формуле:
w:=1;
32. . – формирование момента начала обслуживания заявки
по формуле:
33. . – проверка условия w< Quic_Of_Length ;
34. . – определение положений заявок в очереди Quic[w] по формуле:
Quic [w]:= Quic [w+1]
35. . – счётчик номера очереди w:
w:=w+1
36. . – определение параметра освободившегося места в очереди Queue[w] по формуле:;
Quic[w]:=0
37. . – определение длины очереди Length _ Of_ Quic по формуле:
Length _ Of_ Quic:= Length _ Of_ Quic-1
38. . – проверка условия
Length _ Of_ Quic< Length _ Of_ Quic_Maximum
39. - определение длины очереди Length_Of_Queue по формуле:
Length_Of_Quic := Length_Of_Quic +1
40. – определение w по формуле:
w:= Length_Of_Quic ;
41. - определение параметра занимаемого места в очереди Queue[w ]по формуле:
Quic[w ]:= ;
42. - определение доли обслуженных заявок
по формуле:
;
43. - определение доли заявок, получивших отказ,
по формуле
: =
44. - конец вычислений и выдача результатов.
Операторы, имеющие после номера букву, совершенно аналогичны оператору с тем же номером, но без буквы.
Исходные данные:
1. =1;
2. = 0.2;
3. Number_Of_Channels = 1;
4. Channel = 1;
5. =0;
6. T=1000;
7. = 200;
8. = 10;
9g = 1;
10. = 0.1;
11. = 3.141592;
12. = 0.542101;
Операторская схема алгоритма: