A method for determining an estimated location of a mobile device in a wireless tracking system , the wireless tracking system comprising a first mobile device , a second mobile device and multiple stationary devices at known locations, the method comprising: receiving a first set of radio measurements indicative of a first set of propagation path lengths of radio frequency radiation between the first mobile device and the multiple stationary devices; receiving sensor data indicative of a movement of the first mobile device, wherein the sensor data is of a type different to the first set of radio measurements; determining a historical location of the first mobile device based on the first set of radio measurements and the sensor data; wherein the first set of radio measurements and the sensor data are associated with time t, the historical location being associated with time t', with t' being earlier than t; determining error data indicative of a distance between a location calculated based on only the first set of radio measurements and the historical location; storing the error data associated with the historical location on a data store; receiving a second set of radio measurements indicative of a second set of propagation path lengths of radio frequency radiation between the second mobile device and the multiple stationary devices; determining an estimated location of the second mobile device based on the second set of radio measurements, a sensor measurement from an inertial measurement unit, and the stored error data, such that the second mobile device uses a learned disturbance to improve real-time positioning accuracy when the second mobile device reaches a position or area that has been visited previously by the first mobile device equipped with complementary sensors; updating a Kalman filter based on the sensor measurement from the inertial measurement unit, and the stored error data; and using a state of the updated Kalman filter to correct for errors in the sensor measurement from the inertial measurement unit. receiving a first set of radio measurements indicative of a first set of propagation path lengths of radio frequency radiation between the first mobile device and the multiple stationary devices; receiving sensor data indicative of a movement of the first mobile device, wherein the sensor data is of a type different to the first set of radio measurements; determining a historical location of the first mobile device based on the first set of radio measurements and the sensor data; wherein the first set of radio measurements and the sensor data are associated with time t, the historical location being associated with time t', with t' being earlier than t; determining error data indicative of a distance between a location calculated based on only the first set of radio measurements and the historical location; storing the error data associated with the historical location on a data store; receiving a second set of radio measurements indicative of a second set of propagation path lengths of radio frequency radiation between the second mobile device and the multiple stationary devices; determining an estimated location of the second mobile device based on the second set of radio measurements, a sensor measurement from an inertial measurement unit, and the stored error data, such that the second mobile device uses a learned disturbance to improve real-time positioning accuracy when the second mobile device reaches a position or area that has been visited previously by the first mobile device equipped with complementary sensors; updating a Kalman filter based on the sensor measurement from the inertial measurement unit, and the stored error data; and using a state of the updated Kalman filter to correct for errors in the sensor measurement from the inertial measurement unit. <EOS>