У меня есть необычная проблема выборки, которую я пытаюсь реализовать для техники Монте-Карло. Я знаю, что есть связанные вопросы и ответы относительно полностью положительной проблемы.Взвешенный выборка без замены и отрицательных весов
У меня есть список n весов w_1, ..., w_n, и мне нужно выбрать k элементов, обозначенных s_1, ..., s_k say. Распределение вероятности, которое я хочу отбирать, равно
p (s_1, ..., s_k) = | w_s_1 + ... + w_s_k |/P_total
где P_total - коэффициент нормировки (сумма всех возможных p (s, ...) без P_total). Мне все равно, как элементы упорядочены для моей цели.
Обратите внимание, что часть w_i может быть меньше нуля и знаков абсолютной величины выше. С чисто неотрицательным w_i это распределение относительно просто с помощью выборки без замены - метод дерева, который является наиболее эффективным, насколько я могу судить. Однако с некоторыми отрицательными весами я чувствую, что должен прибегать к явным написанию каждой возможности и выборки из этого экспоненциально большого набора. Любые предложения или идеи будут оценены!
'p (s_1, ..., s_k) = | w_s_1 + ... + w_s_k |/P_total' Это даст вам вероятностное пространство, намного большее, чем 1. Вы имели в виду W_s_1 * w_s_2 * ... * w_s_k | или какой-либо другой вариант? – amit
Например, выберите 2 из 3 с w_1 = w_2 = w_3 = 1/3. P (s_1, s_2) = P (s_2, s_3) = P (s_1, s_3) = 2/3, а их сумма равна 2. – amit
P_total предназначен для обеспечения нормализации. В вашем случае P_total составляет 2/3 + 2/3 + 2/3 = 2. Каждый p (s) делится на два, поэтому вы получаете 1/3, 1/3 и 1/3. – AndyF