IP Library Granted Patent US 10,861,255
Granted Patent B1
US 10,861,255 · App. 13/409,911 · Granted Dec 8, 2020

System and method for analyzing and presenting location and location-related data

Inventors: Bryan Karp (Cedar Park, TX); Bjorn Aannestad (Austin, TX); Stephen Tenzer (Prior Lake, MN)
G07C5/02G01C21/00G01C21/3476G07C5/008G07C5/06G07C5/08G08G1/123G01C21/343G01C21/3469G01C21/3484G01C21/36G08G1/20
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 10,861,255
App. No.
13/409,911
Granted
Dec 8, 2020
Kind
B1
Abstract

A system and method are disclosed for analyzing location-related data and presenting location-related data and analytics. Embodiments receive raw location data of a subject being tracked, identify stops of the subject being tracked based on the raw location data, correlate the identified stops with know points of interests (POIs), and create a trips file using the raw location data, the identified stops, and the correlated information. Embodiments further extracts and processes data in the trips file, generating processed location-related data and other data, determine an analysis to perform based on the trips file, perform the determined analysis on the processed location-related data and other data to generate one or more results, and forward the results of the analysis to a client to generate a dashboard or other display to be displayed.

Claims (66)

1. A method for analyzing and presenting location and location-related data of a subject being tracked, the method comprising:

calculating raw location data of the subject being tracked by a tracker installed in or carried by the subject being tracked;

transmitting the raw location data of the subject being tracked by the tracker;

receiving the raw location data of the subject being tracked from the tracker;

identifying stops of the subject being tracked based on the raw location data;

correlating the identified stops with known points of interests (POIs);

creating a trips file using the raw location data, the identified stops, and the correlated information;

extracting and processing data in the trips file, generating processed location-related data and other data, including cost model data;

determining a plurality of analyses based on the trips file, the plurality of analyses including a cost per visit analysis of one or more visits of the subject to one or more POIs;

retrieving settings for the plurality of analyses, wherein the settings are stored for each analysis indicating what rules and models are to be used to perform each analysis;

automatically performing the plurality of analyses at regular intervals on the processed location-related data and other data to generate one or more results by using the rules and models for each analysis, including performing the cost per visit analysis using the cost model data; and

forwarding the results of the plurality of analyses to a client platform to generate a dashboard to be concurrently displayed, the dashboard to display a result of the cost per visit analysis.

2. The method of claim 1 , wherein the raw location data is raw global positioning satellite (GPS) data.

3. The method of claim 1 , wherein the raw location data includes location data and a time-stamp.

4. The method of claim 1 , wherein the receiving raw location data step includes transforming raw location data from other formats.

5. The method of claim 1 , further comprising storing the trips file in a database.

6. The method of claim 1 , further comprising performing calculations to fill in gaps in the raw location data, wherein the gaps results from one or more of transmission or calculation errors and failure of a global positioning satellite (GPS) tracker to receive a GPS signal.

7. The method of claim 6 , wherein the calculations includes extrapolating positions of the subject being tracked based on one or more of surroundings, known global positioning satellite (GPS) data, and other sources of location data.

8. The method of claim 1 , wherein the identifying stops step includes:

determining a time period when the subject being tracked does not move; and

if the subject being tracked does not move over a predetermined threshold period of time, identifying the time period as a stop.

9. The method of claim 1 , wherein the raw location data includes information indicating a vehicle status, and wherein the identifying stops step includes determining from the received raw location data whether a vehicle engine is off.

10. The method of claim 1 , wherein the identifying stops step includes determining and recording a time period spent at a stop.

11. The method of claim 1 , further comprising determining a person riding in a vehicle by correlating location information gathered from a GPS-enabled mobile device associated with a person and location information of a GPS-enabled vehicle, including:

recording locations of the mobile device at a first set of points in time;

recording locations of the GPS-enabled vehicle at a second set of points in time;

determining pairings between the mobile device and the GPS-enabled vehicle by similar movement patterns and locations over a predetermined measurement period;

storing the pairings of the mobile device and the GPS-enabled vehicle; and

displaying the pairings of mobile device and the GPS-enabled vehicle.

12. The method of claim 11 , wherein the second set of points in time is the same as the first set of points in time.

13. The method of claim 1 , wherein the known POIs are input by a user.

14. The method of claim 1 , wherein the known POIs are uploaded from a file.

15. The method of claim 1 , wherein the known POIs include customer locations, franchises, warehouses, vendor locations, and maintenance facilities.

16. The method of claim 1 , wherein the known POIs include one or more planned destinations of a person assigned to a vehicle, and wherein the correlating step includes correlating the identified stops with the one or more planned destinations to determine if the person assigned to the vehicle has visited the one or more planned destinations.

17. The method of claim 1 , wherein the creating trips file step includes retrieving other relevant information to create the trips file.

18. The method of claim 17 , wherein the other relevant information includes which level of organization the location-related data applies.

19. The method of claim 1 , further comprising retrieving the processed location-related data and other data to perform the plurality of analyses, wherein the retrieving the processed location-related data and other data step includes determining specific data needed and a relevant trips file.

20. The method of claim 1 , wherein the results of the analysis are plotted on a map in terms of amount of time spent at each visit location, and wherein a corresponding spot is drawn on the map with a size and shade scale corresponding to the amount of time.

21. The method of claim 1 , wherein the determined analysis includes identifying the cause of variance between the planned activities and the corresponding actual activities.

22. A non-transitory computer readable medium of a system that includes a processor, the system coupled to a subject being tracked, the non-transitory computer readable medium providing instructions for analyzing and presenting location and location-related data of the subject being tracked, the instructions causing the processor to perform operations comprising:

receiving raw location data of the subject being tracked from a tracker installed in or carried by the subject being tracked, wherein the tracker calculates the raw location data of the subject being tracked and transmits the raw location data of the subject being tracked;

identifying stops of the subject being tracked based on the raw location data; correlating the identified stops with known points of interests (POIs);

creating a trips file using the raw location data, the identified stops, and the correlated information;

extracting and processing data in the trips file, generating processed location-related data and other data, including cost model data;

determining a plurality of analyses based on the trips file, the plurality of analyses including a cost per visit analysis of one or more visits of the subject to one or more POIs;

retrieving settings for the plurality of analyses, wherein the settings are stored for each analysis indicating what rules and models are to be used to perform each analysis;

automatically performing the plurality of analyses at regular intervals on the processed location-related data and other data to generate one or more results by using the rules and models for the determined analysis, including performing the cost per visit analysis using the cost model data; and

forwarding the results of the plurality of analyses to a client platform to generate a dashboard to concurrently display the results of the plurality of analyses, the dashboard to display a result of the cost per visit analysis.

23. The non-transitory computer readable medium of claim 22 , wherein the determined analysis includes identifying the cause of variance between the planned activities and the corresponding actual activities.

24. A system for analyzing and presenting location and location-related data of a subject being tracked, the system coupled to the subject being tracked, the system comprising:

an external data source application programming interface (API) that receives raw location data of the subject being tracked from a tracker installed in or carried by the subject being tracked wherein the tracker calculates the raw location data of the subject being tracked and transmits the raw location data of the subject being tracked; and

a server configured to:

identify stops of the subject being tracked based on the raw location data,

correlates the identified stops with known points of interests (POIs),

create a trips file using the raw location data, the identified stops, and the correlated information,

extract and processes data in the trips file, generating processed location-related data and other data, including cost model data,

determine a plurality of analyses based on the trips file, the plurality of analyses including a cost per visit analysis of one or more visits of the subject to one or more POIs,

retrieve settings for the plurality of analyses, wherein the settings are stored for each analysis indicating what rules and models are to be used to perform each analysis,

automatically perform the plurality of analyses at regular intervals on the processed location-related data and other data, to generate one or more results by using the rules and models for each analysis, including performing the cost per visit analysis using the cost model data, and

forward the results of the plurality of analyses to a client platform to generate a dashboard to be concurrently displayed, the dashboard to display a result of the cost per visit analysis.

25. The system of claim 24 , further comprising administration and management tools that support administration control and configuration functionality of the one or more modules.

26. The system of claim 24 , further comprising an authentication directory that supports user access control and personalization functionality of the one or more modules.

27. The system of claim 24 , further comprising a geographical information server (GIS)/map presentation platform that supports POI data processing of the one or modules and generates maps and charts illustrating POI data, driver and vehicle route data derived from location-related data, and analytics derived from correlation of the driver and vehicle route data and the cost model data.

28. The system of claim 24 , wherein the client platform includes data upload receivers, download modules, a user interface platform, a charting/visualization platform, and an embedded help module.

29. The system of claim 24 , wherein the external data source API receives other relevant information from external partner or customer data sources.

30. The system of claim 24 , wherein the determined analysis includes identifying the cause of variance between the planned activities and the corresponding actual activities.

Assignments (8)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE COVER SHEET, WHICH LISTED PATENT NUMBER 6377219 IN ERROR. THE CORRECT PATENT NUMBER IS 6377210 PREVIOUSLY RECORDED ON REEL 052697 FRAME 0574. ASSIGNOR(S) HEREBY CONFIRMS THE CORRECT LISTING OF PATENT 6377210 ON PAGE 6, ROW 8 OF THE ORIGINAL RELEASE OF SECURITY INTEREST.. Recorded May 20, 2020
From: THE TORONTO-DOMINION BANK
To: GEOTAB INC.
Reel/Frame 052718/0050 →
RELEASE OF SECURITY INTEREST Recorded May 19, 2020
From: THE TORONTO-DOMINION BANK
To: GEOTAB INC.
Reel/Frame 052697/0574 →
MERGER Recorded Jan 13, 2020
From: BSM TECHNOLOGIES LTD.
To: GEOTAB INC.
Reel/Frame 051497/0485 →
CHANGE OF NAME Recorded Aug 28, 2019
From: POINTSERVE, INC.
To: MOBI CORP.
Reel/Frame 050206/0200 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2017
From: MOBI CORP.
To: BSM TECHNOLOGIES LTD.
Reel/Frame 042155/0754 →
SECURITY INTEREST Recorded Dec 22, 2016
From: BSM TECHNOLOGIES LTD. F/K/A BSM WIRELESS INC.
To: THE TORONTO-DOMINION BANK
Reel/Frame 040744/0314 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2016
From: MOBI CORP.
To: BSM TECHNOLOGIES LTD. F/K/A BSM WIRELESS INC.
Reel/Frame 040242/0255 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2012
From: KARP, BRYAN; AANNESTAD, BJORN; TENZER, STEPHEN
To: POINTSERVE, INC.
Reel/Frame 027792/0080 →
Cited By (2)
US 12,432,523 US 12,670,751