
СМОД – Статистические методы обработки данных / Лаба 1 - 8 / smodlabs / Maretskaya_Mozhaeva_Lutsenko_3
.docxМинистерство образования Республики Беларусь
Учреждение образования
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ
Факультет информационных технологий и управления
Кафедра информационных технологий автоматизированных систем
Отчет по лабораторной работе №3
«Моделирование одномерных случайных чисел»
по дисциплине «Статистические методы обработки данных»
Выполнили: |
Проверил: |
студенты гр. 820602 |
Ассистент |
Марецкая Е.В. |
Трофимович А. Ф. |
Можаева А.И Луценко А.В |
|
Минск 2011
1 ЦЕЛЬ РАБОТЫ
1.1. Изучение методов моделирования одномерных случайных чисел.
1.2. Приобретение навыков моделирования одномерных случайных чисел в системе Matlab.
2 ЗАДАНИЕ
2.1. Выполнить моделирование случайных чисел с указанными распределениями. Для каждого распределения вывести по 100 случайных чисел, используя собственную программу, реализующую предложенный алгоритм, и стандартную программу MATLAB. Собственные программы оформить в виде m-файлов-функций. Случайные числа вывести в виде точек на действительной прямой.
2.2. Для каждой выборки вычислить с помощью функции function [xmean,s2,s3,s4,xmin,xmax,wtsum,wt,iwt,ifail]=g01aaf(x<,wt,iwt,ifail>) выборочные среднее xmean, среднеквадратическое отклонение s2, коэффициент асимметрии s3, коэффициент эксцесса s4, минимальное значение выборки xmin, максимальное значение выборки xmax, сумму весов wtsum по данным x1,x2,…,xn, помещенным в векторе x и имеющим соответствующие веса w1,w2,…,wn, помещенные в векторе wt. Если присваивания весов не требуется, то параметр wt не указывается, при этом веса устанавливаются равными 1. Параметр iwt=0.
-
ХОД РАБОТЫ
3.1 Моделирование равномерного распределения
Воспользуемся средствами Matlab для построения графика плотности равномерного распределения
y=unifpdf(x,a,b) – расчет значения плотности вероятности равномерного в промежутке (a,b) распределения в точке x .
Нанесем на действительную прямую 100 случайных значений, вычисленных по алгоритму.
Алгоритм:
Выполним аналогичные действия с помощью средств Matlab.
y=unifrnd(a,b) –равномерное распределение
Рисунок 1 – Графики плотности равномерного распределения смоделированные по алгоритму случайные числа и числа, смоделированные с помощью средств Matlab
Вычислим необходимые данные по выборке:
Таблица 1 – Характеристики равномерного распределения
Собственная программа |
Стандартная программа |
xmean = -0.6667 s2 = 2.7191 s3 = 0.2614 s4 = 1.8235 xmin = -4.9218 xmax = 4.8793 |
xmean = 0.0334 s2 = 0.0472 s3 = 0.7060 s4 = 1.4985 xmin = 0 xmax = 0.1000 |
3.2 Моделирование нормального распределения
Воспользуемся средствами Matlab для построения графика плотности нормального распределения
y=normpdf(x,a,sigma) – расчет значения плотности вероятности нормального распределения с параметрами a, σ в точке x , а - математическое ожидание, a σ - среднее квадратичное отклонение.
Нанесем на действительную прямую 100 случайных значений,распределенных но нормальному закону, вычисленных по алгоритму.
Алгоритм
Выполним аналогичные действия с помощью средств Matlab.
y=normrnd(a,b) –равномерное распределение
Рисунок 2 – Графики плотности нормального распределения, смоделированные по алгоритму случайные числа и числа, смоделированные с помощью средств Matlab
Вычислим необходимые данные по выборке:
Таблица 2 – Характеристики нормального распределения
Собственная программа |
Стандартная программа |
xmean = 1.8057 s2 = 3.8635 s3 = 0.2599 s4 = 3.0143 xmin = -7.7023 xmax = 13.4907 |
xmean = 0.0200 s2 = 0.0318 s3 = 1.4396 s4 = 3.5631 xmin = 1.2737e-011 xmax = 0.0997 |
-
Исследования распределения Хи-квадрат
Воспользуемся средствами Matlab для построения графика плотности распределения Пирсена
y=chi2pdf(x,k) – расчет значения плотности вероятности распределения
хи-квадрат с k степенями свободы в точке x.
Нанесем на действительную прямую 100 случайных значений, вычисленных по алгоритму. Алгоритм
Выполним аналогичные действия с помощью средств Matlab.
Y=chi2rnd(k) –распределение Пирсена.
Рисунок 3 - График плотности распределения хи-квадрат, смоделированные по алгоритму случайные числа и числа, смоделированные с помощью средств Matlab
Вычислим необходимые данные по выборке
xmean = 2.0038
xmax = 7.8762
xmin = 0.0228
s2 = 1.7792
s3 = 1.3130
s4 = 4.4685
xmean = 1.7701
xmax = 7.0520
xmin = 0.0232
s2 = 1.6127
s3 = 1.6061
s4 = 5.3678
ВЫВОД
В ходе выполнения лабораторной работы были изучены методы моделирования одномерных случайных чисел, приобретены навыки моделирования одномерных случайных чисел в системе Matlab.
Текст программы
Ravnsl.m
clc;
clear;
a = -5;
b=5;
for i=1:100
mas(i)=ravnraspr(a,b);
end
z=-15:0.01:15;
y2=unifpdf(z,a,b);
subplot(2,1,1),plot(z,y2);
hold on
for i=1:100
subplot(2,1,1),plot(mas(i),0.05);
hold on
end
for i=1:100
y = unifrnd(a,b);
subplot(2,1,2),plot(y,1);
hold on
end
[xmean,xmax,xmin,s2,s3,s4] = g01aaf(mas)
xmean,s2,s3,s4,xmin,xmax
normsl.m
clc;
clear;
a = 2;
sigma = 4;
for i=1:100
mas(i)=normraspr(a,sigma);
z(i)=0
end
z=-15:0.01:15;
y2=normpdf(z,a,sigma);
subplot(2,1,1),plot(z,y2);
hold on
for i=1:100
subplot(2,1,1),plot(mas(i),0.05);
hold on
end
for i=1:100
y = normrnd(a,sigma);
subplot(2,1,2),plot(y,1);
hold on
end
n=1
iwt=0;
wt=mas;
[xmean,xmax,xmin,s2,s3,s4] = g01aaf(mas)
xmean,s2,s3,s4,xmin,xmax
Stusl.m
clc;
clear;
k=3;
for i=1:100
mas(i)=sturaspr(k);
end
z=-5:0.01:5;
y2=tpdf(z,k);
subplot(2,1,1),plot(z,y2);
hold on
for i=1:100
subplot(2,1,1),plot(mas(i),0.05);
hold on
end
for i=1:100
y = trnd(k);
subplot(2,1,2),plot(y,1);
hold on
end
[xmean,xmax,xmin,s2,s3,s4] = g01aaf(mas)
xmean,s2,s3,s4,xmin,xmax
ravnraspr.m
function f=ravraspr(a,b)
a1 = rand;
f = a + (b-a)*a1;
normraspr.m
function f=normraspr(a,sigma)
a1 = rand;
a2 = rand;
c = 2.*pi;
r = sqrt(-2.*log(a1));
fi = c*a2;
e1=r*cos(fi);
f = a + sigma*e1;
sturaspr.m
function f=sturaspr(k)
u= randn;
v= chi2rnd(k);
f = u*sqrt(k)/sqrt(v);