Смекни!
smekni.com

Застосування методу Монте-Карло для кратних інтегралів (стр. 2 из 2)

2.

при i=n+1, n+2, …,N (6/) (для зручності ми тут змінюємо нумерацію точок).

Зазначимо, що відносно границі Г області σ варто заздалегідь домовитися, чи зараховуються граничні точки або частина їх до області σ, чи не зараховуються до неї. У загальному випадку при гладкій границі Г це не має істотного значення в окремих випадках потрібно вирішувати питання з урахуванням конкретної ситуації.

Узявши досить велике число n точок

, приблизно можна покласти:
; звідси шуканий інтеграл виражається формулою

де під σ розуміється m-мірний об’єм області інтегрування σ. Якщо обчислити σ важко, то можна прийняти:

, звідси
. В окремому випадку, коли σ є одиничний куб, перевірка стає зайвою, тобто n=N і ми маємо просто

.

2.1 Принцип роботи методу Монте–Карло

Датою народження методу Монте-Карло визнано вважати 1949 рік, коли американські учені Н. Метрополіс і С. Услам опублікували статтю під назвою «Метод Монте-Карло», в якій були викладені принципи цього методу. Назва методу походить від назви міста Монте–Карло, що славився своїми гральними закладами, неодмінним атрибутом яких була рулетка – один з простих засобів здобуття випадкових чисел з хорошим рівномірним розподілом, на використанні яких заснований цей метод. Метод Монте–Карло - це статистичний метод. Його використовують при обчисленні складних інтегралів, вирішенні систем рівнянь алгебри високого порядку, моделюванні поведінки елементарних часток, в теоріях передачі інформації, при дослідженні складних економічних систем. Суть методу полягає в тому, що в завдання вводять випадкову величину

, що змінюється по якому те правилу
. Випадкову величину вибирають так, щоб шукана в завданні величина стала математичною чекання від
, тобто
.

Таким чином, шукана величина визначається лише теоретично. Щоб знайти її чисельно необхідно скористатися статистичними методами. Тобто необхідно узяти вибірку випадкових чисел

об'ємом . Потім необхідно обчислити вибіркове середнє варіанту випадкової величини
по формулі:

. (1)

Обчислене вибіркове середнє приймають за наближене значення

.

Для здобуття результату прийнятної точності необхідна велика кількість статистичних випробувань. Теорія методу Монте-Карло вивчає способи вибору випадкових величин

для вирішення різних завдань, а також способи зменшення дисперсії випадкових величин.

3. Програма обчислення кратного інтеграла методом Монте-Карло

Обчислити певний інтеграл

. за методом “Монте-Карло” по формулі

,

де n – число випробувань ;g(x) – щільність розподілу.

3.1 Програма складена на мові програмування TURBO PASCAL 7.0

program MonteCarlo;

uses

crt;

const k=100;

Var a,b,c,d,ng,vg,x,y,s,integral : real;

n,i,j : integer;

integr:array[1..k]of real;

Function f(x,y:real):real;

Begin

f:=Sqrt(x+y);

end;

Function nm(x:real):real;

Begin

nm:=3*x;

end;

Function vm(x:real):real;

Begin

vm:=8*x;

end;

BEGIN

clrscr;

writeln('Vvedit znachennya granyts integruvannya ');

write('a='); readln(a);

write('b='); readln(b);

writeln('Vvedit chyslo vyprobuvan:');

readln(n);

c:=nm(a);

d:=vm(b);

randomize;

for j:=1 to k do

begin

s:=0; integral:=0;

For i:=1 to n do

begin

x:=a+(b-a)*random;

y:=c+(d-c)*random;

ng:=nm(x);

vg:=vm(x);

If (y <= vg) and(y >= ng) then s:=s + f(x, y);

end;

integr[j]:=(b-a)*(d-c)*s/n;

writeln(integr[j]:10:4);

end;

for j:=1 to k do

Integral:=integral+ integr[j];

writeln('Userednenyy integral=',(integral/k):10:4);

readln;

END.


3.2Програма складена в Matematica program MonteCarlo;

{$APPTYPE CONSOLE}

uses

SysUtils;

const k=100;

Var a,b,c,d,ng,vg,x,y,s,integral : real;

n,i,j : integer;

integr:array[1..k]of real;

Function f(x,y:real):real;

Begin

f:=Sqrt(x+y);

end;

Function nm(x:real):real;

Begin

nm:=3*x;

end;

Function vm(x:real):real;

Begin

vm:=8*x;

end;

BEGIN

writeln('Vvedit znachennya granyts integruvannya ');

write('a='); readln(a);

write('b='); readln(b);

writeln('Vvedit chyslo vyprobuvan:');

readln(n);

c:=nm(a);

d:=vm(b);

for j:=1 to k do

begin

s:=0; integral:=0;

randomize;

For i:=1 to n do

begin

x:=a+(b-a)*random;

y:=c+(d-c)*random;

ng:=nm(x);

vg:=vm(x);

If (y <= vg) and(y >= ng) then s:=s + f(x, y);

end;

integr[j]:=(b-a)*(d-c)*s/n;

writeln(integr[j]:10:4);

end;

for j:=1 to k do

Integral:=integral+ integr[j];

writeln('Userednenyy integral=',(integral/k):10:4);

readln;

readln;

END.

3.1Результат програми

Функція k N=100 N=500 N=1000 N=10000
Pascal a=0 b=4 165.1777 162.6751 162.1815 162.1507
mathematica a=0 b=4

Висновок

Метод Монте-Карло використовується дуже часто, часом неефективним чином. Він має деякі очевидні переваги:

а) Він не потребує ніяких свідчень про регулярність. Це може бути корисним, тому що часто дуже складна функція, властивості регулярності якої важко установити.

б) Він приводить до здійснення процедури навіть у багатомірному випадку, коли чисельне інтегрування застосувати неможливо наприклад, при числі вимірів, більшим за 10.

в) Його легко застосовувати при малих обмеженнях або без попереднього аналізу задачі.

Він володіє, однак, деякими недоліками, а саме:

а) Границі помилки не визначені точно, але включають якусь випадковість. Це, однак, більш психологічна, ніж реальна, проблема.

б) Статистична похибка зменшується повільно.

в) Необхідність мати випадкові числа.


Джерела використаної інформації

1. Гмурман В.Е. Руководство к решению задач по теории вероятностей и математической статистике: Учеб. пособие для студентов втузов. – 3-е изд., перераб. И доп. – М.: Высш. школа, 1979г.

2. Ермаков С.М. Методы Монте-Карло и смежные вопросы. М.: Наука, 1971г.

3. Севастьянов Б.А. Курс теории вероятностей и математической статистики. – М.:Наука,1982г.

4. Математика. Большой энциклопедический словарь / Гл. ред. Ю.В. Прохоров. – М.: Большая Российская энциклопедия,1999г.

5. Гмурман В.Е. Теория вероятностей и математическая статистика. Учеб. пособие для втузов. Изд. 5-е, перераб. и доп. М., «Высш. школа», 1977.

6. Демидович Б.П. Основы вычислительной математики. М., Государственное издательство физико-математической литературы