Прикладные аспекты имитационного моделирования. Учебное пособие
.pdf
3.1. Введение
вание очередей и задержек на обслуживание также представляют собой случайный процесс. Любая ИС является системой массового обслуживания, для которой характерны поступления заявок от клиентов на услуги в случайные моменты времени, а времена обслуживания заявок являются случайными величинами. Вследствие этого могут образовываться очереди.
Разрабатывать и анализировать модели случайных процессов образования очередей позволяет выполнять математический аппарат теории массового обслуживания. Модели, созданные в рамках этого математического аппарата, называются системами массового обслуживания (СМО). Такие модели позволяют вычислять вероятностные характеристики таких параметров, как длина очереди, моментов прихода заявок на обслуживание или длительность ожидания обслуживания. Эти вычисления особенно актуальны в случаях, когда система перегружена и её потери вследствие этого можно уменьшить, повысив эффективность организации обслуживания.
Анализируя тот или иной вид СМО, можно установить связь выходных параметров системы с теми параметрами системы, которые в обобщённой форме представляют элементы СМО и её структуру. В качестве выходных параметров системы, обычно, бывают время реакции системы на запрос пользователя или, например пропускная способность системы, а в качестве обобщённых параметров могут быть, например:
•числовые характеристики времени обслуживания;
•количество заявок в единицу времени (интенсивность потока);
•вероятности переходов между элементами СМО и другие. Соотношения, получаемые с помощью обобщённых параметров,
называются базисными моделями. Для связи обобщенных параметров СМО с реальными техническими параметрами необходимы соотношения, которые называются интерфейсными моделями.
Выделение в математической модели базисной и интерфейсной частей не является необходимым условием решения задач моделирования, но существенно повышает эффективность их решения. В результате появилась возможность использования одних и те же базисных моделей для решения подобных задач, а изменяя интерфейсную часть, появилась возможность учитывать конкретные особенности задачи.
31
3. Имитационное моделирование систем
3.2. Компоненты СМО
Модели СМО разрабатываются и применяются в ситуациях, когда приход заявок в систему и их обслуживание носят случайный характер. В этом случае велика вероятность появления очередей на обслуживание. В связи с этим в процессе исследования СМО можно определить преимущественно вероятностные параметры, например такие как:
•времена прихода заявок на обслуживание;
•длины очередей на обслуживание;
•длительности ожидания обслуживания.
Указанные основные параметры используются на этапе структурного анализа СМО для выявления перегрузок системы и образования «узких» мест, чтобы за счёт корректировки структуры СМО исключить перегрузку и улучшить обслуживание.
Познакомимся с основными компонентами необходимыми для задания СМО, после чего рассмотрим их некоторые общие характеристики.
Для задания СМО требуется описание входного потока заявок, порядка обслуживания очередей и функционирование аппарата обслуживания.
Входной поток заявок. Входной поток заявок определяется вероятностным законом, который управляет поступлением заявок на обслуживание. Поэтому описать поток заявок означает задание необходимого вероятностного закона. При этом заявка на обслуживание может быть единичной (клиент пришёл в парикмахерскую) или групповой (команда футболистов обслуживается в кафе). В соответствие с этим СМО можно классифицировать как СМО с единичным или с групповым обслуживанием. Кроме того, источник входного потока заявок может иметь неограниченную мощность (крупный железнодорожный узел) или ограниченную мощностью (оборудование цеха, обслуживаемое ремонтной группой).
На характеристики входного потока может оказывать влияние состояние обслуживающей системы. Обычно такая ситуация возникает, когда узел ожидания на обслуживание не располагает свободными местами или образовалась слишком длинная очередь на обслуживание.
32
3.3. Основы моделирования СМО
Дисциплина обслуживания очереди описывает порядок обслужи-
вания заявок. Наиболее простой порядок обслуживания, когда заявки выстраиваются в ряд и обслуживаются по принципу «первый пришёл – первый обслуживаешься» или наоборот.
Обслуживание заявок может носить случайный характер или являться комбинацией случайного и детерминированного фактора.
Используется также приоритетный порядок обслуживания (эвакуация людей с терпящего бедствие корабля). Может быть установлен порядок обслуживания с ограниченным временем ожидания, который означает, что заявка, ожидающая обслуживание, может уйти из очереди необслуженной.
Аппарат обслуживания (АО). Основной характеристикой АО является длительность обслуживания заявок, которая определяется как запросами клиентов, так и состоянием механизма обслуживания. Кроме того, на длительность обслуживания заявок оказывает влияние существование вероятности выхода из строя АО.
Описание системы обслуживания должно учитывать количество АО и конфигурацию их соединений между собой. С учётом конфигурации соединений, АО могут функционировать параллельно или последовательно.
3.3. Основы моделирования СМО
Типовой подход при анализе СМО состоит из двух этапов.
Первый этап состоит в приближённом описании реальной системы, используя при этом несложные математические модели. На втором этапе создаётся имитационная модель, в которой более полно учитываются существенные особенности задачи.
Есть группа важнейших вероятностных характеристик, которыми всегда интересуются разработчики моделей СМО:
•распределения числа входных заявок и длительностей их ожи-
дания;
•вероятность того, что АО занят или свободен;
•распределение длительностей периодов времени, когда АО свободен или занят;
33
3.Имитационное моделирование систем
•распределение интервалов времени между завершениями процедур обслуживания;
•вероятность того, что заданная «длина» очереди будет превышена. Перечисленные характеристики для простых СМО вычисляются с
помощью аналитических моделей, но для сложных требуются имитационные или другие модели.
Так как одним из необходимых компонентов при описании СМО является входной поток заявок (событий), то познакомимся с некоторыми его свойствами, которые используются при моделировании СМО.
Пусть имеем поток заявок, в котором моменты их появления различаются по времени, и выделим следующие свойства потока.
Ординарность. Свойство ординарности означает, что вероятность попадания более одного события в малый интервал времени t, является пренебрежимо малой величиной.
Отсутствие последствий. Свойство отсутствия последствий означает, что если события попадают на непересекающиеся по времени интервалы, то они являются независимыми. Это свойство указывает на то, что развитие процесса в будущем не коррелируется с его развитием в прошлом.
Стационарность. Входной поток заявок имеет свойство стационарности, если он однородный по времени, т.е. плотность событий в нём становится величиной постоянной.
В том случае, когда для потока выполняются все три свойства, то он называется стационарным пуассоновским потоком или кратко – простейшим. Такие потоки имеют широкое распространение в природе. Кроме того, если просуммировать стационарные и ординарные потоки с любым последствием, то в результате получаются потоки, близкие к простейшему, что подтверждает их широкое распространение.
Таким образом, при моделировании СМО входной поток заявок характеризуется количеством заявок, пришедших в определённом интервале времени и величиной промежутка времени (интервала) между последовательным поступлением заявок. При этом основными характеристиками обслуживания в СМО являются длительности обслуживания и ожидания.
Проиллюстрируем закон, который определяет плотность распределения числа требований за время t. Пусть Pk (t) вероятность прихода k
34
3.3. Основы моделирования СМО
требований за время t. С учётом свойств простейшего потока вероятность прихода n требований за время t+ t выразится следующим образом:
P |
(t |
n |
|
+
t)
|
n |
|
= |
P |
(t)P |
|
n−k |
k |
|
k =0 |
|
( t)
, т.е.
Pn (t + t) = Pn (t)P0 ( t) + Pn−1 (t)P1 ( t) + Pn−2 (t)P2 ( t) +... + P0 (t)Pn ( t).
При t→0 и используя свойство ординарности потока, можно пренебречь вероятностью прихода за t больше одного требования и положить, что при k >1 вероятности Pk ( t)= 0. Тогда запишем
P (t + t ) = P (t ) P ( t ) + P |
(t ) P ( t ) |
. |
|||
n |
n 0 |
n−1 |
1 |
||
|
|||||
Учитывая свойство стационарности потока, имеем P1( t)= t, где– коэффициент пропорциональности. При этом вероятность отсутствия требований за t определяется как
P ( t) =1− P ( t) =1− t. |
|
0 |
1 |
Тогда имеем
P (t + t) = P |
(t )(1 − t ) + P |
(t ) |
|||
n |
n |
|
|
n−1 |
|
или |
|
|
|
|
|
|
P (t + t) − P (t) |
|
|
|
|
|
n |
n |
= ( P |
(t) − P (t |
|
|
t |
|
|||
|
|
n−1 |
|
n |
|
|
|
|
|
||
При t→ 0 имеем дифференциальное уравнение
t
)) .
,
dPdtn = (Pn−1 (t) − Pn (t)), где n 1.
Для граничного условия P0(0)=1 это уравнение имеет решение P0(t) = e- t, а для n =1 имеет решение P1(t)= te- t, или в общем виде можно записать
Pn ( t ) = ( t )n e− t , n!
где Pn(t) – вероятность прихода n заявок за время t; – среднее число входящих требований в единицу времени, т.е. интенсивность потока.
35
3. Имитационное моделирование систем
Полученное выражение называется дискретным распределением Пуассона, математическое ожидание которого равно M(n)=λt.
Число требований в заданном интервале. Пользуясь распределе-
нием Пуассона, можно вычислять вероятность прихода ровно n требований на обслуживание за время t. Для этого используется функция F(n, t), которая для k n запишется как
|
|
|
( t) |
|
n |
|
n |
k |
|
− t |
|
|
||
F (n, t) = P (t) = e |
|
|
. |
|
|
|
|||
k |
|
|
k! |
|
k =0 |
|
k =0 |
|
Пример. В обслуживающий аппарат приходит в среднем 12 требований в час. Необходимо вычислить вероятность отсутствия в обслуживающем аппарате требований за 1 минуту и вероятность прихода не более 3-х требований за 10 минут.
Решение. Интенсивность прихода требований = 12/60 =
=0,2 заявок/мин. Для вычисления вероятности отсутствия в обслуживающем аппарате требований за 1 мин воспользуемся выражением P0(1)=
=e-0.2= 0,819 и находим ответ на первый вопрос.
Для нахождения вероятности прихода не более 3-х требований за 10 мин. вычисляем вероятности Pk (10) для k = 0,1,2,3 при t = 0,2*10 = 2, т.е.
( t ) |
|
( t ) |
|
( t ) |
|
( t ) |
|
|
|
|
|
0 |
|
|
1 |
|
2 |
|
3 |
|
|
F( 3,10 ) = e−t |
|
+ |
|
+ |
|
+ |
|
|
|
= e−2 ( 1 + 2 + 2 +1,333) = 0,857. |
|
0! |
|
1! |
|
2! |
|
3! |
|
|
|
|
|
|
|
|
|
|
||||
Эти вычисления можно выполнять с использованием таблицы по-
казательной функции е-х. Тогда P0(10)=0,135; P1(10)=0,271; P2(10)=0,271; P3(10)=0,180. Таким образом, вероятность прихода не более 3-х требований за 10 мин равна 0,857.
Отметим, что определить соответствие какого-либо потока пуассоновскому (простейшему) потоку требований, можно сравнив его математическое ожидание и дисперсию. В пуассоновском потоке они одинаковы и равны t. Если наблюдается значительное отличие этих характеристик, то рассматриваемый поток не является пуассоновским.
Интервал между двумя последовательными требованиями. Ве-
роятность того, что некоторая величина превысит длительность промежутка времени между приходами требований равна е- . Функция F( )= = 1–e- определяет распределение интервалов времени между приходом
36
3.4. Основные понятия марковских процессов
требований. Продифференцировав эту функцию, определим плотность распределения f( )= e- .
Распределение вероятностей длительностей промежутков времени между приходом последовательности требований в простейшем (пуассоновском) потоке подчиняется экспоненциальному закону распределения, для которого
M ( ) = 1 |
|
; |
D( ) = 1 |
|
; |
|
|
= |
D( ) = 1 |
|
|
|
|
|
2 |
|
|
|
|
|
где ( ) – среднее квадратичное отклонение.
Для этого закона распределения характерно то, что прихода требования после времени не коррелируется с предшествующих требований.
,
вероятность
приходами
Время обслуживания и время ожидания. Производительность об-
служивания требований в основном зависит от количества каналов обслуживания и их быстродействием. Обычно время обслуживания требования подчиняется экспоненциальному закону, который наиболее эффективен для систем, в которых основное количество требований обслуживается быстро, а требований с длительным обслуживанием относительно мало.
Экспоненциальный закон имеет плотность распределения g(t)= е- t (t>0), среднее время обслуживания 1/ и дисперсию времени обслужива-
ния 1/ |
2, где |
|
называется интенсивностью обслуживания, а функция рас- |
||||
|
|
|
|
|
|
|
|
пределения равна |
|
|
|
|
|||
|
|
|
t |
|
|
|
|
|
|
|
G( t ) = e |
− t |
dt = 1 − e |
− t |
. |
|
|
|
|
|
|||
|
|
|
0 |
|
|
|
|
|
Функция G(t) определяет вероятность того, что за время t обслужи- |
||||||
вание будет закончено и канал освободится, а вероятность того, что за время t канал останется занятым, равна 1– G(t)=e- t. Если СМО имеет k каналов обслуживания, то (e- t)k=e-k t.
3.4. Основные понятия марковских процессов
Рассмотрим СМО с конечным множеством состояний и непрерывным временем, в которых система меняет свои состояния каждый раз, когда наступает новое событие. При этом к событиям может относиться
37
3. Имитационное моделирование систем
поступление новой заявки или её уход на обслуживание или конец обслуживания заявки и другие события. Если условиться, что:
•входной поток – распределение Пуассона;
•процесс обслуживания – экспоненциальное распределение времени;
•процесс обладает свойством отсутствия последствий,
то такой процесс будет называться марковским.
Постановка задачи. Пусть СМО содержит m одинаковых каналов (пунктов) с входным потоком заявок, отвечающим свойствам простейшего потока. Обслуживание заявки в системе допускается только при наличии свободного канала, а в случае его отсутствия заявка помещается в очередь. При этом если допускается неограниченная «длина» очереди, то система допускает неограниченное число состояний.
В связи с тем, что входной поток является простейшим, имеющим свойство ординарности, то за время t переходом системы через соседние состояния можно пренебречь. Поэтому по истечению времени t система либо не изменит своё состояние, либо перейдёт в соседнее состояние.
Пусть система имеет S состояний. Обозначим их следующим образом:
•S0, когда все АО системы свободны для обслуживания;
•Si, когда i АО (1 i m) системы не доступны для обслуживания;
•Sm+r, когда все m АО заняты и r заявок в очереди на обслуживание;
•pi(t) – вероятность того, что СМО находится в состоянии Si.
Таким образом, в задаче требуется вычислить вероятности состояний СМО от времени.
Напомним, что если события несовместимы, то сумма вероятностей их состояний равна единице. Поставленная задача решается с помощью системы дифференциальных уравнений Колмогорова.
При представлении СМО марковских процессов используют размеченный граф состояний системы, в котором вершины – состояния системы, а дуги (рёбра) – переходы между вершинами. При этом дуги графа помечаются значениями плотности вероятности соответствующего перехода.
Запись уравнений Колмогорова становится более лёгкой при использовании размеченного графа состояний системы. Сформулируем правило составления уравнений, рассмотрев k-й фрагмент графа (рис. 3.1).
38
3.4. Основные понятия марковских процессов
|
|
k-1, k |
k, k+1 |
||
|
|
|
|
|
|
Sk-1 |
|
|
Sk |
|
Sk+1 |
|
|
|
|
|
|
|
- k, k-1 |
- k+1, k |
|||
Рис. 3.1. К-й фрагмент графа
Производная вероятности k-го состояния равна сумме произведений веса дуги, инцидентной k-й вершине, на вероятность состояния, к которому она направлена. При этом вес дуги положительный, если дуга выходит из вершины k, и отрицательный, если дуга входит в вершину k.
Приведённое правило справедливо для любого марковского про-
цесса.
Система, в которой 1 i m соответствует системе без очередей, но существуют также некоторые частные случаи:
1.СМО с ожиданием. Характерная особенность таких систем заключается в том, что заявки остаются в очереди пока не обслужатся, что соответствует неограниченному времени ожидания.
2.СМО с отказами. Характерная особенность таких систем заключается в том, что заявки принимаются только при наличии свободных каналов, поэтому в таких системах нет очередей.
3.СМО с заданной длиной очереди. В этом случае допустимая длина очереди задаётся. Поэтому заявка становится в очередь только тогда, когда длина очереди меньше заданного значения. В таких системах время пребывания в очереди прогнозировать практически невозможно.
Все процессы и их частные случаи имеют одинаковую структуру размеченных графов состояний, которые являются цепочкой с прямой и обратной связью между соседними состояниями. Интересно то, что многие биологические процессы в популяции живых организмов имеют такую же структуру графов состояний и их часто называют процессами «гибели и размножения».
39
3. Имитационное моделирование систем
Стационарный режим. Этот режим существует при t→, а его характерной особенностью является независимость вероятностей состояний системы от времени. Стационарный режим описывает система алгебраических уравнений, которая получается из системы дифференциальных уравнений Колмогорова, если приравнять к нулю их правые части. С учётом того, что для несовместных событий сумма вероятностей их состояний равна единице, система алгебраических уравнений позволяет определить общие характеристики процесса, такие как:
•математическое ожидание числа заявок, ожидающих обслуживание, что характеризует среднюю длину очереди в системе;
•вероятность того, что пришедшая заявка будет обслужена, что характеризует относительную пропускную способность системы;
•математическое ожидание числа каналов, выполняющих обслуживание, что характеризует среднее число каналов, занятых обслуживанием.
3.5. Имитационное моделирование СМО
Для выполнения процесса ИМ необходимо:
•разработать модель процесса;
•разработать или выбрать подходящий язык описания модели;
•разработать ПО для работы с моделью.
Разнообразные структуры имитационной модели СМО (далее модель) в процессе её разработки получаются за счёт возможности выбора элементов модели. При этом под элементами модели понимаются:
•события, связанные с изменением состояния модели;
•аппараты обслуживания (АО);
•узлы, управляющие продвижением заявок.
Выбор указанных элементов определяет ориентацию модели на события, на устройства или на процессы.
Примером модели с ориентацией на устройство является функцио- нально-логический уровень представления цифровой аппаратуры, функционирование которой описывает система логических уравнений. Для описания моделей с ориентацией на события – языки Симскрипт и SMPL, а для описания моделей с ориентацией на процессы – Симула, GPSS и другие.
40
