Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Оптимізаційны методи та моделі.doc
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
5.7 Mб
Скачать

7. 4. Методи формування в пк базових впливів

Для застосування методу статистичних випробувань необхідно мати достатньо багате і швидкодіюче джерело випадкових чисел, розподілених за різними законами. В програмах, які розробляються для розв’язання складних задач, має місце багатократне використання випадкових чисел. Чим складніша і більша задача, тим більше звертань до джерела випадкових чисел. Тому наявність простих і економічних способів формування випадкових чисел є досить суттєвим фактором при використанні методу Монте-Карло.

При обранні способу формування базових впливів основними вимогами є: мінімальні затрати машинного часу для отримання випадкових чисел і зручність їх подальшого перетворення.

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

— табличний;

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

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

ТАБЛИЧНИЙ МЕТОД

Цей спосіб оснований на використанні таблиць випадкових чисел з потрібним законом розподілу. Таблиці поміщаються в оперативний запам’я­то­вую­чий устрій (ОЗУ) машини або йому подібний за швидкістю виробки (наприклад, пасивний ЗУ).

Для виробки числа передбачається формування команди завершення до ячейок пам’яті. Випадкові числа з таблиці вибираються послідовно і використовуються при розв’язку задач.

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

Зберігання таблиць випадкових чисел в повільно діючих зовнішніх накопичувачах з послідуючим введенням в ОЗУ суттєво збільшує загальний час розв’язку задачі на ЕОМ. Тому даний спосіб отримання чисел застосовується дуже рідко.

ПРОГРАМНИЙ МЕТОД

В основі всіх способів отримання базових впливів програмним шляхом лежить деякий рекурентний процес. Це означає, що кожне наступне число утворюється з попереднього (або груп попередніх) шляхом застосування деякого алгоритму. Отримані таким чином числа по суті не є випадковими. Однак статистична перевірка на випадковість і відповідність закону розподілу дає добрі результати. Іншими словами, отримані числа ведуть себе як випадкові.

Розрядність випадкових чисел в ЕОМ обмежується k розрядами. Отже, максимально можлива кількість різних чисел дорівнює n=2k. Кожне наступне псевдовипадкове число є деякою функцією попереднього, в силу чого псевдовипадкові числа неминуче будуть періодичними.

Нехай деякою програмою виробляється послідовність псевдовипадкових чисел. Перші L чисел, починаючи з a1, попарно різні, число aL+1 співпадає з одним із раніше отриманих чисел ai (1≤ і ≤ L). Тоді послідовність псевдовипадкових чисел, починаючи з ai і закінчуючи aL, надалі буде повторюватися.

Числа a1, a2,….,aL утворюють відрізок періодичності довжиною L, числа ai, ai+1,….,aL — відрізок періодичності довжиною 1=L-i+1.

Практично завжди 1=L=<2k.

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

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

— програма повинна виробляти числа з досить слабким кореляційним зв’язком;

— отримана сукупність псевдовипадкових чисел повинна відповідати встановленим критеріям перевірки на випадковість і рівномірність розподілу;

— кількість операцій, необхідна для виробки кожного числа, не повинна бути великою;

— програма повинна бути стійкою. Це означає, що під час роботи програми розподіл псевдовипадкових чисел не повинен змінюватись.

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

МЕТОД СЕРЕДИНИ КВАДРАТУ

Суть способу полягає в наступному: на початку рекурентного процесу береться довільне число a0, яке складається з 2n двоїчних цифр. Велична a0 підноситься до квадрату. Величина a02 складається з 4n цифр. З числа a02 обирається число a1, яке складається з середніх двоїчних цифр (від n+1-ї до 3n-ї). Число a2 отримується піднесенням a1 до квадрату і вибором 2n середніх двоїчних цифр і т.д.

Недоліки методу такі:

— послідовність чисел незадовільна;

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

Значно кращі результати можна отримати, якщо за початкові дані обрати пару чисел d0 і d1. Далі складається добуток d0 і d1 і його середні цифри використовуються як числа d2. Число d3 отримується шляхом вибору середніх цифр з добутку d1 d2 і т.д.

Довжина відрізку аперіодичності для даного способу залежить від вибору початкових чисел d0 і d1. На реалізацію методу в середньому витрачається більше 5 команд.

АЛГОРИТМ ЛЕМЕРА

Обирається початкове число d0 ≠0, що складається з 2n цифр (двоїчних розрядів). Складається добуток d02 і обираються останні 2n цифри цього добутку. Отримуємо величину d0, яку множимо на сталий множник С, і обираємо перші 2n цифри цього добутку. Отримуємо чергове псевдовипадкове число d1, яке в подальшому може бути використане як початкове для отримання числа d2 і т.і.

Описані методи дають можливість отримати псевдовипадкові числа з періодом, що перевищує 22n.

МЕТОД ПЕРЕМІШУВАННЯ

Даний спосіб отримання псевдовипадкових чисел в вітчизняних ЕОМ знаходить найбільше застосування. Він використовує особливості виконання операцій в конкретних машинах і оснований на хаотичному переміщуванні вмісту розрядної сітки машини.

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

Фізичні способи генерування в ЕОМ рівномірно розподілених випадкових чисел припускають наявність спеціальної електронної приставки-генератора випадкових чисел (ГВЧ).

Видача в ЕОМ випадкового числа здійснюється, як правило, за однією командою звернення до ГВЧ. Робота всіх ГВЧ базується на використанні випадкового фізичного процесу. Існує два способи отримання випадкових чисел за допомогою фізичного процесу. Перший спосіб оснований на використанні радіоактивного розпаду елементів, другий — шумів радіоелектронних пристроїв.

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

КРИТЕРІЇ СТАТИСТИЧНОЇ ПЕРЕВІРКИ ЯКОСТІ ПСЕВДОВИПАДКОВИХ ЧИСЕЛ

Основною вимогою до програми виробки чисел є задоволення їх відповідним статистичним критеріям. Єдиного критерію, достатнього для розв’язання питання про те, чи задовольняють числа деякої випадкової послідовності вимогам рівномірності і випадковості, не існує.

Практично вважають достатнім виконати перевірку по сукупності кількох критеріїв рівномірності і випадковості і таким чином отримати досить повну картину якості розподілу випадкових величин. Такими критеріями є:

— статистична перевірка періодичності;

— статистична перевірка рівномірності;

— статистична перевірка на випадковість.

Основними критеріями статистичної перевірки періодичності псевдовипадкових чисел слід вважати довжину відрізка з періодичності L. Величина L суттєво залежить від початкового числа d0, а також від способів виконання операцій в машині

Статистична перевірка рівномірності псевдовипадкових чисел здійснюється за двома критеріями: критерієм 2 і критерієм Колмогорова.

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

Перелічені методи і способи вивчаються в математичній статистиці, тому тут не розглядаються.