ЛЕКЦИЯ 4 -sofia.bg



ЛЕКЦИЯ 9. Въведение в метода Монте Карло (МК).

Решаване на интеграли с метода МК.

Една от основните числови техники за изчисляване на многомерни

интеграли или за решаване на интегрални уравнения е метода МК. Методът е развит в 50-те години когато се появяват първите компютри. Названието на метода възниква от названието на известното казино «Монте Карло» в Монако, поради случайните, вероятностни процеси използвани в метода. Основната проста идея на метода е да се изчисляват интеграли със случайни извадки, които са с функция на разпределение близка до подинтегралната функция. Така извадките са по-чести там където функцията има големи стойности, т.нар. важни извадки. В най-простият случай се правят случайни извадки с равномерно разпределение в областа на интегриране и след това средната стойност на извадките се взема за оценка на стойноста на интеграла. Макар че основните преимущества на метода се проявяват при изчисляване на многомерни интеграли основните идеи най-лесно се илюстрират за едномерна задача. Нека искаме да изчислим интеграла:

(1)

Можем просто да разделим областа [0,1] на М равни части xi (x0 = 0; xM =1) и след това интегралът може да се представи приближено по следния начин:

(2)

което означава, че се правят равноотстоящи извадки с тегло единица. От друга страна можем да изберем случайни извадки xn (n=1,2,…,M) с помощта на ГСЧ с равномерно разпределение в интервала на интегриране [0,1]. Ако М е достатъчно голямо можем да очакваме, че извадките са равномерно разпределени в дадения интервал с флуктуации пропорционални на 1/(М. Този резултат за грешката за МК метода се получава изхождайки от стандартното отклонение за равномерно разпределение (I т.е.

(I=sqrt [(-2)/M] ( (1/M)1/2. (3)

За илюстрация на схемата нека вземем един прост случай f(x)=x2 и да го интегрираме с метода МК. Точното решение е известно: I=1/3.

Зад. 1 Напишете програма за интегриране на горния интеграл по метода МК с равномерно разпределение на извадките.

[pic]

Резултатът, който се получава като използваме ГСЧ с равномерно разпределение е: I=0.3330(0.0003. Грешката може да се намали ако усредним няколко последователни пускания на програмата, например при четири независими изчисления средния резултат е 0.3332 с грешка 0.0002.

Може да се види, че МК интегриране с равномерни случайни извадки не дава предимство пред другите числовите методи. За сравнение методът на трапеците дава грешка от порядъка (I( (1/M)2, което е значително по-добре. Истинското предимство на симулацията МК се проявява при изчисляване на многомерни интеграли или при симулиране на системи с много частици. Нека например имаме 10 частици в 3-мерното пространство. Тази задача е фактически в 30-мерно пространство. Най-общо за d-мерно пространство грешката на числовото интегриране е :

(I( (1/M)2/d , докато за метода МК грешката си остава постаянна:(I( (1/M)1/2. При d>4 грешката на МК става по-малка, а за повече от 10 частици т.е.d>30 всички други числови методи отстъпват на метода МК.

Измерване на площ чрез хвърляне на камъни.

Да си представим, че трябва да измерим повърхноста на малко езерце с неправилна форма, като разполагаме с купчина чакъл. Ще използваме техниката на случайните проби (Монте Карло) както е показано на фиг.1. [pic]

Фиг.1 Измерване повърхноста на езеро

Алгоритъмът е следният:

1. Начертаваме квадрат така че езерцето да е вписано в квадрата, а повърхноста на квадрата Sbox лесно може да се измери.

2. Хвърляме камъчетата по случаен и равномерен начин в квадрата.

3. Преброяваме колко от камъчетата попаднали в квадрата, са на брега на езерото Nbox и колко камъчета са пляснали в езерцето Npond.

4. Ако сме хвърляли камъчетата случайно и равномерно, очевидно лесно можем да определим площта на езерото Spond чрез следното просто

съотношение:

(4)

Зад. 2: Ще приложим тази проста техника за да определим числото (

1. Нека имаме езерце с форма на окръжност с радиус1, вписана в квадрат със страна 2.

2. Знаем, че повърхноста на окръжноста е S=(.

3. Генерираме последователност от случайни числа {ri} в интервала [-1, 1].

4. Избираме случайни точки лежащи в квадрата с координати (xi, yi )=(r2i-1 , r2i) за i=1 до N.

5. if (xi2+ yi2) ................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download