Необходим пакет моделирования C # Monte Carlo - PullRequest
0 голосов
/ 14 февраля 2011

Я относительно новичок в C # и делаю проект с использованием симуляции Монте-Карло.В основном мой вопрос заключается в следующем.

У меня есть два неопределенных входа переменных, A и B, и они пройдут через модель и дадут выход C. Итак, C = f (A, B).Я знаю распределение вероятностей А (треугольное) и распределение вероятностей Б. (дискретное).Как я могу получить распределение вероятностей C?

Что я сделал сейчас, так это то, что я могу генерировать случайные числа на основе треугольного распределения A, а также дискретного распределения B.Каждая пара случайно сгенерированных A и B дает результирующий C. Я запускаю эту модель 1000 раз, поэтому я могу получить 1000 возможных значений C. Сложность состоит в том, чтобы получить соответствующие вероятности каждого значения C. Очевидно, что это не 1 /1000, если C не распределен равномерно.Есть ли какой-нибудь пакет / библиотека для симуляции Монте-Карло, который я могу использовать?

Ответы [ 2 ]

2 голосов
/ 14 февраля 2011

Поместите их в гистограмму.

Например, создайте 1000 корзин, каждая из которых соответствует небольшому интервалу. Затем запустите модель TotalN = 1000000 раз и посчитайте, сколько значений приходится на каждый интервал.

Затем вычислите n[i]/TotalN/WidthOfBin, чтобы получить приблизительную плотность вероятности в этом интервале.

0 голосов
/ 25 апреля 2011

Чтобы получить интуитивное понимание концепций, рассматриваемых в этом вопросе, прочитайте «Сбой средних» Сэма Сэвиджа. Он содержит пример кода, демонстрационные проекты и электронные таблицы, показывающие, как смоделировать вопрос выше.

...