기하학적 혼합에서 어떻게 시뮬레이션 할 수 있습니까?


20

만약 알고리즘 사용할 수있는, 즉 내가 시뮬레이션 할 수있는 밀도를, 알려져있다. 생성물 경우 적분되면,이 사용이 제품 밀도에서 시뮬레이션하는 일반적인 접근법이 존재 의 시뮬레이터 ?k i = 1 f i ( x ) α if1,,fk

i=1kfi(x)αiα1,,αk>0
fi

2
추가 가정이 없으면 가능성이 거의 없습니다. ( 간단 성을 위해 이라고하자. 을 작게하자. 각 와 연관된 간격 이 과 인 구간 라고 가정하자. 0 \ LT f_i \ LT \ 엡실론I_i \ 캡 I_j = \ emptyset 위해 난 \ NE J . 그 후 별도의 발전기는 항상 값을 생성 거의 것이다 I_i 하지만 확률 \ 프로드 f_i이 집중 될 수 어디서나 겉보기 무관 I_i .) 따라서는, 그 밖의 무엇을 당신은에 대한 정보를 알 수 있습니다αi=1ϵ>0fiIifi1Pri(Ii)>1ϵ0<fi<ϵIiIj=ijIifiIifi ?
whuber

1
(+10) 맞습니다! 그러나 더 작은 \ alpha_i를 사용하면 αi모든 요소가 평평 해 지므로 효과적인 지지대가 겹치는 것을 선호합니다.
Xi'an

1
whuber는 기밀성이 문제가 될 것이라고 말 했으므로 임의 샘플을 생성하기 전에 기밀성을 취소하기 위해 변환 (또는 우선 샘플링)을 수행 할 것입니다. 내가 전에 읽은 것으로 생각되는 건설적인 접근 방법이 하나 있습니다. link.springer.com/chapter/10.1007/978-1-4612-0209-7_10의 10.7 절이 이산화를 적용 할 수 있는지 확실하지 않습니다.
Henry.L

답변:


3

물론 수락-거부 알고리즘이 있습니다.

  1. (초기화) 각 i 에 대해 Ai=supx{Πj=1kfj(x)αj/fi(x)} . 아래 Xi'an의 의견을 반영하여 편집하십시오 . 가장 작은 A_i에 해당하는 분포 fi 를 선택하십시오 .Ai
  2. f_i 에서 x 를 생성하십시오 .fi
  3. 계산 α=Πi=jkfj(x)αj/(Aifi(x)) .
  4. u \ sim U (0,1)을 생성하십시오 uU(0,1).
  5. 만약 , 반환 2, 다른 이동.xuαx

물론 배포판에 따라 수용 률이 매우 낮을 수 있습니다. 이 경우 예상되는 반복 횟수는 선택한 (연속 분포 가정)와 같으므로 적어도 미리 경고를받습니다.Ai


3
(+1) 실제로 해결책입니다! 경계 가 모든 대해 존재 한다고 가정합니다 . 심지어 일부 의. 의 [제한 이 비교하면 가장 효율적인 선택에 도움이 될 수 있습니다 . i i A i f iAiiiAifi
시안

1
나는 그것을 생각하지 않았지만, 물론 당신이 옳습니다 자체는 매우 유익합니다. 왜냐하면 자체는 매우 합니다. 왜냐하면 당신이 하나의 를 고수하면 실제로 난수를 생성하는 데 필요한 예상 반복 횟수와 같습니다 . 따라서 항상 사용할 가 가장 작은 분포를 선택하려고합니다 . 나는 당신의 요점이 댓글에서 길을 잃지 않도록 답변을 편집 할 것입니다. i A iAiiAi
jbowman

즉, 모든 가 제대로 정규화 되었다고 가정 할 때 ( 하나에 통합 할 때) 반드시 표준 발생은 아닙니다. fi
시안
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.