# US 12,761,668 B2 · Optimizing items pickup for drones

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

- Number: US 12,761,668 B2
- Document ID: US12761668B2
- Status: Granted
- Kind: B2
- Application number: 19/009,237
- Filed: 2025-01-03
- Published: 2026-07-09
- Granted: 2026-10-13
- Earliest claimed: 2025-01-03
- Assignees: International Business Machines Corporation
- Applicants: International Business Machines Corporation
- Inventors: Manjit Singh Sodhi; Hina Sharma; Mohamed Jawahar Hussain
- Web page: https://patentgrep.com/patent/US12761668B2

## CPC

- G05D 1/644: Optimisation of travel parameters, e.g. of energy consumption, journey time or distance
- G05D 1/698: Control allocation
- G05D 2105/28: of freight
- G05D: SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES

## Abstract

A computer-implemented method for managing drones is provided. A processor set selects a drone for completing a transportation task. The processor set receives an origin and a destination for the drone. The drone is designed to receive a number of cargos at the origin and deliver the number of cargos to the destination for completing the transportation task. The processor set determines a number of routes for the drone based on flight condition between the origin and the destination. The processor set selects a route from the number of routes for the drone based on costs associated with the number of routes. The processor set navigates the drone to complete pickup and delivery for the number of cargos according to the selected route in real-time.

## Claims

### Claim 1

A computer implemented method for managing drones, the computer implemented method comprising:
selecting, by a processor set, a drone for completing a transportation task, wherein selecting the drone comprises selecting the drone based on a lead time representing an amount of time the drone needs to complete an existing transportation task and available package capacity of the drone to accommodate a number of cargos for the transportation task;
receiving, by the processor set, an origin and a destination for the drone, wherein the drone is designed to receive a number of cargos at the origin and deliver the number of cargos to the destination for completing the transportation task;
determining, by the processor set, a number of routes for the drone based on flight conditions between the origin and the destination, wherein selecting the drone and determining the number of routes are performed concurrently with validating the transportation task and collecting information associated with the number of cargos;
selecting, by the processor set, a route from the number of routes for the drone based on costs associated with the number of routes, wherein the costs associated with the number of routes are determined based on energy consumption, maintenance costs, route length, travel time, load weight, and load utilization of the drone to complete the transportation task; and
navigating, by the processor set, the drone to complete pickup and delivery for the number of cargos according to the selected route in real-time.

### Claim 2 (depends on 1)

The computer implemented method of claim 1, wherein the selecting, by the processor set, the drone for completing the transportation task comprises:
determining, by the processor set, whether any drone is present within a proximity area to the origin; and
in response to determining that a number of drones is present within the proximity area to the origin, selecting, by the processor set, the drone from the number of drones for completing the transportation task.

### Claim 3 (depends on 2)

The computer implemented method of claim 2, further comprising:
in response to determining that no drones are present within the proximity area to the origin, expanding, by the processor set, the proximity area for searching drones.

### Claim 4 (depends on 2)

The computer implemented method of claim 2, wherein the drone is selected based on distances between the origin to each drone from the number of drones.

### Claim 5 (depends on 1)

The computer implemented method of claim 1, wherein the selecting, by the processor set, the route from the number of routes for the drone based on costs associated with the number of routes comprises:
dividing, by the processor set, each route from the number of routes into a number of segments;
determining, by the processor set, distance for each route based on longitude and latitude for origins and destinations of each segment in the number of segments for each route;
determining, by the processor set, a cost for each route in the number of routes for the drone to complete the transportation task; and
selecting, by the processor set, the route from the number of routes for the drone, wherein the route is associated with lowest cost.

### Claim 6 (depends on 1)

The computer implemented method of claim 1, wherein the transportation task is initiated by a user in response to receiving an alert for a calamity.

### Claim 7 (depends on 6)

The computer implemented method of claim 6, wherein the user is validated based on address for the user and longitude and latitude of the origin for picking up the number of cargos.

### Claim 8

A computer system for managing drones, comprising:
a processor set;
a set of one or more computer-readable storage media; and
program instructions stored on the set of one or more storage media to cause the processor set to perform operations comprising:
selecting a drone for completing a transportation task, wherein selecting the drone comprises selecting the drone based on a lead time representing an amount of time the drone needs to complete an existing transportation task and available package capacity of the drone to accommodate a number of cargos for the transportation task;
receiving an origin and a destination for the drone, wherein the drone is designed to receive a number of cargos at the origin and deliver the number of cargos to the destination for completing the transportation task;
determining a number of routes for the drone based on flight conditions between the origin and the destination, wherein selecting the drone and determining the number of routes are performed concurrently with validating the transportation task and collecting information associated with the number of cargos;
selecting a route from the number of routes for the drone based on costs associated with the number of routes, wherein the costs associated with the number of routes are determined based on energy consumption, maintenance costs, route length, travel time, load weight, and load utilization of the drone to complete the transportation task; and
navigating the drone to complete pickup and delivery for the number of cargos according to the selected route in real-time.

### Claim 9 (depends on 8)

The computer system of claim 8, wherein the selecting the drone for completing the transportation task comprises:
determining whether any drone is present within a proximity area to the origin; and
in response to determining that a number of drones is present within the proximity area to the origin, selecting the drone from the number of drones for completing the transportation task.

### Claim 10 (depends on 9)

The computer system of claim 9, wherein the operations further comprise:
in response to determining that no drones are present within the proximity area to the origin, expanding the proximity area for searching drones.

### Claim 11 (depends on 8)

The computer system of claim 8, wherein the drone is selected based on distances between the origin to each drone from the number of drones.

### Claim 12 (depends on 8)

The computer system of claim 8, wherein the selecting the route from the number of routes for the drone based on costs associated with the number of routes comprises:
dividing each route from the number of routes into a number of segments;
determining distance for each route based on longitude and latitude for origins and destinations of each segment in the number of segments for each route;
determining a cost for each route in the number of routes for the drone to complete the transportation task; and
selecting the route from the number of routes for the drone, wherein the route is associated with lowest cost.

### Claim 13 (depends on 8)

The computer system of claim 8, wherein the transportation task is initiated by a user in response to receiving an alert for a calamity.

### Claim 14 (depends on 13)

The computer system of claim 13, wherein the user is validated based on address for the user and longitude and latitude of the origin for picking up the number of cargos.

### Claim 15

A computer program product, comprising:
a set of one or more computer-readable storage media;
program instructions stored in the set of one or more computer-readable storage media to perform operations comprising:
selecting, by a processor set, a drone for completing a transportation task, wherein selecting the drone comprises selecting the drone based on a lead time representing an amount of time the drone needs to complete an existing transportation task and available package capacity of the drone to accommodate a number of cargos for the transportation task;
receiving, by the processor set, an origin and a destination for the drone, wherein the drone is designed to receive a number of cargos at the origin and deliver the number of cargos to the destination for completing the transportation task;
determining, by the processor set, a number of routes for the drone based on flight conditions between the origin and the destination, wherein selecting the drone and determining the number of routes are performed concurrently with validating the transportation task and collecting information associated with the number of cargos;
selecting, by the processor set, a route from the number of routes for the drone based on costs associated with the number of routes, wherein the costs associated with the number of routes are determined based on energy consumption, maintenance costs, route length, travel time, load weight, and load utilization of the drone to complete the transportation task; and
navigating, by the processor set, the drone to complete pickup and delivery for the number of cargos according to the selected route in real-time.

### Claim 16 (depends on 15)

The computer program product of claim 15, wherein the selecting, by the processor set, the drone for completing the transportation task comprises:
determining, by the processor set, whether any drone is present within a proximity area to the origin; and
in response to determining that a number of drones is present within the proximity area to the origin, selecting, by the processor set, the drone from the number of drones for completing the transportation task.

### Claim 17 (depends on 16)

The computer program product of claim 16, wherein the operations further comprise:
in response to determining that no drones are present within the proximity area to the origin, expanding, by the processor set, the proximity area for searching drones.

### Claim 18 (depends on 16)

The computer program product of claim 16, wherein the drone is selected based on distances between the origin to each drone from the number of drones.

### Claim 19 (depends on 15)

The computer program product of claim 15, wherein the selecting, by the processor set, the route from the number of routes for the drone based on costs associated with the number of routes comprises:
dividing, by the processor set, each route from the number of routes into a number of segments;
determining, by the processor set, distance for each route based on longitude and latitude for origins and destinations of each segment in the number of segments for each route;
determining, by the processor set, a cost for each route in the number of routes for the drone to complete the transportation task; and
selecting, by the processor set, the route from the number of routes for the drone, wherein the route is associated with lowest cost.

### Claim 20 (depends on 15)

The computer program product of claim 15, wherein the transportation task is initiated by a user in response to receiving an alert for a calamity.
