Фрагмент для ознакомления
1
ВВЕДЕНИЕ 3
1 ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ 4
1.1 Терминология 4
1.2 Нормальное и равномерное законы распределения 5
1.3 Алгоритмы генерации случайных чисел 6
2 АЛГОРИТМЫ ГЕНЕРАЦИИ СЛУЧАЙНЫХ ЧИСЕЛ 8
2.1 Алгоритм с привязкой к системному времени 8
2.2 Алгоритм белого шума 12
2.3 Метод Мерсенна 17
3 ТЕСТИРОВАНИЕ АЛГОРИТМОВ 21
3.1 Алгоритм с привязкой к системному времени 21
3.2 Алгоритм белого шума 22
3.3 Метод Мерсенна 25
4 ЗАКЛЮЧЕНИЕ 28
БИБЛИОГРАФИЧЕСКИЙ СПИСОК 29
Фрагмент для ознакомления
2
Случайные числа являются неотъемлемой частью множества компьютерных наук, статистики, криптографии и различных технических областей. Генерация слу-чайных чисел играет ключевую роль в создании численных моделей, симуляциях, шифровании данных и других областях, где требуется элемент случайности.
Целью данной работы является изучение и анализ различных алгоритмов ге-нерации случайных чисел. Наше исследование направлено на рассмотрение разно-образных методов, начиная от классических псевдослучайных генераторов до бо-лее современных алгоритмов, включая их преимущества, недостатки и области применения.
В рамках этого исследования будет проведен обзор методов генерации слу-чайных чисел, таких как метод Мерсенна, алгоритм белого шума и алгоритм с при-вязкой к системному времени. Особое внимание будет уделено их характеристи-кам, статистическим свойствам и областям применения.
Понимание и анализ алгоритмов генерации случайных чисел является клю-чевым элементом в разработке надежных и эффективных систем, поскольку от вы-бора алгоритма зависит степень случайности и предсказуемость создаваемых чис-ловых последовательностей.
В работе также будет произведено тестирование алгоритмов на нормальном и равномерном законах распределения.
1 ОСНОВНЫЕ ПОНЯТИЯ И ОПРЕДЕЛЕНИЯ
1.1 Терминология
Когда речь идет об алгоритмах генерации случайных чисел, важно понимать следующие основные понятия.
Случайные числа – это числа, которые появляются в результате про-цесса, который нельзя предсказать заранее и который считается случай-ным. В информатике и программировании случайные числа используются для моделирования случайных событий или создания разнообразия в раз-личных процессах.
Псевдослучайные числа – это числа, которые генерируются с помо-щью детерминированного алгоритма. Эти числа выглядят случайными, но на самом деле являются результатом математического процесса, который, начиная с определенного стартового числа (называемого зерном), произ-водит последовательность чисел, которая кажется случайной. Однако, та-кие числа не обладают свойствами истинно случайных чисел.
Законы распределения определяют вероятности появления различ-ных значений в случайной величине или наборе данных. Некоторые из наиболее распространенных законов распределения включают:
1. Нормальное распределение (или распределение Гаусса) – симмет-ричное распределение, которое характеризуется колоколообразной кри-вой.
2. Равномерное распределение – все значения имеют одинаковую ве-роятность появления.
3. Биномиальное распределение – моделирует количество успешных событий в серии однотипных экспериментов.
4. Экспоненциальное распределение – моделирует время между по-следовательными событиями в процессе Пуассона.
Показать больше
Фрагмент для ознакомления
3
1 Шолле, Ф. Глубокое обучение на Python / Ф. Шолле. – Санкт-Петербург: Питер, 2018. – 400 с.
2 Кнут, Д. Э. "Искусство программирования. Том 2: Первоначаль-ные алгоритмы" (Donald E. Knuth, "The Art of Computer Programming, Volume 2: Seminumerical Algorithms").
3 Gentle, J. E. "Random Number Generation and Monte Carlo Methods" (James E. Gentle).
4 Marsaglia, G. "Random Numbers for Simulation" (George Marsaglia).
5 L'Ecuyer, P., and Cote, S. "Implementing a Random Number Package with Splitting Facilities" (Pierre L'Ecuyer, Serge Cote).
6 Fishman, G. S. "Monte Carlo: Concepts, Algorithms, and Applica-tions" (George S. Fishman).
7 Воронцов, К. В., and Мацкевич, С. А. "Алгоритмы и методы стати-стического моделирования с применением Python и R" (Константин Вла-димирович Воронцов, Станислав Алексеевич Мацкевич).
8 Матвеев, В. А. "Методы математического моделирования и инфор-матики" (Владимир Андреевич Матвеев).
9 Хабибуллин, Р. А. "Современные методы вычислений: теория и практика" (Рустам Александрович Хабибуллин).
10 Рыбаков, Ю. С. "Статистическое моделирование с использованием R" (Юрий Сергеевич Рыбаков).
11 Деворе, Д. "Вероятность и статистика для инженеров" (Джей Де-воре).
12 Ван дер Ваарт, А. "Асимптотическая статистика" (Адриан Ван дер Ваарт).
13 Крамер, Х. "Математические методы статистики" (Харальд Кра-мер).
14 Васерштейн, Л. Н. "Математическая статистика" (Леонид Наумо-вич Васерштейн).
15 Мацумото, М., and Нишимура, Т. "Uniform Random Number Generators" (Макото Мацумото, Такахиро Нишимура).
16 Knuth, D. E. "Seminumerical Algorithms" (Donald E. Knuth).
17 Feller, W. "An Introduction to Probability Theory and Its Applica-tions" (William Feller).
18 Воробьев, Н. Н. "Введение в теорию вероятностей и её приложе-ния" (Николай Николаевич Воробьев).
19 Дал, Р. "Практическая статистика для науки о данных" (Рахул Дал).
20 Романенко, А. В. "Математические основы статистической радио-техники" (Александр Васильевич Романенко).
21 Львовский, С. М. "Основы статистики: учебное пособие" (Сергей Михайлович Львовский).
22 Смирнов П. И. Введение в теорию случайных последовательно-стей. М.: Издательство МГУ, 2004.