- •2. Практические занятия
- •Практическое занятие № 1.
- •Практическое занятие № 2.
- •20,20 ;Генерация транзактов (пакетов) с интервалом 20 е.М.В.
- •Практическое занятие № 4
- •Практическое занятие № 5.
- •Практическое занятие № 6.
- •1,30/2,15/5,7 Оритетам
- •Практическое занятие № 7.
- •Практическое занятие № 8.
- •Практическое занятие № 9.
- •Практическое занятие №10
- •Практическое занятие № 11
- •Практическое занятие № 12.
- •Vtor gate nu kkk,otk2 ;Вторая фаза. Устройство kkk свободно?
- •Список использованной литературы
1,30/2,15/5,7 Оритетам
generate 20,20 ;генерация транзактов с интервалом 20 е.м.в.
priority fn$sss ;выбор номера приоритета
assign ocher,pr ;присвоение имени очереди номера приоритета
test L Q*ocher,fn$och,met ;есть свободные места в очереди?
queue pr ;Да. Установить транзакт в очередь с именем 1,2 или 5
seize kkk ;занять канал с именем kkk
depart pr ;уйти из очереди
advance 19,10 ;задержать транзакт в канале на 19 е.м.в.
release kkk ;освободить канал kkk
terminate 1 ;вычесть 1 из длины прогона
met savevalue otk+,1 ;зафиксировать отказ в переменной otk
terminate 1
Особенностью данной программы является использование в операторах queue и depart в качестве имени очереди номера приоритета (pr). Это дает возможность использовать одни и те же операторы для транзактов любого приоритета. В данном случае именами очереди будут цифры 1, 2 или 5.
Для этого используется оператор assign, который может вошедшему в него транзакту определить имя параметра и присвоить этому параметру заданное значение. В данном случае параметру с именем ocher присваивается числовое значение по номеру приоритета (1, 2 или 5). В дальнейшем этот параметр будет использоваться как имя очереди в операторе test L.
Оператор test L сравнивает на “меньше” текущую длину очереди под номером приоритета (Q*ocher), хранящегося в параметре транзакта ocher, с числом мест в приоритетных очередях, определяемых функцией с именем och. В исходном варианте данного модуля длины допустимых очередей по приоритетам равны соответственно 30-и, 15-и и 7-и.
Задание. Произведите прогон Модуля 6 и проанализируйте отчёт в части очередей с именами 1,2 и 5. Измените длины очередей в функции с именем och, произведите прогон и объясните изменения в отчёте.
Измените операнды оператора generate так, чтобы суммарный поток был равен 400 пакетов/с. Меняя с помощью оператора advance пропускную способность канала от 200 до 600 пакетов/с, снимите зависимости длительностей задержек пакетов Тожi и вероятностей потерь пакетов Р по каждому приоритету в зависимости от пропускной способности канала.
Измените программу Модуль 6 так, чтобы она имитировала многоканальную систему. Снимите зависимости средней длительности ожидания Тожi (значение AVE.TIME в REPORT) и средней длины очереди Dочi (значение AVE.CONT в REPORT) по каждой категории от числа каналов. Если значения откликов Тожi и Dочi исчезающе малы, измените параметры системы так, чтобы исследуемые зависимости оказались наиболее наглядными.
Практическое занятие № 7.
Объект исследования. Пуассоновское распределения потоков различных событий.
Один из наиболее часто используемых в теории телетрафика простейший поток вызовов описывается пуассоновским распределением:
Рi(t)
=

где: λ – интенсивность входящего потока вызовов [выз/ед.вр.],
t – интервал времени [ед.вр],
Рi(t) – вероятность появления ровно i вызовов в интервале t.
Пуассоновский
поток вызовов непосредственно связан
с экспоненциальным распределением тем,
что интервалы (z)
между вызовами пуассоновского потока
распределены по экспоненте: Р
(z
< t)
= 1 -
.
А так как в операторе генерации транзактов
generate
устанавливаются именно интервалы между
вызовами, то в модуле 7 реализован
экспоненциальный генератор со средним
интервалом равным 2 (это означает, что
интенсивность вызовов составляет 0,5
выз/ед.вр.).
Программа работает следующим образом. Оператор «generate 100» нарезает временной процесс на равные интервалы времени в 100 е.м.в. (единицы модельного времени). В это время оператор «generate (2#v$eks)» генерирует случайное число транзактов, которое фиксируется в счётчике sch. Содержимое этого счётчика в начале каждого интервала в 100 е.м.в. табулируется и счётчик обнуляется.
Листинг 7 - Имитационная модель - модуль 7 - Построение пуассоновского распределения
;Построение пуассоновского распределения
tab table x$sch,10,2,40 ;построение гистограммы
eks fvariable -log((1+rn8)/1000) ;экспон.распределение
generate (2#v$eks) ;генерация пуассоновского потока
savevalue sch+,1 ;счётчик событий в интервале t
terminate
generate 100 ;генерация интервалов t
tabulate tab ;фиксация числа событий в инт. t
savevalue sch,0 ;обнуление счётчика событий в инт.t
terminate 1 ;общее число интервалов t
Задание. Снять гистограмму пуассоновского распределения. Рассчитать теоретическое распределение по формуле Пуассона. Проверить гипотезу о законе распределения исследуемой случайной величины по критерию согласия χ2 (см. приложение).
