1. A controller for a vehicle, comprising a processor configured to: receive a first sensor input from a first sensor and a second sensor input from a second sensor, the first and second sensors having, respectively, different first and second modalities; detect, synchronously, first and second observations from, respectively, the first and second sensor inputs; project the detected first and second observations onto a graph network; associate the first and second observations with a target on the graph network, the target having a trajectory on the graph network; select either the first or the second observation as a best observation based on characteristics of the first and second sensors; and estimate a current position of the target by performing a prediction based on the best observation and a current timestamp.