2014-09-21 10 views
0

이제 입자 필터를 구현하려고합니다. 벽에 마운트 된 맵이 제공되고이 맵에서 로봇을 현지화하려고 시도합니다. 입자 필터 방법을 기반으로 1000 개의 무작위 입자를 초기화하고 각 단계에서 특정 이동 명령, 즉 각도 - 주행 쌍 (angle-odometry pair)에 따라이 1000 개의 입자를 이동합니다. 이동 후, 나는 벽에 감지 된 거리와 비교 된 측정의 가능성을 계산하고, 우도를 기반으로 입자를 다시 샘플링합니다. 이것이 입자 필터의 기본 과정이라고 생각합니다. 지금 나를 혼란스럽게하는 이유는 포워딩 중에 파티클 중 일부가 벽에 부딪히는 상황을 어떻게 다뤄야할까요?파티클 필터의 시나리오에서 파티클이 벽에 부딪쳤 으면 어떻게 될까요?

+0

그런 경우 입자를 제거하고 무작위로 다시 시드 할 수 있습니까? – templatetypedef

+0

벽을 걷는 로봇은 거의 없을 것입니까? 따라서 이러한 입자의 무게는 0이되어야합니다 (즉, 필터링 알고리즘에 의해 버려진다는 의미입니다). – ziggystar

+1

얘들 아, 네, 나는 너에게 동의한다. 로봇이 의도적으로 벽에 부딪치지 않을 것이라는 강한 가정입니다. 나는이 길을 고려할 것이고, 많이 고마워 할 것이다. 로봇이 벽에 부딪 칠 수 있다고 가정 할 경우이를 수행 할 수있는 가능한 방법이 있습니까? 나는 확실하지 않고 사람들이 실제 응용 프로그램에서 일반적으로하는 일을 알고 싶습니다. – Maytree23

답변

1

너무 늦었다 고 생각합니다. 그러나 다른 사람들에게 도움이 될 수 있습니다. 입자 필터는 확률 론적 접근법으로, 입자가 모션 및 사전 분포를 기반으로 어디에서나 샘플링 될 수 있습니다.

귀하의 경우에는 벽에 샘플링 할 수 있습니다. 그런 다음 우도 과정은 해당 입자에 대해 매우 낮은 확률을 반환하고 더 높은 확률로 다른 입자로 자동으로 다시 샘플링됩니다.