Автор работы: Пользователь скрыл имя, 26 Мая 2013 в 16:00, курсовая работа
Цель курсовой работы - на практическом примере продемонстрировать использование Марковского случайного процесса
Задачи:
Изучить теоретический материал по Марковским случайным процессам с дискретными состояниями.
Отобрать материал для курсовой работы.
Составить математическую модель задачи.
Рассмотреть методы решения задачи и выбрать оптимальный.
Решить задачу с помощью прикладных программ.
Введение 3
Теоретическая часть 5
Случайные процессы с дискретным временем 5
Марковский процесс с дискретным состоянием и не прерывным
временем. Уравнение Колмогорова 7
Непрерывные цепи Маркова 7
Уравнение Колмогорова 9
Потоки событий 11
Предельные вероятности состояний 12
Процессы гибели и размножения 13
Практическая часть 15
Постановка задачи 15
Составление математической модели 15
Решение задачи с помощью уравнения Колмогорова с помощью прикладных программ 15
Выбор программной среды 17
Основные блоки программы 18
Алгоритм программы 19
Тестирование и отладка программы 21
Заключение 22
Список используемых источников 23
Приложение ……25
Аналогичные дифференциальные уравнения могут быть выведены и для остальных вероятностей состояния p2(t), p3(t), p4(t):
(1.1)
Эти уравнения для вероятностей состояний называются уравнениями Колмогорова.
Интегрирование этой системы уравнений дает искомые вероятности состояний как функции времени. Начальные условия берутся в зависимости от того, каково было начальное состояние системы S. Например, если в начальный момент времени (при t = 0) система S находилась в состоянии S1, то надо принять начальные условия:
p(0)=(1,0,0,0)
Заметим, что всех четырех уравнений (1.1) можно было бы и не писать, поскольку p1+ p2+ p3+ p4=1 для всех t и любую из вероятностей p1(t), p2(t), p3(t), p4(t) можно выразить через три остальные и подставить в остальные уравнения. Однако в дальнейшем нам будет удобнее пользоваться полной системой уравнений типа (1.1).
Обратим внимание на структуру уравнений (1.1). Все они построены по вполне определенному правилу, которое можно сформулировать следующим образом.
В левой части каждого
уравнения стоит производная
вероятности состояния, а правая
часть содержит столько членов, сколько
стрелок связано с данным состоянием.
Если стрелка направлена из состояния,
соответствующий член имеет знак
«минус», если в состояние — знак
«плюс». Каждый член равен произведению
плотности вероятности
Это правило составления
дифференциальных уравнений для
вероятностей состояний является общим
и справедливо для любой
Для рассмотрения случайных процессов,
протекающих в системах с дискретными
состояниями и непрерывным
Потоком событий называется последовательность
однородных событий, следующих одно за
другим в случайные моменты времени (поток
автобусов на данной остановке, поток
отказов какой-то системы и т.п.) Поток
событий будем изображать последовательностью
точек на оси времени.
Мы будем рассматривать потоки событий,
обладающие свойствами: стационарность,
отсутствие последействия, ординарность.
Поток событий называется стационарным, если вероятность попадания n событий на интервале времени (t,t+ ) зависит от и не зависит от t. Это означает, что интенсивность потока событий не зависит от времени. Такие потоки событий часто встречаются на практике, об их стационарности строго можно говорить только на ограниченном интервале времени. Распространение этого участка до бесконечности - удобный прием.
Поток событий называется потоком
без последействия, если для любых
двух непересекающихся промежутков
времени число событий
Поток событий называется ординарным, если вероятность осуществления на бесконечно малом отрезке времени t двух и более событий i=1,2,3,... пренебрежимо малы по сравнению с вероятностью P(1,Δt) одного события.
Поток событий называется простейшим, если он стационарен, однороден и не имеет последействия. Для такого потока вероятность появления на интервале m событий определяется формулой Пуассона P(m,Δt)=((λΔt)m/m!)e-λΔt λ-средняя интенсивность потока.
Для простейшего потока интервал t
между соседними событиями
Поток событий называется рекуррентным
или потоком "Пальма", если он стационарен,
ординарен, а интервалы времени между
событиями представляют собой независимые
случайные величины с одинаковым произвольным
распределением.
Из определения следует:
Важными для практики являются потоки Эрланга, которые образуются в результате просеивания простейших "потоков". Поток Эрланга n-ого порядка получается, если в исходном простейшем потоке сохранить каждое n-ое событие.
Простейший поток, является потоком Эрланга первого порядка. Можно показать, что плотность вероятности между событиями в потоке Эрланга k-ого порядка , (t > 0), -средняя интенсивность порождающего потока, <t>=k/λ, D(t)=k/λ2.
1.4 Предельности состояний
Вероятностью i-го состояния pi(t) – называется вероятность того, что в момент времени t система будет находиться в состоянии Si. Очевидно, что для любого момента времени ti (1.7). Рассмотрим систему в момент t, и задав малый промежуток времени Dt, находим вероятность p0(t+Dt), т.е. вероятность того, что в момент времени t+Dt система будет находиться в состоянии S0. Достичь того, чтобы система находилась в состоянии S0 можно двумя путями:
система в момент t c вероятностью p0(t) находилась в состоянии S0 и за время Dt не вышла из этого состояния. Вывести систему из состояния S0 можно суммарным потоком интенсивности (l01+l02)*Dt. Вероятность того, что система будет находиться в состоянии S0, в соответствии с первой возможностью, равна следующему:
(1.8)
cистема в момент времени t с вероятностями p1(t) или p2(t) находится в состоянии S1 или S2 и за промежуток времени Dt переходит в состояние S0:
(t+)=+*(1-
=+*-t)*(
(
предельная вероятность Si имеет четкий смысл, она показывает среднее относительное время пребывания системы в данном состоянии.
1.5 Процессы гибели и размножений
Определение: Марковский процесс с дискретными состояниями называют процессом гибели – размножения, если он имеет размеченный граф состояний следующего вида:
Т.е. каждое из состояний
системы связано с двумя
Данная тема крайне актуальна ввиду высокой значимости Марковских процессов в исследовании экономических, экологических и биологических процессов, кроме того, Марковские процессы лежат в основе теории массового обслуживания, которая в настоящее время активно используется в различных экономических направлениях, в том числе управлении процессами на предприятии. В рамках теоретической части будут написаны алгебраические уравнения для предельных вероятностей состояний. Очевидно, что если две непрерывные цепи Маркова имеют одинаковые графы состояний и различаются только значениями интенсивностей ,
S1 S2 S3 Sk Sn-1 Sn
Рис. 1.2
то можно сразу найти
2.1 Постановка задачи
Найти предельные вероятности для процесса гибели и размножения, размеченный граф состояний которого имеет следующий вид:
При λ12 = 0,4, λ 23 = 0,7, λ 34 = 0,1, λ 21 = 0,3, λ 32 = 0,1, λ 43 = 0,4.
2.2 Составление математической модели
Пусть Р0-начальное состояние, которое рассчитывается по формуле
J-матрица перехода, в которой каждая строка в сумме образует единицу, путем подстановки подхожящего коэффициента в главную диагональ матрицы
J=
N-максимальная вероятность, являющееся произвольным целым числом
i-количество шагов, которое зависит от максимальной вероятности
Pi+1-расчитанное значение вероятности, равна произведению транспортированной матрицы и i-ой вероятностью
2.3 Решение задачи с помощью уравнения Колмогорова в прикладной программе Mathcad
Представим задачу в матричной форме
Тогда матрица перехода для данного процесса и его начальное состояние имеют вид
Каждая сторона в этой матрице в сумме равна единице и отражает вероятности перехода из состояния строки в состояния столбца.
Вывод: примерно через 50 шагов по времени распределение вероятностей стабилизируется, и 7,1% будет находиться в состоянии S1, 9,5% будет находиться в состоянии S2, 66,7% будет находиться в состоянии S3, и 16,7% будет находиться в состоянии S4
Переходя к пределу, получаем дифференциальное уравнение Колмогорова для условных вероятностей а,
, P(0)=Po
Рис.2.1 Интегрирование уравнений Колмогорова
Вероятности нахождения системы в момент времени i в состояниях 1, 2, 3 ,4 соответственно.
Уравнение Колмогорова, соответственно этому графу, составляется следующим образом. Для каждого состояния вероятность Pi повышается из состояния Ei пропорционально gij Pi (дуга графа имеет направление от узла j к узлу i) и меняется пропорционально gij Pi (дуга графа имеет направление от узла i к узлу k). Так для состояния Ei уравнение будет следующим (все дуги выходят из этого состояния):
Учитывая, что система может
находиться только в этих состоящих
с вероятностью, равен 1 окончательно,
отбрасывая одно из дифференциальных
уравнений, получим систему уравнений
Колмогорова с начальными условиями,
отображающими вероятность
Исключив из этой систему Р4, окончательно получим
2.4 Выбор программной среды
Для написания программы выбран объектно-ориентированный язык программирования – Delphi 7. Он более удобный и понятный для восприятия приложений пользователем. Данный язык программирования позволяет вычислить и решить задачу с помощью уравнения Колмогорова.
Delphi может работать в ОС от Windows 98 до windows 7. Требования к программе: процессор должен быть типа Pentium с частотой не ниже 166 Гц, оперативной памятью 128 Мбайт, свободное место на жестком диске.
2.5 Основные блоки программы
Блок ввода данных:
begin
data[1,1]:=strtofloat(edit1.
data[2,1]:=strtofloat(edit5.
data[3,1]:=strtofloat(edit9.
data[4,1]:=strtofloat(edit13.
data[1,2]:=strtofloat(edit2.
data[2,2]:=strtofloat(edit6.
data[3,2]:=strtofloat(edit10.
data[4,2]:=strtofloat(edit14.
data[1,3]:=strtofloat(edit3.
data[2,3]:=strtofloat(edit7.
data[3,3]:=strtofloat(edit11.
data[4,3]:=strtofloat(edit15.
data[1,4]:=strtofloat(edit4.
data[2,4]:=strtofloat(edit8.
data[3,4]:=strtofloat(edit12.
data[4,4]:=strtofloat(edit16.
p[1]:=strtofloat(edit17.Text);
p[2]:=strtofloat(edit18.Text);
p[3]:=strtofloat(edit19.Text);
p[4]:=strtofloat(edit20.Text);
блок расчетов:
for i:=1 to strtoint(edit21.Text) do
begin
for y:=1 to 4 do
begin
p1[y]:=0;
for x:=1 to 4 do
begin
p1[y]:=p1[y]+p[x]*data[x,y];
end;
end;
for y:=1 to 4 do
begin
p[y]:=p1[y];
end;
блок вывода данных:
label4.Caption:=floattostr(p[
label5.Caption:=floattostr(p[
label6.Caption:=floattostr(p[
label7.Caption:=floattostr(p[
Информация о работе Марковские случайные процессы с дискретным состоянием