1. A system for determining a position for a beacon using a clustering analysis, said system comprising: a memory area associated with a computing device, said memory area storing a plurality of position observations for one beacon, each of said position observations having a timestamp associated therewith; and a processor programmed to: determine, for the beacon, a position and associated error radius based on the plurality of position observations stored in the memory area; compare the determined error radius with a pre-defined threshold radius; and based on the comparison, calculate a revised position for the beacon by: grouping the position observations for the beacon into a plurality of clusters based on spatial distance; selecting one of the plurality of clusters based on the timestamps; and determining the revised position for the beacon based on the position observations corresponding to the selected cluster.