Модели вычислительных систем, основанные на концепции состояния - цепи Маркова

Автор: Пользователь скрыл имя, 31 Марта 2013 в 06:52, курсовая работа

Описание работы

В данной курсовой работе рассматривается класс моделей вычислительных систем, основанный на концепции состояния – цепи Маркова. Работу можно разделить на несколько подзадач:
1. Освоить основные положения теории конечных цепей Маркова с дискретным временем.
2. Научится составлять ЦМ для моделирования вычислительных систем и анализа динамики их функционирования.
3. Провести имитационное моделирование динамики ЦМ.
4. Провести расчет характеристик производительности вычислительных систем.

Содержание

Введение2
1.Теоретическая часть4
1.1.Определение цепей Маркова5
1.2.Модель вычислительной системы как цепь Маркова5
1.3. Классификация состояний цепей Маркова…………….………………………………………..7
1.4. Оценка длительности пребывания процесса в множестве невозвратных состояний………...8
1.5. Исследование динамики цепей Маркова при большом числе шагов………………………...11

2. Практическая часть………………………………...…………………………………………………13
2.1. Граф состояний. Матрица переходных вероятностей……...…………………………………13
2.2. Переходные вектора и график полученные теоретически……………………………………13

2.3. Алгоритм имитационного моделирования динамики ЦМ….………………………………...19

2.4. Результат работы программы……………..………………………..…………………………..20
2.5. Структурирование матрицы P, и выделение подмножеств T и T~……….…………………28
2.6. Сравнение теоретически полученной матрицы N с результатом работы программы……..30
2.7. Матрица дисперсий D и оценка среднеквадратичного отклонения трудоемкости………...30
2.8. Оценка предельных вероятностей пребывания процесса во множестве Ť…….…..…….…31
Вывод…………………………………………………………………………………………………..32
Литература ……………………………………………...……………………………………………..32
Приложения ……………………………………………………………………………………….....33

Работа содержит 1 файл

курсовая по ТВП.docx

— 887.13 Кб (Скачать)

                                                                     Содержание

Введение2

1.Теоретическая часть4

1.1.Определение цепей Маркова5

1.2.Модель вычислительной системы как цепь Маркова5

     1.3. Классификация состояний цепей Маркова…………….………………………………………..7

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

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

 

 2. Практическая часть………………………………...…………………………………………………13

     2.1.  Граф состояний. Матрица переходных вероятностей……...…………………………………13

             2.2. Переходные вектора и график полученные теоретически……………………………………13

              

             2.3. Алгоритм имитационного моделирования динамики ЦМ….………………………………...19

              

             2.4. Результат работы программы……………..………………………..…………………………..20

     2.5. Структурирование матрицы P, и выделение подмножеств T и T~……….…………………28

     2.6. Сравнение теоретически полученной матрицы N с результатом работы программы……..30                              

     2.7. Матрица дисперсий  D и оценка среднеквадратичного отклонения трудоемкости………...30

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

  Вывод…………………………………………………………………………………………………..32

  Литература ……………………………………………...……………………………………………..32

  Приложения   ……………………………………………………………………………………….....33

 

 

 

 

 

 

Введение.

В данной курсовой работе рассматривается  класс моделей вычислительных систем, основанный на концепции состояния  – цепи Маркова. Работу можно разделить на несколько подзадач:

1. Освоить основные положения  теории конечных цепей Маркова  с дискретным временем.

2. Научится составлять  ЦМ для моделирования вычислительных  систем и анализа динамики  их функционирования.

3. Провести имитационное  моделирование динамики ЦМ.

4. Провести расчет характеристик  производительности вычислительных  систем.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1.Теоретическая часть.

                                          1.1.Определение цепи Маркова

Цепь Маркова – это модель системы, которая переходит случайным  образом из одного состояния в  другое.

Формальное определение. Конечная цепь Мария (FiniteMarkovChain - FMC) - это набор элементов:

FMC = {Θ, S, P, X, X0}.  (1)

Рассмотрим элементы определения (1).

  1. Θ - множество моментов времени. Мы будем рассматривать как множество дискретных моментов времени Θ={to,t1,...,tk,...}, так и непрерывное время,Θ=R, где R -  множество рациональных чисел. 
  2. S= {S1,...,Sn}– конечное множество состояний. В каждый момент времени tk система может находиться только в одном из состоянийSi. Этот факт мы будем обозначать так:

S(tk)=Si, tkпринадлежит Θ, Siпринадлежит S

  1. P(tk) = || pij(tk) || - матрица переходных вероятностей.

Состояния в системе изменяются со временем случайным образом. Каждый элемент матрицы pij(tk) показывает вероятность того, что если FMC в моментtk находилось в состоянии Si, то в момент tk+1 она окажется в состоянии Sj:

pij(tk) = Pr{S(tk+1)=Sj  |  S(tk)=Si}.  (2)

При этом основное свойство Марковских процессов состоит в том, что вероятности перехода из Si в Sj не зависят от предыдущих состояний системы.

Понятно, что переходы во все возможные состояния (в том числе в себя) образуют полную группу событий, поэтому

n

∑pij(tk) =l для всехi=1,..,n,  tk ϵ Θ.

j=1

  1. X = X(tk) = [х1(tk),…,xN(tk)] - вектор-строка распределения вероятностей нахождения FMС в соответствующих состояниях в момент tk, то есть xl(tk) - это вероятность того, что в момент tk система находится в состоянииSi. При этом

n

∑xi(tk) =l,  tk ϵ Θ.

i=1

По теореме об умножении вероятностей и с учетом основного свойства Марковского процесса получим:

n

xj(tk+1) = ∑pij(tk)xi(tk) ,  i=1,..,n.   (3)

i=1

где pij(tk) выступают в роли условных вероятностей перехода в состояние Sj при условии, что система находится в состоянии Si.

Нетрудно видеть, что правая часть  формулы определяет произведение вектора-строки X(tk) на матрицуP(tk) и в векторной форме эквивалентна следующей записи динамического процесса:

X(tk+1)=X(tk)P(tk).   (4)

5. Х0= X(tk) = [x1(t0),x2(t0),...xn(t0)] - распределение вероятностей нахождения FMC в начальный момент времени t=t0.Задание вектораX{t0) позволяет последовательно вычислять векторыX(tk) (k=1,2,..).

Последовательность состояний  S(t0),S(t1),...,S(tk) называется конечной цепью Маркова.

Цепь называется однородной, если pij не зависит от времени. В этом случае Р - числовая матрица. Если вектор X(t0) задан, то для однородной цепи Маркова из рекуррентной формулы (4) следует цепочка выражений:

X(t1)=X(t0)P.

X(t2)=X(t1)P=X(t0)P2.

X(tk)=X(t0)Pk.   (5)

 

Где Pk – k-я степень матрицы Р.

Цепь Маркова можно представить  как динамически систему - вероятностный  автомат с обратной связью (рис. 1). На рисунке прямоугольник 1 означает задержку сигнала состояния на 1 такт.

 

 

 

 

 

 

 

 

 

X(tk+1)

X(tk)

X(t0)

P(tk)

 

1

Рис. 1. Вероятностный автомат с обратной связью

Матрицы Р, порождающие цепи Маркова, т.е. такие, у которых все элементы 0<=pij<=1, а их суммы по столбцам равны единице для всех строк

n

∑pij=1,  i=1,..,n, 

i=1

называют стохастическими. Свойства этих матриц хорошо изучены, и мы в дальнейшем будем использовать известные факты без доказательств.

Отметим также, что, помимо аналитических  методов исследования поведения  FMC, большие возможности дает метод статистического моделирования.

                          1.2. Модель вычислительной системы как цепь Маркова

Основные понятия, связанные с  моделированием на основе цепей Маркова, рассмотрим на примере простейшей модели, в которой ВС рассматривается  как конечный автомат, состоящий  из центрального процессора (CPU)F0 и нескольких внешних устройствF1,..,F4. Центральный процессор производит вычисления, а внешние устройства осуществляют файловый обмен, например, как показано на рисунке 2.

В частности, предполагается наличие  следующих периферийных устройств:

F1 - накопитель на жестком магнитном диске;

F2 - накопитель на гибком магнитном диске;

F3 - устройство печати;

F4 - клавиатура.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

F0

F1

F2

F3

F4

Рис. 2. Конечный автомат

Система работает по следующим правилам. Вначале запускается процессор, который может либо производить  вычисления, либо управлять только одним устройством. Устройства,F1,F2,F3, окончив работу, возвращают управление процессору. Если же управление переходит к клавиатуреF4, то цикл автоматической работы заканчивается и система останавливается в ожидании команды с клавиатуры. Модель, которую мы будем рассматривать, не отражает сущности выполняемых операций, а имеет дело с временными интервалами, в течение которых работают устройства, входящие в ВС. Эти временные интервалы называются случайными величинами. Модель должна удовлетворять следующим требованиям:

  1. Она должна оценивать порядок порождения алгоритмом запросов на каждый из видов обслуживания - вычисления и файловый обмен.
  2. Модель должна определять трудоемкости обслуживания запросов - количество вычислительных операций и объем информации, передаваемой при файловом обмене.
  3. Модель должна отображать случайную природу вычислительных процессов, т.е. случайные моменты возникновения запросов и случайную суммарную трудоемкость обслуживания запросов
  4. Принимается, что достаточная адекватность модели реальному вычислительному процессу достигается при совпадении первых моментов одноименных характеристик -  математического ожидания и дисперсии.

 

Будем рассматривать вычислительный процесс как последовательность этапов счета и файлового обмена.

Состояния являются функциями времени:Si = Si(t), причем смена состояний происходит в случайные моменты t0, t1, … , tm. В рассматриваемой модели нам не важны значения интервалов времени между моментами смены состояний ВС. Эти моменты будут рассматриваться как последовательные работы ВС и обозначаться целыми числами. Таким образом, в дальнейшем время считается дискретным.

Процессы смены состояний в  этой системе будем рассматривать  как однородную Марковскую цепь.

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

X(t0)=[x0 x1 x2 x3 x4] = [1 0 0 0 0],

 

А матрица вероятностей переходов  не зависит от времени:

 

0

р1

р2

р3

р4

1

0

0

0

0

1

0

0

0

0

1

0

0

0

0

0

0

0

0

1


 

Из этой матрицы видно, что из состоянияS0 процесс с вероятностями р1234 переходит, соответственно в состоянияS1,S2,...,S4, при этом р1 + р2 + р3 + р4 = 1.

Из состоянийS1,S2,S3 процесс с вероятностью 1 возвращается вS0. Достигнув состоянияS4, процесс навсегда остается в нем. Такое состояние называется поглощающим.

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

Пусть С0- средняя трудоемкость этапа счета (среди число процессорных операций или соответствующее процессорное время);

С1,С23 - средняя трудоемкость операций файлового обмена в байтах (или, если известна скорость обмена каналов, - среднее время обмена). 

Значения вероятностей р,,р234 предопределяют ход вычислительного процесса. Эти значения вычисляются следующим образом.

Трудоёмкость алгоритма определяет, в частности, среднее число обращений  к файлам.

Следовательно, среднее число переходов  из состояния S0 в состояния S,,S2,S3 должно бытьN,+N2+N3. Один раз процесс переходит в поглощающее состояниеS4. Таким образом, вычислительный процесс должен выходить из состоянияS0 в среднем

N = ∑Nh+1 раз. (7)

Значениеph определяет долю переходов в состояниеShпо отношению к всевозможным переходам из состоянияS0 в состояния S1,...,S4. Эта доля равна в среднем Nh/NгдеNh - среднее  число переходов в состояниеSh.

 

Следовательно,рh = Nh/N, h=1,...,3, р4=1/N.

 

Тогда средняя трудоемкость этапов счета, выполняемых за одну реализацию алгоритма, составит

Сср = С0N, откуда С0 = СсрN.

Трудоемкость конечного, этапа  вычислительного процесса представляет собой случайную величину со средним значениемCh, h = 0,1,...,n.

Величины Сср, Nh и Сh могут быть, определены экспериментально путем анализа протоколов функционирования вычислительной системы при многократном решении рассматриваемой задачи.

 

                                 1.3.Классификация состояний цепей Маркова

Введем классификацию состояний  цепи Маркова. Множество всех состояний  может быть разбито на непересекающиеся подмножества, или классы: невозвратные и эргодические. Их свойства определяются следующим образом. Если процесс покинул класс первого типа, он никогда в него не возвращается. Если процесс попал в класс состояний второго типа, то он никогда его не покидает. Невозвратное множества мы будем обозначать Т, а эргодическое - Ť. При этом их объединение = S, а пересечение – пустое множество. Если эргодическое множество содержи только одно состояние, то это состояние называется поглощающим. Для такого состоянияS, элемент переходной матрицы pijдолжен быть равен 1, следовательно, все остальные элементы соответствующей строки равны 0. Цепь, все эргодические состояния которой являются поглощающими, называется поглощающей цепью.

Информация о работе Модели вычислительных систем, основанные на концепции состояния - цепи Маркова