Cargo distribution method, device, system and storage medium
By acquiring the volume data of the target to be delivered and the volume data of the delivery robot, a loading strategy is determined, which solves the problem of low space utilization of the delivery robot and achieves reasonable loading and efficient delivery.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- KEENON ROBOTICS CO LTD
- Filing Date
- 2024-04-01
- Publication Date
- 2026-06-19
AI Technical Summary
In existing technologies, delivery robots have low space utilization, which is not conducive to improving delivery efficiency.
By acquiring the volume data of the target to be delivered and the volume data of the delivery robot, a loading strategy is determined, and a delivery strategy is generated based on the loading strategy and the delivery start and end points, thereby controlling the delivery robot to complete the delivery.
This enabled the efficient loading of delivery robots, avoiding waste of space and resources, improving delivery efficiency, and controlling costs.
Smart Images

Figure CN118428636B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of cargo distribution technology, and in particular relates to cargo distribution methods, apparatus, systems and storage media. Background Technology
[0002] With the maturity of autonomous driving technology and the emergence of concepts such as the Internet of Things and smart cities, intelligent delivery robots are gradually entering people's field of vision. Delivery robots can replace manual labor in many application scenarios. For example, in public places such as office buildings, upscale residential areas, and campuses, where ordinary logistics personnel cannot enter to complete deliveries, delivery robots can replace logistics personnel, making people's work and life increasingly intelligent and automated. Furthermore, with the increasing development and maturity of automated vending machine technology, users can achieve remote shopping, that is, purchase goods from automated vending machines without being physically present at the vending machine.
[0003] When automated vending machine technology is combined with intelligent delivery robots, delivery robots can replace delivery personnel to deliver goods purchased by users from automated vending machines to users (or locations designated by users). In existing technologies, the method of directly allocating goods to delivery robots leads to underutilization of resources in some scenarios, resulting in low utilization rates of delivery robots and storage space, which is not conducive to improving delivery efficiency. Summary of the Invention
[0004] This application provides a cargo delivery method, apparatus, equipment, and storage medium, which can solve the problem of low space utilization of delivery robots, which is not conducive to improving delivery efficiency.
[0005] In a first aspect, embodiments of this application provide a goods delivery method, applied to a server, comprising:
[0006] Obtain user request information sent by the target user based on a preset database, wherein the user request information includes the identification information of the target to be delivered and the delivery destination;
[0007] The distribution information of the target to be delivered is obtained based on the identification information, and the delivery starting point is determined based on the distribution information;
[0008] The target to be delivered at the delivery starting point is taken as the goods to be delivered, the volume data of the goods to be delivered is obtained, and the volume data of the delivery robot is obtained.
[0009] Based on the volume data and the capacity data, a loading strategy for the goods to be delivered is determined, and a delivery strategy for the goods to be delivered is generated according to the loading strategy, the delivery origin and the delivery destination.
[0010] Based on the delivery strategy, the delivery robot is controlled to complete the delivery of the target to be delivered.
[0011] Secondly, embodiments of this application provide a goods delivery device, the device comprising:
[0012] The data acquisition module is used to acquire user request information sent by the target user based on a preset database. The user request information includes the identification information of the target to be delivered and the delivery destination.
[0013] The positioning module is used to obtain the distribution information of the target to be delivered based on the identification information, and to determine the delivery starting point based on the distribution information;
[0014] The data acquisition module is used to take the target to be delivered at the delivery starting point as the goods to be delivered, acquire the volume data of the goods to be delivered, and acquire the volume data of the delivery robot.
[0015] The strategy generation module is used to determine a loading strategy for the goods to be delivered based on the volume data and the capacity data, and to generate a delivery strategy for the goods to be delivered based on the loading strategy, the delivery starting point and the delivery ending point.
[0016] The control module is used to control the delivery robot to complete the delivery of the target to be delivered based on the delivery strategy.
[0017] Thirdly, embodiments of this application provide a goods delivery system, the system including a server, a delivery robot, and a container, wherein the server, the delivery robot, and the container are communicatively connected and configured to perform the goods delivery method described in any one of the first aspects above.
[0018] Fourthly, embodiments of this application provide a terminal device, including: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the goods delivery method described in any one of the first aspects above.
[0019] Fifthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the goods delivery method as described in any one of the first aspects above.
[0020] In a sixth aspect, embodiments of this application provide a computer program product that, when run on a terminal device, causes the terminal device to execute the goods delivery method described in any of the first aspects above.
[0021] It is understood that the beneficial effects of the second to fifth aspects mentioned above can be found in the relevant descriptions in the first aspect mentioned above, and will not be repeated here.
[0022] The beneficial effects of the embodiments in this application compared with the prior art are:
[0023] The system acquires user request information sent by the target user based on a preset database. The user request information includes the identification information of the target to be delivered and the delivery destination. Based on the identification information, the system acquires the distribution information of the target to be delivered and determines the delivery starting point based on the distribution information. The system takes the target to be delivered at the delivery starting point as the goods to be delivered, acquires the volume data of the goods to be delivered, and acquires the volume data of the delivery robot. Based on the volume data and the volume data, the system determines a loading strategy for the goods to be delivered and generates a delivery strategy for the goods to be delivered based on the loading strategy, the delivery starting point, and the delivery destination. Based on the delivery strategy, the system controls the delivery robot to complete the delivery of the target to be delivered. By determining the loading strategy based on the volume data of the goods to be delivered and the volume data of the delivery robot, that is, by comprehensively considering the volume data of the goods to be delivered and the volume data of the delivery robot, different loading strategies are flexibly selected for different scenarios (where the volume data of the goods to be delivered varies). This ensures that the loading strategy of the delivery robot is tailored to the current scenario, guarantees the rationality of the loading strategy, avoids the limitations of a single loading strategy in different scenarios, and avoids unreasonable loading of the delivery robot, which would lead to wasted space and resources. At the same time, achieving optimal loading of the delivery robot is beneficial to improving the efficiency of goods delivery and controlling costs. Attached Figure Description
[0024] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0025] Figure 1 This is a schematic diagram of a system provided in an embodiment of this application;
[0026] Figure 2 This is a schematic flowchart of a goods delivery method provided in an embodiment of this application;
[0027] Figure 3 This is a schematic diagram illustrating the interaction between a delivery robot and a container in a goods delivery method provided in one embodiment of this application;
[0028] Figure 4This is a schematic diagram of the process for generating waybill data in a goods delivery method provided in an embodiment of this application;
[0029] Figure 5 This is a schematic diagram of the interaction between a user and a container in a goods delivery method provided in an embodiment of this application;
[0030] Figure 6 This is a schematic diagram of the structure of the goods delivery device provided in the embodiments of this application;
[0031] Figure 7 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation
[0032] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.
[0033] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.
[0034] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.
[0035] As used in this application specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrase "if determined" or "if detected [the described condition or event]" may be interpreted, depending on the context, as meaning "once determined," "in response to determination," "once detected [the described condition or event]," or "in response to detection [the described condition or event]."
[0036] Furthermore, in the description of this application and the appended claims, the terms "first," "second," "third," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.
[0037] References to "one embodiment" or "some embodiments" as described in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized.
[0038] The goods delivery method provided in this application embodiment can be applied to terminal devices such as servers or main robots that can execute the method. This application embodiment does not impose any restrictions on the specific type of terminal device.
[0039] Please see Figure 1 , Figure 1 This is a schematic diagram of a goods delivery system provided in an embodiment of this application. The system includes: a server 110, a delivery robot 130, and a container 120, wherein the server 110, the delivery robot 130, and the container 120 are communicatively connected. The server 110 obtains user request information sent by a target user based on a preset database. The user request information includes the identification information of the target to be delivered and the delivery destination. The server 110 obtains the distribution information of the target to be delivered based on the identification information and determines the delivery starting point (container 120) based on the distribution information. The target to be delivered at the delivery starting point is taken as the goods to be delivered. The server 110 obtains the volume data of the goods to be delivered and the volume data of the delivery robot 130. The server 110 determines a loading strategy for the goods to be delivered based on the volume data and the volume data, and generates a delivery strategy for the goods to be delivered based on the loading strategy, the delivery starting point, and the delivery destination. The server 110 controls the delivery robot 130 to complete the delivery of the target to be delivered based on the delivery strategy. The delivery robot 130 and the container 120 are used in scenarios such as hotels, office buildings, airports, and shopping malls. This embodiment does not impose any restrictions on these scenarios.
[0040] like Figure 2 As shown in the figure, this application provides a goods delivery method, including:
[0041] S101. Obtain user request information sent by the target user based on a preset database, wherein the user request information includes the identification information of the target to be delivered and the delivery destination;
[0042] For example, the preset database is virtual inventory data formed by summarizing the quantities of different goods under all channels of all containers; the delivery target is the goods (products) required by the user; the identification information of the delivery target is representational information that can represent the delivery target, such as product code, product name, etc.; the delivery destination can be the location of the target user or a location specified by the target user.
[0043] For example, when obtaining user request information sent by a target user based on a preset database, virtual inventory data is displayed to the target user, and the identification information of the target to be delivered is determined by receiving the target user's selection information of goods in the virtual inventory data.
[0044] For example, when obtaining user request information sent by a target user based on a preset database, the location information of the target user can be obtained and used as the delivery destination, or the location specified by the user can be identified as the delivery destination.
[0045] S102. Obtain the distribution information of the target to be delivered based on the identification information, and determine the delivery starting point based on the distribution information;
[0046] For example, the distribution information is the location information of the target to be delivered and the quantity information corresponding to the location information, and the delivery starting point is the shipping point of the target to be delivered, such as the location information of the shipping container.
[0047] In one possible implementation, the step of obtaining the distribution information of the target to be delivered based on the identification information, and determining the delivery starting point based on the distribution information, includes:
[0048] The distribution information of the target to be delivered is obtained based on the identification information and the preset database;
[0049] When the type of the target to be delivered is one, based on the distribution information and the delivery destination, the distribution information closest to the delivery destination is taken as the delivery starting point;
[0050] When the types of the targets to be delivered are not the same, obtain the distribution information of each type of target to be delivered;
[0051] If there is an intersection between the distribution information of different types of delivery targets, the intersection between the distribution information of different types of delivery targets shall be taken as the target distribution information set, and the distribution information closest to the delivery destination shall be selected from the target distribution information set as the delivery starting point.
[0052] If there is no overlap between the distribution information of different types of delivery targets, then the distribution information closest to the delivery destination is selected from the distribution information of each type of delivery target as the delivery starting point.
[0053] For example, when determining the delivery starting point based on the distribution information, different methods can be used to determine the delivery starting point according to different scenarios. For instance, when the target to be delivered is singular and there is no quantity requirement, the container closest to the delivery destination and containing the target to be delivered can be used as the delivery starting point; when the target to be delivered is singular and there is a quantity requirement, the container that meets the quantity requirement and is closest to the target to be delivered can be used as the delivery starting point; when the target to be delivered is not singular and there is no quantity requirement for each target to be delivered, the container that simultaneously contains all the targets to be delivered and is closest to the target to be delivered can be used as the delivery starting point; when the target to be delivered is not singular and there is a quantity requirement for each target to be delivered, the container that simultaneously contains all the targets to be delivered, meets the quantity requirements for each target to be delivered, and is closest to the target to be delivered can be used as the delivery starting point.
[0054] When facing different scenario requirements, that is, when users request different information, multiple methods are used to flexibly select the container as the delivery starting point to ensure that the delivery starting point meets the user's request information and is most conducive to the delivery process.
[0055] In one possible implementation, the step of obtaining the distribution information of the target to be delivered based on the identification information, and determining the delivery starting point based on the distribution information, includes:
[0056] When containers in different locations store the same goods, the location information of the containers is used as the location information in the distribution information;
[0057] Obtain the quantity of goods in the container corresponding to the identification information, and use the quantity as the quantity information corresponding to the location information;
[0058] The delivery starting point is determined based on the distribution information and the quantity requirements in the user request information.
[0059] It should be understood that when containers in different locations store the same goods, the amount of goods stored in containers in different locations will be different because the outbound situation of containers in different locations is different. Therefore, it is necessary to determine the delivery starting point based on the quantity requirements in the user request information.
[0060] For example, when determining the delivery starting point based on the distribution information and the quantity requirements in the user request information, the container that meets the quantity requirements in the user request information and also meets the preset requirements is selected as the target container, and the target container is selected as the delivery starting point. For example, the preset requirement is a distance requirement, that is, the path to the delivery destination must be the shortest. Containers that meet the quantity requirements in the user request information are selected from all containers to obtain an initial container set. The distance between each container in the initial container set and the delivery destination is calculated to obtain a distance set. The container with the minimum value in the distance set is selected as the target container (delivery starting point).
[0061] Avoiding back-and-forth travel between multiple containers that cannot meet the quantity requirements in the user's request information reduces the complexity of the delivery robot's path and facilitates its smooth operation. For example, if the user's request specifically requires 10 units of product A and 5 units of product B, and container C contains 12 units of product A and 2 units of product B, container D contains 5 units of product A and 7 units of product B, and container E contains 12 units of product A and 7 units of product B, when container C is used as the delivery starting point, the delivery robot will not meet the quantity requirements after retrieving the goods from container C. Therefore, it will need to use container D as the delivery starting point to continue retrieving goods, thus increasing the complexity of the delivery robot's path. However, when container E is used as the delivery starting point, the delivery robot can retrieve the goods that meet the quantity requirements in the user's request information (10 units of product A and 5 units of product B) from container E without having to plan a path to other containers, thus simplifying the complexity of the delivery robot's path.
[0062] For example, when all containers cannot meet the quantity requirements in the user request information, a container combination that can meet the quantity requirements is selected based on the quantity information in the distribution information, and the total distance between each container in the container combination is determined. The container combination with the smallest total distance is selected as the target container combination, and each container in the target container combination is used as the delivery starting point in sequence.
[0063] S103. Take the target to be delivered at the delivery starting point as the goods to be delivered, obtain the volume data of the goods to be delivered, and obtain the volume data of the delivery robot;
[0064] For example, when the identification information of the target to be delivered in the request information is a name, such as "toothpaste", then the toothpaste stored at the delivery origin (container) is taken as the goods to be delivered, and the volume data of the toothpaste in the delivery origin (container) is obtained.
[0065] In one possible implementation, prior to the step of acquiring the volume data of the delivery robot, the method further includes:
[0066] Acquire the position data of each initial robot within a preset space, where the preset space is the space within a preset range where the delivery starting point is located;
[0067] Based on the location data, the distance data between each initial robot and the delivery starting point is determined;
[0068] Obtain task information for each initial robot;
[0069] Based on the task information and the distance data, an initial robot that meets the preset conditions is selected from among the initial robots and used as the delivery robot.
[0070] For example, different preset ranges can be selected according to different scenarios. For instance, in a hotel scenario, the range of each floor can be used as the preset range, so that the space of the entire floor is the preset space.
[0071] For example, in the first preset scenario, such as a hotel scenario, if all delivery robots have the same volume data, then the volume data of the delivery robots can be directly obtained. In the second preset scenario, such as a factory scenario, if the volume data of the delivery robots are different, then the delivery robots need to be selected. The delivery robot that is closest to the delivery origin (container) and is idle or the delivery robot with the fewest tasks to be completed can be selected, and the volume data of the delivery robot that is closest to the delivery origin (container) and is idle or the delivery robot with the fewest tasks to be completed can be obtained. By filtering the initial delivery robots, the optimal delivery robot (the delivery robot that is closest to the delivery origin and is idle or the delivery robot with the fewest tasks to be completed) is obtained, which saves the picking time of the delivery robots and helps to improve delivery efficiency. At the same time, it avoids continuing to call delivery robots with a large number of tasks to be completed, which would affect other ongoing delivery tasks.
[0072] S104. Determine a loading strategy for the goods to be delivered based on the volume data and the capacity data, and generate a delivery strategy for the goods to be delivered based on the loading strategy, the delivery starting point and the delivery ending point.
[0073] For example, the goods to be delivered are split into multiple orders based on the volume data and the capacity data. The splitting process can be understood as combining the goods to be delivered in different ways to obtain an indefinite number of combinations, and then generating a delivery strategy for delivering the indefinite number of combinations based on the delivery origin and the delivery destination.
[0074] For example, the delivery strategy includes delivery targets and delivery routes. The delivery targets can be understood as an indefinite number of combinations obtained in different ways. The loading strategy is the order splitting rules followed by the order splitting process. The order splitting rules include: greedy rules, extreme value methods, etc.
[0075] S105. Based on the delivery strategy, control the delivery robot to complete the delivery of the target to be delivered.
[0076] The system acquires user request information sent by target users based on a preset database. This user request information includes the identifier of the target to be delivered and the delivery destination. The system acquires user request information sent based on the preset database, which is a virtual inventory formed by summarizing the quantities of different goods under all channels of all containers. When a user places an order, the virtual inventory is deducted; if the order is abnormal, the virtual inventory is returned. Real inventory is deducted only when the container successfully ships goods to prevent overselling. Based on the identifier information, the system acquires the distribution information of the target to be delivered and determines the delivery starting point. The system takes the target to be delivered at the delivery starting point as the goods to be delivered, acquires the volume data of the goods to be delivered, and acquires the volume data of the delivery robot. Based on the volume data and the volume data, the system determines a loading strategy for the goods to be delivered and generates a delivery strategy for the goods to be delivered based on the loading strategy, the delivery starting point, and the delivery destination. Based on the delivery strategy, the system controls the delivery robot to complete the delivery of the target to be delivered. By determining the loading strategy based on the volume data of the goods to be delivered and the volume data of the delivery robot, that is, by comprehensively considering the volume data of the goods to be delivered and the volume data of the delivery robot, different loading strategies are flexibly selected for different scenarios (where the volume data of the goods to be delivered varies). This ensures that the loading strategy of the delivery robot is tailored to the current scenario, guarantees the rationality of the loading strategy, avoids the limitations of a single loading strategy in different scenarios, and avoids unreasonable loading of the delivery robot, which would lead to wasted space and resources. At the same time, achieving optimal loading of the delivery robot is beneficial to improving the efficiency of goods delivery and controlling costs.
[0077] In one possible implementation, the method further includes:
[0078] When the goods stored in containers at different locations are different, the location information of the containers is used as the location information in the distribution information;
[0079] Obtain the quantity of goods in the container corresponding to the identification information, and use the quantity as the quantity information corresponding to the location information;
[0080] Based on the distribution information and preset rules, at least one delivery starting point is selected, and at least one delivery robot is selected for each delivery starting point to complete the delivery of the target to be delivered.
[0081] For example, since different locations of the containers store different goods, when a user needs multiple items (delivery targets), using only a single delivery robot would require the robot to travel back and forth between containers in different locations, increasing delivery time. Therefore, different containers containing different items (delivery targets) are used as delivery starting points, and multiple delivery robots are called upon to deliver from multiple starting points. The number of delivery robots equals the number of delivery starting points. This ensures delivery efficiency and makes the delivery process more suitable for scenarios with multiple delivery robots, i.e., it reduces the idle time of multiple robots caused by uneven task distribution.
[0082] In one possible implementation, the step of selecting at least one delivery robot for each delivery origin to complete the delivery to the target includes:
[0083] When the volume data of the delivery robot is different, obtain the volume of the target to be delivered corresponding to each delivery starting point;
[0084] Select the target delivery robot for each delivery starting point based on the volume to be delivered and the volume data;
[0085] The delivery robot completes the delivery of the target object.
[0086] For example, when the loading capacity (volume data) of the delivery robots is different, robots with different loading capacities (volume data) are selected as the target delivery robots for each delivery starting point based on the volume of the target to be delivered corresponding to the delivery starting point.
[0087] In one possible implementation, the step of selecting at least one delivery robot for each delivery origin to complete the delivery to the target destination further includes:
[0088] When the volume data of the delivery robots are the same, obtain the half value data of the volume data, and obtain the volume of the target to be delivered corresponding to each delivery starting point;
[0089] Match the half-value data with the volume to be delivered;
[0090] If the half-value data is greater than or equal to the volume to be delivered, then the loading strategy for the goods to be delivered is determined as the first order splitting strategy according to the preset rules, a first waybill set is generated, and at least one delivery robot is selected according to the first waybill set to complete the delivery of the target to be delivered.
[0091] If the half-value data is less than the volume to be delivered, then the loading strategy for the goods to be delivered is determined as the second order splitting strategy according to the preset rules, a second waybill set is generated, and at least one delivery robot is selected according to the second waybill set to complete the delivery of the target to be delivered.
[0092] For example, when the delivery targets are combined according to the first order splitting strategy / the second order splitting strategy, more than one waybill is often obtained. Taking two waybills as an example, if only one delivery robot is used for delivery, one delivery robot needs to complete two delivery processes, which is not conducive to improving delivery efficiency. However, after selecting two delivery robots, each delivery robot only needs to complete one delivery process at the same time, which can maximize the use of multi-machine scenarios and reduce the number of times a single waybill goes to different containers, thereby ensuring optimal loading and the fastest efficiency of the machines.
[0093] For example, such as Figure 3 As shown, the process of the delivery robot interacting with the vending machine to pick up goods is as follows: The delivery robot receives the waybill from the first / second waybill set and goes to the pickup point (delivery starting point). After arriving at the pickup point (delivery starting point), it notifies the pickup point (delivery starting point) to dispatch the goods (the target to be delivered corresponding to the waybill). After the delivery robot picks up the target to be delivered, it generates a report and uploads the report to the server. The server deducts the actual inventory according to the waybill. The delivery robot then goes to the delivery destination, completing the interaction between the delivery robot and the vending machine.
[0094] In one possible implementation, the step of determining a loading strategy for the goods to be delivered based on the volume data and the capacity data includes:
[0095] Obtain the half-value data of the volume data, and determine the median volume of the goods to be delivered using the volume data;
[0096] Match the half-value data with the median volume;
[0097] If the half-value data is greater than or equal to the median volume, then the loading strategy for the goods to be delivered is determined as the first order splitting strategy according to the preset rules.
[0098] If the half-value data is less than the median volume, then the loading strategy for the goods to be delivered is determined to be the second order splitting strategy according to the preset rules.
[0099] For example, half the volume data is taken to obtain the half-value data of the volume data, and the volume data of each target to be delivered are arranged according to the numerical value to obtain the median volume.
[0100] For example, if the half-value data is greater than or equal to the median volume, it is considered that the quantity of small goods to be delivered is greater than the quantity of large goods, and the loading strategy for the goods to be delivered is determined to be a greedy strategy (first order splitting strategy). If the half-value data is less than the median volume, it is considered that the quantity of large goods to be delivered is greater than the quantity of small goods, and the loading strategy for the goods to be delivered is determined to be an extreme value method strategy (second order splitting strategy). By selecting different order splitting strategies for different goods scenarios (different median volumes), the waybills obtained according to the menu strategy can make more reasonable use of the loading space of the delivery robot, which is conducive to improving delivery efficiency.
[0101] In one possible implementation, the step of generating a delivery strategy for the goods to be delivered based on the loading strategy, the delivery origin, and the delivery destination includes:
[0102] If the half-value data is greater than or equal to the median volume, then according to the first order splitting strategy, each delivery target in the goods to be delivered is selected in ascending order of volume to obtain a combination of delivery targets that meet the volume data, and the first waybill data for the delivery robot is generated based on the combination of delivery targets.
[0103] Based on the delivery origin and the delivery destination, route planning is performed to obtain the first route information;
[0104] The first delivery strategy in the delivery strategy is generated based on the first waybill data and the first route information;
[0105] If the half-value data is less than the median volume, then according to the second order splitting strategy, the largest delivery target with the largest volume data and the smallest delivery target with the smallest volume data are selected from the delivery targets in the goods to be delivered. The largest delivery target and the smallest delivery target are used as the first target combination to obtain the first remaining target and the first target combination other than the first target combination.
[0106] Determine whether the total volume data of the first target combination satisfies the volume data;
[0107] If the conditions are met, then second waybill data for the delivery robot is generated based on the first target combination;
[0108] If not, then according to the second order splitting strategy, select the second target combination from the first remaining target, and determine whether the sum of the total volume data of the first target combination and the total volume data of the second target combination satisfies the volume data.
[0109] If the sum satisfies the volume data, then a third waybill data for the delivery robot is generated based on the first target combination and the second target combination;
[0110] If the sum does not meet the volume data, then the second order splitting strategy is used to select from the second remaining targets other than the first target combination and the second target combination until the volume data is met, and the fourth waybill data is generated.
[0111] Based on the delivery origin and the delivery destination, route planning is performed to obtain second route information;
[0112] The second delivery strategy in the delivery strategy is generated based on at least one of the second waybill data, the third waybill data, and the fourth waybill data, and the second route information.
[0113] For example, if the half-value data is less than the median volume, an extreme value strategy is selected to combine large and small goods. The largest and smallest deliverable targets are selected from all currently awaiting delivery targets, arranged from largest to smallest volume. These two targets are then combined to form a first target combination. The smallest and largest deliverable targets are then removed from all deliverable targets to obtain the remaining deliverable targets (the first remaining targets). If the first target combination does not meet the volume data, i.e., the first target combination does not fill the delivery robot, the largest and smallest deliverable targets are selected from the remaining deliverable targets (the first remaining targets) using the extreme value strategy until all deliverable targets are selected and assigned to the delivery robot.
[0114] For example, such as Figure 4 As shown, the system obtains user request information (orders) and selects the nearest container (delivery origin) to the user based on the room / location information corresponding to the order. It calculates and sorts the volume of goods (goods to be delivered) that need to be shipped from this container based on the ordered goods (delivery targets), and then selects a strategy based on the median of the sorted volumes. If the median is greater than or equal to the median volume, a greedy strategy is used to split the order until the delivery robot is full, at which point the delivery robot begins delivery. If the median is less than the median volume, an extreme value strategy is used to split the order until the delivery robot is full, at which point the delivery robot begins delivery.
[0115] For example, instead of the original strategy of sorting from largest to smallest, a greedy strategy and an extreme value strategy are combined to ensure that the delivery robot loads the most or optimal amount of goods each time, thereby improving delivery efficiency.
[0116] For example, when determining a route, the delivery robot determines a location map of the current work area, wherein the location map is a map formed by the robot mapping its environment;
[0117] Specifically, the robot is equipped with data acquisition sensors and a modeling processor. The modeling processor uses environmental data collected by the sensors to build an environmental map. In this embodiment, the data acquisition sensors include LiDAR, ultrasonic sensors, and infrared sensors. These sensors collect data on the robot's working area. The modeling processor uses this data to create a map. During map creation, different map layers are generated using different sensors, such as static layers, dynamic obstacle layers, ultrasonic layers, and visual layers. These layers are then fused to obtain a positioning map for the robot's localization and navigation.
[0118] The path is planned based on the location map, specifically including:
[0119] The robot's current position and target position are determined based on the positioning map;
[0120] Determine the location of the obstacle based on the positioning map;
[0121] Plan a path based on the current location, the target location, and the location of the obstacles.
[0122] Specifically, in determining the robot's current position and target position based on the positioning map, the target position is either the position set by the user or the position the robot needs to move to (delivery starting point) determined by the robot's processing system. This target position can be the next position to be moved to (delivery destination) determined during the movement, or it can be the final position the robot needs to reach. The current position is the robot's real-time position information determined by its position sensors.
[0123] In determining the location of obstacles based on the positioning map, the positioning map is used to determine the location of obstacles on the positioning map. This implementation allows the robot to determine the location of obstacles and plan a route without compromising navigation accuracy.
[0124] Move according to the described path.
[0125] In one possible implementation, prior to the step of obtaining user request information sent by the target user based on a preset database, the method further includes:
[0126] Obtain the operating status of all containers bound within the user's area, and select the containers whose operating status is normal as the target containers;
[0127] Collect data on the goods inside the target container and construct the preset database based on the data.
[0128] For example, since the preset database does not aggregate the virtual inventory data formed by the quantity of different goods under all channels of all containers, and users need to ensure that the goods can be taken out of the containers normally when purchasing goods, in order to ensure the authenticity and reliability of the preset database, it is necessary to delete the containers that cannot take out the goods normally according to the operating status of all containers, and not count the goods data in the containers that cannot take out the goods normally.
[0129] For example, establishing a pre-set database facilitates timely statistics on goods quantity and sales data, which is beneficial for goods management. It eliminates the need for real-time counting of actual goods on shelves for order placement, resulting in higher efficiency. It also makes it easier to return inventory in case of order anomalies and is more effective in addressing overselling issues.
[0130] In one possible implementation, the step of obtaining user request information sent by the target user based on a preset database includes:
[0131] Obtain the initial request information of the target user;
[0132] The initial data to be delivered in the initial request information is matched with the preset database;
[0133] If the preset database meets the initial delivery data, then the preset database is updated based on the initial delivery data, and a payment request is sent to the user according to the initial delivery data;
[0134] Once the user's payment information is obtained, the initial request information is used as the user request information sent by the target user based on the preset database.
[0135] If user payment information is not obtained within a preset time, the step of updating the preset database based on the initial delivery data is cancelled.
[0136] For example, such as Figure 5As shown, target users scan a QR code to access the vending machine's mini-program for shopping. The products displayed in the mini-program represent the total inventory (virtual inventory) of different products corresponding to currently online and available vending machines. After the target user selects the desired products and places an order, a pre-check is performed to pre-deduct from the total inventory. This pre-deduction process prevents insufficient stock due to other users placing orders while the user is selecting products or the vending machine status or product information being modified (e.g., the merchant replenishes stock or removes the product while the customer is placing an order), making the product unavailable for purchase. After the pre-check passes, the user can confirm the order without needing to re-order. After the target user confirms the order, it enters a pending payment state. Once the user completes payment, the order allocation and delivery process begins. If payment is not made within the specified time, the order is automatically canceled, and the total inventory is refunded. The virtual inventory (preset database) is used to replace the real inventory display, and the order process is completed, preventing overselling.
[0137] In one possible implementation, such as Figure 6 As shown, a goods delivery device includes:
[0138] The data acquisition module 201 is used to acquire user request information sent by the target user based on a preset database. The user request information includes the identification information of the target to be delivered and the delivery destination.
[0139] The positioning module 202 is used to obtain the distribution information of the target to be delivered based on the identification information, and to determine the delivery starting point based on the distribution information;
[0140] The data acquisition module 203 is used to take the target to be delivered at the delivery starting point as the goods to be delivered, acquire the volume data of the goods to be delivered, and acquire the volume data of the delivery robot;
[0141] The strategy generation module 204 is used to determine a loading strategy for the goods to be delivered based on the volume data and the capacity data, and to generate a delivery strategy for the goods to be delivered based on the loading strategy, the delivery starting point and the delivery ending point.
[0142] The control module 205 is used to control the delivery robot to complete the delivery of the target to be delivered based on the delivery strategy.
[0143] In one possible implementation, the strategy generation module 204 is configured to:
[0144] Obtain the half-value data of the volume data, and determine the median volume of the goods to be delivered using the volume data;
[0145] Match the half-value data with the median volume;
[0146] If the half-value data is greater than or equal to the median volume, then the loading strategy for the goods to be delivered is determined as the first order splitting strategy according to the preset rules.
[0147] If the half-value data is less than the median volume, then the loading strategy for the goods to be delivered is determined to be the second order splitting strategy according to the preset rules.
[0148] In one possible implementation, the strategy generation module 204 is configured to:
[0149] If the half-value data is greater than or equal to the median volume, then according to the first order splitting strategy, each delivery target in the goods to be delivered is selected in ascending order of volume to obtain a combination of delivery targets that meet the volume data, and the first waybill data for the delivery robot is generated based on the combination of delivery targets.
[0150] Based on the delivery origin and the delivery destination, route planning is performed to obtain the first route information;
[0151] The first delivery strategy in the delivery strategy is generated based on the first waybill data and the first route information;
[0152] If the half-value data is less than the median volume, then according to the second order splitting strategy, the largest delivery target with the largest volume data and the smallest delivery target with the smallest volume data are selected from the delivery targets in the goods to be delivered. The largest delivery target and the smallest delivery target are used as the first target combination to obtain the first remaining target and the first target combination other than the first target combination.
[0153] Determine whether the total volume data of the first target combination satisfies the volume data;
[0154] If the conditions are met, then second waybill data for the delivery robot is generated based on the first target combination;
[0155] If not, then according to the second order splitting strategy, select the second target combination from the first remaining target, and determine whether the sum of the total volume data of the first target combination and the total volume data of the second target combination satisfies the volume data.
[0156] If the sum satisfies the volume data, then a third waybill data for the delivery robot is generated based on the first target combination and the second target combination;
[0157] If the sum does not meet the volume data, then the second order splitting strategy is used to select from the second remaining targets other than the first target combination and the second target combination until the volume data is met, and the fourth waybill data is generated.
[0158] Based on the delivery origin and the delivery destination, route planning is performed to obtain second route information;
[0159] The second delivery strategy in the delivery strategy is generated based on at least one of the second waybill data, the third waybill data, and the fourth waybill data, and the second route information.
[0160] In one possible implementation, the data acquisition module 203 is configured to:
[0161] Acquire the position data of each initial robot within a preset space, where the preset space is the space within a preset range where the delivery starting point is located;
[0162] Based on the location data, the distance data between each initial robot and the delivery starting point is determined;
[0163] Obtain task information for each initial robot;
[0164] Based on the task information and the distance data, an initial robot that meets the preset conditions is selected from among the initial robots and used as the delivery robot.
[0165] In one possible implementation, the data acquisition module 201 is used for:
[0166] Obtain the operating status of all containers bound within the user's area, and select the containers whose operating status is normal as the target containers;
[0167] Collect data on the goods inside the target container and construct the preset database based on the data.
[0168] In one possible implementation, the data acquisition module 201 is used for:
[0169] Obtain the initial request information of the target user;
[0170] The initial data to be delivered in the initial request information is matched with the preset database;
[0171] If the preset database meets the initial delivery data, then the preset database is updated based on the initial delivery data, and a payment request is sent to the user according to the initial delivery data;
[0172] Once the user's payment information is obtained, the initial request information is used as the user request information sent by the target user based on the preset database.
[0173] If user payment information is not obtained within a preset time, the step of updating the preset database based on the initial delivery data is cancelled.
[0174] In one possible implementation, the positioning module 202 is used for:
[0175] The distribution information of the target to be delivered is obtained based on the identification information and the preset database;
[0176] When the type of the target to be delivered is one, based on the distribution information and the delivery destination, the distribution information closest to the delivery destination is taken as the delivery starting point;
[0177] When the types of the targets to be delivered are not the same, obtain the distribution information of each type of target to be delivered;
[0178] If there is an intersection between the distribution information of different types of delivery targets, the intersection between the distribution information of different types of delivery targets shall be taken as the target distribution information set, and the distribution information closest to the delivery destination shall be selected from the target distribution information set as the delivery starting point.
[0179] If there is no overlap between the distribution information of different types of delivery targets, then the distribution information closest to the delivery destination is selected from the distribution information of each type of delivery target as the delivery starting point.
[0180] This embodiment acquires user request information sent by target users based on a preset database. This user request information includes the identification information of the target to be delivered and the delivery destination. The preset database is a virtual inventory formed by summarizing the quantities of different goods under all channels of all containers. When a user places an order, the virtual inventory is deducted; if the order is abnormal, the virtual inventory is returned. Real inventory is deducted only when the container successfully ships goods to prevent overselling. The distribution information of the target to be delivered is obtained based on the identification information, and the delivery starting point is determined based on this distribution information. The target to be delivered at the delivery starting point is taken as the goods to be delivered, and the volume data of the goods to be delivered and the volume data of the delivery robot are obtained. A loading strategy for the goods to be delivered is determined based on the volume data and the volume data, and a delivery strategy is generated based on the loading strategy, the delivery starting point, and the delivery destination. The delivery robot is controlled to complete the delivery of the target to be delivered based on the delivery strategy. By determining the loading strategy based on the volume data of the goods to be delivered and the volume data of the delivery robot, that is, by comprehensively considering the volume data of the goods to be delivered and the volume data of the delivery robot, different loading strategies are flexibly selected for different scenarios (where the volume data of the goods to be delivered varies). This ensures that the loading strategy of the delivery robot is tailored to the current scenario, guarantees the rationality of the loading strategy, avoids the limitations of a single loading strategy in different scenarios, and avoids unreasonable loading of the delivery robot, which would lead to wasted space and resources. At the same time, achieving optimal loading of the delivery robot is beneficial to improving the efficiency of goods delivery and controlling costs.
[0181] In one embodiment, a computer device is provided, which may be a server. The computer device includes a processor, memory, a network interface, and a database connected via a system bus. The processor of the computer device provides computing and control capabilities. The memory of the computer device includes non-volatile and / or volatile storage media and internal memory. The non-volatile storage media stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The network interface of the computer device is used to communicate with external clients via a network connection. When the computer program is executed by the processor, it implements the functions or steps of a method for determining the number of passengers in a means of transportation on the server side.
[0182] In one embodiment, a computer device is provided, comprising a processor, memory, a network interface, a display screen, and an input device connected via a system bus. The processor provides computing and control capabilities. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The network interface is used to communicate with an external server via a network connection. When executed by the processor, the computer program implements client-side functions or steps of a method for determining the number of passengers in a vehicle.
[0183] In one embodiment, such as Figure 7 As shown, this application proposes an embodiment of an electronic device 300, including: a memory 310, a processor 320, and a computer program 311 stored in the memory 310 and executable on the processor 320. When the processor 320 executes the computer program 311, it performs the following: acquiring user request information sent by a target user based on a preset database, the user request information including the identification information of the target to be delivered and the delivery destination; acquiring the distribution information of the target to be delivered based on the identification information, and determining the delivery starting point based on the distribution information; taking the target to be delivered at the delivery starting point as the goods to be delivered, acquiring the volume data of the goods to be delivered, and acquiring the volume data of the delivery robot; determining a loading strategy for the goods to be delivered based on the volume data and the volume data, and generating a delivery strategy for the goods to be delivered based on the loading strategy, the delivery starting point, and the delivery destination; and controlling the delivery robot to complete the delivery of the target to be delivered based on the delivery strategy.
[0184] This embodiment acquires user request information sent by target users based on a preset database. This user request information includes the identification information of the target to be delivered and the delivery destination. The preset database is a virtual inventory formed by summarizing the quantities of different goods under all channels of all containers. When a user places an order, the virtual inventory is deducted; if the order is abnormal, the virtual inventory is returned. Real inventory is deducted only when the container successfully ships goods to prevent overselling. The distribution information of the target to be delivered is obtained based on the identification information, and the delivery starting point is determined based on this distribution information. The target to be delivered at the delivery starting point is taken as the goods to be delivered, and the volume data of the goods to be delivered and the volume data of the delivery robot are obtained. A loading strategy for the goods to be delivered is determined based on the volume data and the volume data, and a delivery strategy is generated based on the loading strategy, the delivery starting point, and the delivery destination. The delivery robot is controlled to complete the delivery of the target to be delivered based on the delivery strategy. By determining the loading strategy based on the volume data of the goods to be delivered and the volume data of the delivery robot, that is, by comprehensively considering the volume data of the goods to be delivered and the volume data of the delivery robot, different loading strategies are flexibly selected for different scenarios (where the volume data of the goods to be delivered varies). This ensures that the loading strategy of the delivery robot is tailored to the current scenario, guarantees the rationality of the loading strategy, avoids the limitations of a single loading strategy in different scenarios, and avoids unreasonable loading of the delivery robot, which would lead to wasted space and resources. At the same time, achieving optimal loading of the delivery robot is beneficial to improving the efficiency of goods delivery and controlling costs.
[0185] In one embodiment, a computer-readable storage medium is provided, the computer-readable storage medium storing a computer program, which, when executed by a processor, performs the following steps: acquiring user request information sent by a target user based on a preset database, the user request information including identification information of a target to be delivered and a delivery destination; acquiring distribution information of the target to be delivered based on the identification information, and determining a delivery starting point based on the distribution information; taking the target to be delivered at the delivery starting point as goods to be delivered, acquiring volume data of the goods to be delivered, and acquiring volume data of a delivery robot; determining a loading strategy for the goods to be delivered based on the volume data and the volume data, and generating a delivery strategy for the goods to be delivered based on the loading strategy, the delivery starting point, and the delivery destination; and controlling the delivery robot to complete the delivery of the target to be delivered based on the delivery strategy.
[0186] This embodiment acquires user request information sent by target users based on a preset database. This user request information includes the identification information of the target to be delivered and the delivery destination. The preset database is a virtual inventory formed by summarizing the quantities of different goods under all channels of all containers. When a user places an order, the virtual inventory is deducted; if the order is abnormal, the virtual inventory is returned. Real inventory is deducted only when the container successfully ships goods to prevent overselling. The distribution information of the target to be delivered is obtained based on the identification information, and the delivery starting point is determined based on this distribution information. The target to be delivered at the delivery starting point is taken as the goods to be delivered, and the volume data of the goods to be delivered and the volume data of the delivery robot are obtained. A loading strategy for the goods to be delivered is determined based on the volume data and the volume data, and a delivery strategy is generated based on the loading strategy, the delivery starting point, and the delivery destination. The delivery robot is controlled to complete the delivery of the target to be delivered based on the delivery strategy. By determining the loading strategy based on the volume data of the goods to be delivered and the volume data of the delivery robot, that is, by comprehensively considering the volume data of the goods to be delivered and the volume data of the delivery robot, different loading strategies are flexibly selected for different scenarios (where the volume data of the goods to be delivered varies). This ensures that the loading strategy of the delivery robot is tailored to the current scenario, guarantees the rationality of the loading strategy, avoids the limitations of a single loading strategy in different scenarios, and avoids unreasonable loading of the delivery robot, which would lead to wasted space and resources. At the same time, achieving optimal loading of the delivery robot is beneficial to improving the efficiency of goods delivery and controlling costs.
[0187] It should be noted that the information interaction and execution process between the above-mentioned devices / units are based on the same concept as the method embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, and they will not be repeated here.
[0188] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0189] This application also provides a computer program product that, when run on a mobile terminal, enables the mobile terminal to implement the steps described in the above-described method embodiments.
[0190] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments of this application can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include at least: any entity or device capable of carrying computer program code to a photographing device / terminal device, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electrical carrier signals or telecommunication signals.
[0191] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0192] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0193] In the embodiments provided in this application, it should be understood that the disclosed apparatus / network device / terminal device and method can be implemented in other ways. For example, the apparatus / network device / terminal device embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0194] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0195] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.
Claims
1. A goods distribution method characterized by, The system includes a server and a delivery robot and container that are communicatively connected to the server; the goods delivery method includes: The system acquires user request information sent by the target user based on a preset database. The user request information includes the identification information of the target to be delivered and the delivery destination. Based on the identification information, the system acquires the distribution information of the target to be delivered and determines the delivery starting point based on the distribution information. The delivery starting point is the location information of the delivery container. The target to be delivered at the delivery starting point is taken as the goods to be delivered. The volume data of the goods to be delivered and the volume data of the delivery robot are obtained. Based on the volume data and the volume data, a loading strategy for the goods to be delivered is determined, and a delivery strategy for the goods to be delivered is generated according to the loading strategy, the delivery starting point and the delivery ending point. Based on the delivery strategy, the delivery robot is controlled to complete the delivery of the target to be delivered. The step of determining the loading strategy for the goods to be delivered based on the volume data and the capacity data includes: obtaining half-value data of the capacity data, and determining the median volume of the goods to be delivered through the volume data; and matching the half-value data and the median volume. If the half-value data is greater than or equal to the median volume, then it is determined that the quantity of each small item to be delivered is greater than the quantity of the large item, and the loading strategy for the goods to be delivered is determined as the first order splitting strategy according to the preset rules; wherein, the first order splitting strategy represents that each target to be delivered in the goods to be delivered is selected in order from small to large according to the first order splitting strategy in order from small to large volume, so as to obtain a combination of targets to be delivered that meet the volume data. If the half-value data is less than the median volume, then it is determined that the number of large goods in each to-be-delivered item is greater than the number of small goods. The loading strategy for the to-be-delivered items is then determined as a second order splitting strategy according to the preset rules. The second order splitting strategy involves selecting the largest to-be-delivered item and the smallest to-be-delivered item from all current to-be-delivered items in descending order of volume. These two items are then combined to form a first target combination. The smallest and largest to-be-delivered items are then removed from all to-be-delivered items, leaving the remaining to-be-delivered items. If the first target combination does not meet the volume data, the second order splitting strategy is used to select the largest and smallest to-be-delivered items from the remaining to-be-delivered items until all to-be-delivered items that meet the volume data are selected and assigned to the delivery robot. The preset database is a virtual inventory data formed by summarizing the quantities of different products under all channels of all containers. When a user places an order, the virtual inventory is deducted. When an order is abnormal, the virtual inventory is returned. The real inventory is deducted only when the container is successfully shipped.
2. The goods distribution method according to claim 1, characterized by, The step of generating a delivery strategy for the goods to be delivered based on the loading strategy, the delivery origin, and the delivery destination includes: If the half-value data is greater than or equal to the median volume, then according to the first order splitting strategy, each delivery target in the goods to be delivered is selected in ascending order of volume to obtain a combination of delivery targets that meet the volume data, and the first waybill data for the delivery robot is generated based on the combination of delivery targets. Based on the delivery origin and the delivery destination, route planning is performed to obtain the first route information; The first delivery strategy in the delivery strategy is generated based on the first waybill data and the first route information; If the half-value data is less than the median volume, then according to the second order splitting strategy, the largest delivery target with the largest volume data and the smallest delivery target with the smallest volume data are selected from the delivery targets in the goods to be delivered. The largest delivery target and the smallest delivery target are used as the first target combination to obtain the first remaining target and the first target combination other than the first target combination. Determine whether the total volume data of the first target combination satisfies the volume data; If the conditions are met, then second waybill data for the delivery robot is generated based on the first target combination; If not, then according to the second order splitting strategy, select the second target combination from the first remaining target, and determine whether the sum of the total volume data of the first target combination and the total volume data of the second target combination satisfies the volume data. If the sum satisfies the volume data, then a third waybill data for the delivery robot is generated based on the first target combination and the second target combination; If the sum does not meet the volume data, then the second order splitting strategy is used to select from the second remaining targets other than the first target combination and the second target combination until the volume data is met, and the fourth waybill data is generated. Based on the delivery origin and the delivery destination, route planning is performed to obtain second route information; The second delivery strategy in the delivery strategy is generated based on at least one of the second waybill data, the third waybill data, and the fourth waybill data, and the second route information.
3. The goods distribution method according to claim 1, wherein Prior to the step of acquiring the volume data of the delivery robot, the method further includes: Acquire the position data of each initial robot within a preset space, where the preset space is the space within a preset range where the delivery starting point is located; Based on the location data, the distance data between each initial robot and the delivery starting point is determined; Obtain task information for each initial robot; Based on the task information and the distance data, an initial robot that meets the preset conditions is selected from among the initial robots and used as the delivery robot.
4. The goods distribution method according to claim 1, characterized by, Before the step of obtaining user request information sent by the target user based on a preset database, the method further includes: Obtain the operating status of all containers bound within the user's area, and select the containers whose operating status is normal as the target containers; Collect data on the goods inside the target container and construct the preset database based on the data.
5. The goods distribution method according to claim 1, wherein The step of obtaining user request information sent by the target user based on a preset database includes: Obtain the initial request information of the target user; The initial data to be delivered in the initial request information is matched with the preset database; If the preset database meets the initial delivery data, then the preset database is updated based on the initial delivery data, and a payment request is sent to the user according to the initial delivery data; Once the user's payment information is obtained, the initial request information is used as the user request information sent by the target user based on the preset database. If user payment information is not obtained within a preset time, the step of updating the preset database based on the initial delivery data is cancelled.
6. The goods distribution method according to claim 1, wherein The step of obtaining the distribution information of the target to be delivered based on the identification information, and determining the delivery starting point based on the distribution information, includes: The distribution information of the target to be delivered is obtained based on the identification information and the preset database; When the type of the target to be delivered is one, based on the distribution information and the delivery destination, the distribution information closest to the delivery destination is taken as the delivery starting point; When the types of the targets to be delivered are not the same, obtain the distribution information of each type of target to be delivered; If there is an intersection between the distribution information of different types of delivery targets, the intersection between the distribution information of different types of delivery targets shall be taken as the target distribution information set, and the distribution information closest to the delivery destination shall be selected from the target distribution information set as the delivery starting point. If there is no overlap between the distribution information of different types of delivery targets, then the distribution information closest to the delivery destination is selected from the distribution information of each type of delivery target as the delivery starting point.
7. The goods distribution method according to claim 1, wherein The method further includes: Obtain user request information, and select the nearest container to the user based on the room information or location information corresponding to the user request information; The volume of the goods to be delivered to the container is calculated, and the volumes of each goods to be delivered are sorted. The median volume is obtained based on the sorting of volumes.
8. A goods delivery apparatus, characterized by, The device includes: The data acquisition module is used to acquire user request information sent by the target user based on a preset database. The user request information includes the identification information of the target to be delivered and the delivery destination. The positioning module is used to obtain the distribution information of the target to be delivered based on the identification information, and to determine the delivery starting point based on the distribution information; the delivery starting point is the location information of the shipping container; The data acquisition module is used to take the target to be delivered at the delivery starting point as the goods to be delivered, acquire the volume data of the goods to be delivered, and acquire the volume data of the delivery robot. The strategy generation module is used to determine a loading strategy for the goods to be delivered based on the volume data and the capacity data, and to generate a delivery strategy for the goods to be delivered based on the loading strategy, the delivery starting point and the delivery ending point. A control module is used to control the delivery robot to complete the delivery of the target to be delivered based on the delivery strategy; The strategy generation module is further configured to obtain the half-value data of the volume data and determine the median volume of the goods to be delivered using the volume data; match the half-value data and the median volume; if the half-value data is greater than or equal to the median volume, then determine the loading strategy for the goods to be delivered as a first order splitting strategy according to a preset rule; wherein, the first order splitting strategy represents selecting each target to be delivered from smallest to largest in the goods to be delivered according to the first order splitting strategy in ascending order of volume, to obtain a combination of targets to be delivered that meets the volume data; if the half-value data is less than the median volume, then determine the loading strategy for the goods to be delivered as a second order splitting strategy according to the preset rule; the second order splitting strategy represents combining large and small goods, selecting the largest target to be delivered and the smallest target to be delivered from all the targets to be delivered in descending order of volume, and combining the largest target to be delivered and the smallest target to be delivered.
9. A goods delivery system, characterized in that, The system includes a server, a delivery robot, and a container, wherein the server, the delivery robot, and the container are communicatively connected and configured to perform the method as described in any one of claims 1 to 7.
10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1 to 7.
Citation Information
Patent Citations
Robot scheduling method, robot and storage medium
CN109991988A
Method and device for delivering goods by robot
CN114548717A