Пример использования метода Монте-Карло при составлении информационной модели

Содержание

Слайд 2

Пример использования метода Монте-Карло при составлении информационной модели F – плоская

Пример использования метода Монте-Карло при составлении информационной модели

F – плоская фигура

с произвольной границей
S – площадь фигуры F (S - ?)
Будем считать, что F полностью расположена внутри единичного квадрата
Выберем в квадрате N случайных точек
N1 – количество точек, попавших в фигуру F
S=lim (N1/N)
N→∞
Слайд 3

Особенности метода Монте-Карло 1). Простая структура вычислительного алгоритма составляется алгоритм для

Особенности метода Монте-Карло

1). Простая структура вычислительного алгоритма
составляется алгоритм для

выполнения одного случайного действия и повторяется N раз, причем каждый опыт не зависит от остальных
2). Ошибки пропорциональны √(D/N)
D – некоторая постоянная
N – число испытаий
Слайд 4

Задачи, которые решаются методом Монте-Карло Во-первых метод позволяет моделировать любой процесс,

Задачи, которые решаются методом Монте-Карло

Во-первых
метод позволяет моделировать любой процесс,

на протекание которого влияют случайные факторы
Во-вторых
Для многих математических задач, не связанных с какими-либо случайностями можно искусственно придумать вероятностную модель, решающую эти задачи
Метод нахождения площади будет справедлив, если СЛУЧАЙНЫЕ точки бкдкт располагаться РАВНОМЕРНО по всему квадрату
Слайд 5

(1 этап) Постановка задачи Задача: Дана геометрическая фигура неправильной формы. Вычислите

(1 этап) Постановка задачи
Задача: Дана геометрическая фигура неправильной формы. Вычислите ее

площадь. Фигура задана своей границей. Результатом решения является площадь S этой фигуры.
Слайд 6

(2 этап) Анализ объекта моделирования и построение информационной модели ! Рассмотрим

(2 этап) Анализ объекта моделирования и построение информационной модели


!

Рассмотрим в качестве примера математическую модель нахождеия площади круга радиуса r. Действовать будем по принципу первого примера. !
Слайд 7

(2 этап) Анализ объекта моделирования и построение информационной модели Шаг 1.

(2 этап) Анализ объекта моделирования и построение информационной модели


Шаг

1.
Примем a=r, где а – половина длины стороны квадрата, тогда S1 (площадь квадрата) вычисляется по формуле
S1=2*a*2*a
Слайд 8

(2 этап) Анализ объекта моделирования и построение информационной модели Шаг 2.

(2 этап) Анализ объекта моделирования и построение информационной модели

Шаг 2.


Случайным образом выбираем точку, принадлежащую квад-рату (задаем ее координаты, т.е х и у)
Точка принадлежит квадрату, если
-a<=x<=a and –a<=y<=a
Or
-r<=x<=r and –r<=y<=r
Слайд 9

(2 этап) Анализ объекта моделирования и построение информационной модели Шаг 3.

(2 этап) Анализ объекта моделирования и построение информационной модели


Шаг

3.
Точка принадлежит кругу, если справедливо неравен-ство:
x^2+y^2<=r^2
Or
x^2+y^2<=a^2
Слайд 10

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели Исполнитель Basic

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели

Исполнитель Basic –

система
Шаг 1. Ввод данных:
Число точек n
Радиус круга r
……………………………………………………………………….
PRINT”Введите число бросаемых точек”
INPUT n PRINT”Введите радиус круга”
INPUT r
………………………………………………………………………
Слайд 11

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели Шаг 2.

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели
Шаг 2. Запрограммируем

создание последовательности случайных чисел и выбор числа из этой последовательности.
…………………………………………………………………………………
Randomize timer ‘создание последовательности
‘ случайных чисел
Let x = (a-(-a))*rnd+(-a)
‘выбор следующего случ. числа из диапазона от –а до а ‘и присваи-вание его значения переменной х
Let y = (a-(-a))*rnd+(-a)
‘выбор следующего случ. числа из диапазона от –а до а ‘и присваи-вание его значения переменной х
…………………………………………………………………………………
Т.е. точка (х;у) принадлежит квадрату со стороной 2а
Слайд 12

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели Шаг 3.

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели

Шаг 3.

Совокупность команд, определяющих, принадлежит ли точка М(х;у) фигуре, площадь которой ужо найти, оформим в виде подпрграммы-функции Belong%
FUNCTION Belong%(x AS DOUBLE,
y ASDOYBLE,a AS DOUBLE)
LET Belong%=0
IF x*x+y*y<=a*a THEN
Belong%=1
END IF
END FUNCTION
Слайд 13

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели Шаг 4.

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели

Шаг 4.

Формирование случайным образом координат х и у, а так же вызов функции Belong% происходит в основной программе в цикле по i on 1 до n(количество точек). Если функция принимает значение 1 то переменная-счетчик m (в начале программы обнулен) увеличивается на 1
……………………………………………………………………………………..
FOR i= 1 to n
LET x=2*a*rnd-a
LET y=2*a*rnd-a
IF Belong%((x),(y),(a))=1 then
LET m=m+1
END IF
NEXT i
……………………………………………………………………………………………….
Слайд 14

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели Шаг 5.

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели

Шаг 5.

Подсчет результата, т.е S = (m/n)*S1. Как видно из формулы, для получения S необходимо знать чему равна S1 (площадь квадрата со стороной а=r). Как упоминалось выше, S1=a*2*a*2. Далее – вывод результатов.
……………………………………………………………
LET S1=2*a*2*a
LET S=(m/n)*S1
PRINT “n=“;n;”S=“;S
……………………………………………………………
Слайд 15

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели Комментарии: I

(3-4 этапы) Алгоритмизация решения задачи и создание компьютерной модели

Комментарии:
I

В данной задаче так же возможно провести подсчет времени, втечение которого выполнились все действия программы. Это осуществляется ледующим образом:
1) После запуска RANDOMIZE TIMER перемнной time1 присваивается значение timer
2) После окончания работы цикла по I от 1 до n перемнной time2 присваивается значение timer
3) Находится разница: Время счета time2-time1
II Программу можно дополнить имитацией бросания точек в квадрат
Слайд 16

(6-7 этапы) Вычислительный эксперимент. Анализ результатов эксперимента Для проведения эксперимента возьмем

(6-7 этапы) Вычислительный эксперимент. Анализ результатов эксперимента

Для проведения эксперимента возьмем

радиус круга r=1. В этом случае площадь круга равна числу пи
Результаты эксперимента: