KLD-Sampling: Adequately Sampling from an Unknown Distribution

Copyright (C) 2006 - Patrick Beeson (pbeeson at cs.utexas.edu)
This program is released under the GNU General Public License (GPL).

This code implements Dieter Fox's KLD-sampling algorithm (KLD stands for Kullback-Leibler distance). When using particle filters to approximate an unknown distribution, too few particles may not adequately sample the underlying distribution, while too many samples can increase the run time of time sensitive programs (e.g. particle filter localization for a mobile robot). Running this program demonstrates how different KLD-sampling parameters affect both the number of samples and the estimated mean and variance of the underlying distribution. This sample program assumes a 1D underlying distribution, but the provided KLD-sampling module works on multivariate distributions.

Relevant Citations


C++ (tested with g++-4.0 under Linux 2.6)


[QR home: http://www.cs.utexas.edu/users/qr]