Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Доррер Методы моделирования дискретных систем.doc
Скачиваний:
60
Добавлен:
12.09.2019
Размер:
3.95 Mб
Скачать

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

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

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

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

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

k=0

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

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

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

  • вычисления дисперсий пij, т.е. Dnij среднеквадратичных отклонений трудоемкости процесса.

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

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

Элемент этой матрицы rij(к) представляет собой вероятность перехода в Sj Ť при старте из St T за k шагов. Разность 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.

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

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

Из графика видно, что наиболее вероятны малые значения пi ,а с ростом числа шагов вероятность i(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.

Можно показать, что матрица математических ожиданий чисел nij равна 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,

1

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

Р4

Р1

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

Р4

Р2

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

Р4

Р3

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

Р4

Например,

пусть р1 =0.8, р2 = 0.05, p3 =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 общая средняя трудоемкость вычислительного процесса равна

Пусть C1 = 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 Ť . Второе слагаемое определяет вклад в величину nij за счет перехода в Sj из Si через промежуточное SkT

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

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

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

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

т.к. Idg=I.

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

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

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

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

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

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

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

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

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