# US 10,481,601 B2 · Delivery method and delivery control device

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

- Number: US 10,481,601 B2
- Document ID: US10481601B2
- Status: Granted
- Kind: B2
- Application number: 15/813,659
- Filed: 2017-11-15
- Published: 2018-05-17
- Granted: 2019-11-19
- Earliest claimed: 2016-11-16
- Assignees: Boe Technology Group Co., Ltd.
- Applicants: Boe Technology Group Co., Ltd.
- Inventors: Haijun Su; Yue Li
- Web page: https://patentgrep.com/patent/US10481601B2

## CPC

- G05D 1/0027: {involving a plurality of vehicles, e.g. fleet or convoy travelling (fleet control of land vehicles from a control room G05D1/0297; traffic control systems for road vehicles G08G1/00; for marine craft G08G3/00; for aircraft G08G5/00)}
- G01C 21/3453: {Special cost functions, i.e. other than distance or default speed limit of road segments}
- G05D 1/0291: {Fleet control (monitoring fleets in traffic control systems for road vehicles G08G1/127, G08G1/127)}
- G06Q 10/083: Shipping
- B64U 50/30: Supply or distribution of electrical power
- B64U 2101/64: for parcel delivery or retrieval
- B64U 2201/104: using satellite radio beacon positioning systems, e.g. GPS
- B64U 2201/20: Remote controls
- G05D: SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G01C: MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY (measuring liquid level G01F; radio navigation, determining distance or velocity by use of propagation effects, e.g. Doppler effects, propagation time, of radio waves, analogous arrangements using other waves G01S)
- 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
- B64U: UNMANNED AERIAL VEHICLES [UAV]; EQUIPMENT THEREFOR

## Abstract

The present application discloses a delivery method and a delivery control device. The delivery method includes steps S1 to S3. In the step S1, request information sent by a user is acquired, the request information including user location information which indicates a current position of the user. In the Step S2, a delivery apparatus for the user is selected among at least two types of delivery apparatuses according to the user location information. In the Step S3, the selected delivery apparatus is controlled to deliver an article or service to the user.

## Claims

### Claim 1

A delivery control device, comprising:
a storage device; and
one or more processor coupled to the storage device, wherein the storage device is configured to store computer-executable instructions, which when executed by the one or more processors, cause the one or more processors to perform operations of:
acquiring request information sent by a user, the request information comprising user location information which indicates a current position of the user;
selecting, according to the user location information, a delivery apparatus for the user among at least two different categories of delivery apparatuses, wherein the at least two different categories of delivery apparatuses comprise Unmanned Aerial Vehicles (UAVs) and robots that are not UAVs;
acquiring location information for all users within a first region,
performing a clustering process on the acquired location information to obtain one or more second cluster areas and location information of respective second cluster centers of the one or more second cluster areas, wherein all respective second cluster centers constitute a first set and all robots in an idle state constitute a second set;
calculating, for each of the respective second cluster centers in the first set, a distance from the respective second cluster center to each of the robots in the idle state in the second set;
selecting a minimum distance among the calculated distances,
determining the respective second cluster center and the respective robot by which the minimum is calculated;
controlling the determined respective robot to move towards the determined respective second cluster center, and switching a state of the determined respective robot from the idle state to an optimizing distribution state;
removing the determined respective second cluster center from the first set, and removing the determined respective robot from the second set;
determining whether or not each of the first set and the second set is an empty set, and in a case where none of the first set and the second set is determined to be an empty set, performing the calculation of the distances again; and
controlling the selected delivery apparatus to deliver at least one of an article and service to the user.

### Claim 2 (depends on 1)

The delivery control device according to claim 1, wherein the computer-executable instructions, when executed by the one or more processors, cause the one or more processors to perform additional operations of:
determining whether a delivery category for the user is UAV delivery, provisional robot delivery or unable to deliver according to the user location information, a location and the state of the robot, and a location and a state of a UAV, and
determining an identifier of a delivery apparatus for delivering the at least one of an article and service to the user among the delivery apparatuses.

### Claim 3 (depends on 2)

The delivery control device according to claim 2, wherein the state of the robot comprises the idle state, a task execution state, wherein the state of the UAV comprises an idle state and a task execution state, and the computer-executable instructions, when executed by the one or more processors, cause the one or more processors to perform additional operations of:
determining whether a first delivery category for the user is UAV delivery, provisional robot delivery or unable to deliver according to the user location information, respective location information of robots in the idle state or the task execution state, and respective location information of UAVs in the idle state;
in a case where the first delivery category is determined to be unable to deliver, returning information for indicating a delivery request being failed to the user; and
in a case where the first delivery category is determined to be UAV delivery, determining an identifier of the UAV in the idle state and closest to the user, switching the state of the UAV having the determined identifier to the task execution state, and controlling the UAV having the determined identifier to deliver the at least one of an article and service to the user.

### Claim 4 (depends on 3)

The delivery control device according to claim 3, wherein the computer-executable instructions, when executed by the one or more processors; cause the one or more processors to perform additional operations of:
determining whether there is any robot in the idle state or the task execution state within a first area where the user is located;
in a case where there is a robot in the idle state or the task execution state within the first area, determining whether or not the user is located within a non-robot active region according to the user location information;
in a case where there is no robot in the idle state or the task execution state within the first area or in a case that the user is located within the non-robot active region, determining whether there is any UAV in the idle state within a second area that is an area encircled by a circle, a circular center of which is a position of the user and a radius of which is a second distance; and
in a case where the user is not located within the non-robot active region, determining the first delivery category for the user to be provisional robot delivery;
in a case where there is a UAV in the idle state within the second area, determining the first delivery category to be UAV delivery; and
in a case where there is no UAV in the idle state within the second area, determining the first delivery category to be unable to deliver.

### Claim 5 (depends on 3)

The delivery control device according to claim 3, wherein the computer-executable instructions, when executed by the one or more processors, cause the one or more processors to perform additional operations of:
acquiring the user location information for all users for which the first delivery category is determined to be the provisional robot delivery within a first period of time, and performing the clustering process on the acquired user location information to obtain one or more first cluster areas and location information of respective first cluster centers of the one or more first cluster areas;
determining, for each first cluster center, whether a second delivery category for the first cluster center is UAV delivery or provisional robot delivery according to the location information of the first cluster center and a number of users within the first cluster area corresponding to the first cluster center;
in a case where the second delivery category for the first cluster center is determined to be UAV delivery, determining an identifier of a UAV in the idle state and closest to the first cluster center, and switching the state of the UAV having the determined identifier to the task execution state;
in a case where the second delivery category for the first cluster center is determined to be robot delivery, calculating delivery costs of robots in the idle state and robots in the task execution state, the delivery cost for the first cluster center being associated with a distance from a robot to the first cluster center, determining an identifier of a robot having the lowest delivery cost, and switching the state of the robot having the determined identifier to the task execution state;
after the state of the UAV having the determined identifier is switched to the task execution state, controlling the UAV having the determined identifier to deliver at least one of an article and service to the first cluster center; and
after the state of the robot having the determined identifier is switched to the task execution state, controlling the robot having the determined identifier to deliver at least one of an article and service to the first cluster center.

### Claim 6 (depends on 5)

The delivery control device according to claim 5, wherein the computer-executable instructions, when executed by the one or more processors, cause the one or more processors to perform operations of:
determining whether or not the number of users within the first cluster area corresponding to the first cluster center is less than a threshold number of users;
in a case where the number of users within the first cluster area corresponding to the first cluster center is determined to be less than the threshold number of users, determining whether there is any robot in the idle state or the task execution state within a third area in which the first cluster center is located; and
in a case where the number of users within the first cluster area corresponding to the first cluster center is determined to be larger than or equal to the threshold number of users, determining the second delivery category to be provisional robot delivery;
in a case where there is a robot in the idle state or the task execution state within the third area, determining the second delivery category for the first cluster center to be robot delivery; and
in a case where there is no robot in the idle state or the task execution state within the third area, determining the second delivery category for the first cluster center to be UAV delivery.

### Claim 7 (depends on 1)

The delivery control device according to claim 1, wherein the computer-executable instructions, when executed by the one or more processors, cause the one or more processors to additional perform operations of:
determining whether or not a battery power of each of the robots in the idle state is less than a battery power threshold; and
for each of the robots in the idle state, in a case where the battery power of the robot is determined to be less than the battery power threshold, controlling the robot to move to a charging station to charge the robot, and switching the state of the robot to a charging state.
