Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Оценка длительности пребывания процесса в множестве невозвратных состояний






Рассмотрим поведение цепи Маркова при росте числа шагов k. Из анализа структуры матрицы Рк (3.10) следует, что процесс, стартовав из некоторого состояния S i принадлежащего невозвратному множеству Т, на каждом шаге с вероятностями, определенными матрицей R, переходит вэргодическое множество Ť. Через определенное число шагов процесс окажется в Ť с вероятностью, как угодно близкой к единице.

При моделировании реальных систем с помощью конечных цепей Маркова часто бывает необходимо оценивать показатели продолжительности работы системы или трудоемкости процессов. Для этой цели нужно уметь рассчитывать число шагов, в течение которых процесс не покидает множество Т («время жизни» процесса), а также «время жизни» отдельных состояний этого множества.

Обозначим пij общее число моментов времени (тактов работы системы), проведенных процессом в состоянии Sj при условии, что он стартовал из состояния Si (Si, Sj € T). Понятно, что nij - случайная величина, принимающая целочисленные значения 0, 1, 2,... с соответствующими вероятностями, которые мы будем обозначать pij(l),..., piJ(k),.... Таким образом Рij{к)= Рi{nij=k} - вероятность того, что система за все «время жизни» процесса находилась в состоянии Sj при старте из Si, k раз. При этом

Рij(k)=1. Зная распределение вероятностейможно вычислить все необходимые статистические

k=0

характеристики процесса - математическое ожидание, дисперсию и другие. Однако вычисление таких распределений в общемслучае - достаточно сложная задача, поэтому мы ограничимся в данном разделе рассмотрением трех более простых практически важных задач:

- оценки вида функции распределения r ij (k);

- вычисления математического ожидания величин пij, т.е. M ë nij û и средних значений трудоемкости процесса;

- вычисления дисперсий пij, т.е. D ë nij û среднеквадратичных отклонений трудоемкости процесса.

1. Оценим вид функции распределения r ij (k) случайных величин пij. Обратимся к матрице (3.11)

R(k) = || rij (k)||, Si Î T, Sj Î Ť.

Элемент этой матрицы rij(к) представляет собой вероятность перехода в Sj Î Ť при старте из St Î T за k шагов. Разность r ij(k) = rij(k)-rij(k-1) есть вероятность перехода в Sj Î Ť точно на k шаге при старте из Si Î T. Эта разность всегда неотрицательна в силу структуры матрицы Рk (3.10).

Задача нахождения вероятностей распределения Прощается, если рассматривать переходы не между отдельными состояниями, а между множествами Т и Ť. Граф цепи Маркова примет вид, показанный на рисунке 3.5.

 

 

Обозначим вероятность перехода между множествами T и Ť при старте из Sl Î Tза один шаг

где rij - элемент матрицы R (3.9); qi =l-r, - вероятность того, что процесс останется в Т.

Для рассматриваемой системы матрица переходных вероятностей имеет вид

и для нее по формуле (3.11) нетрудно подсчитать вероятности перехода из T в Ť за kшагов и на k -м шаге.

Можно убедиться в том, что pj(k) = riqik-1 представляет собой функцию распределения случайной величины ni.

В самом деле, все ri(k)³ 0, кроме того, воспользовавшись формулой для суммы членов геометрической прогрессии, получим:

Полученное распределение носит название показательного. График этой функции имеет вид, показанный на рисунке 3.6.

Из графика видно, что наиболее вероятны малые значения пi, а с ростом числа шагов вероятность ri (k) монотонно убывает.

Математическое ожидание и дисперсия числа пребываний процесса в множестве Т определяется по известным формулам (промежуточные выкладки опущены):

Вернемся к случайным величинам пij. Их функции распределения представляют собой аналоги показательного распределения, однако вычисляются в общем случае достаточно сложно. Что касается матожиданий и дисперсий этих величин, то для их вычисления, как мы увидим в следующих разделах, не нужно знать функции распределения.

2. Переходя к вычислению матожидания величины nij, начнем с изучения свойств матрицы Qk, входящей в структуру Pk в формуле (3.10). Поскольку по определению все элементы матрицы Q рij1, и

S n

∑ pij ≤ 1 (в отличие от матрицы Р, для которой ∑ pij = 1 Si, Sj Î Т, то при больших k эта матрица

j=1 j=1

стремится к нулевой, т.е. Qk —> Ø S при k —> ∞). Здесь Ø S - нулевая квадратная матрица 5-го порядка.

Для дальнейшего нам понадобится формула, оценивающая матрицу (I - Q)-1. Рассмотрим тождество



 


Матрица (I-Q) неособенная, т.е. det(I-Q)≠ 0, в чем легко убедиться.

Следовательно, существует обратная матрица (I-Q) -1, которая играет большую роль при изучении марковских процессов с матрицей переходных вероятностей вида (3.9). Эту матрицу называют фундаментальной и обозначают



 


3. Перейдем теперь к оценке среднего «времени жизни» состояний процесса, относящихся к невозвратному множеству.

Обозначим, как и прежде, через nij общее число моментов времени, проводимых процессом в состоянии Sj при условии, что он начался из состояния Si. Эта функция определена только для невозвратного множества, т.е. Si, Sj Î T.

Можно показать, что матрица математических ожиданий чисел n ij равна N, т.е.

 

 

Для того, чтобы в этом убедиться, введем вспомогательную переменную ukij, которая принимает единичное значение, если процесс, стартовав при t = t0 из S=Si оказывается при t = tk в S = Sj, т.е.

1, если S(tk)=SJ | S(t0)=Si ,

uikj =

0 в противном случае.

Вероятность того, что uikj = 1, обозначим рi(k)j.

Легко видеть, что nij =∑ uikj.

k=0

Оценим теперь матожидание матрицы, образованной элементами пij:

Здесь рi(k)j - элемент Рk, Si, S j Î T.

Таким образом, среднее число шагов, которое проводит процесс в невозвратном состоянии, S j, начавшись в Si, всегда конечно и определяется i-й строкой матрицы (I - Q)-1.

4. Рассмотрим другой вывод формулы (3.14), который понадобится в дальнейшем.

Величина пij на каждом временном шаге k может быть определена соотношением

 

 

Первая сумма в написанном выражении относится к случаю, когда состояния Si, и Sj совпадают, кроме того, процесс на следующем шаге уходит в эргодическое множество Ť. Вторая сумма представляет собой вклад в величину пij за счет перехода в j -е состояние из i -го через промежуточные l-e состояния, а слагаемое δ ij - добавление 1, если Si = Sj.

Раскроем скобки во втором слагаемом и учтем, что

Тогда выражение для пij(k+1) примет вид

Применив к этой формуле операцию математической ожидания и рассматривая предельный случай (k —> ∞ и nkj(k) —> nkj), получим:

 


Перейдем к матрицам:

 


откуда N = (I - Q)-1.

5. Напомним, что i-я строка матрицы N определяет среднее число тактов пребывания марковского процесса в различных состояниях невозвратного множества при старте из Si. Поэтому если нас интересует только одно конкретное начальное состояние, то вычисление всей матрицы N дает избыточную информацию. В этом случае вычисления можно упростить.

Формулу N = (I-Q)-1 можно переписать иначе:

 
 

Отсюда, если представляет интерес только начальное состояние SiÎ T, достаточно рассмотреть i-ю строку уравнения (3.16)при этом величины nij определятся системой уравнений:


 

 


В правой части системы уравнений единица стоит в i -й строке.

6. Рассмотрим теперь случай, когда система может стартовать из любого состояния StÎ T с заданной вероятностью, т.е. вектор начальных состояний имеет вид


 



где хi0 - вероятность того, что марковский процесс начнется из St.

В этом случае величина N1. - среднее число тактов пребывания процесса в состоянии Sl Î T - определяется взвешенной суммой элементов j -го столбца матрицы N:

 
 

Пример. Вернемся к рассмотренному ранее примеру. В нашей системе имеется одно поглощающее состояние, которое соответствует ожиданию сигнала оператора с клавиатуры,

остальные состояния - эргодические. Представим матрицу в виде

 
 

 

Вычислим

 

 
 

Выпишем матрицу вероятностей переходов для множества Т невозвратных состояний

Здесь det{l -Q)=l-p1~p2- p3 = р4.

Матрица N показывает среднее число пребываний процесса в каждом из состояний S0, Sl: S? , S3. Если процесс начинается с So, то, как видно по первой строке матрицы N,

 

в состоянии So процесс был в среднем — раз;

Р4

Р1

в состоянии S, процесс был в среднем —- раз;

Р4

Р 2

в состоянии S2 процесс был в среднем —— раз;

Р4

Р3

в состоянии S3 процесс был в среднем —— раз.

Р4

 

Например,

пусть р1 =0.8, р2 = 0.05, p 3 =0.1, p4 =0.05.

Тогда в состоянии S0 процесс был в среднем п11 = 20 раз;

в состоянии S1 процесс был в среднем п12 = 16 раз;

в состоянии S2 процесс был в среднем п13 = 1 раз;

в состоянии S3 процесс был в среднем п14 - 2 раза.

Нетрудно проверить, что п12 +п13 +п14 = 19, плюс система 1 раз перешла в состояние S4, таким образом п11 = 19 +1 = 20.

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

Если C1,..., Cs - средние трудоемкости этапов, то при старте процесса из состояния S1 общая средняя трудоемкость вычислительного процесса равна

Пусть C 1 = 0.5с - среднее время работы процессора;

C2= 0.75с - среднее время работы НЖМД;

С3 = 2.5с - среднее время работы НГМД;

С4=30с - среднее время работы принтера.

Тогда по формуле (1.19) общая средняя трудоемкость (продолжительность) одного цикла работы ВС при старте из состояния So составит

С =0.5 -20 + 0.75 -16 + 2.5 -1 + 30- 2- 84.5с.

 

8. Оценим теперь дисперсию числа пребываний процесса в множестве невозвратных состояний М ë nij û.

Этот показатель характеризует степень разброса величины пij относительно среднего.

В соответствии с определением дисперсии случайной величины nij имеем:



 


Перейдем к матрицам:

Второе слагаемое в (3.20) - это матрица, образованная из квадратов элементов матрицы N. Обозначим ее

Вычислим теперь первое слагаемое в (3.20). Оно представляет собой матрицу, составленную из матожиданий случайной величины пij2. Для вычисления М\п12\ воспользуемся

приемом, который был применен в п. 3 настоящего параграфа, для вычисления M[njJ j.

Рассматривая предельный случай > ∞), имеем

Здесь первое слагаемое определяет вклад в величину п12. начального состояния, когда процесс, начавшись в Si Î Т, сразу же перешел в Sk Î Ť. Второе слагаемое определяет вклад в величину n ij за счет перехода в Sj из Si через промежуточное SkÎ T

 

Добавка δ kj. в круглой скобке относится к случаю, когда процесс стартовал из Sj Î T.

Раскроем скобки во втором слагаемом (3.22) и, проделав элементарные преобразования, получим:



 

В последнем преобразовании использована следующая цепочка тождеств:

где (QN)dg - матрица, полученная обнулением всех элементов исходной матрицы вне главной диагонали (благодаря множителю δ ij в последнем слагаемом (3.23)). Далее проделаем некоторые преобразования над матрицами. Перенося неизвестную матрицу ||M [п2kj ||в левую часть равенства, имеем:

 

т.к. Idg=I.

Возвращаясь к (3.20) с учетом. (3.21), получим окончательно:

Пример. Вернемся к нашему примеру и оценив дисперсии числа шагов вычислительного процесса. Как было получено ранее,

 


 


Эта матрица показывает дисперсию числа пребываний процесса в каждом из состояний. Мы видим, что вне зависимости от стартового состояния дисперсии числа пребываний в различных состояниях равны:

В ряде случаев исследователя интересует не дисперсия, а среднеквадратичное отклонение числа пребываний процесса от среднего, которое вычисляется по известной формуле

 

или в матричной форме



 


Таким образом, матрица среднеквадратичных отклонений получается извлечением квадратного корня из каждого элемента-матрицы D.

Пример. Для тех же численных значений вероятностей что рассматривались ранее

Располагая матрицей а, можно вычислить среднеквадратичное отклонение трудоемкости вычислительного процесса от среднего:

Для рассматриваемого примера

 

3.5. Исследование динамики цепей Маркова при большом числе шагов

В этом параграфе рассмотрен класс задач, связанных с оценкой предельных вероятностей пребывания системы в состояниях эргодического множества. Такие задачи особенно важны, если цепь Маркова не содержит множества невозвратных состояний.

Как было выяснено выше, динамика смены состояний однородной цепи Маркова определяется поведением матрицы Pk при к = 1, 2,.... Однако непосредственное применение формулы (3.5) для определения переходных характеристик этого процесса, в частности, скорости сходимости к предельным вероятностям пребывания в различных состояниях при k-> ∞, неудобно.

1. Для оценки скорости сходимости можно привести матрицу Р к диагональному виду с помощью линейного преобразования. Предположим, что матрица Р имеет п собственных чисел λ ,..., λ п. Тогда ее можно привести к виду:

P = UΛ U-1 (3.27)

где Λ - диагональная матрица

а матрица U составлена из собственных векторов матрицы Р так, что i -й столбец матрицы U является собственным вектором матрицы Р при собственном числе λ.

Напомним, что i-е собственное число матрицы Р λ, есть i -й корень алгебраического уравнения

det{P-λ l) = 0, (3.28)

а собственный вектор ui, соответствующий собственному числу λ i, есть решения линейного уравнения

 

Pui = λ iu i . (3.29)

Преобразование (3.27) удобно тем, что при возведении степень матрицы фактически возводится в степень только диагональная матрица

Рk =(U Λ U-1)k = U Λ k U-1, (3.30)

причем



 


Таким образом, динамику изменения матрицы Рk легко оценить по поведению λ ki, i = 1,..., п.

Мы уже упоминали, что матрица Р, определяющая однородную цепь Маркова, является стохастической матрицей [14]. Особенностью этой матрицы является то, что ее максимальное собственное число равно 1, и ему соответствует собственный вектор, составленный из единиц: [1, 1,... l].

Пример. Продолжим рассмотрение динамики системы, изображенной на рисунке 3.2. Для упрощения расчетов объединим состояния S,, S? , S3, описывающие файловый обмен, в одно. Тогда система будет иметь три состояния: S, - работа процессора; S2 - файловый обмен; S3 - состояние поглощения, а матрица переходных вероятностей примет вид

где р = р1 + р2 + р3 - вероятность выполнения операций файлового обмена после окончания работы процессора.

 

Приведем матрицу Р к виду (3.27). Для этого сперва определим собственные числа матрицы Р из уравнения (3.28):



 


откуда характеристическое уравнение примет вид

(1-λ)(λ 2-р)=0.

Нетрудно видеть, что корни этого уравнения (собственные числа матрицы Р) равны, соответственно, λ 1= 1, λ 2 = Ö p, λ 3=p. Таким образом, матрица Λ примет вид

Определим теперь собственные векторы ui = ë ui1, ui2, ui3 û матрицы Р для каждого собственного числа λ i (i = 1, 2, 3) из уравнения (3.29).

Для λ 1=l имеем:

откуда, положив в полученной недоопределенной системе уравнений и11=1, получим и1213=1, т.е.

что соответствует отмеченному выше свойству стохастичесих матриц.

Аналогично для λ 2 = Ö p, положив и22 = 1, получим:


 

 
 


Таким образом, матрица Р приведена к форме (3.27), а ее k-я степень в соответствии с (3.30) имеет вид

 

Из полученного выражения для матрицы Рk следует, что вероятности пребывания процесса в состояниях So и S1, относящихся к невозвратному множеству, уменьшаются со скоростью, пропорциональной р.

Если произвести перемножение матриц и некоторые преобразования, то получим:

при нечетных k

при четных k


 



Нетрудно видеть, что вне зависимости от четности k

т.е. система при k -> ∞ приходит в поглощающее состояние с единичной вероятностью.

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



 

 

Напомним, что вектор состояния X(tk) определяется формулой (3.5)

X(tk)=X(t0)Pk

а k -я степень канонической стохастической матрицы имеется структуру (1.10)

При большом числе шагов, как мы установили, матрица Qk-> Ø, а матрицы Wk и R(k) стремятся к некоторые предельным W k -> Wnpeд, R(k)R пред. Таким образом, в предельном случае

Матрицу Рпред можно найти описанным выше способом, выполнив спектральное разложение матрицы Р и положив k —> ∞. Тогда

Xпред = X (t0)∙ Pпред.

Однако существует более простой способ определения Xnptu. Он основан на том, что при большом числе шагов вектор X(tk) сходится к Хиред. Из соотношения

X(tk+1) = X(tk)-P, I

при k-* со следует, что X(tk)-> X(tk+])-> Xnpeд и

Xпред = XпредP (3-34)

Решая уравнение (3.34) относительно неизвестны x1 пред, x2 пред, …, xn пред, при дополнительном условии

 

получим вектор X пред.

Так, для предыдущего примера с матрицей (3.32) уравнение для предельных вероятностей (3.34) имеет вид:

или в координатной форме с учетом (3.35):



 

.

Отсюда видно, что х1 пред = х2 пред = 0, х3пред = 1, т.е.

Xпред=[0, 0, 1].

Этот же результат может быть получен на основе (3.33):

X пред =X 0 ∙ P пред .

Понятно, что при любом Х0 = ë x01x02x03 û (учитывая, что х010203 = 1), получим то же значение вектора Хпрвд.

3.6. Цепи Маркова с непрерывным временем

До сих пор мы рассматривали марковские процессы с дискретным временем. Однако в ряде случаев (например, при моделировании надежности аппаратуры) удобно иметь дело с ситуацией, когда система имеет конечное множество состояний S= {S1,..., Sn}, а переходы из одного состояния в другое возможны в любые случайные моменты времени t. В этом случае множество моментов времени, в которые рассмат­ривается система, совпадает с числовой осью, т.е. Θ = R.

Случайный процесс с непрерывным временем называет непрерывной цепью Маркова, если поведение системы после произвольного момента времени t зависит только от состояния процесса в этот момент времени и не зависит от истории процесса, предшествующей моменту времени t.

Для непрерывной марковской цепи вероятности пребывания системы в состоянии Si в момент

n

времени t обозначим, как и в п. 3.1. x, (t), i = l,..., n. При этом ∑ xi(t)=1, t Î Θ.

i=1

Эти вероятности образуют вектор X(t)= [xl(t)...xn(t)]. Предположим, что система в момент времени находится в состоянии Si. Рассмотрим элементарный промежуток времени ∆ t, примыкающий к моменту времени t. Назовем плотностью вероятности перехода (или интенсивностью перехода) μ ij (t) предел отношения вероятности перехода p ij(∆ t) системы за время ∆ t из состояния Si в состояние Sj к длине промежутка ∆ t:

Из формулы следует, что при малом ∆ t вероятность переходов с точностью до бесконечно малых высших порядков

pij(∆ t)≈ μ ij (t)∙ ∆ t. (3.36)

Написанную формулу можно рассматривать как основную гипотезу теории цепей Маркова с непрерывным временем: вероятности перехода пропорциональны ∆ t и не зависят от предыстории процесса.

По аналогии с п. 3.1. назовем марковский процесс однородным, если μ ij не зависят от времени, в противном случае имеет место неоднородный марковский процесс. Предположим, что марковский процесс однороден и известны плотности вероятностей перехода μ ij для всех пар состояний Si и Sj. Тогда, согласно (3.36), известны и величины pij(∆ t). По аналогии с формулой (3.3) имеем

или в векторной форме (по аналогии с (3.4)):


 

где P (∆ t)=|| pij (∆ t)|| - матрица переходных вероятностей на интервале М.

Вычтем из обеих частей (3.37) вектор X(t). Тогда эта формула примет вид:

где I - единичная матрица размерности п.

Поскольку сумма элементов в каждой строке матрицы P(∆ t) равна единице, т.е.

то матрицу I можно формально представить в виде

Подставив (3.39) в (3.38), приведем уравнение к виду

 


 


Поделив (3.40) на ∆ t и вычислив предел левой и правой частей этого выражения при ∆ t -> 0, имеем:



 


откуда получаем систему дифференциальных уравнений для вероятностей состояний:

где матрица Я имеет вид:

В координатной форме z-e уравнение системы (3.41) имеет вид:

Поскольку произведение \xjixi встречается в первом и во

t0poM слагаемом правой части уравнения (3.43) с разными а1сами, то его можно переписать иначе:



Система (3.39) и (3.42) рассматривается при начальном условии:

Система дифференциальных уравнений для вероятностей состояний (3.41), (3.42) или (3.44) носит имя ее автора - академика А.Н. Колмогорова.

Интегрирование этой системы по времени позволяет вычислить функции хi(t). При этом можно

n

рассматривать систему из п -1 уравнения, поскольку ∑ xi(t) = 1, t Î Θ.

i=1

Анализ формулы (3.44) позволяет сформулировать правила составления уравнений Колмогорова непосредственно по размеченному величинами μ ij ориентированному графу системы. Для i-го узла графа в левой части уравнения записывается производная от вероятности хi по времени, а в правой части - столько слагаемых, сколько дуг графа связано с рассматриваемым узлом. Каждое слагаемое равно произведению плотности вероятности перехода, соответствующей данной дуге графа, на вероятность того состояния, из которого исходит дуга графа. Если стрелка на дуге направлена к рассматриваемому узлу, то произведение берется со знаком плюс, если же стрелка направлена от рассматриваемого узла, то соответствующее произведение берется со знаком минус.

Пример. Вернемся к примеру, рассмотренному в п. 3.5 предположим, что система работает в непрерывном времени при этом вместо вероятностей pi заданы плотности вероятностей μ i. Плотности вероятностей μ i, в системе непрерывным временем пропорциональны соответствующе вероятностям рi в системе с дискретным временем. Применительно к нашей задаче положим, что

р = 1 соответствует плотность μ,

р1 соответствует плотность μ 1

р2 соответствует плотность μ 2.

Так как р1 + р2 = 1, то μ 1 + μ 2 = μ.

Размерность плотности вероятностей равна 1/с, таким образом, величина μ определяет масштаб времени динамической системы.

Граф системы показан на рисунке 3.7.

 
 

В соответствии с написанными выше правилами составляем систему уравнений вида (3.44). С учетом того, что μ = μ 1+ μ 2, имеем


 

 

Решим данную систему дифференциальных уравнений и исследуем решение. Как уже было сказано выше, достаточно рассматривать два уравнения этой системы, например первое и второе, а x3(t) определить из соотношения х123 =1. Представим первые два уравнения в векторной форме:

Х = Хp, (3.47)

X(0)=X0 ,

где в соответствии с (3.46) матрица p имеет вид

Решение системы (3.47) в матричной записи определяется формулой [14]

X(t)=X0e p. (3.49)

Воспользуемся спектральным разложением матрицы p (см. п. 3.5):

p = RΛ R-1,

где Λ - диагональная матрица, составленная из собственных чисел матрицы p; R - матрица, составленная из собственных векторов матрицы p.

Составляем характеристическое уравнение для матрицы p:

det( p - λ I) = 0,

откуда

(μ + λ)2 = μ μ 1,

Следовательно, λ 1 = - μ + Ö μ μ 1 , λ 2 = - μ + Ö μ μ 1.

Мы видим, что собственные числа матрицы p действительные и отрицательные.

Определим собственные векторы матрицы p:

Следовательно, матрица R имеет вид

а обратная к ней -

Таким образом, матричная экспонента примет вид

Возвращаясь к решению уравнения (3.47), представим формулу (3.49) в виде

X(t) = X0ReΛ tR-1,

а с учетом формул (3.50), (3.51), (3.52) получим после перемножения матриц выражение для вероятностей x1(t), x2(t), x3(t) в покомпонентной записи:

x3(t)=1-x1(t)-x2(t).

 
 

Характер изменения вероятностей во времени при мяльных условиях х01 = 1, х02 = х03 =0 и значениях плотностей вероятностей μ = 1, μ 1 = μ 2 =0.5 показан на рисунке 3.8.

Мы видим, что вероятности x1(t) и x2(t) с течением времени монотонно стремятся к нулю, а х3(t)- к единице. Таким образом, система стремится к предельному состоянию, которое мы определили в п. 3.5. Предельные вероятности можно определить, и не решая систему дифференциальных уравнений (3.46), а положив в ней х1 = х2 = х3 = 0 и рассмотрев полученную систему линейных алгебраических уравнений.

3.7. Моделирование надежности вычислительных систем

Рассмотрим важную область применения цепей Маркова совместно с сетями Петри - моделирование надежности систем.

Надежность - свойство объекта сохранять во времени в установленных пределах значение всех параметров, бактеризующих способность выполнять требуемые функции в заданных режимах и условиях применения, ремонта, хранения втранспортирования.

Не выходя за рамки специальности, мы ограничимся рассмотрением надежности вычислительных систем (ВС).

Для ВС отказы подразделяются на аппаратные и программного обеспечения (ПО). Аппаратный отказ - неисправность оборудования. Отказ ПО - следствие программных ошибок. Природа отказов ПО существенно отличается от природы отказов аппаратуры: ПО не подвергается износу. В силу этого хорошо разработанные методы анализа надежности технических систем нельзя автоматически переносить и использовать для анализа надежности ПО, нужны специальные методы. Время восстановления отказов ПО значительно больше, чем для аппаратной части. Восстановление, или точнее - исправление, ПО обычно производится непосредственно разработчиками ПО. Это длительная процедура, и в этом смысле отказ ПО можно воспринимать как «катастрофу».

Рассмотрим показатели надежности. которые характеризуют способность системы сохранять и восстанавливать свое исходное состояние.

Устойчивость ВС - ее способность противостоять воздействиям сбоев и отказов в работе аппаратуры и ошибок в исходных данных.

Надежность ВС - вероятность ее работы без отказа в течение определенного периода времени, рассчитанная с учетом весомости отказа для пользователя. Таким образом, надежность ВС определяется не только частотой отказа, но я последствиями, к которым приводит отказ.

Функциональная надежность - свойство системы обеспечивать получение достоверного результата или выполнение функционального задания в заданное время.

Отказ - событие, заключающееся в нарушений работоспособности объекта.

Сбой - кратковременный самоустраняющийся отказ.

Модель надежности ВС. При моделировании надежности систем приходится учитывать случайный характер отказов - событий, которые переводят систему из одного состояния (нормальной работы) в другие - неисправности, тестирования и др. В то же время причинно-следственные связи в терминах «условие - событие» удобно представлять в виде сети Петри. В соответствующей сети Петри необходимо предусматривать переходы, альтернативное срабатывание которых происходит с заданными вероятностями. Каждый из таких переходов при срабатывании порождает дерево маркировок, определяющих процессы, происходящие в системе при наступлении соответствующей альтернативы.

Если принять допущение о независимости указанных вероятностей от предыстории процесса, то на основе полученного дерева маркировок может быть построена цепь Маркова с дискретным временем. Состояниями такой цепи будут детерми­нированные последовательности маркировок, а указанные выше вероятности определят переход из одного состояния в другое.

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

Модель системы. Соответствующая обыкновенная сеть Петри PN приведена на рисунке 3.7. Здесь по сравнению рисунком 2.9 добавлены следующие элементы:

P5 - ВС успешно прошла тестирование;

Р6 - ВС не прошла тестирование;

р7 - заявка на тестирование;

p8 - заявка на диагностику;

р9 - ВС находится в аварийном состоянии;

t5 - неудачное завершение тестирования;

t6 - удачное завершение тестирования;

t7 - начало диагностики ВС;

t8 - разрешение дальнейшей работы ВС (неисправность классифицируется как сбой);

t9 - аварийное завершение работы ВС.

Начальная маркировка сети имеет вид

M0=[ω, 0, 1, 0, 0, 0, 0, 0, 0].

В позиции pi мы предполагаем неограниченное число фишек, обозначаемое СО. Это означает, что число заявок на обслуживание всегда достаточно велико.

На рисунке 3.10 показано полное дерево маркировок рассматриваемой сети Петри, порождаемое маркировкой М0. После 4 шагов сеть либо возвращается к начальной маркировке М0, либо к тупиковой маркировке М6, соответствующей аварийному состоянию ВС.


 


Инварианты сети. Для оценки структурных свойств построенной сети рассмотрим ее инварианты в соответствии с теорией, изложенной в пункте 2.1.6. На основе схемы рисунка 3.9 составим матрицу размерностью 9Х9:

Анализ показывает, что ранг этой матицы rv равен 7, а дефект dv, соответственно, равен 2. Таким образом, в рассматриваемой сети существуют два инварианта позиций два инварианта переходов.

Нетрудно убедиться, что для следующих двух векторов

выполняются условия (2.10): Y = Ǔ -V = Ø 9. Это означает, что при работе сети сохраняется сумма фишек впозициях р2 и р3 (первый инвариант позиций) и в позициях р3, р5, р6, р7, р8 и р9 (второй инвариант позиций). В этом можно убедиться, проанализировав дерево маркировок.

Аналогично для следующих векторов-столбцов

выполняются условия (2.12) Z = V-Ŵ = Ø 9. Это означает, что при последовательном срабатывании t1, t2, t3, t4, t6 (первый инвариант переходов) и t1, t2, t5, t7, t8 (второй инвариант переходов) восстанавливается первоначальная маркировка. Это также следует из дерева маркировок.

Вероятностные характеристики сети. Рассмотрим вероятностную оценку работы построенной модели. Предположим, что вероятность успешного тестирования равна P1, соответственно, вероятность противоположного событий q1=1-p1. Таким образом, при маркировке М1 вероятность срабатывания перехода t5 и перехода к маркировке М2, равна p1, а, соответственно, срабатывания t6 и перехода к М3 равна q1.

В случае неисправности системы вероятность сбоя при диагностике обозначим р2, тогда вероятность аварийной остановки будет равна q2=1-p2. На рисунке 3.10 это выразится в том, что вероятность срабатывания перехода t8 составит р2, а срабатывания перехода t9 - q2.

Введем на дереве маркировок следующие цепочки условий и событий:

S1 - цепочка M0t2M1;

S2 - цепочка M2t7Mt;

S3 - цепочка M3t7M5;

S4 - маркировка М6.

Отождествим указанные цепочки с состояниями системы, учтем введенные вероятности и предположим, что вероятности постоянны во времени и не зависят от предыстории процесса. В результате получим цепь Маркова, показанную на рисунке 3.11.

Матрица переходных вероятностей для данной цепи Маркова имеет вид


 


Мы видим, что состояния S1, S2, S3 образуют множеств невозвратных состояний, а S4 - поглощающее состояние. Можно оценить среднее число тактов пребывания в каждом из состоянийневозвратного множества

N = (I-Q)-1, I

где Q - блок матрицы Р, описывающий переходы внутри невозвратного множества; N = ||пij||, где пij - среднее число тактов нахождения процесса в состоянии Sj при старте процессаиз состояния Si; I - единичная матрица.

Вычислив матрицу N, получим:

В нашем случае

Рассматривая первую строку матрицы N, мы видим, что процесс в среднем будет находиться в состоянии

1 1 1

S 1 n 11 =—— раз, в состоянии S2 n 12 = —— раз, а в состоянии S3 n 13 = —— раз.

p 1 q 2 q2 p1q2 1

Этоозначает, что среднее время безаварийной работы системы (с учетом сбоев) составляет Т1=п11=——

1 p1q2

тактов, в том числе время безотказной работы T 3 = п12 = —. Число тактов, в которые наблюдаются сбои,

q 2

q1

T3 = п13 = ——. Нетрудно видеть, что Т1 = Т2 + T3.

p1q2

Задачу моделирования надежности систем можно формулировать также в терминах цепей Маркова с непрерывным временем. Для этого вместо вероятностей наступления событий нужно учитывать плотности вероятностей перехода (интенсивность).

Данный пример показывает роль каждого из рассмотренных формализмов при моделировании динамики сложных систем: сети Петри определяют структуру событий, а цепи Маркова позволяют получить их вероятностные оценки.

3.8. Структурный подход к моделированию систем на основе сетей Петри

Ниже кратко рассмотрены вопросы, связанные с исполь­зованием структурных методов при моделировании систем [27]. Более подробно студенты ознакомятся с этими методами в курсе по технологии разработки и САПР программных систем.

Сущность структурных методов при моделировании существующих или создаваемых систем заключается в разбиении этих систем на функциональные подсистемы, которые, в свою очередь, могут быть разбиты на более мелкие подсистемы и так далее - до получения элементарных процедур. При этом моделируемая система сохраняет целостное представление, в котором все компоненты системы взаимоувязаны. Базовыми принципами при структурном подходе являются следующие.

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

• Принцип иерархического упорядочения, заключающий в организации подсистем в иерархические древовидны структуры, в которых на каждом новом уровне детализируеТс структура предыдущего уровня.

В настоящее время структурный подход к моделир0 ванию и проектированию систем стал общепринятым, и все перечисленные в первой главе (п. 1.4.) системы моделирования бизнес-процессов основаны на указанных выше принципах.

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

3.8.1. Основные понятия событийных моделей и их отображение в сетях Петри

Объект - реальная или виртуальная сущность, используемая в моделируемой системе. Каждый объект имеет имя и набор атрибутов.

Атрибут - характеристика объекта. Каждый атрибут имеет имя и характеризуется набором возможных значений атрибутов. Совокупность конкретных значений всех атрибутов называется состоянием объекта.

Событие - одномоментное изменение состояния объекта, состоящее в изменении значений атрибутов. Каждое событие имеет имя и может иметь собственные атрибуты события.

Процесс - устойчивая целенаправленная совокупность событий (взаимосвязанных видов деятельности, последовательность работ), которая преобразует состояние объектов.

Предусловие - значения атрибутов объектов, обходимые для наступления события; формально предусловие это логическое выражение, зависящее от значений атрибутов, истинность которого необходима для наступления события.

Постусловие - значения атрибутов после наступления события.

Рассмотрим теперь, как перечисленные понятия обозначаются в терминах раскрашенных сетей Петри.

• Процесс моделируется составным переходом (непримитивным событием).

• Объект моделируется позицией.

• Каждый атрибут моделируется цветовым множеством, а набор возможных значений атрибутов - набором цветов.

• Состояние объекта моделируется маркировкой позиции.

• Начальная маркировка соответствует состоянию системы при начале ее работы.

• События моделируются срабатыванием переходов, которые могут произойти при выполнении предусловий.

• Предусловия моделируются выражением на дугах типа р to t.

Постусловия моделируются маркировкой позиций после срабатывания переходов.

3.8.2. Диаграммы условий и событий

Диаграммы моделей процессов строятся на базе так называемых элементарных сетей. Такая сеть состоит из входных и выходных позиций и единственного перехода, который в общем случае является составным. Пример элементарной сети сказан на рисунке 3.12. В сети имеется составной переход t, входные позиции р1, р2, выходная позиция р3 и позиция р4, которая является как входной, так и выходной.

Элементарная сеть моделирует наступление некоторого сложного («непримитивного») события при сложившихся предусловиях, в результате чего подсистема переходит в новое состояние, которое рассматривается как постусловия.

Формально работа элементарной сети состоит одномоментном преобразовании состояния входных выходных позиций при срабатывании перехода t, который да данном этапе детализации процесса может рассматриваться как простой переход.

Как и в других методологиях структурного анализа построение модели начинается с создания контекстной диаграммыв виде элементарной сети нулевого уровня. На этом этапе определяются:

• все внешние объекты системы, их атрибуты и возможные значения этих атрибутов;

• единственное событие, отражающее основную функцию системы;

• список предусловий, необходимых для наступления события в терминах значений атрибутов внешних объектов;

• список постусловий, складывающихся в результате наступления события, в терминах значений атрибутов внешних объектов.

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

Этот процесс завершается в том случае, когда разработчик все события на очередной диаграмме рассматривает как простые. При этом в модели не остается составных переходов.

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

• Условие определяется глаголом в совершенного вида в сочетании с поясняющими словами. В тех случаях, когда смысл условия очевиден, глагол может подразумеваться и поэтому опускается. Примеры условий: пароль проверен, сумма (оказалась) меньше запрошенной, список паролей (имеется).

• Событие определяется глаголом в несовершенного вида в сочетании с поясняющими словами. Например: пароль проверяется, клиент обслуживается.

При построении диаграмм следует придерживаться рекомендаций, которые являются общими для всех методо­логий структурного моделирования. Укажем некоторые из них:

• на каждой диаграмме должно быть от 3 до 6 элементарных сетей;

• выбирать ясные, отражающие суть дела имена объектов, атрибутов, условий и событий;

• не загромождать диаграммы несущественными на данном уровне деталями.

Полный список рекомендаций приводится в литературе по CASE технологиям [4].

Параллельно с построением иерархии диаграмм формируется описани






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.