# US 12,001,996 B2 · Systems and methods for imputation of shipment milestones

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,001,996 B2
- Document ID: US12001996B2
- Status: Granted
- Kind: B2
- Application number: 17/967,780
- Filed: 2022-10-17
- Published: 2023-02-09
- Granted: 2024-06-04
- Earliest claimed: 2019-09-16
- Assignees: P44, LLC
- Applicants: P44, LLC
- Inventors: Thomas Janos Atwood; Milad Davaloo; Marc-Henri Paul Gires
- Web page: https://patentgrep.com/patent/US12001996B2

## CPC

- G06Q 10/0833: Tracking
- G06Q 10/0838: {Historical data}
- H04W 4/021: Services related to particular areas, e.g. point of interest [POI] services, venue services or geofences
- H04W 4/029: Location-based management or tracking services
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

The present disclosure provides systems and methods that impute missing shipment milestones using vehicle tracking data (e.g., global positioning system (GPS data, automatic identification system (AIS) data, and/or the like). In particular, the present disclosure provides improved techniques to impute when a shipping vehicle (and the cargo loaded thereon) has arrived at a transportation location (e.g., port). In some implementations, the milestone imputation process first includes collecting a historical sample of the vehicle tracking data. Next, density-based clustering methods can be applied to identify vessel stops. This historical set of vessel stops can then be further clustered in order to identify individual docking or loading/unloading locations for all the transportation locations around the world. Once these docking locations have been identified, a geofence can be established around those locations and used to determine when a shipping vehicle has arrived at the corresponding transportation location and/or docking location.

## Claims

### Claim 1

A computer-implemented method for performing automatic supply chain adjustments, the method comprising:
defining, by at least one processor, a set of geofences, including:
analyzing, using a machine-learned stop detection model that was trained, historical vehicle tracking data to filter out at least a portion of the historical vehicle tracking data that does not correspond to stopped vehicles,
performing a set of clustering techniques on the historical vehicle tracking data having at least the portion of the historical vehicle tracking data filtered out to identify a plurality of clusters indicative of a plurality of transportation locations at which shipping vehicles indicated in the historical vehicle tracking data have undertaken shipping-related actions, and
defining the set of geofences for each of the plurality of transportation locations based at least in part on the plurality of clusters;
training, by at least one processor using a set of training data associated with an additional set of shipping vehicles, a machine learning model, the set of training data comprising additional vehicle tracking data labeled with a set of milestone events associated with the additional set of shipping vehicles;
obtaining, by the at least one processor, a set of vehicle tracking data associated with a shipping vehicle;
comparing, by the at least one processor, the set of vehicle tracking data to a geofence, of the set of geofences, associated with a transportation location of the plurality of transportation locations;
analyzing, by the at least one processor using the machine learning model, the set of vehicle tracking data to determine that there has been a change in presence of the shipping vehicle at the transportation location associated with the geofence; and
in response to determining that there has been the change in presence of the shipping vehicle at the transportation location associated with the geofence, inserting a data entry into a data record associated with the shipping vehicle that indicates the change in presence of the shipping vehicle at the transportation location associated with the geofence.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, further comprising:
filtering, by the at least one processor, the set of vehicle tracking data to produce a set of filtered vehicle tracking data indicating a set of instances in which the shipping vehicle is stopped.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, wherein comparing the set of vehicle tracking data to the geofence associated with the transportation location comprises:
comparing, by the at least one processor, the set of filtered vehicle tracking data to the geofence associated with the transportation location.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein analyzing the set of vehicle tracking data comprises:
analyzing, by the at least one processor using the machine learning model, the set of vehicle tracking data to determine that either (i) the shipping vehicle has arrived at the transportation location associated with the geofence, or (ii) the shipping vehicle has departed the transportation location associated with the geofence.

### Claim 5 (depends on 4)

The computer-implemented method of claim 4, wherein analyzing the set of vehicle tracking data to determine that the shipping vehicle has arrived at the transportation location associated with the geofence comprises:
analyzing, by the at least one processor using the machine learning model, the set of vehicle tracking data to determine that multiple sequential entries within the set of vehicle tracking data correspond to locations within the geofence;
and wherein analyzing the set of vehicle tracking data to determine that the shipping vehicle has departed the transportation location associated with the geofence comprises:
analyzing, by the at least one processor using the machine learning model, the set of vehicle tracking data to determine that additional multiple sequential entries within the set of vehicle tracking data correspond to additional locations that are not within the geofence.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein inserting the data entry into the data record comprises:
inserting the data entry into the data record associated with the shipping vehicle that indicates that the shipping vehicle has either arrived at or departed from the transportation location associated with the geofence.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, further comprising:
generating, by the at least one processor, an alert that indicates the change in presence of the shipping vehicle at the transportation location associated with the geofence; and
transmitting, by the at least one processor, the alert to an entity associated with the shipping vehicle.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, further comprising, in response to determining that there has been the change in presence of the shipping vehicle at the transportation location associated with the geofence:
producing, by the at least one processor, an automatic supply chain adjustment.

### Claim 9

A shipping management computing system, comprising:
a memory storing (i) a machine learning model, (ii) a machine-learned stop detection model that was trained, (iii) a data record associated with a shipping vehicle, and (iv) a set of computer executable instructions; and
at least one processor coupled to the memory and configured to execute the set of computer executable instructions to cause the at least one processor to:
define a set of geofences, including:
analyze, using the machine-learned stop detection model that was trained, historical vehicle tracking data to filter out at least a portion of the historical vehicle tracking data that does not correspond to stopped vehicles,
perform a set of clustering techniques on the historical vehicle tracking data having at least the portion of the historical vehicle tracking data filtered out to identify a plurality of clusters indicative of a plurality of transportation locations at which shipping vehicles indicated in the historical vehicle tracking data have undertaken shipping-related actions, and
define the set of geofences for each of the plurality of transportation locations based at least in part on the plurality of clusters,
train, using a set of training data associated with an additional set of shipping vehicles, the machine learning model, the set of training data comprising additional vehicle tracking data labeled with a set of milestone events associated with the additional set of shipping vehicles,
obtain a set of vehicle tracking data associated with a shipping vehicle,
compare the set of vehicle tracking data to a geofence, of the set of geofences, associated with a transportation location of the plurality of transportation locations,
analyze, using the machine learning model, the set of vehicle tracking data to determine that there has been a change in presence of the shipping vehicle at the transportation location associated with the geofence, and
in response to determining that there has been the change in presence of the shipping vehicle at the transportation location associated with the geofence, insert a data entry into the data record associated with the shipping vehicle that indicates the change in presence of the shipping vehicle at the transportation location associated with the geofence.

### Claim 10 (depends on 9)

The shipping management computing system of claim 9, wherein the at least one processor is configured to execute the set of computer executable instructions to further cause the at least one processor to:
filter the set of vehicle tracking data to produce a set of filtered vehicle tracking data indicating a set of instances in which the shipping vehicle is stopped.

### Claim 11 (depends on 10)

The shipping management computing system of claim 10, wherein to compare the set of vehicle tracking data to the geofence associated with the transportation location, the at least one processor is configured to:
Compare the set of filtered vehicle tracking data to the geofence associated with the transportation location.

### Claim 12 (depends on 9)

The shipping management computing system of claim 9, wherein to analyze the set of vehicle tracking data, the at least one processor is configured to:
analyze, using the machine learning model, the set of vehicle tracking data to determine that either (i) the shipping vehicle has arrived at the transportation location associated with the geofence, or (ii) the shipping vehicle has departed the transportation location associated with the geofence.

### Claim 13 (depends on 12)

The shipping management computing system of claim 12, wherein to analyze the set of vehicle tracking data to determine that the shipping vehicle has arrived at the transportation location associated with the geofence, the at least one processor is configured to:
analyze, using the machine learning model, the set of vehicle tracking data to determine that multiple sequential entries within the set of vehicle tracking data correspond to locations within the geofence;
and wherein to analyze the set of vehicle tracking data to determine that the shipping vehicle has departed the transportation location associated with the geofence, the at least one processor is configured to:
analyze, using the machine learning model, the set of vehicle tracking data to determine that additional multiple sequential entries within the set of vehicle tracking data correspond to additional locations that are not within the geofence.

### Claim 14 (depends on 9)

The shipping management computing system of claim 9, wherein to insert the data entry into the data record, the at least one processor is configured to:
insert the data entry into the data record associated with the shipping vehicle that indicates that the shipping vehicle has either arrived at or departed from the transportation location associated with the geofence.

### Claim 15 (depends on 9)

The shipping management computing system of claim 9, wherein the at least one processor is configured to execute the set of computer executable instructions to further cause the at least one processor to:
generate an alert that indicates the change in presence of the shipping vehicle at the transportation location associated with the geofence, and
transmit the alert to an entity associated with the shipping vehicle.

### Claim 16 (depends on 9)

The shipping management computing system of claim 9, wherein the at least one processor is configured to execute the set of computer executable instructions to further cause the at least one processor to:
in response to determining that there has been the change in presence of the shipping vehicle at the transportation location associated with the geofence, produce an automatic supply chain adjustment.

### Claim 17

A computer program product comprising a non-transitory computer readable medium storing a set of computer instructions executable by at least one processor to:
define a set of geofences, including:
analyze, using the machine-learned stop detection model that was trained, historical vehicle tracking data to filter out at least a portion of the historical vehicle tracking data that does not correspond to stopped vehicles,
perform a set of clustering techniques on the historical vehicle tracking data having at least the portion of the historical vehicle tracking data filtered out to identify a plurality of clusters indicative of a plurality of transportation locations at which shipping vehicles indicated in the historical vehicle tracking data have undertaken shipping-related actions, and
define the set of geofences for each of the plurality of transportation locations based at least in part on the plurality of clusters;
train, using a set of training data associated with an additional set of shipping vehicles, a machine learning model, the set of training data comprising additional vehicle tracking data labeled with a set of milestone events associated with the additional set of shipping vehicles;
obtain a set of vehicle tracking data associated with a shipping vehicle;
compare the set of vehicle tracking data to a geofence, of the set of geofences, associated with a transportation location of the plurality of transportation locations;
analyze, using the machine learning model, the set of vehicle tracking data to determine that there has been a change in presence of the shipping vehicle at the transportation location associated with the geofence; and
in response to determining that there has been the change in presence of the shipping vehicle at the transportation location associated with the geofence, insert a data entry into a data record associated with the shipping vehicle that indicates the change in presence of the shipping vehicle at the transportation location associated with the geofence.

### Claim 18 (depends on 17)

The computer program product of claim 17, wherein the set of computer instructions are executable by the at least one processor further to:
filter the set of vehicle tracking data to produce a set of filtered vehicle tracking data indicating a set of instances in which the shipping vehicle is stopped.

### Claim 19 (depends on 17)

The computer program product of claim 17, wherein to analyze the set of vehicle tracking data, the at least one processor executes the set of computer instructions to:
analyze, using the machine learning model, the set of vehicle tracking data to determine that either (i) the shipping vehicle has arrived at the transportation location associated with the geofence, or (ii) the shipping vehicle has departed the transportation location associated with the geofence.

### Claim 20 (depends on 19)

The computer program product of claim 19, wherein to analyze the set of vehicle tracking data to determine that the shipping vehicle has arrived at the transportation location associated with the geofence, the at least one processor executes the set of computer instructions to:
analyze, using the machine learning model, the set of vehicle tracking data to determine that multiple sequential entries within the set of vehicle tracking data correspond to locations within the geofence;
and wherein to analyze the set of vehicle tracking data to determine that the shipping vehicle has departed the transportation location associated with the geofence, the at least one processor executes the set of computer instructions to:
analyze, using the machine learning model, the set of vehicle tracking data to determine that additional multiple sequential entries within the set of vehicle tracking data correspond to additional locations that are not within the geofence.
