11
Серія прикладна математика, випуск 6 (15), 2009 Й.В. Джунь, О.О. Валецький, 2009 С. XXXX УДК 517.51:519.622.1:681.142.2 Джунь Й.В., Валецький О.О. СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ В роботі висвітлена класифікація існуючих методів створення послідов- ностей рівномірно розподілених випадкових чисел і їх застосування. Та- кож значна увага приділена невідомій раніше властивості числа π – вико- ристання його як генератора рівномірно розподілених випадкових чисел. В роботі розглянуті методи обчислення трансцендентного числа π , статистичні критерії для аналізу результатів , і перевірка найбільш ві- домих таблиць випадкових чисел. Вступ. Рівномірно розподіленими випадковими цифрами є такі , що отримані в результаті повторного незалежного відбору із сукупності 0,1,2,…,9 з імовірністю вибору будь-якої цифри , що дорівнює 1/10 . Така схема еквівалентна розміщенню 10 кульок , пронумерованих циф- рами від 0 до 9 , в скриньку , і витяганню з неї кожен раз одної із кульок з наступним поверненням їх назад після кожного відбору . Отримана множина чисел і утворює групу рівномірно розподілених випадкових цифр . Існує дуже багато таблиць рівномірно розподілених випадкових чисел , наприклад – таблиці Пірсона-Хартлі [5] , Абрамовіца-Стіган [2]. Але не завжди використання цих таблиць є зручним . Тому користувачі ЕОМ створювали ці числа детермінованим чином . Числа створені таким чином називаються псевдовипадковими . Якість псевдовипадкових чисел визначається їх перевіркою за допомо- гою статистичних критеріїв . Мета перевірки - виявлення властивостей псевдовипадкових чисел , відмінних від властивостей випадкових чисел. Метою нашого дослідження був розгляд існуючих методів отри- мання псевдовипадкових чисел.

СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Embed Size (px)

DESCRIPTION

СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Citation preview

Page 1: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Серія прикладна математика, випуск 6 (15), 2009

Й.В. Джунь, О.О. Валецький, 2009 С. XX–XX

УДК 517.51:519.622.1:681.142.2

Джунь Й.В., Валецький О.О.

СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО

РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

В роботі висвітлена класифікація існуючих методів створення послідов-

ностей рівномірно розподілених випадкових чисел і їх застосування. Та-

кож значна увага приділена невідомій раніше властивості числа π – вико-

ристання його як генератора рівномірно розподілених випадкових чисел.

В роботі розглянуті методи обчислення трансцендентного числа π ,

статистичні критерії для аналізу результатів , і перевірка найбільш ві-

домих таблиць випадкових чисел.

Вступ. Рівномірно розподіленими випадковими цифрами є такі , що

отримані в результаті повторного незалежного відбору із сукупності

0,1,2,…,9 з імовірністю вибору будь-якої цифри , що дорівнює 1/10 .

Така схема еквівалентна розміщенню 10 кульок , пронумерованих циф-

рами від 0 до 9 , в скриньку , і витяганню з неї кожен раз одної із кульок

з наступним поверненням їх назад після кожного відбору . Отримана

множина чисел і утворює групу рівномірно розподілених випадкових

цифр .

Існує дуже багато таблиць рівномірно розподілених випадкових

чисел , наприклад – таблиці Пірсона-Хартлі [5] , Абрамовіца-Стіган [2].

Але не завжди використання цих таблиць є зручним . Тому користувачі

ЕОМ створювали ці числа детермінованим чином .

Числа створені таким чином називаються псевдовипадковими .

Якість псевдовипадкових чисел визначається їх перевіркою за допомо-

гою статистичних критеріїв . Мета перевірки - виявлення властивостей

псевдовипадкових чисел , відмінних від властивостей випадкових чисел.

Метою нашого дослідження був розгляд існуючих методів отри-

мання псевдовипадкових чисел.

Page 2: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Волинський математичний вісник

4

Сучасні методи генерації випадкових чисел. Спочатку розглянемо

найбільш поширені методи обчислення випадкових чисел . Багатолітня

практика показала , що для утворення псевдовипадкових чисел в ЕОМ

найбільш зручним є конгруентний метод . Суть його полягає в наступ-

ному : нехай { xn } , де n=0,1,2,… - послідовність псевдовипадкових

чисел . Конгруентний метод створення псевдовипадкових чисел визна-

чається відношенням

Xn+1 = a Xn + b (mod T) (1)

де b i T – взаємно прості числа .

Нагадаємо , що взаємно простими є цілі числа , які не мають загальних

дільників . Наприклад , пара 8,9 , або пара 5,7 . Вибір Т визначається

можливостями ПК і прийнятою системою числення ; a i b вибирають з

урахуванням таких умов : отримана послідовність { xn } мусить мати

бажані статистичні властивості випадкових чисел ; період послідовності

повинен бути по можливості найбільш довгим.

Тепер розглянемо яким чином вибирають параметри моделі (1) .

По-перше , величини a і b потрібно вибирати таким чином , щоб кореля-

ція між ними наближалась до нуля . Кореляція між числами xn і xn+s в

послідовності

Xn+s = as xn + bs (mod T) (2)

може бути виражена наступним чином :

s

ss

sa

T

b

T

b

p

161

(3)

де as=as(mod T) ,bs=(1+a+a

2+…+a

n-1) b (mod T) ,

T

as .

Коли a T , кореляція T

p1

1 .

Послідовність , створена мультиплікативним конгруентним мето-

дом , буде мати повний період T чисел , якщо 1) b і T взаємно прості ; 2)

Page 3: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Серія прикладна математика, випуск 6 (15), 2009

5

a=1 (mod p) , якщо p є простим множником T ; 3) a=1 (mod φ) , якщо φ є

множником Т .

Отже , якщо Т=2q , то b має бути непарним і a=1 (mod φ) .

Якщо Т=10q , то b не повинно ділитися ні на 2 , ні на 5 і a=1 (mod

20). Найбільш зручно прийняти 10s+1=a ( для ЕОМ з десятковою сис-

темою числення ) , або 2s+1=a ( для машин з двійковою системою чис-

лення ) .

З точки зору швидкості утворення випадкових чисел названа схе-

ма вимагає лише операцію зсуву і дві операції додавання . Для утворен-

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

взяти будь-яке число .

Зробимо невеликий огляд різноманітних конгруентних схем і їх

властивості .

В табл.1 ми подаємо сучасні конгруентні схеми утворення випад-

кових чисел ( Xn+1 = a Xn + b (mod T) , Т і а взаємно прості ).

Таблиця 1

п

/

п

a b T Період X0 Випадки , в яких

отримані числа ,

перевірені за

допомогою стати-

стичних критеріїв

1 1+t2 н

е

п

а

р.

T=tq tq Tx 00

Т=235 , х0=0 , а=27

+ 1 , b=1

Т=247 , а=29 + 1 ,

b=2974109625847

х0=762939453125

2 2sr

1

r-непар.

2s

0 T=tq tq-s Взаємно просте

з Т

Т=240 , 243 ,х0=1,

а=517 (s=2)

Т=235 , х0=1

Т=239 , х0=1-2-39

Page 4: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Волинський математичний вісник

6

а=513 (s=2) ,

Т=235, х0=1 , а=516

(s=2)

3

- // -

T=1035 +1 ,

х0=10,987,654,321

a=23 , період 106

T=108 +1 ,

х0=47,594,118,321

a=23 , період

5,8106 106

4 74s + 1 T=1010 , х0=1, а=7

T=1011 , х0=1,

а=713

Розглянуті методи є поширеними і зрозумілими і , так би мовити ,

«традиційними» [3]. Таким чином , як показав проведений нами аналіз ,

названі схеми генераторів рівномірно розподілених випадкових чисел є

досить простими , штучними , навіть дещо примітивними, і завжди ви-

магають детальної перевірки в кожному конкретному випадку .

Необхідні відомості про число π . Одним із перспективних на-

прямків створення генераторів рівномірно росподілених випадкових

чисел є використання з цією метою трансцендентних чисел з певними

властивостями. Одним з таких чисел є стала π , саме таємниче трансцен-

дентне число - відношення довжини кола до його радіусу . Достеменно

відомо , що воно є нескінченним – вчені знайшли алгоритм (так званий

spigot algorithm , без використання попередніх цифр) знаходження дові-

льної двійкової цифри в запису числа – так звана «BBP-type formulae»,

розроблена у 1995 році Девідом Х. Бейлі, Пітером Боруейном и Саймо-

ном Плуффом [4]. Закордонними вченими на надпотужних обчислюва-

льних комплексах було обчислено більше 1 трільйона знаків після коми

числа π . Вивченням його властивостей займались такі видатні вчені , як

Лейбніц і Ейлер (намагались віднайти коректні і точні формули для

Page 5: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Серія прикладна математика, випуск 6 (15), 2009

7

знаходження значення), Ламберт і Лежандр (довели ірраціональність

числа) , Ліндеман і Клейн (довели трансцендентність) . Англійський

математик Август де Морган назвав π «загадковим числом , яке вламу-

ється до нас звідусіль» , адже воно використовується у багатьох задачах,

які відношення до кола не мають . «Загадковому числу π» присвячено

чимало наукових праць , окрім згаданих вище науковців , багато мате-

матиків , починаючи з Архімеда і закінчуючи роботами сучасних вче-

них. Тому , здавалось би , про π відомо все . Але недарма в числі π «схо-

ваний весь світ» ...

Нами була здійснена спроба дослідження можливостей викорис-

тання трансцендентних чисел як генераторів рівномірно розподілених

випадкових чисел . Звісно , в першу чергу увага була приділена саме

«загадковому числу π» . Для такого дослідження необхідно обчислювати

число π з дуже великою кількістю цифр після коми , тому спочатку роз-

глянемо основні оцінки і методи обчислення числа π .

Оцінки числа π в різні часи :

3 (древні вавилоняни , 3-2 тис. р. до н.е.)

8

13 (римський архітектор Вітрувій , 1 ст. до н.е.)

7

22 (видатний давньогрецький математик , механік , інженер

Архімед, 3 ст. до н.е.),

120

377 (індійський мислитель і астроном Арьябхати, 5 ст. до н.е.)

113

355 (давньокитайський астроному Цзу Чунчжи).

Page 6: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Волинський математичний вісник

8

Методи обчислення числа π. Метод Монте-Карло . Досить простий і

легкий в реалізації метод. Суть його полягає в наступному : розглянемо

довільний квадрат з центром на початку координат і вписаний в нього

круг. Розглядатимемо тільки першу координатну чверть. У ній будемо

випадковим чином вибирати точки , і рахувати, скільки потрапили в

четверть круга (мал.1) . Завдяки теорії вірогідності ми знаємо, що від-

ношення попадань в чверть круга до попадань поза ним рівне відношен-

ню площ - π/4. Це , власне, і весь алгоритм. Чим більше узятих навмання

точок ми перевіримо, тим точніше буде відношення площ , а , відповід-

но , і значення числа π .

Недоліки цього методу полягають в його невисокій ефективності

(для знаходження тільки перших цифр після коми числа π потрібна зна-

чна кількість ітерацій) та у тому , що при реалізації алгоритму на деякій

мові програмування використовується вбудований генератор випадко-

вих чисел .

Низьку ефективність даного методу доводять результати обчис-

лень тестовою програмою – 10 000 000 ітерацій головного циклу про-

грами знаходять лише 3 цифри після коми числа π.

Ряд Лейбніца. Ряд Лейбніца – це знакозмінний ряд , який має

наступний вигляд :

...2

11...

9

1

7

1

5

1

3

11

4

nn

або такий ( після множення лівої та правої частин на 4 ) :

...

2

11...

9

1

7

1

5

1

3

114

nn

Ефективність даного методу дещо вища – 100 000 ітерацій голов-

ного циклу програми знаходять 4 цифри після коми числа π.

Page 7: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Серія прикладна математика, випуск 6 (15), 2009

9

Обчислення за формулами. Відомі наступні формули для обчис-

лення числа π :

3

1

2

1

4arctgarctg

- ф-ла Хаттона (Hutton) №1 ; (1)

7

1

2

12

4arctgarctg

- ф-ла Хаттона №2 ; (2)

239

1

5

14

4arctgarctg

- ф-ла Мечіна (Machin); (3)

239

15

57

18

18

112

4arctgarctgarctg

- ф-ла Гауса (Gauß); (4)

12943

124

682

112

239

17

57

144

4arctgarctgarctgarctg

-

ф-ла Стормера (Størmer) . (5)

Якщо врахувати , що для кожної формули arctg(x) можна вирази-

ти через степеневий ряд наступного вигляду :

...12

)1(...753

)(12

1753

n

xxxxxxarctg

nn

, (6)

то ми побачимо досить реальний шлях обчислення числа π за вказаними

формулами . Слід зазначити , що ряд (6) був відкритий шотландським

математиком Джеймсом Грегорі (Gregory ) в 1670 році і є узагальненням

ряду Лейбніца (перетворюється в нього при х=1). Що цікаво , сам вина-

хідник тоді не помітив, що даний ряд має відношення до числа π.

Проаналізуємо ефективність формул за допомогою міри Лехмера

( Lehmer’s Measure ) , яка являє собою суму величин , обернених до де-

сяткових логарифмів з основою , яка рівна знаменнику арктангенса у

формулі . Наприклад, з формулою Мечіна (3) :

Page 8: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Волинський математичний вісник

10

852,1239lg

1

5lg

1E .

Враховуємо той факт , що чим менше значення даної міри , тим

більше формула ефективна.

Таблиця 2

Формула Хаттона

№1

Хаттона

№2

Мечіна Гауса Стормера

Міра Лех-

мера

5,418 3,280 1,852 1,786 1,586

З табл. 2 видно , що найефективнішою є формула Стормера (5).

Її ми і використали в наших дослідженнях . По наведеному вище алго-

ритму була написана програма для обчислення значення числа з довіль-

ною точністю [5],[6],[7],[8],[9].

В табл.3 ви маєте змогу побачити результати обчислення та ро-

зподілу цифр числа π , обчисленого відповідно до n1=1000 , n2=5000 ,

n3=10000 , n4=50000 , n5=100000 , n6=500000 знаків після коми .

Таблиця 3 Ц

И

Ф

Р

И

n=1000 n=5000 n=10000 n=50000 n=100000 n=500000

in τ

in Τ

in τ

in τ

in τ

in τ

0 93 0,49 466 2,31 968 1,02 5032 0,20 10000 0,00 50166 0,55

1 116 2,56 532 2,05 1026 0,68 5055 0,60 10138 1,90 49938 0,08

2 103 0,09 495 0,05 1021 0,44 4868 3,48 9908 0,85 49920 0,13

3 102 0,04 459 3,36 975 0,62 4947 0,56 10025 0,06 49882 0,28

4 94 0,36 507 0,10 1012 0,14 5011 0,02 9969 0,10 49754 1,21

5 97 0,09 526 1,35 1045 2,02 5052 0,54 10026 0,07 50362 2,62

6 95 0,25 514 0,39 1023 0,53 5017 0,06 10028 0,08 49899 0,20

7 95 0,25 487 0,34 969 0,96 4978 0,10 10026 0,07 50084 0,14

8 100 0,00 492 0,13 947 2,81 5030 0,18 9978 0,05 49903 0,19

9 105 0,25 522 0,97 1014 0,20 5010 0,02 9902 0,96 50092 0,17

χ2 4,38 11,05 9,43 5,78 4,13 5,57

Page 9: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Серія прикладна математика, випуск 6 (15), 2009

11

Примітка : τ=

10

10

2

n

nni

Через ni позначені емпіричні частоти , через ni’ – теоретичні .

Значення статистики φ2 обчислено за формулою :

χ2 =

'

)'( 2

i

is

n

nn

Підсумкова табл.4 дає імовірність того , що вказані вибірки об-

сягом n1 , n2 , n3 , n4 , n5 є вибірками із рівномірно розподіленої генера-

льної сукупності . При цьому критичну точку для критерію χ2 ми виби-

рали із таблиць при умові χ2= χ

2кр.

Число ступенів вільності χ2

кр. r=10-3=7.

Таблиця 4

перевірки

nj χ2

Pj

1 1000 4,38 73,3

2 5000 11,05 13,9

3 10000 9,43 22,5

4 50000 5,78 56,3

5 100000 4,13 76,8

6 500000 5,57 58,7

Page 10: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Волинський математичний вісник

12

Отже , ми бачимо , що при даному визначенні середня імовір-

ність %25.502 x

P

Врахуємо те , що аналогічним способом було здійснено переві-

рку існуючих таблиць рівномірно розподілених випадкових чисел , в

результаті яких було отримано наступне :

1) Пірсона – Хартлі [1]: χ2 = 12.12 ; Pj = 9.6942 .

2) Абрамовіца – Стіган [2] : χ2 = 7,06 ; Pj = 40.7174 .

Висновок. Отримані нами імовірності досить високі , якщо ви-

ходити з того факту, що аналогічні імовірності, знайдені для нормально-

го розподілу становлять в середньому 3-10% і в той же час нормальний

розподіл має всезагальне застосування як теоретичний розподіл похибок

спостережень . Тому ми маємо всі обґрунтування істинності твердження

про можливість використання трансцендентних чисел, а саме числа π як

генератора випадкових чисел.

Таким чином , можна вважати , що відкрита нова , невідома досі

властивість числа π , а саме : підтверджено факт , що це число є ідеаль-

ним генератором рівномірно розподілених випадкових чисел , набагато

кращим , ніж всесвітньо відомі таблиці Пірсона – Хартлі [1] чи таблиці

Абрамовіца – Стіган [2] .

Витрачено дуже багато зусиль на створення штучних генерато-

рів випадкових чисел , написано тисячі наукових статей , сотні книг ,

захищено сотні дисертацій . Як виявляється , цих речей можна було б не

робити , якби вчасно була відома знайдена нами особливість числа π .

Page 11: СУЧАСНІ МЕТОДИ СТВОРЕННЯ ГЕНЕРАТОРІВ РІВНОМІРНО РОЗПОДІЛЕНИХ ВИПАДКОВИХ ЧИСЕЛ

Серія прикладна математика, випуск 6 (15), 2009

13

1. 1.Большев Л.Н. , Смирнов Н.В. Таблицы математической статистики //

М.: ВЦ АН СССР , 1968 , с. 206 .

2. Abramovitz Ed. M. and Stegun I. Handbook of Mathematical Functions //

National Bureau of Standarts applied mathematics Series-55 . Issued June

1964 – 832 p.

3. Hull T.E. , Dobell A.R. Random number generators // Soc. Ind. Appl. Math ,

1962 , №4 , p. 230-254.

4. Bailey D.H. and Crandall, R.E.Random Generators and Normal Numbers //

Expert Math.11, 527-546, 2002.

5. Корера А., Фрейзер С., Маклин С. и др. Visual Studio .NET . Пособие для

разработчиков С++ // М. : Лори, 2003.

6. Тойстернсон П., Оберг Р. Архитектура .NET и программирование на

Visual C++ // М./СПб/К. : Вильямс, 2002.

7. Либерти Дж. Программирование на C# (O’Reilly – Second Edition) // М.:

Символ-Плюс.

8. Рихтер Дж. Программирование на платформе .NET Framework (изд.

второе, дополненное) // М. : Русская редакція, 2003.

9. Microsoft Developer Network Library for Microsoft Visual Studio

(http://msdn.microsft.com).

Джунь Й.В., Валецкий О.О. СОВРЕМЕННЫЕ МЕТОДЫ СОЗДАНИЯ

ГЕНЕРАТОРОВ РАВНОМЕРНО РАСПРЕДЕЛЕННХ СЛУЧАЙНЫХ ЧИСЕЛ //

В работе отражена классификация существующих методов создания последо-

вательностей равномерно распределенных случайных чисел и их применение.

Также значительное внимание обращено на неизвестное ранее свойство числа

π - использование его как генератора равномерно распределенных случайных

чисел. В работе рассмотрены методы вычисления трансцендентного числа π,

статистические критерии для анализа результатов, и проверка наиболее

известных таблиц случайных чисел.

Dzhun Y.V., Valetsky O.O. MODERN METHODS FOR CREATION OF

GENERATORS OF EQUIDISTRIBUTED RANDOM DIGITS // It is in-process

reflected classification of existent methods of creation of sequences of equipartition

random numbers and their application. Also much attention is devoted to unknown

property of number of π – its use as generator of equipartition random numbers. In-

process there are considered methods of calculation of π, and statistical criteria for

the analysis of results, and verification of the most known tables of random numbers.