Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
моделирование информационных систем железнодоро...doc
Скачиваний:
43
Добавлен:
03.05.2019
Размер:
4.58 Mб
Скачать

2.4.2. Моделирование многолинейной системы массового обслуживания для расчета распределения числа требований в системе.

Рассмотрим многолинейную систему массового обслуживания с ожиданием с обслуживающими приборами. Входящий поток является рекуррентным. В начальный момент система свободна. Требования поступают в моменты , величины = независимы в совокупности и обладают одним и тем же законом распределения . Длительности обслуживания требований - независимые в совокупности случайные величины с распределением . Предполагаем, что последовательности ( ) и ( ) взаимно независимы. Обозначим через число требований в системе в момент - 0, - число поступивших требований в систему до момента и - число обслужившихся требований системой до момента .

Пусть в момент =0 = 0. Легко видеть, что здесь также = - . Всегда . С поступлением первого требования в момент становится больше 0. Обозначим через первый момент времени, когда снова обратится в нуль. Интервал ( , ) также называется периодом занятости системы, периоды времени, когда = 0, являются свободными периодами. За свободным периодом следует период занятости, затем снова свободный период, затем период занятости и т.д.

Построим моделирующий алгоритм на периоде занятости. Заметим, что значения процесса являются целочисленными и меняются скачками, а именно, в момент поступления требования входящего потока к прибавляется 1, в момент ухода из системы обслужившегося требования из вы-читается 1. Весь период занятости состоит из последовательно следующих один за другим периодов увеличения и периодов уменьшения .

Начинается период занятости с периода увеличения , к = 0 прибавляется 1. Реализуется время обслуживания . Реализуются также случайные величины . Если , то в счетчик длительностей интервалов записывается пара (1, ), где - длина интервала, на котором = 1, и ) = 0. На этом период увеличения заканчивается.

Однако далее идет уже более сложный процесс моделирования. Обозначим через моменты времени, когда процесс претерпевает скачки. Осуществим моделирования перехода состояния процесса из момента времени в . Для этого введем векторный марковский процесс = ( , , где - время с момента до момента поступления следующего требования, - время с момента до момента окончания обслуживания требования на - ом канале, которое обслуживалось на нем в момент времени , . Величина = 0, если - ый канал в момент времени был свободен. Для моделирования поведения процесса отводим + 2 ячеек для хранения в них значений компонент процесса , т.е. , . Изменения процесса рассматриваем только в моменты времени .

Пусть в момент времени имеем = ( , . Опишем процедуру перехода к процессу в момент времени , т.е. процедуру нахождения значения процесса в момент времени , а именно, = ( , Имеет место следующий алгоритм.

  1. Находим ( .

  2. Если ( = то модельное время увеличивается на величину в ячейку для заносится величина интервала до момента поступления следующего требования , в ячейку для заносится величина +1, если все величины больше 0, т.е. , то они уменьшаются на величину . Модельное время увеличивается на величину . Таким образом, = ( , будет равен ( = +1 , …, = - ). Если , то генерируется случайная величина , которая будет помещена в ячейке, в которой находился 0, как символ свободности канала обслуживания. В счетчик длительностей интервалов заносится пара ( ,

  3. Если ( = , то модельное время увеличивается на величину в ячейку для заносится величина - в ячейку для заносится величина -1, величины уменьшаются на величину в ячейку для заносится величина времени обслуживания следующего требования, которое является первым требованием в очереди, если , и 0 в противном случае. Таким образом, = ( , будет равен ( = -1 , - …, - )+0 (1- )), = - …, = - ). В счетчик длительностей интервалов заносится пара ( , .

  4. В счетчике числа скачков прибавляется 1 и по циклу переходим к п. 1.

Кончается период занятости уменьшением до 0.

Каждый период занятости можно моделировать автономно, т.к. развитие процесса на нем не зависит от того, что происходило до момента начала этого периода занятости. Момент его начала есть точка регенерации процесса . Но всю статистику необходимо засылать в счетчик длительностей интервалов. Свободные периоды после каждого периода занятости свойством регенерации не обладают, но их также надо засылать в счетчик длительностей интервалов.