입자 필터의 기본 원리를 이해하고 구현하려고했습니다. 그러나 나는 리샘플링 부분에 매달렸다.
이론적으로 말하면, 그것은 매우 간단합니다. 오래된 (가중) 입자 세트에서 교체와 함께 새로운 입자 세트를 그립니다. 그렇게하는 동안, 무게가 큰 입자를 선호하십시오. 가중치가 높은 입자는 더 자주 그려지고 가중치가 낮은 입자는 덜 자주 나타납니다. 아마도 한 번만 또는 전혀 없습니다. 리샘플링 후 모든 가중치에 동일한 가중치가 할당됩니다.
이것을 구현하는 방법에 대한 첫 번째 아이디어는 본질적으로 다음과 같습니다.
- 가중치 정규화
- 각 중량에 총 입자 수를 곱하십시오.
- 스케일 된 가중치를 가장 가까운 정수로 반올림합니다 (예 :
int()
Python에서)
이제 각 파티클을 그리는 빈도를 알아야 하지만 반올림 오류로 인해 리샘플링 단계 이전 보다 파티클 이 적습니다 .
질문 : 리샘플링 단계 이전과 같은 수의 입자에 도달하기 위해 누락 된 입자를 "채우는"방법은 무엇입니까? 또는 여기에서 완전히 벗어난 경우 올바르게 다시 샘플링하는 방법은 무엇입니까?