Кіріспе
Монте-Карло локализациясы (MCL), сондай-ақ бөлшектік сүзгінің локализациясы деп те аталады, бөлшектік сүзгіні пайдаланып роботтарды локализациялайтын алгоритм. Ортаның картасы берілген жағдайда, алгоритм роботтың қозғалысы мен ортаны сезуі кезінде орнын және бағытын бағалайды. KLD-үлгілеуі – бұл Монте-Карло локализациясының нұсқасы, онда әр итерацияда үлгінің мөлшері есептеледі. Үлгінің мөлшері осылай есептеледі, яғни белгілі бір ықтималдықпен нақты артқы және үлгіге негізделген жуықтама арасындағы қате белгілі бір мәннен кем болуы керек. және айнымалылары – тұрақты параметрлер. Басты идея – күй кеңістігіне жабылатын тор (гистограмма) құру. Гистограммадағы әрбір ұя бастапқыда бос. Әр итерацияда алдыңғы (салмақталған) бөлшектер жиынтығынан жаңа бөлшектер тартылады, олардың ықтималдығы оның салмағына пропорционал. Классикалық MCL-дегі қайта іріктеудің орнына, KLD-үлгілеу алгоритмі алдыңғы салмақталған бөлшектер жиынтығынан бөлшектерді тартады және бөлшекті оның ұясына орналастырудан бұрын қозғалыс және сенсор жаңартуларын қолданады. Алгоритм бос емес ұялардың санын қадағалайды. Егер бөлшек бұрын бос ұяға енгізілсе, мәні қайта есептеледі, ол көбінесе сызықтық түрде өседі. Бұл үлгінің мөлшері бірдей болатынша қайталанады. KLD-үлгілеуінің бөлшектер жиынтығынан артық бөлшектерді тек жаңа орын (ұя) толтырылғанда ғана мәнін арттыру арқылы шығарып тастайтыны анық көрінеді. Іс жүзінде KLD-үлгілеуі классикалық MCL-ден үнемі жақсы нәтижелер береді және тез жинақталады.
It is easy to see KLD–sampling culls redundant particles from the particle set, by only increasing when a new location (bin) has been filled. In practice, KLD–sampling consistently outperforms and converges faster than classic MCL.