1. A system for tracking objects, the system comprising: a memory for storing a plurality of sensory data frames; and a processor configured to: determine a first hypothesized location for each of the objects in each of the plurality of sensory data frames; for each of the plurality of sensory data frames, determine probabilities that the first hypothesized location of each of the objects in a sensory data frame of the plurality of sensory data frames is the same as the first hypothesized location of another object in an adjacent sensory data frame; compute a first optimal trajectory for each of the objects using an algorithm based on the probabilities; check the first optimal trajectory for each of the objects; and accept or reject the first optimal trajectory for each of the objects based on the checking.