Рейтинг:  5 / 5

Звезда активнаЗвезда активнаЗвезда активнаЗвезда активнаЗвезда активна
 

Вид: утилита

Статус: "сырая" версия с полными исходными кодами

Язык: русский

Платформы: Windows, Linux (запуск под mono)

Дата выхода: 9 марта 2016

Доступность: Бесплатно

О программе:

Метод Монте Карло заключается в том, что можно найти площадь некоторой фигуры через вероятность попадания случайной точки в данную фигуру, зная площадь некоторой другой фигуры.

Пояснения:

Геометрическое определение вероятности
Рассмотрим геометрическое определение   для двумерного пространства. Пусть на плоскости имеется некоторая область D, площадь которой равна SD и в ней содержится другая область d – с площадью Sd. В область D наудачу бросается точка.

 

Какова  вероятность  того,  что точка  попадет  в  область  d?  Здесь предполагается,  что  вероятность  попадания  в  какую-либо  часть  области  D  пропорциональная  площади  этой  части  и  не  зависит  от  ее расположения и формы. В таком случае вероятность попадания в область d равна

В  случае  одномерной  и  трехмерной  области  D  вместо  площади нужно говорить, соответственно, о длине и объеме.
Статистическое определение вероятности
Производится N испытаний,  в  каждом  из  которых  может  произойти случайное событие А. Подсчитывается число испытаний N A, в которых  событие  А  действительно  произошло.  Вероятность  события А приближенно равна отношению

Интуитивно  ясно,  что  чем  больше  будет N,  тем  больше будет точность этой приближенной оценки.
Метод Монте - Карло вычисления геометрической вероятности
Предположим, что нужно вычислить площадь плоской фигуры А, расположенной в прямоугольнике

площадь которого равна Si.

Внутри прямоугольника генерируются N случайных точек. Число точек, попавших в область А, обозначим NA. Тогда

Метод  Монте - Карло  называется  также методом  статистических испытаний.
С увеличением количества точек N точность приближенного равенства растет, но медленно. Доказано, что погрешность приближенного равенства имеет порядок, близкий к 1/sqrt(N). При N~1000 это дает  точность  порядка  5...10%.  Поэтому  метод  Монте-Карло  целесообразно  использовать  при  решении  тех  задач,  в  которых  результат нужен с небольшой точностью.

Необходимо посторить программу, которая подсчитывает расчетную вероятность и расчетную площадь двух фигур (так же их пересечения и объединения) относительно некоторой прямоугольной области.

Скриншоты:

Внимание: данная программа не вычисляет теоретические вероятности. В данную программу изначально внедрены данные под случай когда 1<=x<=9; 1<=y<=11 и даны 2 круга (x-4)2+(y-3)2<=1 и (x-4)2/4+(y-3)2/1<=1.

Внимание: Картинка, изображаемая при построении, инвертирована по оси y.

Внимание: программа написана на языке C# с использованием M Visual Studio 2013.

Эти баги можно легко исправить, воспользовавшись исходными кодами.

Скачать:

exe файл (без исходных кодов) (9.8 Kb)

exe+Source (исходный код+программа) (100,8 Kb)

Source (чисто исходный код без программы (53,8 Kb)