| CPC G08G 1/20 (2013.01) [B65G 1/0492 (2013.01); B65G 1/1373 (2013.01); G01C 21/34 (2013.01); G05D 1/0217 (2013.01); G06Q 10/063116 (2013.01); G06Q 10/0833 (2013.01); G06Q 10/087 (2013.01); G06Q 20/322 (2013.01); G06Q 30/0635 (2013.01); G05D 1/0291 (2013.01)] | 20 Claims |

|
16. A computer system for optimizing delivery assignments, the computer system comprising:
a computer processor;
a non-transitory computer-readable storage medium storing instructions that when executed by the computer processor, cause the computer system to:
receive, from customer devices, a plurality of delivery orders associated with a location, wherein the plurality of delivery orders are prepared at the location for delivery;
responsive to receiving the plurality of delivery orders, identify a plurality of delivery agents associated with the location;
allocate the plurality of delivery orders among the plurality of delivery agents, each delivery agent being allocated at least one delivery order, each delivery agent being associated with a shopper device having a shopper mobile application installed thereon, the shopper mobile application including:
a scanning module configured to identify an item of the at least one delivery order and obtain information describing the identified item,
a basket manager configured to update a running record of items of the at least one delivery order based on the identified item, and generate order preparation progress data describing progress of preparing the at least one delivery order based on the running record of items of the at least one delivery order, and
an interface configured to transmit the preparation progress data to the computer system;
obtain from the shopper devices, order preparation progress data describing progress of preparing the plurality of delivery orders for delivery;
periodically update the allocation of the plurality of delivery orders among the plurality of delivery agents based on the order preparation progress data by re-allocating at least one delivery order of the plurality of delivery orders to a different delivery agent of the plurality of delivery agents, wherein updating the allocation comprises preventing delivery orders allocated to a first delivery agent from being reallocated to a second delivery agent among the plurality of delivery agents in response to the first delivery agent arriving at the location.
|