590

Імітаційне моделювання. Функція генератор випадкових (псевдо) чисел

Отчет о прохождении практики

Математика и математический анализ

Написати функцію генератор випадкових(псевдо) чисел. Дослідити поведінку ЛК на зміну параметрів. Побудувати графік. Реалізована функція xn+1=(axn+c) mod m. З вхідними параметрами. За допомогою функції і оримали масив 1000 значень. ПСЧ отримались в проміжку від 1 до 29.

Украинкский

2012-11-28

66.5 KB

4 чел.

PAGE  2

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

КРИВОРІЗЬКИЙ ПЕДАГОГІЧНИЙ ІНСТИТУТ ДВНЗ КНУ

Кафедра інформатики і

прикладної математики

ЗВІТ

Імітаційне моделювання

Виконав:

студент 4-го курсу

групи  І-08

Крепчук О.О.

Керівник:

Євтєєв В.М.




м. Кривий Ріг

2012 р.

Завдання: Написати  функцію «генератор випадкових(псевдо) чисел». Дослідити поведінку ЛК на зміну параметрів. Побудувати графік.

Додаток функції майн.

n=1000;

x = randint(n,1);

  x(1)=100;

m=29;

  y=zeros(m,1);  

  a=1;

  c=20;

  for i=2:n

     x=LK(m,a,c,x,i);

  end;

  y=podshet(x,y,m,n);

  showplot(y);

Параметри ЛК

М = 29, краще брати м в яких нод = 1 і самому м.

С - повинно бути менше за м.

А – повинно бути більше нуля і менше М.

Додаток функції генератора.

 function x=LK(m,a,c,x,i)

x(i)=mod((a*x(i-1)+c),m);

end

Все як в лекціях. Реалізована функція xn+1=(axn+c) mod m. З вхідними параметрами. 

За допомогою функції і оримали масив 1000 значень. ПСЧ отримались в проміжку від 1 до 29 тобто до М.

Рис1. Вивід масиву наших ЛК чисел з нашими параметрами.

Інші параметри М=23, кількість в масиві 10000. а=1,с=21,першочергове значення 90.

Рис.2. Інші параметри.

І так з рис.2. видно, що генерує по рівномірному закону розподілу.

Додаток Експ закон.

function k = Expon( x,n )

for i=1:n

   k(i)=(-log(1-x(i))/2);

end;

end

Передаємо наш масив функції експ і вона реалізує закон Експ. З тими самими параметрами.

Додаток Ерленга закон.

%распределение Эрланга +

for i=1:10000

   sum=0;

   for y=1:l-1

       n=rand(1);

       sum=sum+(((lam*n)^y)/prod(1:y))*exp(-lam*n);

   end;

   a(i)=1-sum;

end;

Рис.3.

Додаток Норм. закон.

%нормальное распределение +

for i=1:10000

   a(i)=from+(to-from)*randn(1);

end;

Рис.4.

Висновок: Параметр м впливає на проміжок генерації. М також повинно мати нод 1 і саме себе. Розглянуті 4 закони розподілу. Проаналізовані параметри які входять в ЛК. М,а,с, і початковий параметр х0.

Припускали, що m>2, 1<а<m ( а=0 або а=1 брати безглуздо, а всі інші по модулю m еквівалентні числам з діапазону 0а<m), 0c<m і 0x0<m. Нам буде зручно виділити три випадки:

 xn+1=(a xn+c) mod m,  c0

(2)

xn+1=a xn mod m,  m – составе число.

(3)

xn+1=a xn mod m,  mпросте число.

(4)

Генератори (3), (4) є окремим випадком (2) і визначаються трійкою параметрів {m, a, x0}, причому насправді у випадку (4) вибір x0 байдужий, при 1 x0<m виходить один і той же генератор.

М повинно бути простим, тому що ми потрапимо на період. Тобто буде повторюватися наші ПСЧ.