Имитационное моделирование. Учебное пособие
.pdf
1) генерируем вектор ( 1 ,..., n ) с независимыми стан-
дартными нормальными компонентами и берем x(t0 ) A ;
2) значения x(ti ) последовательно находим по формуле
x(ti 1 ) e q(ti 1 ti ) x(ti ) A i
1 e 2q(ti 1 ti ) , i 0,1,...,
где векторы i 1(i) ,..., n(i) с независимыми стандартными нормальными компонентами генерируются на каждом шаге.
Задание для самостоятельной работы
Выполнить моделирование гауссовского случайного процесса x(t) с нулевым математическим ожиданием и корреля-
ционной функцией M{x(t)x(s)} 9e 2 t s
а) для равноотстоящих моментов времени ti i, i 0,1,...,100 ;
б) для моментов ti , образующих пуассоновский поток интенсивности 2 .
3.2.5. Гауссовский случайный процесс с дробно-рациональным спектром
Рассмотрим моделирование одномерного гауссовского случайного процесса с функцией корреляции
R( ) A( ) cos w B( ) sin w ,
81
где A( ), B( ) полиномы, содержащие лишь четные степени. Спектр мощности таких процессов имеет вид
|
|
R( ) eiw d |
R |
0 |
R w2 |
... R |
w2k |
|||||
S(w) |
|
|
1 |
|
|
k |
|
|
, l k . |
|||
L |
|
L w |
2 |
... L |
w |
2l |
||||||
|
|
|
0 |
|
|
|
||||||
|
|
|
|
1 |
|
|
l |
|
|
|
||
Идея алгоритма моделирования основана на представлении спектра S(w) в форме
|
0 |
1 |
(iw) ... k (iw) |
k |
2 |
|||
S(w) |
|
|
, |
|||||
|
|
|
l |
|
||||
|
0 |
(iw) ... |
(iw) |
|
|
|
||
|
1 |
l |
|
|
|
|||
где полиномы правой части последней формулы имеют лишь корни с отрицательной действительной частью. При этом рассматриваемый процесс x(t) можно представить в виде x(t) 0 (t) 1 (t) k (k ) (t) , где (t) – случайный процесс, имеющий производные до k -го порядка включительно.
Многомерный случайный процесс (t) ( (t), (t),..., (k ) (t) ) является стационарным марковским процессом с нулевыми средними компонент. Функция корреляции процесса (t)
B00 (t s) M (t) (s) |
1 |
|
|
|
e |
iw(t s) |
|
|
dw , |
||
|
|
|
|
|
|
|
|
||||
2 |
|
L |
|
L w |
2 |
... L |
w |
2l |
|||
|
|
0 |
|
|
|
||||||
|
|
|
1 |
|
l |
|
|
|
|||
причем последний интеграл можно найти методами теории вычетов. Элементы ковариационной матрицы векторного процесса (t) имеют вид
82
M (m) (t) |
(n) (t) Bmn (t s) |
m n B00 (t s) |
|
||
|
|
|
|
t m sn |
|
( 1)n B(m n) (t s) , |
где m, n |
|
. Обозначим эту ковариа- |
||
0, k |
|||||
00 |
|
|
|
|
|
ционную матрицу B(t s) 
Bmn (t s)
. Фиксируем моменты
времени t s и пусть известен вектор (s) . Тогда аналогично записи условного математического ожидания и дисперсии в п. 3.3.4, получим
|
M (t) |
|
(s) B(t s)B 1 (0) (s), |
|||||
|
|
|||||||
|
|
T |
|
|
|
|
1 |
|
M |
(t) |
(t) |
(s) B(0) B(t s)B |
|
(0)B(t s) . |
|||
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
Представим последнюю матрицу условных дисперсий в виде
B(0) B(t s)B 1 (0)B(t s) A(t s)AT (t s) , где матрицу
A(t s) можно найти так же, как в п. 2.2. Аналогично вы-
полним ортогональное разложение для матрицы B(0) CC T . Алгоритм генерирования сечений процессаx(t)
Для |
получения сечений процесса в моменты времени |
t0 t1 |
... tn ... : |
1) генерируем реализацию (k+1)-мерного стандартного нормального вектора 0 ( 0 , 1 ,..., k ) , получаем вектор
(t0 ) C 0 и находим значение
83
x(t0 ) 0 (t0 ) 1 (t0 ) ... k (k ) (t0 ) ,
где (t0 ), (t0 ),..., (k ) (t0 ) – это компоненты вектора (t0 ) ;
2) для получения каждого следующего сечения процесса |
|||
x(t) |
генерируем новую реализацию стандартного нормаль- |
||
ного |
случайного вектора i 1 |
( 0(i 1) ,..., k(i 1) ) и находим |
|
сначала |
|
|
|
(ti 1 ) B(ti 1 |
ti )B 1 (0) (ti |
) A(ti 1 ti ) i 1 , i 0,1,..., |
|
а затем x(ti 1 ) |
0 (ti 1 ) 1 (ti 1 ) ... k (k ) (ti 1 ) , где |
||
(ti 1 ), (ti 1 ),..., ( k ) (ti 1 ) – это компоненты вектора (ti 1 ) .
3.2.6. Модель ARMA (авторегрессии – скользящего среднего) случайного процесса
с дробно-рациональным спектром |
|
|
||
Алгоритм генерирования сечений процесса x(t) |
упроща- |
|||
ется, если |
tk tk 1 tk const , t0 0 . |
В этом случае |
||
необходимо |
генерировать последовательность |
значений |
||
xk x(k ), k 1,2,... . |
|
|
|
|
Пусть M x(t) 0, |
M x(t)x(t ) R( ) . |
Тогда для ге- |
||
нерирования последовательности xk нам потребуются лишь
84
значения Rk R(k ) . Рассмотрим спектральную плотность
|
|
|
|
|
|
процесса x(t) |
f ( ) Rk eik |
, |
и |
функции |
|
|
k |
|
|
|
|
|
|
|
|
|
|
S(z) Rk z k , |
F(z) Rk z k |
Показано, |
что |
у широкого |
|
k |
k 0 |
|
|
|
|
|
N |
|
|
|
|
класса процессов с Rk Ars k r ek s , k 0,1,... |
S(z) – дроб- |
||||
|
r ,s 1 |
|
|
|
|
но-рациональная |
функция, т.е. |
спектр |
таких |
процессов |
|
f ( ) S(ei ) дробно-рациональный. |
|
|
|
||
Для моделирования последовательности значений xk процессов этого класса используют модель авторегрессии – скользящего среднего ARMA(p,q)
xm a1 xm 1 ... a p xm p b0 m b1 m 1 ... bq m q ,
где q p, m p, m q ,..., m – независимые случайные ве-
личины с нулевыми средними и единичными дисперсиями
(не |
обязательно |
нормальные). |
|
Обозначим |
||||
A(z) 1 a z ... a |
p |
z p , |
B(z) b |
0 |
b z ... b |
q |
z q . Из теории |
|
|
1 |
|
|
1 |
|
|||
случайных процессов с дробно-рациональным спектром из-
|
|
1 |
|
|
|
|
|
B(z)B |
|
|
|
вестно, что |
S(z) |
z |
|
. Поэтому, найдя S(z) и выде- |
|
1 |
|
||||
|
|
|
|||
|
|
A(z)A |
|
|
|
|
|
z |
|
|
85
лив по специальной методике функции A(z) |
и B(z) , мы |
определим коэффициенты a1 ,..., a p и b0 ,..., bq |
модели авто- |
регрессии – скользящего среднего ARMA(p,q) процесса x(t).
3.2.7. Случайный процесс с экспоненциальным одномерным распределением сечений
Пусть одномерные плотности вероятностей сечений про-
цесса x(t) экспоненциальные с |
плотностью вероятностей |
|
p(x) e x , |
x 0 и известна |
корреляционная функция |
Rx ( ) процесса x(t) . Идея моделирования такого случайного процесса состоит в представлении его в виде x(t) 12 (t) 22 (t) , где 1 (t) и 2 (t) – независимые гауссовские случайные процессы с нулевыми средними. Ниже мы найдем и функции корреляции этих процессов. При фиксированном значении t 1 (t), 2 (t) – нормальные случайные величины, и сумма их квадратов имеет 2 распределение с двумя степенями свободы, т.е. экспоненциальное распределение. Теперь t M x(t) D 1 (t) D 2 (t) 1 . Допустим,
что D 1(t) D 2 (t) 21 . Обозначим R1 ( ), R2 ( ) корреля-
ционные функции процессов 1 (t), 2 (t) , тогда
86
R1 (0) R2 (0) 21 .
Найдем далее величину
M x(t)x(s) M 12 (t) 12 (s) M 12 (t) 22 (s)M 22 (t) 12 (s) M 22 (t) 22 (s) .
Из независимости процессов 1 (t) и 2 (t) следует, что
M12 (t) 22 (s) M 22 (t) 12 (s) D 1(t)D 2 (t) 412 .
Всилу известного свойства гауссовских процессов
M 12 (t) 12 (s) M 12 (t) M 12 (s) 2M 2 1 (t) 1 (s)
получим M x(t)x(s) |
1 |
2R 2 |
(t s) 2R 2 |
(t s) . |
|
|
|
|
|||||||||||
|
|
|
|
|
|||||||||||||||
|
|
|
|
|
2 |
1 |
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Теперь R |
x |
( ) M x(t)x(t ) |
1 |
|
1 |
2R 2 |
( ) 2R2 |
( ) и, |
|||||||||||
|
|
|
|||||||||||||||||
|
|
|
|
|
|
|
2 |
|
2 |
|
|
1 |
|
|
|
2 |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
если взять R ( ) R |
2 |
( ) , то получится R |
|
( ) 1 |
R |
x |
( ) . |
||||||||||||
|
|
1 |
|
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Алгоритм генерирования сечений процесса x(t) на заданной последовательности моментов времени t0 ... tn ... :
1) генерируем, как в п. 3.3.3, независимые значения гауссовских случайных процессов 1 (t0 ) и 2 (t0 ) и вычисляем значение x(t0 ) 12 (t0 ) 22 (t0 ) ;
87
2) на i -ом шаге алгоритма генерируем, как в 3.3.3, значения гауссовких случайных процессов 1 (ti ), 2 (ti ) и находим значение
x(ti ) 12 (ti ) 22 (ti ), |
i 1,2,.... |
3.3. Моделирование потоков событий
Моделирование потока событий – это генерирование случайных моментов появления событий в этом потоке на неко-
тором |
заданном |
временном интервале t0 , t0 T , обычно |
|
t0 0 . |
Обозначим ti , i 0,1,... |
моменты наступления собы- |
|
тий в потоке и |
i ti ti 1 , i |
1,2,... случайные интервалы |
|
времени между последовательными моментами наступления событий.
3.3.1. Пуассоновский поток событий
В пуассоновском потоке событий интервалы i , i 1,2,...
независимы и экспоненциально распределены с плотностью вероятностей p( ) e , 0, 0 , – интен-сивность наступления событий в потоке. Выше (пример 1, п. 1.5) уже
88
говорилось, что экспоненциально распределенные случайные
величины i |
генерируются по правилу i |
|
1 |
ln i , где |
|
||||
|
|
|
|
|
значения i независимы и равномерно распределены в ин-
тервале (0,1), |
i 1,2,.... Тогда моменты |
ti последовательно |
||||
генерируются |
по формуле ti |
ti 1 |
1 |
|
ln i , i 1,2,...до тех |
|
|
||||||
|
|
|
|
|||
пор пока не выполнится условие ti t0 T .
3.3.2. Рекуррентный поток событий
В рекуррентном потоке событий все i , i 2,3,... - независимые случайные величины, одинаково распределенные с плотностью вероятностей p( ) , а величина 1 интервала времени от начала наблюдения до момента наступления первого события имеет плотность вероятностей
|
1 |
|
|
|
|
|
p( )d . |
p( 1 ) 1 |
p( )d |
||
|
0 |
|
0 |
Способы генерирования независимых реализаций случайной величины с известной плотностью вероятностей рассмотрены в пп. 1.5–1.8. Остановимся лишь на том, как избежать генерирования значения величины 1 , имеющей другую плот-
89
ность вероятностей, чем все остальные i . Для этого в каче-
стве начального момента времени берут t0* t0 1000 и
начинают генерировать моменты ti наступления событий в потоке. Пока ti t0 , их отбрасывают. С момента появления ti t0 их начинают регистрировать как моменты наступления событий в потоке. В частности, поток Эрланга с плотностью вероятностей
p( ) |
n 1 |
n n |
e n , 0, 0, M 1 / |
|
||||
(n |
1)! |
|
||||||
|
|
|
|
|
|
|
||
|
|
|
|
|
1 |
n |
|
|
генерируется по правилу |
ti ti 1 |
|
|
ln k , где |
k |
– не- |
||
|
||||||||
|
|
|
|
|
n k 1 |
|
|
|
зависимые значения случайной величины, равномерно распределенной в интервале (0,1).
Задание для самостоятельной работы
Получить выборку объема 1000 моментов последовательного наступления событий в потоке Эрланга с параметрами
n 3, 5 .
3.3.3. Дважды стохастический поток событий
Дважды стохастическим потоком событий будем называть такой поток, интенсивность которого (t) – случайный про-
90
