МУ СМО

advertisement
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Саратовский государственный технический университет имени Гагарина Ю.А.»
Кафедра «Системотехника»
Имитационное моделирование систем массового обслуживания
Методические указания
к лабораторной работе по дисциплине «Моделирование систем»,
«Моделирование в производственно-технологических системах»
для направлений
230100.62 «Информатика и вычислительная техника»
Профиль 2 «Автоматизированные системы обработки информации и
управления», 221400.62 «Управление качеством»,
Профиль 1 «Управление качеством в производственно-технологических
системах»
очной и заочной формы обучения
Методические указания рассмотрены на заседании
кафедры СТ «28» августа 2012 года, протокол № 1
Допущено к использованию в учебном процессе
Зав. кафедрой _____________/Томашевский Ю.Б./
Саратов 2012
Цель работы: изучение принципов построения моделирующих алгоритмов, моделирование потоков и процесса обслуживания заявок в СМО.
ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ
Системы массового обслуживания. При исследовании различных
информационных систем, связанных с предоставлением ресурсов, приходится сталкиваться с вопросами, относящимися к массовому обслуживанию. Характерной особенностью таких систем является наличие обслуживающей системы, в которую в случайные моменты времени поступают заявки. Обслуживающая система имеет линии (каналы), выполняющие совокупность
операций, подразумеваемых под словом «обслуживание».
Потоки событий и их свойства. Заявки, поступающие в систему, образуют поток, т.е. последовательность событий, специальным образом распределённых во времени. Если с точки зрения обслуживания все заявки
данного потока равноправны, то такой поток называется
потоком
одно-
родных событий. Каждое событие потока в этом случае характеризуется
только временем ti, в которое оно наступает.
Чтобы описать случайный поток однородных событий как случайный
процесс, достаточно знать закон распределения, характеризующий последовательность случайных величин t1, t2, …, tm . В практических задачах моделирования удобнее вместо величин
t1, t2, …, tm рассматривать случайные
величины ξ1, ξ2, . .., ξm, являющиеся длинами интервалов времени между последовательными моментами tj
t1 = ξ1, t2 = ξ1 + ξ2, …, tk = ξ1 + ξ2 + · · · + ξ k .
Совокупность случайных величин ξ j считается заданной, если определена совместная функция распределения
F ( Z1, Z2, …, Zk) = P (ξ1 < Z1, …, ξj < Zj, …, ξ k < Zk).
2
Обычно рассматривают только непрерывные случайные величины ξ j,
поэтому пользуются функцией плотности распределения
f ( z1, …, zj, …, zk) .
Для решения многих прикладных задач, связанных с массовым обслуживанием, можно ограничиться частными случаями потоков – потоками с
ограниченным последействием, оперирование которыми оказывается более
простым и доступным.
Случайный поток однородных событий называется потоком с ограниченным последействием, если случайные величины ξj являются независимыми. Очевидно, что для потоков с ограниченным последействием совместная
функция плотности распределения f ( z1, …, zj, …, zk ) в соответствии с теоремой умножения теории вероятностей представляется в виде
f ( z1, …, zj, …, zk) = f1 (z1) … fj (zj) … fk (zk).
Функции fj (zj) при j > 1 являются условными функциями плотности
распределения величин ξj при условии, что в начальный момент интервала
ξj (j > 1) в систему поступила заявка. В отличие от этого функция f1(z1) является безусловной функцией плотности распределения, так как относительно появления или не появления заявки в начальный момент времени не
делается никаких предположений.
Большой теоретический и практический интерес представляют так
называемые стационарные потоки, для которых вероятностный режим не зависит от начала отсчёта времени.
Более точно: поток однородных событий называется стационарным,
если вероятность Pk (t, t0) появления K событий за промежуток времени [t0,
t0+ t] не зависит от t0, а зависит только от t и K.
Для стационарных потоков с ограниченным последствием (потоков
Пальма) имеет место соотношение
f2 (z2) = · · · = fj (zj) = · · · = fk (zk) = f (z).
3
Это значит, что при j > 1 интервалы ξj имеют одинаковые распределения вероятностей.
Стационарные потоки с ограниченным последействием характеризуются постоянной интенсивностью, или плотностью потока λ, имеющей смысл
среднего количества событий, наступающих за единицу времени   1  , где
µ – математическое ожидание случайной величины ξj при j > 1.
Для потоков Пальма имеет место соотношение, позволяющее определить f1 (z1), если известно fj (zj), j > 1 (формула Пальма)
z1
f 1 ( z1 )   (1   f ( z ) dz ) .
0
Рассмотренные выше потоки являются ординарными. Поток событий
называется ординарным, если вероятность попадания на элементарный участок  t двух и более событий пренебрежимо мала по сравнению с вероятностью попадания одного события.
В практике статистического моделирования приходится иметь дело с
задачами, связанными с обслуживанием групповых заявок, создающих
сгустки события, т.е. рассматривать неординарные потоки однородных событий. Для описания таких потоков, кроме моментов времени tj, необходимо
задать распределение количества заявок, поступающих в каждый из них.
Частным случаем потока Пальма является поток без последействия.
Для такого потока закон распределения оставшейся части интервала времени
между заявками не зависит от того, сколько этот интервал длится.
Поток называется простейшим, если он является стационарным, ординарным и потоком без последействия. Для простейшего потока вероятность
Pk (t) наступления K событий за интервал времени длины t выражается законом распределения Пуассона
( t )k  t
Pk (t ) 
e ,
k!
4
поэтому часто простейший поток называют пуассоновским потоком. Из последнего соотношения следует, что функция плотности распределения f (z)
случайной величины ξj при j > 1 для простейшего потока имеет вид показательного распределения с параметром λ, т.е.
f ( z )   e  z
где λ – интенсивность потока.
В соответствии с формулой Пальма можно найти функцию плотности
распределения f (z1) для первого интервала ξ1:
z1
f ( z1 )   (1    e  z dz )   e  z 1 .
0
Таким образом, в случае простейшего потока f1 (z1) = f (z). Это является
особенностью простейшего потока. Для других потоков это равенство не выполняется.
Простейший поток играет среди потоков событий особую роль. Доказано, что при суммировании большого числа ординарных стационарных потоков с практически любым последействием получается поток, сколь угодно
близкий к простейшему.
Интересным примером потоков с ограниченным последействием являются так называемые потоки Эрланга. Они образуются «просеиванием»
простейшего потока.
Рассмотрим простейший поток и выбросим из него каждую вторую
точку. Оставшиеся точки образуют поток Эрланга первого порядка (Э1).
Поток Эрланга второго порядка (Э2) получится, если сохранить в простейшем потоке каждую третью точку. Потоком Эрланга k-го порядка (Эk)
называется поток, получаемый из простейшего, если сохранить каждую k + 1
точку, а остальные отбросить.
Закон распределения с функцией плотности распределения
5
 ( z ) k   z
fk ( z) 
e , z0
k!
называется законом Эрланга k-го порядка.
Пронумеруем величину z таким образом, чтобы плотность потока не
зависела от порядка k. Доказано, что при неограниченном увеличении k нормированный поток Эрланга приближается к регулярному (детерминированному) потоку с постоянными интервалами, равными 1  .
Это свойство даёт возможность, задаваясь различными k, получить любую степень последействия: от полного отсутствия ( k = 0, простейший поток)
до жесткой функциональной связи между моментами появления событий (k =
∞, детерминированный поток). Таким образом, порядок потока Эрланга может
служить мерой последействия, имеющегося в нем.
В практике моделирования бывает удобным заменить реальный поток
заявок, имеющий последействие, нормированным потоком Эрланга с примерно такими же характеристиками промежутка времени между заявками:
математическим ожиданием и дисперсией.
В связи с важностью простейшего потока и потоков Эрланга в практике моделирования, внимание обращается в первую очередь на изучение
принципов имитации на ЭВМ именно этих потоков.
Процесс обслуживания заявок. В общем случае СМО могут состоять
из n линий (каналов), способных одновременных и независимо друг от друга
обслуживать заявки. В любой момент времени канал находится в одном из
двух состояний – свободен или занят.
Предположим, что в некоторый момент времени в обслуживающую
систему поступает заявка. Если в этот момент времени имеются свободные
каналы, то заявка принимается к обслуживанию. В противном случае, т.е.
когда все каналы заняты, заявка остаётся в системе в течение некоторого
времени τs (время пребывания заявки в системе) как претендент на обслуживание. За интервал τs заявка должна быть принята к обслуживанию, в
6
противном случае она считается потерянной (получает отказ). В зависимости от величины τs СМО делятся на классы:
 τs = 0 – система с отказами;
 τs = ∞ – система с ожиданием;
 0 < τs < ∞ – смешанная система.
Помимо параметра τs, обслуживающая система характеризуется τp –
временем обслуживания заявки (временем занятости канала).
Обычно величины τp и τs являются случайными величинами с заданными законами распределения.
Дисциплиной обслуживания называется правило, по которому выбираются на обслуживание заявки из очереди. Различают следующие дисциплины обслуживания:
 обслуживание в порядке поступления или дисциплина FIFO (First
Input, First Output – первым пришел, первым ушел);
 обслуживание в обратном порядке или дисциплина LIFO (Last Input,
First Output – последним пришел, первым ушел);
 обслуживание в случайном порядке, когда заявка выбирается случайно из ожидающих обслуживания заявок.
Рассмотрим распространённые варианты порядка занятия каналов заявками, поступающими на обслуживание. Если в СМО имеется очередь заявок, то каналы занимаются немедленно в порядке их освобождения.
При отсутствии очереди заявок и наличии свободных каналов появившаяся заявка может занимать один из свободных каналов в соответствии со
следующими правилами:
 в порядке номеров каналов;
 в случайном порядке, в соответствии с заданными вероятностями.
При наличии очереди заявок и наличии свободных каналов заявка из
очереди может занимать один из свободных каналов в соответствии со следующими правилами:
7
 в порядке очереди;
 по минимальному времени покидания системы;
 в случайном порядке с заданными вероятностями.
Для формализации СМО с неоднородными потоками заявок (с заявками разных типов) необходимо описать:
 процесс поступления в систему заявок каждого типа, т.е. функции
распределения для интервалов поступления в систему заявок каждого типа;
 процесс обслуживания заявок каждого типа, т.е. функции распределения для длительностей обслуживания заявок каждого типа;
 дисциплину обслуживания заявок: без приоритетов, когда между
заявками разных типов нет приоритетов; с относительными приоритетами,
когда приоритеты заявок учитываются только в моменты выбора их из очереди на обслуживание; с абсолютными приоритетами, когда приоритеты
учитываются также и во время обслуживания (высокоприоритетные заявки
прерывают обслуживание низкоприоритетных заявок); со смешанными приоритетами, когда заявки данного типа имеют к заявкам одних типов относительный приоритет, к заявкам других – абсолютный, а к заявкам третьих – не
имеют приоритета.
Моделирование потоков заявок. На вход системы, которая представлена как одноканальная СМО с ожиданием и отказами поступают два
однородных потока с пуассоновским распределением моментов поступления
заявок. Каждый из потоков характеризуется своим показателем
интенсивности (средним временем между двумя последовательными
поступлениями заявок).
Поступающие заявки либо встают в общую очередь на обслуживание,
либо получают отказ. При этом решение вопроса о постановке в очередь или
о формировании отказа связывается с длиной очереди на обслуживание.
Вероятность получения отказа считается пропорциональной длине
очереди и определяется с помощью соотношения
Pотк = n/nмакс,
8
где n — длина очереди на обслуживание; nмакс — максимальная допустимая
длина очереди.
Как следует из приведенного соотношения, при n= nмакс постановка в
очередь невозможна, а при n = 0 заявка не может получить отказа.
Заявки обслуживаются одним каналом, но среднее время ообслуживания (время занятости канала) для каждого типа заявок считается различным.
Время занятости канала распределено по закону Эрланга.
Описанная система при заданных значениях интенсивностей потоков и
обслуживания в процессе работы стремится к некоторому стационарному
состоянию, которое количественно определяется такими показателями как
средняя длина очереди и среднее время занятости канала.
Заявки, поступающие в систему, образуют поток, т.е. последовательность событий, специальным образом распределенных во времени. Если с
точки зрения обслуживания все заявки потока равноправны, то такой поток
называется однородным. Каждое событие потока в этом случае характеризуется временем tj, в которое оно наступает. Чтобы описать случайный поток
однородных событий как случайный процесс, достаточно знать закон распределения, характеризующий последовательность случайных чисел t1, t2,
…,tm.
В задачах статистического моделирования удобно вместо величин t1, t2,
…,tm рассматривать величины 1 ,  2 ,...,  m , являющиеся длинами интервалов
между последовательными моментами времени tj.
Для решения многих прикладных задач, связанных с массовым обслуживанием, можно ограничиться частным случаем потоков – потоками с ограниченным последействием, для которого величины  j являются независимыми.
Для
потоков
с
ограниченным
последействием
f ( z1 , z 2 ,..., z k )  f1 ( z1 )  f 2 ( z 2 )  ...  f k ( z k ) , где f ( z1, z2 ,..., zk ) – плотность распределе-
ния, зависящая от z1 , z 2 ,..., z k .
9
Функция f j ( z j ) для j > 1 является условной функцией плотности вероятности величин  j при условии, что на начальный момент интервала  j
поступила заявка.
В отличие от этого f1 ( z1 ) является безусловной функцией плотности
вероятности, так как при относительном появлении или не появлении заявки
в начальный момент времени не делается никаких предположений.
Большой теоретический и практический интерес представляют так
называемые стационарные потоки, для которых вероятностный режим не зависит от начала отсчета времени. Более точно поток однородных событий
называется стационарным, если вероятность Pk(t-t0) появления k событий за
промежуток времени [t0, t0+t] не зависит от t0, а зависит только от t и k. Для
стационарных
потоков
имеет
место
соотношение
f 2 ( z 2 )  f 3 ( z3 )  ...  f k ( z k )  f ( z ) .
Это значит, что при j>1 интервалы времени между событиями имеют
одинаковые распределения вероятности.
Поток заявок рассматривается как случайный процесс, задаваемый
функцией распределения промежутков (интервалов) времени
z j между мо-
ментами поступления двух соседних заявок t j и t j 1 .
Величина интервалов времени между заявками вычисляется как: z j = t j t j 1 . По вычисленным оценкам математического ожидания m и дисперсии D
интервалов времени z j между заявками в потоке, можно рассчитать порядок
потока Эрланга k, на который заменяется реальный поток
k=
1
D
(ближайшее целое), где  = 1/ m – интенсивность.
2
Для простейшего потока вероятность Pk(t) поступления k событий за интервал времени t выражается законом
(t ) k t
Pk (t ) 
e .
k!
10
Из формулы следует, что функция плотности f(z) случайной величины для
интервалов j>1 для простейшего потока имеет вид показательного распределения
f ( z )  e  z .
В соответствии с формулой Пальма можно найти функцию плотности f(z)
для 1-го интервала простейшего потока
f ( z1 )   (1 
z1
 e
 z
dz ) .
0
Нормированные функции распределения получаются путем умножения
функции и ее аргумента на (k+1).
Поток Эрланга может быть получен путем разряжения (просеивания)
простейшего потока. Так, если в простейшем потоке исключить каждую вторую заявку, то получится поток Эрланга первого порядка. При исключении в
простейшем потоке каждых двух последних заявок из трех, получится поток
Эрланга второго порядка и т.д. Очевидно простейший поток можно рассматривать как поток Эрланга нулевого порядка.
Получить значения z j ,
j = 2,...,n путем просеивания простейшего по-
тока.
Распределение для z j , j = 2,...,n на соответствие распределению Эрланга k порядка можно проверить по критерию Пирсола (Хи-квадрат)
(mi  Npi ) 2
,
 
Npi
i 1
l
2
где l – число разрядов, на которые разбиты опытные значения случайной величины; N – объем выборки; mi – численность i-го порядка; pi – вероятность
попадания случайной величины, вычисленная из теоретического закона.
ЗАДАНИЕ
11
По вводимым данным:
−
моделируемый поток заявок (заданный порядком Эрланга и сред-
ним временем прихода одиночной заявки);
−
максимальная длина очереди;
−
максимальное время пребывания заявок в очереди (максимальное
время ожидания заявками обслуживания);
−
интенсивности обслуживания заявок 1-го и 2-го рода;
−
длина реализации;
−
количество реализаций
моделируется двухканальная СМО, затем полученные результаты усредняются по каждой реализации:
–
среднее время ожидания обслуживания заявками в очереди (усред-
нение по каждой реализации и совокупности реализаций);
–
среднее количество отказов для заявок 1-го и 2-го рода (усредне-
ние по каждой реализации и совокупности реализаций). Отказы могут
быть по причине нехватки места в очереди, или по причине исхода времени ожидания заявкой обслуживания ;
–
среднее время обслуживания заявок 1-го и 2-го рода (усреднение
по каждой реализации и совокупности реализаций);
–
максимальная длина очереди (усреднение по совокупности реали-
заций);
–
количество пришедших заявок.
Пример интерфейса программы моделирования приведен на рисунке.
12
ПОРЯДОК ПРОВЕДЕНИЯ РАБОТЫ
1. Построить алгоритм решения задачи.
2. Реализовать задание на языке высокого уровня.
3. Описать реализацию каждого задания, приведя алгоритм и текст
программы.
4. Сделать выводы.
5. Оформить отчет.
СОДЕРЖАНИЕ ОТЧЕТА
13
Отчет о работе должен содержать:
1. Название лабораторной работы.
2. Описание цели.
3. Постановку задачи.
4. Описание реализации задания.
5. Скриншоты реализаций.
6. Вывод по работе.
ЛИТЕРАТУРА
1. Советов Б.Я., Яковлев С.А. Моделирование систем: учебник для ВУЗов. М: Высшая школа, 2007.
2. Советов Б.Я., Яковлев С.А. Моделирование систем. Практикум: учебное пособие для ВУЗов. М.: Высшая школа, 2005.
3. Лоу А.М., Кельтон В.Д. Имитационное моделирование. Классика CS.
3-еизд. С-Пб.: Питер, 2004.
4. Емельянов А.А., Власова Е.А., Дума Р.В. Имитационное моделирование экономических процессов. М.: Финансы и статистика, 2002.
5. Кудрявцев Е.М. GPSS World. Основы имитационного моделирования
различных систем. М.: ДМК Пресс, 2004.
6. Томашевский В.Н., Жданова E.Т. Имитационное моделирование в среде GPSS. М.: Бестселлер, 2003.
14
Download