2.2. Генератори ПВЧ та метод статистичних випробувань        Монте-Карло.

 

Основна проблема у методі Монте-Карло полягає в тому, щоб дістати рівномірну випадкову послідовність чисел (РВП), розподілених на відрізку [0, 1]. При побудові стохастичних імітаційних моделей ці числа дають змогу генерувати випадкові події або випадкові величини з довільним розподілом.

Такі числа надзвичайно важливі для методу Монте-Карло. Вони дають змогу імітувати на машині ситуації зі складною стохастичною природою. Опишемо властивості цих чисел.

Випадкова величина Х має рівномірний розподіл на відрізку [a, b], коли її щільність розподілу ймовірностей має вигляд

                                                                        (2.4)

Математичне сподівання та дисперсія випадкової величини

                                                                                                    (2.5)

                                                                                                  (2.6)

Якщо випадкова величина розподілена на відрізку [0, 1], то

                                                                                  (2.7)

                       

                       

Рівномірно розподілену на відрізку [0, 1] випадкову величину позначимо . Для неї характерна властивість: імовірність того, що значення цієї випадкової величини потраплять на деякий інтервал з межами  0      1, дорівнює довжині цього інтервалу:

                                                                                 (2.8)

Ця властивість часто використовується в методі Монте-Карло як необхідна і достатня умова того, що деяка випадкова величина має розподіл (2.7).

Принципова можливість генерувати послідовні реалізації випадкової величини  випливає з такого перетворення:

                                                                            (2.9)

де  — реалізація випадкової величини Z, що набуває лише двох значень — 0 і 1 — з однаковою ймовірністю 0,5.

Покажемо, що отримувана з допомогою перетворення (2.9) випадкова величина  має властивість (2.8). Наприклад,

                   

Випадкова величина , рівномірно розподілена на відрізку [0, 1], може мати нескінченну кількість реалізацій. Проте при машинному використанні методу Монте-Карло на ЕОМ можна утворити лише  випадкових чисел, що не збігаються одне з одним (n — кількість двійкових розрядів машинної пам’яті). Тому рівномірна випадкова послідовність чисел (скорочено РВП [0, 1]), використана при машинних розрахунках, фактично є реалізацією дискретної випадкової величини, розподіл якої називається квазірівномірним (від лат. quasi — майже, ніби, неначе).

Від сукупності чисел 0, 1, 2, ..., –1, які можна подати з допомогою двійкових розрядів, легко перейти до можливих значень дискретної випадкової величини , що має квазірівномірний розподіл на інтервалі [0, 1]:

                     ,      (i = 0, 1, 2,..., –1).                                      (2.10)

В останньому виразі знаменник має вигляд – 1, а не  для того, щоб до сукупності  величин  можна було включати як 0, так і 1, а інтервали між ними на числовій осі були однакові. Крім того, математичне сподівання величини   дорівнює 0,5, а при діленні на  оцінка математичного сподівання була б зсуненою

Імовірності, що відповідають можливим значенням  ,  мають вигляд

                    

Визначимо математичне сподівання і дисперсію дискретної квазірівномірної випадкової величини  :

                   

                  

           

Отже, математичне сподівання квазірівномірної випадкової величини збігається з математичним сподіванням РВП [0, 1], а дисперсія відрізняється лише множником    який для великих  n  дуже близький до 1. Наприклад,

для   n = 10:         

 Тому для  n > 10 відмінність між дисперсіями рівномірної і квазірівномірної випадкових величин стає неістотною, а це дає підставу в імітаційному моделюванні використовувати програмно створені випадкові числа.

Згідно з центральною граничною теоремою теорії ймовірностей унаслідок додавання досить великої кількості однаково розподілених незалежних випадкових величин отримуємо випадкову величину, яка має нормальний закон розподілу. Як показали дослідження, вже внаслідок складання більш ніж десяти випадкових незалежних величин з рівномірним розподілом в інтервалі (0; 1) отримуємо випадкову величину, котру з точністю, достатньою для більшості практичних задач, можна вважати розподіленою згідно з нормальним законом.

Існують три способи дістати рівномірну випадкову послідовність чисел, розподілених на відрізку [0, 1]: табличний, програмний і фізичне генерування.

При табличному способі випадкові числа беруть із спеціальних таблиць, в яких числа отримані за допомогою фізичних чи програмних генераторів. Табличний метод з огляду на повільне введення табличних даних у пам’ять ЕОМ і необхідність використовувати значний обсяг пам’яті (таблиці записуються в оперативну пам’ять), щоб зберігати їх, для машинної імітації вважається неефективним і застосовується здебільшого для ручних розрахунків. У дослідженнях на ЕОМ він застосовується насамперед для налагодження програм або дублювання особливо важливих дослідів. Апаратні (фізичні) генератори розглядалися в попередньому розділі, використання таких генераторів вимагає наявності спеціального обладнання. В зв’язку з цим більш зручним вважається застосування програмних генераторів випадкових чисел. У разі, коли для програмної реалізації використовуються мови моделювання, що забезпечені вмонтованими генераторами випадкових послідовностей чисел, програмістові немає потреби розробляти програми утворення таких чисел. Крім того, бібліотеки більшості ЕОМ включають спеціальні стандартні підпрограми, що їх можна використати з відповід¬ною метою. У складі трансляторів майже всіх алгоритмічних мов є стандартні процедури (чи функції), котрі генерують, псевдовипадкові числа, що є реалізаціями послідовності випадкових чисел із рівномірним законом розподілу.