Algorithm for predictive tracking

Processing of timing data for a smooth race visualization.

The prediction considers the timestamp when a read is recorded. The timestamp when RACEMAP receives the detection is not used for the forecast.

Check in the reads tab of the prediction dashboard: The smaller the difference between READ AT and RECEIVED AT timestamps, the better the data for live tracking.

  • Positive difference: Delay in forwarding the reads from the timing system to RACEMAP. Minimize the delay for a good prediction.

  • Negative differences - reads appearing to come from the future: This indicates an incorrect time / date setting at your hardware or in the timing system.

Green - very good: Small difference, Red - not usable data: Huge difference

For predictive live tracking RACEMAP needs to know:

  • Transponder id of each participant you want to display

  • Exact race course ("shadowtrack")

  • Locations of the timing hardware

    • Readers with a GPS module eg. track boxes send their locations to Racemap

    • Readers without own locations: set the location of the reader in Racemap

The prediction works differently from a timing system. The prediction does not know a reader's location ahead, and potentially upcoming reads are not taken into account. Each detection is processed stand-alone. This approach enables flexibility when applying predictive tracking for sports events.

  • Auto-Mapping to a location of the shadowtrack within 50 m distance:

    • A reader can be mapped to several locations of the same shadowtrack. If reader is placed in laps it is mapped on each lap automatically.

    • If reader is placed too far (> 50 m) from the shadowtrack its reads are not considered for prediction (rejected reads).

  • Moving reader: Variable locations of readers during the race, e.g. place track boxes on cars or boats. The prediction considers the current location of every detection for live and replay.

  • Multiple contests detection: One reader can detect several contests (shadowtracks), simultaneously. Racemap assigns reads to the correct shadowtrack, corresponding to transponder id and contest.

  • High performance: prediction calculates location & speed for > 50,000 participants simultaneously, e.g. München Marathon

Strategically place readers along the race course.

Parameters to adjust the prediction

Predictive live tracking involves the below parameters. Set these parameters carefully, as they impact the quality of your prediction.

Max distance from shadow track in meters: Maximum distance between the shadowtrack and the reader in which detections can be considered for the prediction. Readers with a greater distance from the shadowtrack are not considered for prediction and are shown as "Out of range". If the distance is 40 m the width of the whole corridor is 80 m.

Jumping dot threshold in seconds: With a new read, there is a new speed calculated for a predicted virtual participant (represented by the location of the dot in the tracking map). The "Jumping dot threshold" is the maximum time difference between the latest read and the virtual participant. If this difference is greater, the dot jumps to the location of the latest read. If this difference is smaller, the dot will either move faster or slower to smoothly reduce the difference during the ongoing event.

RSSI threshold in dBm; With Track Boxes the reads have a Received Signal Strength Indicator (RSSI). The RSSI threshold is the minimal value to be considered for prediction. Reads with a smaller RSSI are not considered for prediction. Small values indicate a significant distance between the Track Box and the transponder. Allowing small RSSI values increases possible errors as the transponder could be detected by multiple Track Boxes over a long distance at nearly the same time.

Future track scale value: The relative distance in which the predicted virtual participant "meets" the real participant moving along with the measured average speed. The greater the track scale value the longer takes the correction.

Look back distance in meters: The look back distance makes prediction less susceptible to measurement errors. With a new read, there is a new speed calculated for a predicted virtual participant. The prediction might receive many reads from a short section of the track. These reads can have location errors and therefore cause malicious velocities. The look back distance is the length for calculating an average speed for the prediction.

Look forward time in seconds: The look forward time compensates for the delay in data transmission and processing throughout our systems.

Speed filters to check the plausibility of reads: Set a range of expected speed values eg. swimming, transition, and cycling for triathlon to enable prediction ignoring unlikely reads.

  • filter_max: ignore reads with two times faster speed than expected speed

  • filter_min: ignore reads with 0.1 x speed than expected speed

Different visualization of live and replay

With every new input data, the prediction is recalculated automatically. Input data can be a detection, new speed filters for segments, adjustment of the shadowtrack, import of finish time.

Live
Replay

Appearance of markers

With 2nd read, eg. prediction receives detection from start without delay and markers will show from 1st reader behind

From start detection

Movement of markers

Speed extrapolation until detection from next reader's location;

speed correction depending on difference between marker in visualization from detection of real participant;

As readers (especially track box) might miss detections, marker moves on over location of following reader.

Average speed between detections

Last updated