Как мы можем моделировать из геометрической смеси?

20

Если - известные плотности, из которых я могу смоделировать, т. Е. Для которых доступен алгоритм. и если продукт является интегрируемым, существует ли общий подход для моделирования на основе этой плотности продукта с использованием симуляторы от ?k i = 1 f i ( x ) α if1,,fkf i

i=1kfi(x)αiα1,,αk>0
fi
Сиань
источник
2
Без дополнительных предположений это кажется маловероятным. (Пусть для простоты. Пусть будет маленьким. Предположим, что с каждым связан интервал на котором и , вне которого 0 \ lt f_i \ lt \ epsilon и I_i \ cap I_j = \ emptyset для i \ ne j . Тогда отдельные генераторы почти всегда выдают значения в I_i , но вероятность \ prod f_i может быть сконцентрирована где угодно, по- видимому, не связанной с I_i .) Итак, что еще вы можете сказать нам оϵ > 0 f i I i f i1 Pr i ( I i ) > 1 - ϵ 0 < f i < ϵ I iI j = i j Iαi=1ϵ>0fiIifi1Pri(Ii)>1ϵ0<fi<ϵIiIj=ijf iIifiе яIifi ?
whuber
1
(+10) Верно! Однако использование меньшего αi приведет к выравниванию всех элементов и, следовательно, к предпочтительному перекрытию их эффективных опор ...
Xi'an
1
Как сказал Уубер, проблема плотности будет такой, поэтому я бы взял преобразование (ИЛИ преференциальную выборку), чтобы отменить сжатие, прежде чем генерировать случайные выборки. Есть один конструктивный подход, который, я думаю, я читал некоторое время назад. Раздел 10.7 из link.springer.com/chapter/10.1007/978-1-4612-0209-7_10 Не уверен, что здесь также может быть применена дискретизация.
Henry.L

Ответы:

3

Ну, конечно, есть алгоритм принятия-отклонения, который я бы реализовал для вашего примера следующим образом:

  1. (Инициализация) Для каждого i найдите Ai=supx{Πj=1kfj(x)αj/fi(x)} . Отредактируйте, отражая комментарий Сианя ниже: Выберите распределение fi которое соответствует наименьшему Ai .
  2. Генерируйте x из fi .
  3. Вычислить α=Πi=jkfj(x)αj/(Aifi(x)) .
  4. Генерация uU(0,1) .
  5. Если , вернуть , иначе перейти к 2.xuαx

Конечно, в зависимости от дистрибутивов у вас может быть очень низкий уровень приема. Когда это происходит, ожидаемое количество итераций равно выбранному (при условии непрерывного распределения), поэтому, по крайней мере, вы будете предупреждены заранее.Ai

jbowman
источник
3
(+1) Действительно решение! Предполагая, что границы существуют для всех . Или даже некоторые . Сравнение [при условии их конечности] также может помочь в выборе наиболее эффективного . AiiiAifi
Сиань
1
Я не думал об этом, но, конечно, вы правы, сами очень информативны, так как они также равны ожидаемому количеству итераций, необходимых для фактического генерирования случайного числа, если вы придерживаетесь одного всем протяжении. Таким образом, вы хотели бы выбрать дистрибутив с наименьшим значением чтобы использовать его все время. Я отредактирую ответ, чтобы ваша точка зрения не терялась в комментариях. AiiAi
jbowman
То есть, предполагая, что все должным образом нормализованы [чтобы интегрироваться в один], что не обязательно является стандартным случаем. fi
Сиань