US 11,940,286 B1
Fast computational generation of digital pickup and delivery plans
Ryan J. O'Neil, Washington, DC (US)
Assigned to GRUBHUB HOLDINGS INC., Chicago, IL (US)
Filed by GrubHub Holdings Inc., Chicago, IL (US)
Filed on Mar. 1, 2019, as Appl. No. 16/290,835.
Int. Cl. G01C 21/34 (2006.01); G06Q 10/047 (2023.01); G06Q 10/0835 (2023.01)
CPC G01C 21/3476 (2013.01) [G01C 21/343 (2013.01); G06Q 10/047 (2013.01); G06Q 10/08355 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method for creating a plurality of digital plans for delivering a plurality of meal pickup-and-delivery requests using a plurality of vehicles, the method comprising:
receiving, by an online system operated by an application computing device over a network, a plurality of meal pickup-and-delivery requests within an operational period, each meal pickup-and-delivery request comprising an order, an order submit time, geo-location data associated with a pickup location and geo-location data associated with a delivery location;
determining, for each meal pickup-and-delivery request, an item in the order and a preparation time for the item;
determining geo-location data associated with a current location of each vehicle in the plurality of vehicles;
determining, for at least one meal pickup-and-delivery request, a maximum time of arrival of each vehicle at the delivery location based on the geo-location data of each vehicle, and the geo-location data of the pickup-and-delivery location; and
using a hybrid optimization model in an execution time that does not exceed a computational time constraint, the hybrid optimization model comprising a constraint programming-based solver that operates in coordination with at least one other solver, the constraint programming-based solver being configured with set-based circuit precedence, assignment problem relaxations providing reduced cost-based domain filtering, and a sequential closest neighbor branching or regret branching, generating a set of pickup and delivery plans for the plurality of meal pickup-and-delivery requests including the at least one meal pickup-and-delivery request having the maximum time of arrival of each vehicle at the delivery location, the generating comprising:
determining an order ready time associated with each meal pickup-and-delivery request based on one or more of the order submit time and the preparation time for the item;
determining a set of vehicles of the plurality of vehicles for completing each of the plurality of meal pickup and delivery requests, wherein each vehicle in the set of vehicles is determined based on one or more of the current location of each vehicle, the
geo-location data of the pickup location, an estimated time of arrival of each vehicle at the pickup location in response to determining the order ready time or an estimated time of arrival at a delivery location;
determining delivery constraint data including a maximum time for order delivery completion by each vehicle for each meal pickup-and-delivery request;
communicating the computed pickup and delivery plan to each vehicle in the set of vehicles conforming to precedence data that indicate an order in which each geolocation associated with a pickup location and each geo-location data associated with a delivery location is to be visited based on one or more of the order submit time and the order ready time, wherein at least one pickup and delivery plan is based on the maximum time of arrival at the delivery location;
creating a digital output of the computed pickup and delivery plan for displaying on a device that is associated with the vehicle, digitally storing the digital output in a database of the application computing device, transmitting the digital output to the vehicle for displaying, and
causing the display of the digital output on the display of the device that is associated with the vehicle.