IP Library Granted Patent US 12710280
Granted Patent B2
US 12710280 · App. 18/787,863 · Granted Aug 18, 2026

Waypoint prediction engine(s) for compressing geographical information system data

Inventors: Gerard Choinka (Dublin, IE); Anton Krug (Athy, IE)
Assignee: NetApp, Inc.
G01C21/3484
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12710280
App. No.
18/787,863
Granted
Aug 18, 2026
Kind
B2
Abstract

Various embodiments of the present technology generally relate to systems and methods for providing a waypoint prediction engine and its related functions. In an aspect, a waypoint prediction engine may determine navigation data associated with a client device and a source model. Then a decompression-side of the waypoint prediction engine may generate a predicted waypoint based on the source model and the navigation data for the client device as the client device travels along a navigation route. The decompression-side may receive, from a compression-side of the waypoint prediction engine, a correction factor for the predicted waypoint. Responsive to receiving the correction factor, the decompression-side of the waypoint prediction engine may store the correction factor as associated with the source model, where the correction factor and the source model allow for recreation of the navigation route of the client device.

Claims (89)

1 . A computing apparatus comprising:

a computer-readable storage medium;

a waypoint prediction engine comprising processor-executable instructions stored on the computer-readable storage medium; and

one or more processors coupled to the computer-readable storage medium and configured to execute the processor-executable instructions, such that the processor-executable instructions, when executed by the one or more processors, direct the computing apparatus, to at least:

determine a source model for a client device based on navigation data associated with the client device;

generate, at a decompression-side of the waypoint prediction engine, a decompression-side predicted waypoint based on the source model for the client device as the client device travels along a navigation route, wherein a compression-side of the waypoint prediction engine executing on the client device independently generates a compression-side predicted waypoint using the source model and the navigation data;

receive, from the compression-side of the waypoint prediction engine, a correction factor representing a deviation between the compression-side predicted waypoint and a measured waypoint of the client device;

store the correction factor as associated with the source model and the client device; and

recreate, at the decompression-side of the waypoint prediction engine, the navigation route of the client device using the correction factor and the source model.

2 . The computing apparatus of claim 1 , wherein:

the processor-executable instructions when executed by the one or more processors, further direct the computing apparatus to determine navigation data associated with a client device; and

the processor-executable instructions to generate the decompression-side predicted waypoint based on the source model, when executed by the one or more processors, further direct the computing apparatus to:

determine a plurality of historical waypoints based on the navigation data and the source model; and

generate the decompression-side predicted waypoint based on the historical waypoints.

3 . The computing apparatus of claim 1 , wherein the processor-executable instructions when executed by the one or more processors, further direct the computing apparatus to:

generate a second decompression-side predicted waypoint based on the source model;

receive, from the compression-side of the waypoint prediction engine, an indication that the second decompression-side predicted waypoint is accurate; and

add the second decompression-side predicted waypoint to a plurality of historical waypoints based on the second decompression-side predicted waypoint being accurate.

4 . The computing apparatus of claim 1 , wherein the processor-executable instructions to generate the decompression-side predicted waypoint based on the source model, when executed by the one or more processors, further direct the computing apparatus to:

determine a plurality of historical waypoints based on the source model; and

generate the decompression-side predicted waypoint by extrapolating between the plurality of historical waypoints.

5 . The computing apparatus of claim 1 , wherein the processor-executable instructions, when executed by the one or more processors, further direct the computing apparatus to:

generate a plurality of predicted waypoints based on the source model for the client device as the client device travels along the navigation route;

determine a lack of notification from the compression-side of the waypoint prediction engine for the plurality of predicted waypoints; and

buffer the plurality of predicted waypoints as unverified accurate.

6 . The computing apparatus of claim 1 , wherein the processor-executable instructions when executed by the one or more processors, further direct the computing apparatus to:

generate a corrected waypoint based on the correction factor and the decompression-side predicted waypoint; and

add the corrected waypoint to a plurality of historical waypoints associated with the source model.

7 . The computing apparatus of claim 1 , wherein the processor-executable instructions to determine the source model for the client device, when executed by the one or more processors, further direct the computing apparatus to:

receive, from the client device, a selection of a navigation mode; and

determine the source model based on the navigation mode.

8 . A method comprising:

determining navigation data associated with a client device;

determining a source model for the client device based on the navigation data;

generating a decompression-side predicted waypoint based on the source model and the navigation data for the client device as the client device travels along a navigation route, wherein the client device independently generates a compression-side predicted waypoint using the source model and the navigation data;

receiving a correction factor representing a deviation between the compression-side predicted waypoint and a measured waypoint of the client device;

storing the correction factor as associated with the source model; and

recreating the navigation route of the client device using the correction factor and the source model.

9 . The method of claim 8 , wherein generating the decompression-side predicted waypoint based on the source model and the navigation route comprises:

determining a plurality of historical waypoints based on the source model and the navigation data;

determining a speed and direction of the client device based on the plurality of historical waypoints;

determining a predicted path based on the navigation data; and

estimating the decompression-side predicted waypoint along the predicted path based on the speed and direction of the client device.

10 . The method of claim 8 , wherein the method further comprises:

generating a plurality of predicted waypoints based on the source model for the client device as the client device travels along the navigation route;

adding the plurality of predicted waypoints to a buffer;

receiving an indication that the plurality of predicted waypoints is accurate; and

removing the plurality of predicted waypoints from the buffer.

11 . The method of claim 8 , wherein the method further comprises:

determining a plurality of predicted waypoints, wherein the plurality of predicted waypoints comprise a first subset of predicted waypoints and second subset of predicted waypoints;

receiving a plurality of correction factors, wherein each of the plurality of correction factors corresponds to a respective predicted waypoint in the first subset of predicted waypoints; and

storing the plurality of correction factors as associated with the source model, wherein the plurality of correction factors and the source model allow for recreation of the navigation route of the client device.

12 . The method of claim 8 , wherein selecting the navigation data associated with the client device comprises:

receiving a unique identifier; and

selecting the navigation data based on the unique identifier.

13 . The method of claim 8 , wherein the method further comprises:

generating a corrected waypoint based on the correction factor and the decompression-side predicted waypoint; and

adding the corrected waypoint to a plurality of historical waypoints associated with the source model.

14 . The method of claim 8 , wherein determining navigation data associated with the client device comprises:

selecting the navigation data based on an initial waypoint of the client device; and

verifying that the client device selects the same navigation data.

15 . A non-transitory computer-readable storage medium comprising processor-executable instructions configured to cause one or more processors to:

determine navigation data associated with a client device;

determine a source model for the client device based on navigation data associated with the client device;

generate a decompression-side predicted waypoint based on the source model and the navigation data for the client device as the client device travels along a navigation route, wherein the client device independently generates a compression-side predicted waypoint using the source model and the navigation data;

receive a correction factor representing a deviation between the compression-side predicted waypoint and a measured waypoint of the client device;

store the correction factor as associated with the source model; and

recreate the navigation route of the client device using the correction factor and the source model.

16 . The non-transitory computer-readable storage medium of claim 15 , wherein the processor-executable instructions cause the one or more processors to further execute processor-executable instructions stored in the computer-readable storage medium to:

generate a plurality of predicted waypoints based on the source model for the client device as the client device travels along the navigation route;

add the plurality of predicted waypoints to a buffer;

receive an indication that the plurality of predicted waypoints is accurate; and

remove the plurality of predicted waypoints from the buffer.

17 . The non-transitory computer-readable storage medium of claim 15 , wherein the processor-executable instructions cause the one or more processors to further execute processor-executable instructions stored in the computer-readable storage medium to:

determine a plurality of predicted waypoints, wherein the plurality of predicted waypoints comprise a first subset of predicted waypoints and second subset of predicted waypoints;

receive a plurality of correction factors, wherein each of the plurality of correction factors corresponds to a respective predicted waypoint in the first subset of predicted waypoints;

receive an indication that the second subset of predicted waypoints is accurate; and

store the plurality of correction factors as associated with the source model, wherein the plurality of correction factors and the source model allow for recreation of the navigation route of the client device.

18 . The non-transitory computer-readable storage medium of claim 15 , wherein the processor-executable instructions to generate the decompression-side predicted waypoint based on the source model cause the one or more processors to further execute processor-executable instructions stored in the computer-readable storage medium to:

determine a plurality of historical waypoints based on the source model and the navigation data;

determine a speed of the client device based on the plurality of historical waypoints;

determine a predicted path based on the navigation data; and

generate the decompression-side predicted waypoint along the predicted path based on the speed of the client device.

19 . The non-transitory computer-readable storage medium of claim 15 , wherein the processor-executable instructions to determine the source model for the client device cause the one or more processors to further execute processor-executable instructions stored in the computer-readable storage medium to:

determine a navigation mode for the client device; and

select the source model based on the navigation mode.

20 . The non-transitory computer-readable storage medium of claim 15 , wherein the processor-executable instructions to determine the source model for the client device cause the one or more processors to further execute processor-executable instructions stored in the computer-readable storage medium to:

select the source model based on the client device; and

verify that the client device selects the same source model.