2014-01-21 3 views
0

내 로봇의 몬테카를로 지역화를 구현하고 있으며, 환경 맵과 시작 위치와 방향을 제공합니다.모바일 로봇을위한 몬테카를로 지역화

  1. 가 균일 각 단계에서
  2. 그런 다음 지정된 위치의 주위에 500 개 입자를 만들 : 다음과 같이 나의 접근 방식은
    • 운동이 오도 모든 입자를 업데이트 (내 현재의 접근 방식이 newX = oldX + odometryX (1 + standardGaussianRandom) 등)
    • 은 (수식 가우스 평균 predictedReading있는 각 센서 확률 * = gaussianPDF (realReading))
    • 복귀 패로서 최대 확률 입자위한 음파 데이터를 사용하여 각 입자에 가중치를 부여 이 단계 새로운 입자의
    • 다음 9/10에서 ocation 무게에 1/10 균일 지금 예측 위치

주위에 샘플링에 따라 기존의 것들에서 다시 샘플링, 나는에 대한 시뮬레이터를 썼다 이 로봇의 환경은 다음과 같습니다. http://www.youtube.com/watch?v=q7q3cqktwZI

나는 로봇이 길어지는 것을 매우 두려워합니다. 넓은 영역에 파티클을 추가하면 로봇이 더 쉽게 잃어 버리게됩니다.

더 나은 성능을 기대합니다. 어떤 충고?

+0

[다중 스택 교환 사이트] (http://robotics.stackexchange.com/q/2337/37)에서 같은 질문을하지 마십시오. 실수로 잘못된 사이트에 질문하면 올바른 사이트로 이전 할 수 있습니다. –

+0

로봇으로 마이 그 레이션 – Neo

답변

5

가장 큰 실수는 가장 높은 무게를 가진 입자가 당신의 후반 상태라고 가정하는 것입니다. 이것은 입자 필터의 주요 아이디어와 일치하지 않습니다.

오도 미터 판독 값으로 업데이트 한 입자 세트가 제안 분포입니다. 가중치가 가장 높은 입자를 고려하면이 분포를 완전히 무시합니다. 모든 상태 공간에서 입자를 무작위로 퍼뜨린 다음 가장 좋은 소나 데이터를 설명하는 입자 하나를 취하는 경우도 마찬가지입니다. 당신은 소나 읽기에만 의존하고 소나 데이터는 매우 시끄럽다. 당신의 추정치는 매우 나쁘다. 더 나은 방법은 각 입자에 가중치를 할당하고, 가중치를 표준화하고, 각 입자 상태를 가중치로 곱한 다음 합쳐서 사후 상태를 얻는 것입니다.

리샘플링 단계에서 예측 분포 상태가 무작위 인 샘플을 제거하면 제안 분포가 손상 될 수 있으므로이를 권장합니다. 실패로부터 복구하기 위해 무작위 샘플을 생성하는 것이 합당합니다. 그러나 그것들은 전체 상태 공간에 퍼지기를 원하며 현재의 예측을 명시 적으로 나타내지 않습니다.

+0

안녕하세요! 제 질문과 대답을 좀 살펴 보시겠습니까? http://robotics.stackexchange.com/questions/11685/markov-localization-using-control-as-an-input – Fabi

관련 문제