Мне сложно так сообразить. Но если вы говорите, что не получается того, что должно, то я бы в первую очередь все-таки проверил выкладки для дискретного случая (и саму идею использования режект метода именно в такой форме). Потому как вроде бы ничего тут такого нет - просеивание должно просто сформировать нужное распределение, и ему все равно, какие там ограничения накладывает совместное распределение.
Пытаюсь объяснить проблему в принципе:
Метод просеивания делает следующее:
1) берет всех исходов с запасом.
2) просеивает их до тех пор, пока не подгонит вероятности компонент к нужным маргинальным распределениям.
Проблема в том, что если для какого-то исхода маргинальные вероятности компонент не равны нулю - этот исход точно пройдет с какой-то вероятностью в конечную выборку.
Я лишь привел пример (про фишки), в котором показал, что исход, не имеющий нулевых маргинальных вероятностей при этом может быть иметь нулевую совместную вероятность. Возможно ли это для непрерывного распределения? Да. Можно легко придумать множество таких примеров. Представьте себе 4 гауссианы, расположенные вокруг пустого места - 2 раздвинутые в разные стороны по оси x, 2 раздвинутые в стороны по оси y. Между ними будет точка, имеющая близкую к нулю вероятность. Между тем, маргинальные плотности вероятностей ее компонентов могут быть значительными. Алгоритм будет ошибаться и в этом случае.
Вообще, требовать от алгоритма, чтобы он по маргинальным распределениям строил конкретное совместное распределение нельзя - в общем случае набору маргинальных определений соответствует целое пространство совместных распределений. Но в моем конкретном случае из этого пространства надо выбрать те распределения, которые удовлетворяют дополнительному условию - запрету вставать на одну клетку. Именно это дополнительное условие зануляет вероятность некоторых исходов, не имеющих нулевых маргинальных вероятностей.
И это сейчас основная проблема. Основная проблема сейчас не в том, как скомпенсировать вероятности прореженные выбраковкой. У меня уже есть 3 алгоритма, включая ваш, каждый из которых так или иначе позволяет это сделать. Сейчас основной камень предткновения - как раз случаи, когда дополнительное условие зануляет совместную вероятность исходов с ненулевыми маргинальными вероятностями.
и кстати, ен мешало бы это ограничение в формальном виде записать. А то с вашими рассуждениями "на пальцах" довольно трудно сообразить, почему так, а не иначе.
Я так понимаю, что исходную формулировку задачи вообще можно сейчас отложить в сторону, и разбираться с упрощенным примером (2 фишки, 3 клетки, 50/25/25).
В данном случае дополнительное условие будет звучать так:
, для всех
То есть, задача такая в целом:
Есть две фишки - черная и белая.
Есть пространство маргинальных исходов - это совокупность номеров клеток, на которых может лежать фишка, то есть - {1, 2, 3}.
Есть пространство совместных исходов - это совокупность наборов из номера клетки, на которой лежит черная фишка, и номера клетки, на которой лежит белая фишка:
Есть два равных маргинальных распределения для каждой из фишек:
, и
, где i - номер клетки, на которой лежит черная фишка, и j - номер клетки, на которой лежит белая фишка.
И есть дополнительное условие:
, для всех
-- 19.01.2013, 02:03 --Кстати, еще как вариант, может быть, разрешение парадокса в том, что мы все-таки ищем оценку распределения, а не его точное выражение. Так что и требовать можем только сходимость к истинному распределению при стремлении объема выборки к бесконечности. И вполне может быть, что в этому случае вероятности для
устремляются к нулю.
Нет. Я объяснил выше, почему этого не будет. Проблема - возможность зануления дополнительными условиями совместной вероятности исходов с ненулевыми маргинальными вероятностями. Надо понять, как это можно учесть. Я пока ничего с этим сделать не смог.