Файл: Белгородский государственный национальный исследовательский университет.docx

ВУЗ: Не указан

Категория: Отчет по практике

Дисциплина: Не указана

Добавлен: 05.12.2023

Просмотров: 445

Скачиваний: 6

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Лабораторная работа №1. «Исследование псевдослучайных последовательностей»

Теоретическая часть

Листинг датчика на основе алгоритма сложения:

Результат работы датчика сложения

Листинг датчика на основе алгоритма умножения:

Результат работы датчика умножения

Рисунок 10 – Полученные математическое ожидание и дисперсия

Рисунок 11 – Гистограмма, где размерность массива N равна 100000

Рисунок 12 – Полученные математическое ожидание и дисперсия

Результат работы датчика, встроенного в Matlab

Рисунок 13 – Гистограмма размерностью 1000

Рисунок 14 – Математическое ожидание и дисперсия

Рисунок 16 – Математическое ожидание и дисперсия.

Рисунок 17 - Гистограмма размерностью 100000

Листинг датчика сложения на новом интервале значений:

Рисунок 19 – Гистограмма, где размерность массива N равна 1000

Рисунок 20 – Полученные математическое ожидание и дисперсия

Рисунок 21 –Гистограмма, где размерность массива N равна 10000

Рисунок 22 – Полученные математическое ожидание и дисперсия

Вывод

Контрольные вопросы к защите

K(r)=1/D · M[(xi - m)(xi + r-m)]                         (8)Ее оценка вычисляется:K*(r)=1/D*(N-r-1)n-2∑i=1[(xi-m*)(xi+r-m*)]=                              =1/D*(1/N-r-1)n-2∑i=1xixi+r-(N-r)/(N-r-1)m*            (9)

Листинг датчика на основе алгоритма сложения:

a = 565;c = 323;m = 56238423983;x = ones;n = 1000;u = 1/m;for i=1:nx(i+1) = mod((a*x(i)+c),m);u(i+1) = x(i+1)/m;endfigurehistogram(u,n);M = sum(u)/n;disp("M = "); disp(M);Dr = zeros;for i=1:nDr(i) = (u(i)-M)^2;endD = sum(Dr)/n;disp("D = "); disp(D);

Результат работы датчика сложения

Для построения гистограммы использовался массив N = 1000 при a = 565, c =323, m = 56238423983.Рисунок 1 – Гистограмма, где размерность массива N равна 1000Рисунок 2 – Полученные математическое ожидание и дисперсияРассматривая полученные данные (рисунки 1-2) затруднительно сделать вывод о том смог ли зациклиться датчик сложения. Результаты дисперсии и математического ожидания приблизительно равны теоретическим данным. Для более точного анализа работы датчика увеличим размерность последовательности до 10000.Рисунок 3 – Гистограмма, где размерность массива N равна 10000Рисунок 4 – Полученные математическое ожидание и дисперсияРассматривая полученные данные (рисунки 3-4) затруднительно сделать вывод о том смог ли зациклиться датчик сложения. Результаты дисперсии и математического ожидания приблизительно равны теоретическим данным. Для более точного анализа работы датчика увеличим размерность последовательности до 100000.Рисунок 5 – Гистограмма, где размерность массива N равна 100000Рисунок 6 – Полученное математическое ожидание и дисперсияРассматривая полученные данные (рисунки 5-6) затруднительно сделать вывод о том смог ли зациклиться датчик сложения. Результаты дисперсии и математического ожидания приблизительно равны теоретическим данным. Для более точного анализа работы датчика увеличим размерность последовательности до 1000000.
Рисунок 7 – Гистограмма, где размерность массива N равна 1000000Рисунок 8 – Полученное математическое ожидание и дисперсияРассматривая полученные данные (рисунки 7-8) можно сделать вывод о том, что датчик сложения не зациклился. Математическое ожидание и дисперсия примерно равны теоретическим и меняются незначительно. В каждый интервал попадает одинаковое количество точек.

Листинг датчика на основе алгоритма умножения:

x = 565;m = 56238423983;arr = ones;n = 1000;u = 1/m;for i=1:narr(i+1) = mod(x*arr(i), m);u(i+1) = arr(i+1)/m;endfigurehistogram(u,n);M = sum(u)/n;disp("M = "); disp(M);Dr = zeros;for i=1:nDr(i) = (u(i)-M)^2;endD = sum(Dr)/n;disp("D = "); disp(D);

Результат работы датчика умножения

Для построения гистограммы использовался массив N = 1000 при x = 565, m =56238423983.Рисунок 9 – Гистограмма, где размерность массива N равна 1000

Рисунок 10 – Полученные математическое ожидание и дисперсия

Анализируя, гистограмму на рисунке 9 заметим, что при данной размерности массива N невозможно прийти к точному выводу смог ли зациклиться датчик умножения. При этом рассчитанные математическое ожидание и дисперсия приблизительно равны теоретическим, поэтому для более точных результатов следует увеличить размерность N до 100000.

Рисунок 11 – Гистограмма, где размерность массива N равна 100000

Рисунок 12 – Полученные математическое ожидание и дисперсия

Изучая, гистограмму на рисунке 11 заметим, что при данной размерности массива N можно прийти к выводу, что данный датчик умножения не зациклился. Математическое ожидание и дисперсия примерно равны теоретическим и меняются незначительно.

Результат работы датчика, встроенного в Matlab

Для построения гистограммы использовался массив N = 1000.

Рисунок 13 – Гистограмма размерностью 1000

Рисунок 14 – Математическое ожидание и дисперсия

Анализируя, гистограмму на рисунке 13 заметим, что при данной размерности массива N невозможно прийти к точному выводу смог ли зациклиться встроенный датчик rand(n). При этом рассчитанные математическое ожидание и дисперсия приблизительно равны теоретическим, поэтому для более точных результатов следует увеличить размерность N до 10000.Рисунок 15 - Гистограмма размерностью 10000

Рисунок 16 – Математическое ожидание и дисперсия.

Анализируя, гистограмму на рисунке 15 заметим, что при данной размерности массива N невозможно прийти к точному выводу смог ли зациклиться встроенный датчик rand(n). При этом рассчитанные математическое ожидание и дисперсия приблизительно равны теоретическим, поэтому для более точных результатов следует увеличить размерность N до 100000.

Рисунок 17 - Гистограмма размерностью 100000

Рисунок 18 - Математическое ожидание и дисперсияИзучая, гистограмму на рисунке 17 заметим, что при данной размерности массива N можно прийти к выводу, что данный встроенный датчик rand(n) не зациклился. Математическое ожидание и дисперсия примерно равны теоретическим и меняются незначительно. В каждый интервал попадает одинаковое количество точек.

Листинг датчика сложения на новом интервале значений:

a = 565;c = 323;m = 56238423983;x = ones;n = 1000;u = 1/m;Num = 24;B = 2.5*Num;g = zeros;for i = 1:nx(i+1) = mod(a*x(i) + c,m);u(i+1) = x(i+1)/m;g(i+1) = Num+(B-Num)*u(i+1);endfigurehistogram(g,n);M = sum(u)/n;disp("M = "); disp(M);Dr = zeros;for i=1:nDr(i) = (u(i)-M)^2;endD = sum(Dr)/n;disp("D = "); disp(D);
Для построения гистограммы использовался массив N = 1000 при a = 565, c = 323, m = 56238423983 на интервале [24; 60].

Рисунок 19 – Гистограмма, где размерность массива N равна 1000

Рисунок 20 – Полученные математическое ожидание и дисперсия

Анализируя, гистограмму на рисунке 19 заметим, что при данной размерности массива N невозможно прийти к точному выводу смог ли зациклиться датчик сложения на новых интервалах. Для более точных результатов следует увеличить размерность N до 10000.

Рисунок 21 –Гистограмма, где размерность массива N равна 10000

Рисунок 22 – Полученные математическое ожидание и дисперсия

Анализируя, гистограмму на рисунке 21 заметим, что при данной размерности массива N невозможно прийти к точному выводу смог ли зациклиться датчик сложения на новых интервалах.

Вывод

В ходе выполнения лабораторной работы были изучены методы формирования случайных чисел при помощи различных датчиков псевдослучайных чисел на определенном интервале.Была исследована работа двух алгоритмов формирования случайных чисел: сложения и умножения. В процессе увеличения количества формируемых случайных чисел оба датчика не зацикливаются. Чем больше производится выборка чисел, тем точнее вычисляются математическое ожидание и дисперсия. Это связано с тем, что все точки распределяются равномерно по интервалу случайных чисел. Поэтому эти методы можно назвать псевдослучайными, так как случайные числа, которые они образуют начинают повторяться.Также в ходе выполнения был рассмотрен встроенный датчик rand(n), он также, как и собственные алгоритмы формирования при увеличении количества случайных чисел не зацикливается, что говорит об аналогичном алгоритме генерирования псевдослучайных чисел.При увеличении интервала значений увеличивается математическое ожидание и дисперсия, при этом математическое ожидание становится больше дисперсии, так как при увеличении интервала увеличивается и разброс случайных чисел.

Контрольные вопросы к защите

1.  Почему нельзя получить последовательность действительно случайных чисел программными методами?2.      Какие последовательности случайных чисел называют псевдослучайными?3.      Можно ли применять ПСП для формирования потоков случайных величин с числом значений, превышающих период ПСП?4.      На чем основан принцип построения датчика случайных чисел с равномерным распределением?5.   Каким образом достигается распределение значений случайных чисел датчика в интервале значений от 0 до 1? Можно ли изменить границы этого интервала?6.   Поясните, в чем состоит метод получения случайной величины с заданным законом распределения на основе нелинейного преобразования?Каким образом число генерированных случайных величин влияет на степень приближения к заданному распределению вероятностей?