Презентация "Вероятностные модели. Метод Монте-Карло." - скачать презентации по Информатике

Слайд 2

Качественная модель метода Монте-Карло: поместим геометрическую фигуру полностью внутрь квадрата; будем

Качественная модель метода Монте-Карло:
поместим геометрическую фигуру полностью внутрь квадрата;
будем случайным

образом «бросать» точки в этот квадрат, то есть с помощью генератора случайных чисел задавать точкам координаты внутри квадрата;
будем считать, что отношение числа точек, попавших внутрь фигуры, к общему числу точек в квадрате приблизительно равно отношению площади фигуры к площади квадрата, причём это отношение тем точнее, чем больше количество точек.
Слайд 3

R Y X -R Формальная модель: М – количество точек попавших

R

Y

X

-R

Формальная модель:
М – количество точек попавших внутрь квадрата;
N – количество точек,

которые случайно генерируются внутри квадрата.
Sкр=Sкв*M/N
Слайд 4

Круг вписан в квадрат со стороной 2R, площадь которого вычисляется по

Круг вписан в квадрат со стороной 2R, площадь которого вычисляется по

формуле:
Sкв=4R2
Случайный выбор координат точек, которые попадают внутрь квадрата (N точек), должен производиться так, чтобы координаты точек x и y удовлетворяли условиям:
-R<=x<=R и -R<=y<=R
Координаты точек, попавших внутрь круга (М), удовлетворяют условию:
x2 + y2 <= R2
Тогда площадь круга можно вычислить по формуле:
S=4R2* M / N
Слайд 5

Компьютерная модель «Проект «Метод Монте-Карло» Option Strict Off Option Explicit On

Компьютерная модель «Проект «Метод Монте-Карло»

Option Strict Off
Option Explicit On
Friend Class frm1
Inherits

System.Windows.Forms.Form
Dim N, dblX, I, M As Object
Dim dblY, S As Double
Dim R As Integer
Private Sub cmd1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles cmd1.Click
Слайд 6

M = 0 R = Val(txtR.Text) N = Val(txtN.Text) 'Генерация точек

M = 0
R = Val(txtR.Text)
N = Val(txtN.Text)
'Генерация

точек
For I = 1 To N
dblX = 2 * R * Rnd() – R
dblY = 2 * R * Rnd() - R
If dblX ^ 2 + dblY ^ 2 <= R Then M = M + 1
Next I
txtS.Text = CStr(4 * R ^ 2 * (M / N))
End Sub End Class
Слайд 7

Исследование модели: Ввести радиус окружности и количество генерируемых точек. После выполнения

Исследование модели:

Ввести радиус окружности и количество генерируемых точек. После выполнения проета

в текстовое поле будет выведено значение площади круга.
Слайд 8

Задание: Определить методом Монте-Карло площадь треугольника, вершины которого имеют координаты (-1,0);

Задание:

Определить методом Монте-Карло площадь треугольника, вершины которого имеют координаты
(-1,0); (0,

1) и (1,0).

-1

1

0

1

x

y

Замечание:
Функция генерации случайных чисел работает так: если дать команду f= rnd(), то в переменную f будут попадать числа из интервала [0, 1].
Условие попадания точек внутрь треугольника :
dblY>=0 и ABS(dblX) + ABS(dblY)<=1

Слайд 9

For I = 1 To N dblX = 2 * Rnd()

For I = 1 To N
dblX = 2 *

Rnd() - 1
dblY = Rnd()
If dblY >= 0 And System.Math.Abs(dblX) + System.Math.Abs(dblY) <= 1 Then M = M + 1