1
.docxГУАП
КАФЕДРА № 41
ОТЧЕТ
ЗАЩИЩЕН С ОЦЕНКОЙ
ПРЕПОДАВАТЕЛЬ
ассистент |
|
|
|
М. С. Иванова |
должность, уч. степень, звание |
|
подпись, дата |
|
инициалы, фамилия |
ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №1 |
Исследование датчиков равномерно распределенных псевдослучайных чисел |
по курсу: МОДЕЛИРОВАНИЕ |
|
|
РАБОТУ ВЫПОЛНИЛА
СТУДЕНТКА ГР. |
4716 |
|
|
|
С.А. Янышева |
|
|
|
подпись, дата |
|
инициалы, фамилия |
Санкт-Петербург
2020
Лабораторная работа № 1
Исследование датчиков равномерно распределенных псевдослучайных чисел
Цель работы
Ознакомление с методами и алгоритмами моделирования в программной среде MathCAD или MatLab случайных событий, а также изучение тестов для проверки качества моделирования.
Вариант задания
Мультипликативные датчики Полларда
Ход работы
Разработана программа генерации псевдослучайных чисел, результат работы которой приведён на рисунках 1-3, программный код представлен в листинге 1.
Рисунок 1 – Объем выборки 100
Рисунок 2 – Объем выборки 600
Рисунок 3 – Объем выборки 1000
На рисунке 4 представлены статистические показатели для СВ с объемом выборки равным 100, 600 и 1000.
Рисунок 4 – Статистические показатели
Программный код
Листинг 1
M = [286588 434446 388251]; K = [0.1452 0.8242 0.7653]; L = 997783; temp = []; n = [100 600 1000]; for i = 1:3 [M,K,L,temp] = myRand(M,K,L,n(i)); disp(['Среднее значение n=' int2str(n(i)) ': ' num2str(mean(temp))]) disp(['Дисперсия n=' int2str(n(i)) ': ' num2str(cov(temp))]) disp(['Стандартное отклонение выборки n=' int2str(n(i)) ': ' num2str(std(temp))]) end function [M, K, L, R] = myRand(M, K, L, x) R = 1:x; for i = 1:x n = length(K)+1; k = (M(1)*K(n-1)+M(2)*K(n-2)+M(3)*K(n-3))-floor((M(1)*K(n-1)+M(2)*K(n-2)+M(3)*K(n-3))/L)*L; K = [K k]; R(i) = k/L;
end figure(i) plot(R) title(['СВ N = ', num2str(i)]) ylabel('Значения СВ') xlabel('Индекс СВ')
Y = sort(R); figure(i+3) plot(Y) title(['Отсортированные СВ N = ', num2str(i)]) ylabel('Значения СВ') xlabel('Индекс СВ') end
|
Выводы о проделанной работе
В результате выполнения лабораторной работы, были получены практические навыки работы с методами и алгоритмами моделирования в программной среде MatLab случайных событий, а также проведены тесты для проверки качества моделирования. Реализованный алгоритм даёт корректные результаты в интервале от 0 до 1. Из полученных статистических показателей видно, что чем больше объём выборки, тем ближе среднее случайных величин к медиане границ генерации чисел, сокращается дисперсия.