WO2024051435A1 - 机器人调度方法和装置 - Google Patents

机器人调度方法和装置 Download PDF

Info

Publication number
WO2024051435A1
WO2024051435A1 PCT/CN2023/112019 CN2023112019W WO2024051435A1 WO 2024051435 A1 WO2024051435 A1 WO 2024051435A1 CN 2023112019 W CN2023112019 W CN 2023112019W WO 2024051435 A1 WO2024051435 A1 WO 2024051435A1
Authority
WO
WIPO (PCT)
Prior art keywords
scheduling
robot
robots
target
target robot
Prior art date
Application number
PCT/CN2023/112019
Other languages
English (en)
French (fr)
Inventor
杜欢
王桓宇
李宁
吴伟
Original Assignee
北京极智嘉科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 北京极智嘉科技股份有限公司 filed Critical 北京极智嘉科技股份有限公司
Publication of WO2024051435A1 publication Critical patent/WO2024051435A1/zh

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/70Services for machine-to-machine communication [M2M] or machine type communication [MTC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Definitions

  • the present disclosure relates to the field of robot navigation technology, and in particular, to a robot scheduling method and device.
  • Embodiments of the present disclosure provide a robot scheduling method and device.
  • a robot scheduling method is provided, which is applied to any target robot in a robot cluster.
  • the method includes: first, obtaining the current operating status of other robots; other robots include other robots in the robot cluster except the target robot. There is at least one robot, and the other robots are within the communication range of the target robot.
  • the current operating status is used to represent the operating information generated by the other robots during their operation.
  • the type of abnormal scheduling is determined; the type of abnormal scheduling is used to characterize the type of mutual obstruction between the operation processes of the target robot and other robots.
  • the target robot and/or other robots are scheduled using the scheduling rules corresponding to the type of abnormal scheduling.
  • the types of abnormal scheduling include conflict scheduling and deadlock scheduling.
  • Conflict scheduling is used to characterize the intersection between the running paths of the target robot and other robots; deadlock scheduling is used to characterize the current running status of the target robot and other The current running status of the robot is abnormal.
  • conflict scheduling in the abnormal scheduling type includes one-way area conflict scheduling, and scheduling rules corresponding to the type of abnormal scheduling are used to schedule the target robot and/or other robots, including: if it is determined that other robots are in predetermined Assuming that the target robot is inside the one-way area and the preset target points of other robots are outside the preset one-way area, then the target robot is scheduled based on the preset running path information of the target robot and the current running status of other robots; if determined If other robots are inside the preset one-way area, and the target points of other robots are inside the preset one-way area, the target robot will re-plan its path and move based on the new path.
  • scheduling the target robot based on the preset running path information of the target robot and the current running status of other robots includes: if based on the preset running path information of the target robot and the current running status of other robots, determining If the target robot's running path direction is opposite to the running path direction of other robots, the target robot is controlled to be in a waiting state; if based on the target robot's preset running path information and the current running status of other robots, it is determined that the target robot's running path direction is different from that of other robots. If the robot's running path direction is the same, the target robot is controlled to follow other robots.
  • the above-mentioned target robot re-plans the path and moves based on the new path, including: the target robot sets the target point of other robots as a virtual obstacle, re-plans the path for the target robot, and moves based on the new path. , to bypass the target points of other robots.
  • the conflict scheduling in the above abnormal scheduling type includes intersection area conflict scheduling.
  • determining the type of abnormal scheduling includes: based on the current operating status of other robots, determining that they are at a preset intersection. The number of all robots within the intersection area; if the number of robots is greater than or equal to the preset quantity threshold, the type of abnormal scheduling is determined to be intersection area conflict scheduling.
  • scheduling rules corresponding to the type of abnormal scheduling are used to schedule the target robot and/or other robots, including: if the target robot is a robot that is to enter the preset intersection area, controlling the target robot to be in Waiting state, or re-planning a path for the target robot and controlling the target robot to run based on the new path.
  • the conflict scheduling in the abnormal scheduling type includes non-one-way zone conflict scheduling, and the non-one-way zone conflict scheduling includes any one of opposite conflict scheduling, same-direction conflict scheduling and intersection conflict scheduling, based on other robots'
  • the current running status determines the type of abnormal scheduling, including: if based on the target robot's preset running path information and the current running status of other robots, determine the angle between the target robot's running path and the running paths of other robots in the first Within the preset angle range, the type of abnormal scheduling is determined to be opposing conflict scheduling; if based on the preset running path information of the target robot and the current running status of other robots, determine the relationship between the running path of the target robot and the running paths of other robots.
  • the type of abnormal scheduling is determined to be intersection conflict scheduling; if based on the preset running path information of the target robot and the current running status of other robots, it is determined that the running path of the target robot is consistent with other If the angle between the robot's running paths is within the third preset angle range, it is determined that the type of abnormal scheduling is co-directional conflict scheduling; where the minimum angle value of the first preset angle range is greater than or equal to the second The maximum included angle value of the preset included angle range, and the minimum included angle value of the second preset included angle range is greater than or equal to the maximum included angle value of the third preset included angle range.
  • the above-mentioned scheduling rules corresponding to the type of abnormal scheduling are used to schedule the target robot and other robots, including: if the type of abnormal scheduling is conflicting scheduling, the target robot adopts the first target driving lane and reduces Speed operation; among them, the first target driving road is the road away from other robots; if the type of abnormal scheduling is intersection conflict scheduling, the distances from the target robot and other robots to the intersection are calculated separately; if the distance from the target robot to the intersection is greater than or equal to the distance from other robots to the intersection point, the target robot is controlled to be in a waiting state; if the type of abnormal scheduling is same-direction conflict scheduling, and the current position of the target robot is farther back than the current position of other robots, the target robot is controlled Run at reduced speed.
  • the above-mentioned scheduling rules corresponding to the type of abnormal scheduling are used to schedule the target robot and other robots, including: if the target robot is a scheduling robot, re-planning the paths of the target robot and other robots through the scheduling robot , sending new paths to other robots so that other robots can run based on the new paths.
  • the above method further includes determining the robot with higher priority among the target robot and other robots as the scheduling robot according to the priorities of the target robot and other robots.
  • a robot scheduling device which device includes: an acquisition module configured to acquire the current operating status of other robots; the other robots are composed of at least one robot other than the target robot in the robot cluster, and the other robots are The robot is a robot within the communication range of the target robot.
  • the current operating status is used to represent the operating information generated by other robots during operation; the determination module is configured to be based on the information obtained by other robots obtained by the acquisition module.
  • the current running status of the robot determines the type of abnormal scheduling; the type of abnormal scheduling is used to characterize the type of mutual obstruction between the target robot and other robots; the scheduling module is configured to adopt the type corresponding to the abnormal scheduling determined by the determination module Scheduling rules are used to schedule the target robot and other robots.
  • an electronic device including: a processor and a memory.
  • the memory is used to store computer-executable instructions; the processor is used to read instructions from the memory and execute the instructions to implement any of the foregoing.
  • a robot scheduling method is used.
  • a computer-readable storage medium is provided, and computer instructions are stored in the computer-readable storage medium.
  • the computer instructions are used to cause the computer to execute any of the aforementioned robot scheduling methods.
  • a computer program product includes a computing program stored on a computer-readable storage medium.
  • the computer program includes program instructions that, when executed by a computer, cause the computer to Execute any of the aforementioned robot scheduling methods.
  • Figure 1 is a flow chart of a robot scheduling method provided by some embodiments of the present disclosure
  • Figure 2 is a flow chart of a method for scheduling a target robot and other robots provided by some embodiments of the present disclosure
  • Figure 3 is a schematic diagram of conflict scheduling in a one-way street area provided by some embodiments of the present disclosure
  • Figure 4 is a schematic diagram of another one-way area conflict scheduling provided by some embodiments of the present disclosure.
  • Figure 5 is a schematic diagram of yet another one-way area conflict scheduling provided by some embodiments of the present disclosure.
  • Figure 6 is a flow chart of a method for determining intersection area conflict scheduling provided by some embodiments of the present disclosure
  • Figure 7 is a flow chart of a method for determining conflict scheduling in non-one-way areas provided by some embodiments of the present disclosure
  • Figure 8 is a schematic diagram of a conflict scheduling provided by some embodiments of the present disclosure.
  • Figure 9 is a schematic diagram of intersection conflict scheduling provided by some embodiments of the present disclosure.
  • Figure 10 is a schematic diagram of co-directional conflict scheduling provided by some embodiments of the present disclosure.
  • Figure 11 is a schematic diagram of a rectangular window extrapolation method provided by some embodiments of the present disclosure.
  • Figure 12 is a flow chart of another method for scheduling a target robot and other robots provided by some embodiments of the present disclosure
  • Figure 13 is a flow chart of a method for determining deadlock scheduling provided by some embodiments of the present disclosure
  • Figure 14 is a flow chart of another method for scheduling a target robot and other robots provided by some embodiments of the present disclosure.
  • Figure 15 is a schematic structural diagram of a robot scheduling device provided by some embodiments of the present disclosure.
  • Figure 16 is a schematic structural diagram of an electronic device provided by some embodiments of the present disclosure.
  • a centralized scheduling solution can be used.
  • a centralized server is preset in the warehousing system, and the centralized server collects all robots related data, and process and analyze the relevant data to obtain the processing results.
  • the robots are uniformly scheduled based on the processing results and the driving route is planned for the robots.
  • Each robot only needs to perform the corresponding tasks according to the task instructions issued by the centralized server.
  • a centralized server needs to process and analyze the relevant data of all robots, making scheduling multiple robots inefficient.
  • the centralized server fails, it will affect the scheduling process of the entire robot cluster and paralyze the entire scheduling system.
  • flexible deployment of on-site implementation is not easily simplified using a centralized server.
  • embodiments of the present disclosure propose a robot scheduling method and device.
  • the target robot can schedule itself and other robots based on the current operating status. Therefore, there is no need to deploy a centralized server to uniformly schedule all robots in the robot cluster.
  • the target robot only needs to process and analyze the current operating status of other robots within its communication range. That is to say, the target robot only needs to process and analyze the current operating status of some robots in the robot cluster, so as to realize the scheduling of the target robot and other robots, which can improve the efficiency of robot scheduling when the number of robots is large.
  • Figure 1 is a flow chart of a robot scheduling method provided by some embodiments of the present disclosure.
  • the scheduling method can be applied to any robot in the robot cluster.
  • the following embodiments take the application of this scheduling method to a target robot as an example for illustrative description. As shown in Figure 1, the method includes the following steps:
  • Step 102 Obtain the current running status of other robots.
  • the target robot is any robot in the robot cluster
  • the other robots include at least one robot in the robot cluster except the target robot
  • the other robots are robots within the communication range of the target robot.
  • the other robots can be some of the robots in the robot cluster except the target robot, or they can be all the robots in the robot cluster except the target robot.
  • the embodiment of the present disclosure does not limit the number of other robots, and the number of other robots is related to the communication range of the target robot.
  • the communication range of the target robot can be a 5-meter radius centered on the target robot, and the robots within the 5-meter range are other robots.
  • the target robot can receive the current operating status of other robots broadcast by other robots within the communication range.
  • the embodiment of the present disclosure does not limit the size of the communication range of the target robot.
  • the communication range of the target robot is a range with a radius of 5 meters as an example for exemplary explanation. In practical applications, the communication range of the target robot can also be configured by the user.
  • the current operating status is used to represent the operating information generated by other robots during operation.
  • the current operating status may include operating information such as the current position, current operating speed, current operating path, and direction of the operating path of other robots.
  • the embodiments of the present disclosure do not limit the type of information included in the current operating state, and the current operating state may also include other types of operating information.
  • the target robot obtains the current running status of other robots including: the target robot receives the current running status of the other robot sent by the other robot.
  • the communication methods between the target robot and other robots include but are not limited to wireless network communication, Bluetooth communication and other communication methods.
  • the target robot is Robot 1
  • Robot 2 and Robot 3 are located within a radius of 5 meters centered on Robot 1 (that is, Robot 2 and Robot 3 are other robots)
  • Robot 1 can receive the robot broadcast by Robot 2. 2's current operating status, and the current operating status of robot 3 broadcast by receiving robot 3.
  • Step 104 Determine the type of abnormal scheduling based on the current operating status of other robots.
  • the type of abnormal scheduling is used to characterize the type of mutual obstruction between the operation processes of the target robot and other robots.
  • the types of abnormal scheduling may include conflict scheduling and deadlock scheduling, and may also include other types of abnormal scheduling, which are not limited in this embodiment of the disclosure.
  • conflict scheduling is used to characterize the intersection points between the running paths of the target robot and other robots.
  • Deadlock scheduling is used to characterize that the current running status of the target robot and the current running status of other robots are in an abnormal state. For example, the current running speeds of the target robot and other robots are in an abnormal state.
  • the type of abnormal scheduling is determined to be conflict scheduling. That is, when the running paths of other robots intersect with the running paths of the target robot, the running processes of the target robot and other robots will hinder each other, so the type of abnormal scheduling can be determined to be conflict scheduling.
  • the type of abnormal scheduling is determined to be deadlock scheduling.
  • the target robot and other robots in the deadlock area cannot move normally according to the preset running path, so that the target robot and other robots may occupy each other's running path. This creates a state of mutual obstruction.
  • Step 106 Use the scheduling rules corresponding to the type of abnormal scheduling to schedule the target robot and/or other robots.
  • corresponding scheduling rules are set in advance according to the characteristics of different abnormal scheduling types, so that the target robot is in a waiting state, re-plans the path for the target robot, follows other robots, slows down to the right, or makes the target robot other robots. Replan the path to achieve scheduling of the target robot and other robots. This can also quickly determine the scheduling rules corresponding to the type of abnormal scheduling, thereby improving the efficiency of robot scheduling.
  • the target robot obtains the current operating status of other robots within its communication range, and can schedule itself and/or other robots based on the current operating status. Due to the robot scheduling method provided by the present disclosure, each robot in the robot cluster performs scheduling without the need to deploy a centralized server to uniformly schedule all robots in the robot cluster, which can improve the ease of implementation of on-site robot dispatching. Moreover, when scheduling, the target robot only needs to process and analyze the current operating status of other robots within its communication range (that is, the target robot only needs to process and analyze the current operating status of some robots in the robot cluster), so in When the number of robots is large, the efficiency of robot scheduling can be improved, and the complexity of the scheduling algorithm will not increase as the number of robots increases.
  • conflict schedules in the abnormal schedule type may include one-way area conflict schedules, intersection area conflict schedules, and non-one-way area conflict schedules.
  • Figure 2 is a flow chart of a method for scheduling a target robot and other robots provided by some embodiments of the present disclosure. As shown in Figure 2, when the conflict scheduling is conflict scheduling in a one-way area, the method includes the following steps:
  • Step 202 If it is determined that other robots are inside the preset one-way area and the preset target points of other robots are outside the preset one-way area, then based on the preset running path information of the target robot and the current running status of other robots , schedule the target robot.
  • the preset one-way area refers to a road whose width only allows one robot to pass.
  • the preset one-way street area may be a dynamic one-way street, that is, no direction markings are provided.
  • the preset one-way area can be edited and generated on the map in advance by the user based on the map built by the robot.
  • the target robot is a robot outside the preset one-way area, and the target robot wants to enter the preset Take one-way areas as an example. If the target robot determines that other robots are inside the preset one-way area, and the other robot's preset target point is outside the preset one-way area, and based on the target robot's preset running path information and the current running status of other robots, If it is determined that the running path direction of the target robot is opposite to the running path direction of other robots, the target robot is controlled to be in a waiting state. For example, the target robot can wait outside the preset one-way street area to avoid conflict with other robots in the preset one-way street.
  • the target robot is denoted as A
  • the preset target point of the target robot is denoted as A1 (not shown in Figure 3).
  • the connecting line between A and A1 is the preset running path of the target robot A, and the arrow indicates the operation.
  • the other robot is marked as B
  • the target point of the other robot is marked as B1.
  • the connecting line between B and B1 is the preset running path of the other robot B, and the arrow indicates the direction of the running path.
  • Figure 3 is a schematic diagram of conflict scheduling in a one-way street area provided by some embodiments of the present disclosure.
  • other robot B is inside the preset one-way street area, and the target point, denoted as B1, is outside the preset one-way street area.
  • the target robot A is outside the preset one-way area.
  • the position of the preset target point A1 is not limited here. It can be inside the preset one-way area or outside the preset one-way area. Therefore, it is not shown in Figure 3. Shows.
  • Target robot A is about to enter the preset one-way area, and target robot A determines that the direction of the target robot's running path is opposite to the direction of the running paths of other robots.
  • target robot A If target robot A enters the preset one-way area, target robot A and other robot B will conflict. Therefore, the target robot A can wait at the intersection in the preset one-way area, that is, the target robot A is in a waiting state.
  • the path shown by the dotted line in Figure 3 is the running path of target robot A after the scheduling conflict is resolved. That is, target robot A can run to the intersection in the preset one-way area according to its original running path and wait.
  • the target robot is controlled to follow the other robots.
  • Figure 4 is a schematic diagram of another one-way area conflict scheduling provided by some embodiments of the present disclosure.
  • the target robot A is outside the preset one-way area.
  • the position of the preset target point A1 is not limited here (A1 is not shown in Figure 4).
  • the target robot A wants to enter the preset one-way area. , it can be determined that the running path direction of the target robot is the same as the running path direction of other robots. At this time, target robot A can follow other robot B to run.
  • the running speed of target robot A may be less than or equal to the running speed of other robot B to avoid collision between target robot A and other robot B.
  • Step 204 If it is determined that other robots are inside the preset one-way street area and the target points of other robots are inside the preset one-way street area, the target robot re-plans its path and moves based on the new path.
  • the target robot can set the target points of other robots as virtual obstacles, re-plan the path for the target robot, and move based on the new path, so that the target robot can bypass the target points of other robots and avoid the target robot. Will conflict with other robots.
  • Figure 5 is a schematic diagram of yet another one-way area conflict scheduling provided by some embodiments of the present disclosure.
  • the target point B1 of other robots is inside the preset one-way street area, and the target robot A is outside the preset one-way street area.
  • the position of the preset target point A1 is between the target point B1 of other robots.
  • target robot A wants to enter the preset one-way area. If the target robot A travels according to the original running path (the path shown by the gray solid line from the target robot A to the preset target point A1 in Figure 5), then the target robot A will conflict with other robots B.
  • target robot A can set the target point B1 of other robot B as a virtual obstacle, re-plan a new path for target robot A, and move based on the new path.
  • the path shown by the gray dotted line from the target robot A to the preset target point A1 in Figure 5 is the running path of the target robot A after the scheduling conflict is resolved, that is, the new path of the target robot A after re-planning.
  • Target robot A When traveling along this new path, the target point B1 of other robot B can be bypassed, so target robot A will not conflict with other robot B.
  • targeted scheduling rules are adopted to respond to conflicting dispatches that occur in the preset one-way area, which can effectively solve the situation of conflicting dispatch in the preset one-way area, thereby improving the efficiency of dispatching robots.
  • Figure 6 is a flow chart of a method for determining intersection area conflict scheduling provided by some embodiments of the present disclosure. As shown in Figure 6, the method includes the following steps:
  • Step 602 Determine the number of all robots within the preset intersection area based on the current operating status of other robots.
  • Step 604 If the number of robots is greater than or equal to the preset number threshold, determine the type of abnormal scheduling to be intersection area conflict scheduling.
  • intersection area conflict scheduling means that at intersections, without control and scheduling, robots can easily cause congestion or even deadlock, thus affecting operating efficiency.
  • the intersection area can also be edited and generated by the user on the map built by the robot.
  • the number of all robots within the preset intersection area can be determined based on the current positions of other robots in the current running status.
  • the type of abnormal scheduling is determined to be intersection area conflict scheduling.
  • the embodiments of the present disclosure do not limit the value of the preset quantity threshold.
  • the preset quantity threshold may be preset by the user based on experience.
  • the scheduling rules corresponding to the type of abnormal scheduling are used to schedule the target robot and/or other robots, including: if the target robot is to enter the preset intersection area robot within the range, the target robot is controlled to be in a waiting state, or a path is re-planned for the target robot, and the target robot is controlled to run based on the new path.
  • the robots waiting to enter the preset intersection area can be called robots to be dispatched.
  • the type of abnormal scheduling is intersection area conflict scheduling
  • the robot to be scheduled can wait outside the preset intersection area.
  • the path can also be re-planned and run based on the new path. For example, a route around the preset intersection area can be planned.
  • the target robot is a robot to be scheduled that is to enter the preset intersection area
  • the target robot determines that the type of abnormal scheduling is conflict scheduling in the intersection area
  • the target robot will wait or restart outside the preset intersection area. Plan a path for the target robot.
  • Figure 7 is a flowchart for determining non-one-way road area conflict scheduling provided by an embodiment of the present disclosure.
  • the non-one-way road area conflict scheduling includes any one of opposite conflict scheduling, same-direction conflict scheduling and intersection conflict scheduling. As shown in Figure 7, the method includes the following steps:
  • Step 702 If it is determined based on the preset running path information of the target robot and the current running status of other robots that the angle between the running path of the target robot and the running paths of other robots is within the first preset angle range, then determine The type of abnormal scheduling is conflicting conflict scheduling.
  • Step 704 If based on the preset running path information of the target robot and the current running status of other robots, it is determined that the angle between the running path of the target robot and the running paths of other robots is within the second preset included angle range, then determine The type of exception scheduling is intersection conflict scheduling.
  • Step 706 If it is determined based on the preset running path information of the target robot and the current running status of other robots that the angle between the running path of the target robot and the running paths of other robots is within the third preset included angle range, then determine The type of abnormal scheduling is same-direction conflict scheduling.
  • the minimum included angle value of the first preset included angle range is greater than or equal to the maximum included angle value of the second preset included angle range
  • the minimum included angle value of the second preset included angle range is greater than or equal to the third preset included angle.
  • the maximum angle value of the range does not limit the minimum included angle value and the maximum included angle value corresponding to the first preset included angle range, the second preset included angle range, and the third preset included angle range.
  • the values of the first preset included angle range, the second preset included angle range, and the third preset included angle range may be preset based on experience.
  • the target robot is represented as AGV1
  • other robots are represented as AGV2
  • the arrows represent the running path directions of the target robot and other robots
  • the angle between the running path of the target robot and the running paths of other robots is the running path. The angle between the direction of the path.
  • FIG. 8 is a schematic diagram of mutual conflict scheduling provided by some embodiments of the present disclosure.
  • the first preset included angle range may be set between 150° and 180°.
  • Figure 9 is a schematic diagram of intersection conflict scheduling provided by some embodiments of the present disclosure. As shown in Figure 9, if based on the preset running path information of the target robot and the current running status of other robots, it is determined that the angle between the running path of the target robot and the running paths of other robots is within the second preset angle range , then it is determined that the type of abnormal scheduling is intersection conflict scheduling.
  • the second preset included angle range can be set between 30° and 150°.
  • Figure 10 is a schematic diagram of co-directional conflict scheduling provided by some embodiments of the present disclosure.
  • the third preset angle range can be set between 0° and 30°.
  • the process of determining conflict scheduling between the target robot and other robots may be determined based on the current running speeds of the two robots.
  • a rectangular window extrapolation method can be used.
  • Figure 11 is a schematic diagram of a rectangular window extrapolation method provided by some embodiments of the present disclosure.
  • the connecting lines and arrows respectively represent the running paths and directions of the running paths of the target robot A and other robots B.
  • the target robot A and other robot B can calculate whether the two rectangular windows will overlap by calculating the movement distance based on their current running speed and the preset window extrapolation time. If overlap occurs, it means that the target robot and other robots will conflict in the future.
  • the preset window extrapolation time can be set in advance. For example, it can be set to any length of time from 3s to 5s.
  • each robot in a cluster of robots can be both a target robot and other robots at the same time.
  • AGV1 when AGV1 is the target robot, for AGV1, AGV2 is another robot.
  • AGV1 can determine the type of abnormal scheduling based on the current operating status of AGV2, and adjust AGV1 based on the type of abnormal scheduling. Schedule.
  • AGV2 is the target robot, for AGV2, AGV1 is another robot.
  • AGV2 determines the type of abnormal scheduling based on the current running status of AGV1, and schedules AGV2 according to the type of abnormal scheduling.
  • each robot in the robot cluster can serve as a target robot, it can schedule itself and other robots by obtaining the current operating status of other robots within its communication range. Therefore, there is no need to deploy a centralized server to uniformly schedule all robots in the robot cluster, which can improve the efficiency of robot scheduling when the number of robots is large.
  • Figure 12 is a flow chart of another method for scheduling a target robot and other robots provided by some embodiments of the present disclosure. As shown in Figure 12, the method includes the following steps:
  • Step 1202 If the type of abnormal scheduling is conflicting scheduling, the target robot adopts the first target driving lane and runs at a reduced speed.
  • the first target driving path is a road away from other robots.
  • the first target driving lane is based on the target machine
  • the driving direction of the robot is on the right side of the driving channel.
  • the target robot uses the first target driving lane and runs at a reduced speed
  • the other robots use the second target driving lane (for example, Stay away from the target robot's driving path) and run at a reduced speed.
  • the second target driving lane is a driving lane to the right according to the driving direction of other robots.
  • the target robot and other robots can both implement a right-driving strategy, and at the same time, speed limit operation can be performed in the conflict area to avoid conflicts between the target robot and other robots.
  • AGV1 drives to the right; when AGV2 determines that there will be a conflict with AGV1, AGV2 also drives on the right side. Since AGV1 and AGV2 travel in opposite directions, when AGV1 and AGV2 both drive on the right side, conflict between AGV1 and AGV2 can be avoided. In order to further ensure the safe driving of AGV1 and AGV2, AGV1 and AGV2 can reduce their driving speed while driving on the right side.
  • the distance to the intersection point can be calculated based on the current running speed and current position of the target robot and other robots, so that the robot with a larger distance to the intersection point (that is, a farther distance) can In a waiting state.
  • the target robot and other robots can also run at a limited speed to ensure safety during operation.
  • the target robot can wait where it is, or it can wait when it is about to reach the rendezvous point. Wait at the intersection to avoid conflicts with other robots at the intersection.
  • the embodiment of the present disclosure does not limit the waiting time of the target robot.
  • the waiting time may be a preset time, or may be determined based on the distance between the target robot and/or other robots and the intersection point.
  • Step 1206 If the type of abnormal scheduling is co-directional conflict scheduling and the current position of the target robot is behind the current positions of other robots, control the target robot to run at a reduced speed.
  • the robot with the current position behind that is, the robot at the back can run at a limited speed, and the robot at the front can maintain the current operating status. Change.
  • conflict scheduling in non-one-way areas is further divided into opposite conflict scheduling, intersection conflict scheduling and same-way conflict scheduling, and targeted scheduling rules are adopted to respond respectively, which can effectively solve conflicts in non-one-way areas. scheduling situation, thereby improving the efficiency of scheduling robots.
  • Figure 13 is a flow chart of a method for determining deadlock scheduling provided by an embodiment of the present disclosure. As shown in Figure 13, the method includes the following steps:
  • Step 1302 Based on the current operating status of the target robot and the current operating status of other robots, determine the operating speed and current position of the target robot and the operating speed and current position of the other robots.
  • the robot scheduling method provided by the embodiments of the present disclosure is a distributed scheduling method and does not have a global perspective, deadlock scheduling is prone to occur. Therefore, based on the current operating status of the target robot and the current operating status of other robots, Determine the running speed and current position of the target robot, as well as the running speed and current position of other robots, and determine whether deadlock scheduling occurs.
  • the average running speed in the past period of time can be calculated based on the running speed of the target robot and the running speed of other robots, so that it can be determined that the average running speed is less than the preset speed threshold.
  • the preset speed threshold can be preset by the user based on experience.
  • Figure 14 is a flow chart of another method for scheduling a target robot and other robots provided by an embodiment of the present disclosure.
  • the method includes:
  • Step 1402 Determine the scheduling robot from the target robot and other robots.
  • a robot with a higher priority among the target robot and other robots may be determined as the scheduling robot based on the priorities of the target robot and other robots.
  • the priority of the target robot and other robots can be compared, and the robot with a higher priority can be used as the scheduling robot, or a pre-specified robot can be directly used as the scheduling robot.
  • the scheduling robot can also be used to determine the scheduling robot, which is not limited in the embodiments of the present disclosure.
  • the scheduling robot can directly replan the paths of the scheduling robot and other robots without performing step 1402.
  • Step 1404 If the target robot is a scheduling robot, the target robot re-plans the paths of the target robot and other robots.
  • the deadlock resolving process can be entered.
  • the scheduling robot can be determined from the target robot where deadlock scheduling occurs and other robots.
  • the scheduling robot can obtain the current running status and target points of all robots where deadlock scheduling occurs, and then perform unified centralized operations on these robots.
  • Path planning thereby sending the planned new path to the corresponding robot. After these robots receive the new path, they can start following that new path.
  • this part of the robot that is subject to deadlock scheduling can also switch its state to a normal navigation state after leaving the deadlock area.
  • robot 1 can determine the scheduling of robot 1 based on robot 1, robot 2 and robot 3. robot. Therefore, robot 1 can be used as a scheduling robot to re-plan paths for robot 1, robot 2 and robot 3.
  • Step 1406 Send the new path to other robots so that other robots can run based on the new path.
  • robot 1 taking the path replanned by robot 1 for robot 2 as path X, and the path replanned for robot 3 as path Y, robot 1 can broadcast path X and path Y, and path X carries robot identification 2, Path Y carries robot identification 3.
  • Robot 2 receives the new path broadcast by robot 1, and determines the new path of robot 2 as path X based on the robot identification, and robot 2 runs according to path X.
  • Robot 3 receives the new path broadcast by robot 1, and determines the new path of robot 3 as path Y according to the robot identification, and robot 3 runs according to path Y.
  • An embodiment of the present disclosure also provides a robot scheduling device 1500 for executing the robot scheduling method in the foregoing embodiment.
  • the device includes: an acquisition module 1501, a determination module 1502 and a scheduling module 1503.
  • the device may also include other more or less units/modules, such as a storage unit, a sending unit, etc.
  • the acquisition module 1501 is configured to acquire the current operating status of other robots; the other robots consist of at least one robot in the robot cluster except the target robot, and the other robots are machines within the communication range of the target robot.
  • the current operating status of a robot is used to represent the operating information generated by other robots during their operation.
  • the determination module 1502 is configured to determine the type of abnormal scheduling based on the current operating status of other robots acquired by the acquisition module 1501; the type of abnormal scheduling is used to characterize the type of mutual obstruction between the running processes of the target robot and other robots.
  • the conflict scheduling in the abnormal scheduling type includes intersection area conflict scheduling, and the above-mentioned determination module 1502 is configured to determine the number of all robots within the preset intersection area based on the current operating status of other robots; If the number of robots is greater than or equal to the preset quantity threshold, the type of abnormal scheduling is determined to be intersection area conflict scheduling.
  • the conflict scheduling in the abnormal scheduling type includes non-one-way area conflict scheduling, and the non-one-way area conflict scheduling includes any one of opposing conflict scheduling, same-direction conflict scheduling, and intersection conflict scheduling.
  • the above-mentioned determination module 1502 It is also configured that if based on the preset running path information of the target robot and the current running status of other robots, it is determined that the angle between the running path of the target robot and the running paths of other robots is within the first preset angle range, then It is determined that the type of abnormal scheduling is opposing conflict scheduling; if based on the preset running path information of the target robot and the current running status of other robots, it is determined that the angle between the running path of the target robot and the running paths of other robots is within the second preset Within the included angle range, the type of abnormal scheduling is determined to be intersection conflict scheduling; if based on the preset running path information of the target robot and the current running status of other robots, the intersection between the running path of the target robot and the running paths of other
  • the type of abnormal scheduling is determined to be co-directional conflict scheduling; where the minimum angle value of the first preset angle range is greater than or equal to the maximum angle of the second preset angle range value, the minimum included angle value of the second preset included angle range is greater than or equal to the maximum included angle value of the third preset included angle range.
  • the type of abnormal scheduling is deadlock scheduling.
  • the above-mentioned determination module 1502 is also configured to determine the running speed and current position of the target robot based on the current running status of the target robot and the current running status of other robots, and other The running speed and current position of the robot; if the running speed of the target robot and the running speed of other robots are both less than the preset speed threshold, and based on the current position of the target robot and the current positions of other robots, it is determined that neither the target robot nor the other robots have arrived. If the corresponding preset target point is determined, the type of abnormal scheduling is deadlock scheduling.
  • the scheduling module 1503 is configured to schedule the target robot and/or other robots using scheduling rules corresponding to the type of abnormal scheduling determined by the determining module 1502 .
  • the conflict scheduling in the abnormal scheduling type includes one-way area conflict scheduling.
  • the above-mentioned scheduling module 1503 is configured to if it is determined that other robots are inside the preset one-way area and the preset target points of other robots are within the preset one-way area. Assuming that it is outside the one-way area, the target robot is scheduled based on the preset running path information of the target robot and the current running status of other robots; if it is determined that other robots are inside the preset one-way area, and the target points of other robots Inside the preset one-way area, the target robot re-plans its path and moves based on the new path.
  • the above-mentioned scheduling module 1503 is also configured to control if it is determined that the direction of the target robot's running path is opposite to that of other robots based on the preset running path information of the target robot and the current running status of other robots.
  • the target robot is in a waiting state; if based on the target robot's preset running path information and the current running status of other robots, it is determined that the target robot's running path direction is the same as the running path direction of other robots, then the target robot is controlled to follow the other robots.
  • the above-mentioned scheduling module 1503 is also configured to put the target robot and the robots to be scheduled among other robots in a waiting state, or to re-plan the path and run based on the new path; wherein the robot to be scheduled is to enter the preset state.
  • Crossroad area-wide robot is also configured to put the target robot and the robots to be scheduled among other robots in a waiting state, or to re-plan the path and run based on the new path; wherein the robot to be scheduled is to enter the preset state.
  • the above-mentioned scheduling module 1503 is also configured such that if the type of abnormal scheduling is conflicting conflict scheduling, the target robot adopts the first target driving lane and runs at a reduced speed; wherein the first target driving lane is away from other robots. road; if the type of abnormal scheduling is intersection conflict scheduling, calculate the distance between the target robot and other robots to the intersection point respectively. If the distance between the target robot and the intersection point is greater than or equal to the distance between other robots and the intersection point, control the target robot In the waiting state; if the type of abnormal scheduling is same-direction conflict scheduling and the target robot is positioned behind other robots, the target robot is controlled to run at a reduced speed.
  • the above-mentioned scheduling module 1503 is also configured to determine the scheduling robot from the target robot and other robots; if the target robot is the scheduling robot, the target robot re-plans the path of the target robot and other robots; sends new paths to other robots. path to enable other robots to run based on the new path.
  • the types of abnormal scheduling include conflict scheduling and deadlock scheduling.
  • Conflict scheduling is used to characterize the intersection between the running paths of the target robot and other robots; deadlock scheduling is used to characterize the current running status of the target robot and other The current running status of the robot is abnormal.
  • An embodiment of the present disclosure also provides an electronic device, which may be the server in the foregoing embodiment, and is used to implement all or part of the steps of the foregoing robot scheduling method.
  • FIG. 16 it is a schematic structural diagram of an electronic device provided by an embodiment of the present disclosure. It includes: at least one processor, memory and at least one interface. In addition, it may also include a communication bus for connecting the above components.
  • At least one processor may be a CPU or a processing chip, used to read and execute computer program instructions stored in the memory, so that at least one processor can execute the method flow in each of the foregoing embodiments.
  • the memory can be non-transitory memory (non-transitory memory), which can include volatile memory, such as high-speed random access memory (Random Access Memory, RAM), or can also include non-volatile memory (non-volatile memory) , such as at least one disk storage.
  • volatile memory such as high-speed random access memory (Random Access Memory, RAM)
  • non-volatile memory non-volatile memory
  • At least one interface includes an input and output interface, and a communication interface.
  • the communication interface may be a wired or wireless interface, thereby realizing communication connections between the electronic device and other devices.
  • Input and output interfaces can be used to connect peripherals, such as displays, keyboards, etc.
  • the memory stores computer-readable program instructions.
  • the processor reads and executes the program instructions in the memory, one of the robot scheduling methods in the foregoing embodiments can be implemented.
  • embodiments of the present disclosure also provide a computer program product for storing computer-readable program instructions.
  • the instructions are executed by a processor, one of the robot scheduling methods in the foregoing embodiments can be implemented.
  • logic and/or steps represented in the flowcharts or otherwise described herein, for example, may be considered a sequenced list of executable instructions for implementing the logical functions, and may be embodied in any computer-readable medium, For use by, or in combination with, instruction execution systems, devices or devices (such as computer-based systems, systems including processors or other systems that can fetch instructions from and execute instructions from the instruction execution system, device or device) or equipment.
  • a "computer-readable medium” may be any device that can contain, store, communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
  • Non-exhaustive list of computer readable media include the following: electrical connections with one or more wires (electronic device), portable computer disk cartridges (magnetic device), random access memory (RAM), Read-only memory (ROM), erasable and programmable read-only memory (EPROM or flash memory), fiber optic devices, and portable compact disc read-only memory (CDROM).
  • wires electronic device
  • portable computer disk cartridges magnetic device
  • RAM random access memory
  • ROM Read-only memory
  • EPROM or flash memory erasable and programmable read-only memory
  • CDROM portable compact disc read-only memory
  • the computer-readable medium may even be paper or other suitable medium on which the program may be printed, as the program may be printed, for example, by optical scanning of the paper or other medium, followed by editing, interpretation, or in other suitable manner if necessary Processing to obtain a program electronically and then store it in computer memory. It should be understood that various parts of the present disclosure may be implemented in hardware, software, firmware, or combinations thereof.
  • various steps or methods may be implemented in software or firmware stored in a memory and executed by a suitable instruction execution system.
  • a logic gate circuit with a logic gate circuit for implementing a logic function on a data signal.
  • Discrete logic circuits application specific integrated circuits with suitable combinational logic gates, programmable gate arrays (PGA), field programmable gate arrays (FPGA), etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Automation & Control Theory (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Transportation (AREA)
  • Manipulator (AREA)

Abstract

一种机器人调度方法和装置,其中,该方法包括:目标机器人(A)获取其他机器人(B)的当前运行状态;其他机器人(B)包括机器人集群中除目标机器人(A)以外的至少一个机器人,且其他机器人(B)为处于目标机器人(A)通信范围内的机器人,当前运行状态用于表征其他机器人(B)在运行过程中产生的运行信息;基于其他机器人(B)的当前运行状态,确定异常调度的类型;异常调度的类型用于表征目标机器人(A)和其他机器人(B)的运行过程相互阻碍的类型;采用与异常调度的类型对应的调度规则,对目标机器人(A)和/或其他机器人(B)进行调度。

Description

机器人调度方法和装置
本申请要求于2022年09月09日提交的申请号为202211106144.6的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本公开涉及机器人导航技术领域,尤其涉及一种机器人调度方法和装置。
背景技术
随着人工智能技术的发展,移动机器人取得了广泛的关注。在一些实际使用场景中,例如,仓储物流、服务配送等场景下,通常需要多个机器人协同完成任务,从而不仅能够降低人力成本,还能够提高执行任务的效率。
发明内容
本公开实施例提供了一种机器人调度方法和装置。
根据本公开一些实施例,提供一种机器人调度方法,应用于机器人集群中的任一目标机器人,该方法包括:首先,获取其他机器人的当前运行状态;其他机器人包括机器人集群中除目标机器人以外的至少一个机器人,且其他机器人为处于目标机器人通信范围内的机器人,当前运行状态用于表征其他机器人在运行过程中产生的运行信息。然后,基于其他机器人的当前运行状态,确定异常调度的类型;异常调度的类型用于表征目标机器人和其他机器人的运行过程相互阻碍的类型。最后,采用与异常调度的类型对应的调度规则,对目标机器人和/或其他机器人进行调度。
在一些实施例中,异常调度的类型包括冲突调度和死锁调度,其中,冲突调度用于表征目标机器人和其他机器人的运行路径存在交点;死锁调度用于表征目标机器人的当前运行状态和其他机器人的当前运行状态均处于异常状态。
在一些实施例中,异常调度类型中的冲突调度包括单行道区域冲突调度,采用与异常调度的类型对应的调度规则,对目标机器人和/或其他机器人进行调度,包括:若确定其他机器人在预设单行道区域的内部,且其他机器人的预设目标点在预设单行道区域的外部,则基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,对目标机器人进行调度;若确定其他机器人在预设单行道区域的内部,且其他机器人的目标点在预设单行道区域的内部,则目标机器人重新规划路径,并基于新的路径进行移动。
在一些实施例中,基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,对目标机器人进行调度,包括:若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径方向与其他机器人的运行路径方向相反,则控制目标机器人处于等待状态;若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径方向与其他机器人的运行路径方向相同,则控制目标机器人跟随其他机器人运行。
在一些实施例中,上述目标机器人重新规划路径,并基于新的路径进行移动,包括:目标机器人将其他机器人的目标点设置为虚拟障碍,重新为目标机器人规划路径,并基于新的路径进行移动,以绕过其他机器人的目标点。
在一些实施例中,上述异常调度类型中的冲突调度包括十字路口区域冲突调度,基于其他机器人的当前运行状态,确定异常调度的类型,包括:基于其他机器人的当前运行状态,确定处于预设十字路口区域范围内的所有机器人的数量;若机器人的数量大于或等于预设数量阈值,则确定异常调度的类型为十字路口区域冲突调度。
在一些实施例中,采用与异常调度的类型对应的调度规则,对目标机器人和/或其他机器人进行调度,包括:若目标机器人为待进入预设十字路口区域范围的机器人,则控制目标机器人处于等待状态,或,重新为所述目标机器人规划路径,并控制所述目标机器人基于新的路径运行。
在一些实施例中,异常调度类型中的冲突调度包括非单行道区域冲突调度,非单行道区域冲突调度包括相向冲突调度、同向冲突调度和交汇冲突调度中的任一种,基于其他机器人的当前运行状态,确定异常调度的类型,包括:若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第一预设夹角范围内,则确定异常调度的类型为相向冲突调度;若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第二预设夹角范围内,则确定异常调度的类型为交汇冲突调度;若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第三预设夹角范围内,则确定异常调度的类型为同向冲突调度;其中,第一预设夹角范围的最小夹角值大于或等于第二预设夹角范围最大夹角值,第二预设夹角范围的最小夹角值大于或等于第三预设夹角范围的最大夹角值。
在一些实施例中,上述采用与异常调度的类型对应的调度规则,对目标机器人和其他机器人进行调度,包括:若异常调度的类型为相向冲突调度,则目标机器人采用第一目标行驶道且降低速度运行;其中,第一目标行驶道为远离其他机器人的道路;若异常调度的类型为交汇冲突调度,则分别计算目标机器人和其他机器人到交汇点的距离;若目标机器人到交汇点的距离大于或等于其他机器人到所述交汇点的距离,则控制目标机器人处于等待状态;若异常调度的类型为同向冲突调度,且目标机器人的当前位置较其他机器人的当前位置靠后,则控制目标机器人降低速度运行。
在一些实施例中,异常调度的类型为死锁调度,上述基于其他机器人的当前运行状态,确定异常调度的类型,包括:基于目标机器人的当前运行状态和其他机器人的当前运行状态,确定目标机器人的运行速度和当前位置、及其他机器人的运行速度和当前位置;若目标机器人的运行速度和其他机器人的运行速度均小于预设速度阈值,且基于目标机器人的当前位置和其他机器人的当前位置,确定目标机器人及其他机器人均未到达对应的预设目标点,则确定异常调度的类型为死锁调度。
在一些实施例中,上述采用与异常调度的类型对应的调度规则,对目标机器人和其他机器人进行调度,包括:若目标机器人为调度机器人,则通过该调度机器人对目标机器人和其他机器人重新规划路径,并向其他机器人发送新的路径,以使其他机器人基于新的路径运行。
在一些实施例中,上述方法还包括根据目标机器人和其他机器人的优先级,将目标机器人和其他机器人中优先级较高的机器人确定为调度机器人。
根据本公开一些实施例,提供一种机器人调度装置,该装置包括:获取模块,被配置为获取其他机器人的当前运行状态;其他机器人由机器人集群中除目标机器人以外的至少一个机器人组成,且其他机器人为处于目标机器人通信范围内的机器人,当前运行状态用于表征其他机器人在运行过程中产生的运行信息;确定模块,被配置为基于获取模块获取的其他机 器人的当前运行状态,确定异常调度的类型;异常调度的类型用于表征目标机器人和其他机器人的运行过程相互阻碍的类型;调度模块,被配置为采用与确定模块确定的异常调度的类型对应的调度规则,对目标机器人和其他机器人进行调度。
根据本公开一些实施例,提供一种电子设备,包括:处理器和存储器,存储器,用于存储计算机可执行指令;处理器,用于从存储器中读取指令,并执行指令以实现前述任一种机器人调度方法。
根据本公开一些实施例,提供一种计算机可读存储介质,该计算机可读存储介质中存储计算机指令,该计算机指令用于使该计算机执行前述任一种机器人调度方法。
根据本公开一些实施例,提供一种计算机程序产品,该计算机程序产品包括存储在计算机可读存储介质上的计算程序,该计算机程序包括程序指令,当该程序指令被计算机执行时,使该计算机执行前述任一种机器人调度方法。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本公开一些实施例提供的一种机器人调度方法的流程图;
图2为本公开一些实施例提供的一种对目标机器人和其他机器人进行调度的方法流程图;
图3为本公开一些实施例提供的一种单行道区域冲突调度的示意图;
图4为本公开一些实施例提供的另一种单行道区域冲突调度的示意图;
图5为本公开一些实施例提供的又一种单行道区域冲突调度的示意图;
图6为本公开一些实施例提供的一种确定十字路口区域冲突调度的方法流程图;
图7为本公开一些实施例提供的一种确定非单行道区域冲突调度的方法流程图;
图8为本公开一些实施例提供的一种相向冲突调度的示意图;
图9为本公开一些实施例提供的一种交汇冲突调度的示意图;
图10为本公开一些实施例提供的一种同向冲突调度的示意图;
图11为本公开一些实施例提供的一种矩形窗口外推方法的示意图;
图12为本公开一些实施例提供的另一种对目标机器人和其他机器人进行调度的方法流程图;
图13为本公开一些实施例提供的一种确定死锁调度的方法流程图;
图14为本公开一些实施例提供的又一种对目标机器人和其他机器人进行调度的方法流程图;
图15为本公开一些实施例提供的一种机器人调度装置的结构示意图;
图16为本公开一些实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本公开实施例中的技术方案,并使本公开实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本公开实施例中的技术方案作进一步详细的说明。
通常,在对多个机器人(例如,仓储系统中的机器人)进行调度时,可以采用集中式调度方案。例如,仓储系统中预先设置一个集中式服务器,由该集中式服务器收集所有机器人 的相关数据,并对相关数据进行处理分析得到处理结果。根据该处理结果统一地调度机器人,并为机器人规划行驶路线,每个机器人只需要根据集中式服务器下发的任务指令执行相应的任务即可。然而,由于实际使用场景中机器人的数量较多,集中式服务器需要处理分析所有机器人的相关数据,使得对多个机器人进行调度的效率较低。另外,在集中式服务器发生故障的情况下,将会影响对整个机器人集群的调度过程,使整个调度系统陷入瘫痪。并且,采用集中式服务器也不易于简化现场实施的灵活部署。
为此,本公开实施例提出一种机器人调度方法和装置,目标机器人通过获取处于其通信范围内的其他机器人的当前运行状态,根据当前运行状态可以对自身和其他机器人进行调度。因此不需要部署集中式服务器对机器人集群中的所有机器人进行统一调度,目标机器人只需要对处于其通信范围内的其他机器人的当前运行状态进行处理分析。也即目标机器人只需要对机器人集群中的部分机器人的当前运行状态进行处理分析,从而实现对目标机器人和其他机器人的调度,能够在机器人数量较多的情况下,提高机器人调度的效率。另外,通过基于其他机器人的当前运行状态确定异常调度的类型,采用与异常调度类型对应的调度规则对目标机器人和其他机器人进行调度,从而在调度过程中发生异常调度时,能够及时应对该异常,进一步提高了机器人调度的效率。
以下结合附图对本公开实施例提供的技术方案进行详细说明。图1为本公开一些实施例提供的一种机器人调度方法的流程图,该调度方法可以应用于机器人集群中的任一机器人。下述实施例以该调度方法应用于目标机器人为例进行示例性说明。如图1所示,该方法包括以下步骤:
步骤102、获取其他机器人的当前运行状态。
其中,目标机器人为机器人集群中的任一机器人,其他机器人包括机器人集群中除目标机器人以外的至少一个机器人,且其他机器人为处于目标机器人通信范围内的机器人。例如,其他机器人可以是机器人集群中除目标机器人以外的部分机器人,也可以是机器人集群中除目标机器人以外的所有机器人。本公开实施例对于其他机器人的数量不作限定,该其他机器人的数量与目标机器人的通信范围有关。
示例性地,目标机器人的通信范围可以为以目标机器人为中心的半径5米范围,在5米范围内的机器人为其他机器人。目标机器人可以在该通信范围内接收其他机器人广播的该其他机器人的当前运行状态。本公开实施例对于目标机器人的通信范围的大小不作限定,在此以目标机器人的通信范围为半径5米的范围为例进行示例性说明。实际应用中,该目标机器人的通信范围也可由用户配置。
当前运行状态用于表征其他机器人在运行过程中产生的运行信息。示例性地,当前运行状态可以包括其他机器人的当前位置、当前运行速度、当前运行路径和运行路径的方向等运行信息。本公开实施例对于当前运行状态包括的信息类型不作限定,该当前运行状态也可以包括其他类型的运行信息。
示例性地,目标机器人获取其他机器人的当前运行状态包括:目标机器人接收其他机器人发送的该其他机器人的当前运行状态。该目标机器人与其他机器人的通信方式包括但不限于无线网络通信、蓝牙通信等通信方式。例如,以目标机器人为机器人1,机器人2和机器人3位于以机器人1为中心的半径5米范围内为例(即机器人2和机器人3为其他机器人),机器人1可以接收机器人2广播的该机器人2的当前运行状态,以及接收机器人3广播的该机器人3的当前运行状态。
步骤104、基于其他机器人的当前运行状态,确定异常调度的类型。
其中,异常调度的类型用于表征目标机器人和其他机器人的运行过程相互阻碍的类型。示例性地,异常调度的类型可以包括冲突调度和死锁调度,也可包括其他类型的异常调度,本公开实施例对此不作限定。其中,冲突调度用于表征目标机器人和其他机器人的运行路径存在交点。死锁调度用于表征目标机器人的当前运行状态和其他机器人的当前运行状态均处于异常状态,例如,目标机器人和其他机器人的当前运行速度处于异常状态。
在一些示例中,若根据当前运行状态中的其他机器人的当前运行路径和运行路径的方向,确定目标机器人和其他机器人的运行路径存在交点,则确定异常调度的类型为冲突调度。即当其他机器人的运行路径与目标机器人的运行路径相交时,该目标机器人和其他机器人的运行过程会相互阻碍,因此可以确定异常调度的类型为冲突调度。
在另一些示例中,若根据当前运行状态中的其他机器人的当前位置和当前速度,确定目标机器人的当前运行状态和其他机器人的当前运行状态处于异常状态,则确定异常调度的类型为死锁调度。当异常调度的类型为死锁调度时,处于死锁区域的目标机器人和其他机器人均无法按照预先设定的运行路径进行正常移动,使得目标机器人和其他机器人之间可能会占用对方的运行路径,从而产生相互阻碍的状态。
步骤106、采用与异常调度的类型对应的调度规则,对目标机器人和/或其他机器人进行调度。
其中,预先根据不同异常调度的类型的特点,设置对应的调度规则,以使目标机器人处于等待状态、重新为目标机器人规划路径、跟随其他机器人行驶、靠右减速运行,或使目标机器人为其他机器人重新规划路径,从而实现对目标机器人和其他机器人的调度。这样还可以快速确定出与异常调度的类型对应的调度规则,从而提高对机器人进行调度的效率。
通过上述方案,目标机器人通过获取处于其通信范围内的其他机器人的当前运行状态,根据当前运行状态可以对自身和/或其他机器人进行调度。由于本公开提供的机器人调度方法,通过机器人集群中的各机器人进行调度,而不需要部署集中式服务器对机器人集群中的所有机器人进行统一调度,可以提高现场调度机器人的实施简便性。并且,目标机器人在进行调度时只需要对处于其通信范围内的其他机器人的当前运行状态进行处理分析(即目标机器人只需要对机器人集群中的部分机器人的当前运行状态进行处理分析),因此在机器人数量较大的情况下,可以提高机器人调度的效率,也不会随机器人数量的增加而增加调度算法的复杂度。另外,通过基于其他机器人的当前运行状态确定异常调度的类型,采用与异常调度类型对应的调度规则对目标机器人和/或其他机器人进行调度,从而在调度过程中发生异常调度时,能够及时应对该异常,进一步提高了机器人调度的效率。
在一些实施例中,异常调度类型中的冲突调度可以包括单行道区域冲突调度、十字路口区域冲突调度和非单行道区域冲突调度。
图2为本公开一些实施例提供的一种对目标机器人和其他机器人进行调度的方法流程图,如图2所示,在冲突调度为单行道区域冲突调度的情况下,该方法包括以下步骤:
步骤202、若确定其他机器人在预设单行道区域的内部,且其他机器人的预设目标点在预设单行道区域的外部,则基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,对目标机器人进行调度。
其中,该预设单行道区域指的是道路宽度尺寸仅允许一台机器人通行的道路。示例性地,预设单行道区域可以是动态单行道,即不作方向标记。预设单行道区域可以由用户根据机器人建好的地图,预先在地图上编辑生成。
在一些示例中,以目标机器人为预设单行道区域外的机器人,且目标机器人欲进入预设 单行道区域为例。若目标机器人确定其他机器人在预设单行道区域的内部,且其他机器人的预设目标点在预设单行道区域的外部,且基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径方向与其他机器人的运行路径方向相反,则控制所述目标机器人处于等待状态。例如,目标机器人可以在预设单行道区域外等待,以避免和预设单行道内的其他机器人发生冲突。
示例性地,目标机器人记做A,目标机器人的预设目标点记做A1(图3中未示出),A与A1之间的连接线为目标机器人A的预设运行路径,箭头表示运行路径的方向。其他机器人记做B,其他机器人的目标点记做B1,B与B1之间的连接线为其他机器人B的预设运行路径,箭头表示运行路径的方向。
图3为本公开一些实施例提供的一种单行道区域冲突调度的示意图。如图3所示,其他机器人B在预设单行道区域的内部,目标点记做B1在预设单行道区域的外部。目标机器人A在预设单行道区域的外部,这里对预设目标点A1的位置不作限定,可以在预设单行道区域的内部,也可以在预设单行道区域的外部,因此图3中未示出。目标机器人A即将进入该预设单行道区域,目标机器人A确定出目标机器人的运行路径方向与其他机器人的运行路径方向是相反的。如果目标机器人A进入该预设单行道区域,那么目标机器人A与其他机器人B会发生冲突。因此目标机器人A可以在预设单行道区域的路口等待,即目标机器人A处于等待状态。图3中虚线所示的路径为解决调度冲突后目标机器人A的运行路径,即目标机器人A可以按照其原来的运行路径运行到预设单行道区域的路口进行等待。
在另一些示例中,若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径方向与其他机器人的运行路径方向相同,则控制目标机器人跟随其他机器人运行。
图4为本公开一些实施例提供的另一种单行道区域冲突调度的示意图。如图4所示,目标机器人A在预设单行道区域的外部,这里对预设目标点A1的位置不作限定(图4中未示出A1),目标机器人A要进入该预设单行道区域,可以确定出目标机器人的运行路径方向与其他机器人的运行路径方向是相同的。此时,目标机器人A可以跟随其他机器人B运行。示例性地,目标机器人A的运行速度可以小于或等于其他机器人B的运行速度,以避免目标机器人A和其他机器人B发生碰撞。
步骤204、若确定其他机器人在预设单行道区域的内部,且其他机器人的目标点在预设单行道区域的内部,则目标机器人重新规划路径,并基于新的路径进行移动。
在一些示例中,目标机器人可以将其他机器人的目标点设置为虚拟障碍,重新为目标机器人规划路径,并基于新的路径进行移动,以使目标机器人能够绕过其他机器人的目标点,避免目标机器人会和其他机器人发生冲突。
图5为本公开一些实施例提供的又一种单行道区域冲突调度的示意图。如图5所示,其他机器人的目标点B1在预设单行道区域的内部,目标机器人A在预设单行道区域的外部,这里对预设目标点A1的位置在其他机器人的目标点B1的左侧,且在预设单行道区域的内部,目标机器人A要进入该预设单行道区域。如果目标机器人A按照原运行路径(如图5中从目标机器人A到预设目标点A1的灰色实线所示的路径)行驶,那么目标机器人A将和其他机器人B发生冲突。为了解决该冲突,目标机器人A可以将其他机器人B的目标点B1设置为虚拟障碍,重新为目标机器人A规划新的路径,并基于新的路径进行移动。
如图5所示,图5中从目标机器人A到预设目标点A1的灰色虚线所示的路径为解决调度冲突后目标机器人A的运行路径,即目标机器人A重新规划后的新的路径。目标机器人A 按照该新的路径行驶时,可以绕过其他机器人B的目标点B1,因此目标机器人A不会和其他机器人B发生冲突。
采用上述方案,对在预设单行道区域内发生的冲突调度采取针对性地调度规则进行应对,可以有效地解决在预设单行道区域发生冲突调度的情况,从而提高调度机器人的效率。
图6为本公开一些实施例提供的一种确定十字路口区域冲突调度的方法流程图,如图6所示,该方法包括以下步骤:
步骤602、基于其他机器人的当前运行状态,确定处于预设十字路口区域范围内的所有机器人的数量。
步骤604、若机器人的数量大于或等于预设数量阈值,则确定异常调度的类型为十字路口区域冲突调度。
其中,十字路口区域冲突调度是指在十字路口处,机器人在不进行管制调度的情况下,容易引发拥堵甚至死锁,从而影响运行效率。十字路口区域也可以由用户在机器人建好的地图上编辑生成。
通过获取其他机器人的当前运行状态,根据当前运行状态中其他机器人的当前位置可以确定出处于预设十字路口区域范围内的所有机器人的数量。在机器人的数量大于或等于预设数量阈值,则确定异常调度的类型为十字路口区域冲突调度。本公开实施例对于预设数量阈值的取值不作限定,在一些示例中,预设数量阈值可以是用户根据经验预先设定的。
在异常调度的类型为十字路口区域冲突调度的情况下,采用与异常调度的类型对应的调度规则,对目标机器人和/或其他机器人进行调度,包括:若目标机器人为待进入预设十字路口区域范围的机器人,则控制目标机器人处于等待状态,或,重新为所述目标机器人规划路径,并控制目标机器人基于新的路径运行。
其中,待进入预设十字路口区域范围的机器人可以称为待调度机器人。在异常调度的类型为十字路口区域冲突调度的情况下,该待调度机器人可以在该预设十字路口区域范围外进行等待。还可以重新规划路径,并基于新的路径运行。例如,可以规划出绕开该预设十字路口区域范围的路径。采用上述方案,可以有效地解决在预设十字路口区域范围发生冲突调度的情况,从而提高调度机器人的效率。
例如,以目标机器人为待进入预设十字路口区域范围的待调度机器人为例,若目标机器人确定异常调度的类型为十字路口区域冲突调度,则目标机器人在该预设十字路口区域外等待或重新为目标机器人规划路径。
图7为本公开实施例提供的一种确定非单行道区域冲突调度的流程图,该非单行道区域冲突调度包括相向冲突调度、同向冲突调度和交汇冲突调度中的任一种。如图7所示,该方法包括以下步骤:
步骤702、若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第一预设夹角范围内,则确定异常调度的类型为相向冲突调度。
步骤704、若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第二预设夹角范围内,则确定异常调度的类型为交汇冲突调度。
步骤706、若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第三预设夹角范围内,则确定异常调度的类型为同向冲突调度。
其中,第一预设夹角范围的最小夹角值大于或等于第二预设夹角范围最大夹角值,第二预设夹角范围的最小夹角值大于或等于第三预设夹角范围的最大夹角值。本公开实施例对于第一预设夹角范围、第二预设夹角范围和第三预设夹角范围对应的最小夹角值和最大夹角值不作限定。在一些示例中,第一预设夹角范围、第二预设夹角范围和第三预设夹角范围的取值可以根据经验预先设定。
示例性地,以目标机器人表示为AGV1,其他机器人表示为AGV2,箭头表示目标机器人和其他机器人的运行路径方向为例,目标机器人的运行路径与其他机器人的运行路径之间的夹角即为运行路径的方向的夹角。
图8为本公开一些实施例提供的一种相向冲突调度的示意图。如图8所示,若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第一预设夹角范围内,则确定异常调度的类型为相向冲突调度。示例性地,第一预设夹角范围可以设定为150°-180°之间。
图9为本公开一些实施例提供的一种交汇冲突调度的示意图。如图9所示,若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第二预设夹角范围内,则确定异常调度的类型为交汇冲突调度。示例性地,第二预设夹角范围可以设定为30°-150°之间。
图10为本公开一些实施例提供的一种同向冲突调度的示意图。如图10所示,若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第三预设夹角范围内,则确定异常调度的类型为同向冲突调度。示例性地,第三预设夹角范围可以设定为0°-30°之间。
在一些示例中,判断目标机器人和其他机器人发生冲突调度的过程可以是根据两个机器人的当前运行速度确定的。例如,可以采用矩形窗口外推方法。图11为本公开一些实施例提供的一种矩形窗口外推方法的示意图,如图11所示,连接线和箭头分别表示目标机器人A和其他机器人B的运行路径和运行路径的方向。目标机器人A和其他机器人B可以根据自身的当前运行速度与预设窗口外推时间,通过计算移动距离来计算两个矩形窗口是否会发生交叠。若会发生交叠,则说明目标机器人和其他机器人在未来一段时间内会发生冲突。其中,预设窗口外推时间可以预先设定,示例性地,可以设置为3s-5s中任意时长。
在一些实施例中,机器人集群中的每个机器人可以同时是目标机器人和其他机器人。例如,如图8-图10所示,AGV1为目标机器人时,对于AGV1而言,AGV2为其他机器人,AGV1可以根据AGV2的当前运行状态,确定异常调度的类型,并根据异常调度的类型对AGV1进行调度。AGV2为目标机器人时,对于AGV2而言,AGV1为其他机器人,AGV2根据AGV1的当前运行状态,确定异常调度的类型,并根据该异常调度的类型对AGV2进行调度。本公开实施例提供的机器人调度方法,由于机器人集群中的每个机器人都可以作为目标机器人,通过获取其通信范围内的其他机器人的当前运行状态,以对自身和其他机器人进行调度。因此不需要部署集中式服务器对机器人集群中的所有机器人进行统一调度,能够在机器人数量较多的情况下,提高机器人调度的效率。
图12为本公开一些实施例提供的另一种对目标机器人和其他机器人进行调度的方法流程图,如图12所示,该方法包括以下步骤:
步骤1202、若异常调度的类型为相向冲突调度,则目标机器人采用第一目标行驶道且降低速度运行。
其中,第一目标行驶道为远离其他机器人的道路。例如,第一目标行驶道为按照目标机 器人行驶方向靠右侧的行驶通道。在一些示例中,若异常调度的类型为相向冲突调度,为了避免目标机器人和其他机器人发生冲突,则目标机器人采用第一目标行驶道且降低速度运行,其他机器人采用第二目标行驶道(如,远离目标机器人的行驶道)且降低速度运行。例如,第二目标行驶道为按照其他机器人行驶方向靠右侧的行驶通道。
示例性地,在发生相向冲突调度的情况下,目标机器人和其他机器人可以均执行靠右行驶的策略,同时可以在发生冲突的区域内进行限速运行,以避免目标机器人和其他机器人发生冲突。
例如,如图8所示,以AGV1和AGV2的异常调度的类型为相向冲突调度为例,AGV1确定要和AGV2发生相向冲突时,AGV1靠右侧行驶;AGV2确定要和AGV1发生相向冲突时,AGV2也靠右侧行驶。由于AGV1和AGV2的行驶方向相反,因此当AGV1和AGV2均靠右侧行驶时,可以避免AGV1和AGV2发生冲突。为了进一步确保AGV1和AGV2的安全行驶,AGV1和AGV2靠右侧行驶的同时可以降低行驶速度。
步骤1204、若异常调度的类型为交汇冲突调度,则分别计算目标机器人和其他机器人到交汇点的距离;若目标机器人到交汇点的距离大于或等于其他机器人到交汇点的距离,则控制目标机器人处于等待状态。
其中,在发生交汇冲突调度的情况下,可以分别根据目标机器人和其他机器人的当前运行速度以及当前位置计算到交汇点的距离,从而到交汇点的距离较大(即距离较远)的机器人可以处于等待状态。另外,目标机器人和其他机器人还可以进行限速运行,以保证运行时的安全性。
示例性地,在目标机器人和其他机器人发生交汇冲突的情况下,若目标机器人到交汇点的距离较其他机器人到交汇点的距离远,则目标机器人可以在原地等待,也可以在即将到达交汇点处等待,以避免和其他机器人在交汇点处发生冲突。本公开实施例对于目标机器人的等待时长不作限定,该等待时长可以为预设时长,也可根据目标机器人和/或其他机器人与交汇点之间的距离确定。
步骤1206、若异常调度的类型为同向冲突调度,且目标机器人的当前位置较其他机器人的当前位置靠后,则控制目标机器人降低速度运行。
其中,在发生同向冲突调度的情况下,可以根据目标机器人和其他机器人的当前位置,当前位置靠后的机器人,即处于后面的机器人进行限速运行,处于前面的机器人可以保持当前运行状态不变。
采用上述方案,将非单行道区域冲突调度进一步细致划分为相向冲突调度、交汇冲突调度和同向冲突调度,并分别采取针对性地调度规则进行应对,可以有效地解决在非单行道区域发生冲突调度的情况,从而提高调度机器人的效率。
图13为本公开实施例提供的一种确定死锁调度的方法流程图,如图13所示,该方法包括以下步骤:
步骤1302、基于目标机器人的当前运行状态和其他机器人的当前运行状态,确定目标机器人的运行速度和当前位置、及其他机器人的运行速度和当前位置。
步骤1304、若目标机器人的运行速度和其他机器人的运行速度均小于预设速度阈值,且基于目标机器人的当前位置和其他机器人的当前位置,确定目标机器人及其他机器人均未到达对应的预设目标点,则确定异常调度的类型为死锁调度。
由于本公开实施例提供的机器人调度方法为分布式的调度方式,没有全局视角,从而容易发生死锁调度。因此可以基于目标机器人的当前运行状态和其他机器人的当前运行状态, 确定目标机器人的运行速度和当前位置、及其他机器人的运行速度和当前位置,判断是否发生死锁调度。
示例性地,可以根据目标机器人的运行速度和其他机器人的运行速度分别计算在过去一段时间内的各自的平均运行速度,从而可以通过确定平均运行速度均小于预设速度阈值。同时,根据目标机器人的当前位置和其他机器人的当前位置,确定目标机器人及其他机器人均未到达对应的预设目标点,来确定异常调度的类型为死锁调度。其中,预设速度阈值可以由用户根据经验预先设定。
图14为本公开实施例提供的又一种对目标机器人和其他机器人进行调度的方法流程图,在异常调度的类型为死锁调度的情况下,如图14所示,该方法包括:
步骤1402、从目标机器人和其他机器人中确定调度机器人。
在一些示例中,可以根据目标机器人和其他机器人的优先级,将目标机器人和其他机器人中优先级较高的机器人确定为调度机器人。
示例性地,在确定调度机器人时,可以对目标机器人和其他机器人的优先级进行比较后,将优先级高的机器人作为调度机器人,也可以将预先指定好的某台机器人直接作为调度机器人。当然也可以采取其他方式来确定调度机器人,本公开实施例对此不作限定。
在一些示例中,如果预先指定某台机器人作为调度机器人,那么在发生死锁调度时,可以由该调度机器人直接对调度机器人和其他机器人重新规划路径,而不需要执行步骤1402。
步骤1404、若目标机器人为调度机器人,则目标机器人对目标机器人和其他机器人重新规划路径。
其中,在检测到发生死锁调度的情况下,可以进入死锁重解流程。示例性地,可以从发生死锁调度的目标机器人和其他机器人中确定调度机器人,该调度机器人可以获取到发生死锁调度的所有机器人的当前运行状态以及目标点后,对这些机器人进行统一式集中路径规划,从而将规划好的新的路径发送给对应的机器人。这些机器人接收到新的路径后,则可以开始按照该新的路径。另外,这部分发生死锁调度的机器人在离开死锁区域后,还可以将其状态切换为正常导航的状态。
例如,以机器人1、机器人2和机器人3发生死锁调度为例,若机器人1的优先级高于机器人2和机器人3,那么机器人1根据机器人1、机器人2和机器人3可以确定机器人1位调度机器人。故机器人1可以作为调度机器人为机器人1、机器人2和机器人3重新规划路径。
步骤1406、向其他机器人发送新的路径,以使其他机器人基于新的路径运行。
示例性地,以机器人1为机器人2重新规划的路径为路径X,为机器人3重新规划的路径为路径Y为例,机器人1可以广播路径X和路径Y,且路径X中携带机器人标识2,路径Y中携带机器人标识3。机器人2接收机器人1广播的新路径,并根据机器人标识确定机器人2的新路径为路径X,机器人2按照路径X运行。机器人3接收机器人1广播的新路径,并根据机器人标识确定机器人3的新路径为路径Y,机器人3按照路径Y运行。
下面介绍与前述方法实施例相对应的装置实施例。
本公开实施例还提供一种机器人调度装置1500,用于执行前述实施例中的机器人调度方法。如图15所示,该装置包括:获取模块1501、确定模块1502和调度模块1503。此外,该装置还可以包括其他更多或更少的单元/模块,比如存储单元、发送单元等。
获取模块1501,被配置为获取其他机器人的当前运行状态;其他机器人由机器人集群中除目标机器人以外的至少一个机器人组成,且其他机器人为处于目标机器人通信范围内的机 器人,当前运行状态用于表征其他机器人在运行过程中产生的运行信息。
确定模块1502,被配置为基于获取模块1501获取的其他机器人的当前运行状态,确定异常调度的类型;异常调度的类型用于表征目标机器人和其他机器人的运行过程相互阻碍的类型。
在一些实施例中,异常调度类型中的冲突调度包括十字路口区域冲突调度,上述确定模块1502被配置为基于其他机器人的当前运行状态,确定处于预设十字路口区域范围内的所有机器人的数量;若机器人的数量大于或等于预设数量阈值,则确定异常调度的类型为十字路口区域冲突调度。
在一些实施例中,异常调度类型中的冲突调度包括非单行道区域冲突调度,非单行道区域冲突调度包括相向冲突调度、同向冲突调度和交汇冲突调度中的任一种,上述确定模块1502还被配置为若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第一预设夹角范围内,则确定异常调度的类型为相向冲突调度;若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第二预设夹角范围内,则确定异常调度的类型为交汇冲突调度;若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径与其他机器人的运行路径之间的夹角在第三预设夹角范围内,则确定异常调度的类型为同向冲突调度;其中,第一预设夹角范围的最小夹角值大于或等于第二预设夹角范围最大夹角值,第二预设夹角范围的最小夹角值大于或等于第三预设夹角范围的最大夹角值。
在一些实施例中,异常调度的类型为死锁调度,上述确定模块1502还被配置为基于目标机器人的当前运行状态和其他机器人的当前运行状态,确定目标机器人的运行速度和当前位置、及其他机器人的运行速度和当前位置;若目标机器人的运行速度和其他机器人的运行速度均小于预设速度阈值,且基于目标机器人的当前位置和其他机器人的当前位置,确定目标机器人及其他机器人均未到达对应的预设目标点,则确定异常调度的类型为死锁调度。
调度模块1503,被配置为采用与确定模块1502确定的异常调度的类型对应的调度规则,对目标机器人和/或其他机器人进行调度。
在一些实施例中,异常调度类型中的冲突调度包括单行道区域冲突调度,上述调度模块1503被配置为若确定其他机器人在预设单行道区域的内部,且其他机器人的预设目标点在预设单行道区域的外部,则基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,对目标机器人进行调度;若确定其他机器人在预设单行道区域的内部,且其他机器人的目标点在预设单行道区域的内部,则目标机器人重新规划路径,并基于新的路径进行移动。
在一些实施例中,上述调度模块1503还被配置为若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径方向与其他机器人的运行路径方向相反,则控制目标机器人处于等待状态;若基于目标机器人的预设运行路径信息和其他机器人的当前运行状态,确定目标机器人的运行路径方向与其他机器人的运行路径方向相同,则控制目标机器人跟随其他机器人运行。
在一些实施例中,上述调度模块1503还被配置为目标机器人和其他机器人中的待调度机器人处于等待状态,或重新规划路径,并基于新的路径运行;其中,待调度机器人为待进入预设十字路口区域范围的机器人。
在一些实施例中,上述调度模块1503还被配置为若异常调度的类型为相向冲突调度,则目标机器人采用第一目标行驶道且降低速度运行;其中,第一目标行驶道为远离其他机器人 的道路;若异常调度的类型为交汇冲突调度,则分别计算目标机器人和其他机器人到交汇点的距离,若目标机器人到交汇点的距离大于或等于其他机器人到交汇点的距离,则控制目标机器人处于等待状态;若异常调度的类型为同向冲突调度,且目标机器人较其他机器人的位置靠后,则控制目标机器人降低速度运行。
在一些实施例中,上述调度模块1503还被配置为从目标机器人和其他机器人中确定调度机器人;若目标机器人为调度机器人,则目标机器人对目标机器人和其他机器人重新规划路径;向其他机器人发送新的路径,以使其他机器人基于新的路径运行。
在一些实施例中,异常调度的类型包括冲突调度和死锁调度,其中,冲突调度用于表征目标机器人和其他机器人的运行路径存在交点;死锁调度用于表征目标机器人的当前运行状态和其他机器人的当前运行状态均处于异常状态。
本公开实施例还提供了一种电子设备,该电子设备可以是前述实施例中的服务器,用于实现前述机器人调度方法步骤中的全部或部分。
如图16所示,为本公开实施例提供的一种电子设备的结构示意图。包括:至少一个处理器、存储器和至少一个接口,此外,还可以包括通信总线,用于连接上述这些部件。
其中,至少一个处理器可以是CPU或处理芯片,用于读取并执行存储器中存储的计算机程序指令,以使至少一个处理器能够执行前述各个实施例中的方法流程。
存储器可以为非暂态存储器(non-transitory memory),其可以包含易失性存储器,例如高速随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
至少一个接口包括输入输出接口,以及通信接口,通信接口可以是有线或者无线接口,从而实现电子设备与其他设备之间的通信连接。输入输出接口可以用于连接外设,比如显示屏、键盘等。
在一些实施方式中,存储器存储了计算机可读程序指令,当处理器读取并执行该存储器中的程序指令时,可实现前述实施例中的一种机器人调度方法。
此外,本公开实施例还提供了一种计算机程序产品,用于存储计算机可读程序指令,该指令被处理器执行时,可实现前述实施例中的一种机器人调度方法。
需要说明的是,在公开中,诸如,第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。
就本说明书而言,″计算机可读介质″可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。
另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。应当理解,本公开的各部分可以用硬件、软件、固件或它们的组合来实现。
在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
以上的本公开实施方式并不构成对本公开保护范围的限定。

Claims (15)

  1. 一种机器人调度方法,应用于机器人集群中的任一目标机器人,所述方法包括:
    获取其他机器人的当前运行状态;所述其他机器人包括所述机器人集群中除所述目标机器人以外的至少一个机器人,且所述其他机器人为处于所述目标机器人通信范围内的机器人,所述当前运行状态用于表征所述其他机器人在运行过程中产生的运行信息;
    基于所述其他机器人的当前运行状态,确定异常调度的类型;所述异常调度的类型用于表征所述目标机器人和所述其他机器人的运行过程相互阻碍的类型;
    采用与所述异常调度的类型对应的调度规则,对所述目标机器人和/或所述其他机器人进行调度。
  2. 根据权利要求1所述的机器人调度方法,其中,所述异常调度的类型包括冲突调度和死锁调度,其中,所述冲突调度用于表征所述目标机器人和所述其他机器人的运行路径存在交点;所述死锁调度用于表征所述目标机器人的当前运行状态和所述其他机器人的当前运行状态均处于异常状态。
  3. 根据权利要求2所述的机器人调度方法,其中,所述异常调度类型中的所述冲突调度包括单行道区域冲突调度,所述采用与所述异常调度的类型对应的调度规则,对所述目标机器人和/或所述其他机器人进行调度,包括:
    若确定所述其他机器人在预设单行道区域的内部,且所述其他机器人的预设目标点在所述预设单行道区域的外部,则基于所述目标机器人的预设运行路径信息和所述其他机器人的当前运行状态,对所述目标机器人进行调度;
    若确定所述其他机器人在预设单行道区域的内部,且所述其他机器人的目标点在所述预设单行道区域的内部,则所述目标机器人重新规划路径,并基于新的路径进行移动。
  4. 根据权利要求3所述的机器人调度方法,其中,所述基于所述目标机器人的预设运行路径信息和所述其他机器人的当前运行状态,对所述目标机器人进行调度,包括:
    若基于所述目标机器人的预设运行路径信息和所述其他机器人的当前运行状态,确定所述目标机器人的运行路径方向与所述其他机器人的运行路径方向相反,则控制所述目标机器人处于等待状态;
    若基于所述目标机器人的预设运行路径信息和所述其他机器人的当前运行状态,确定所述目标机器人的运行路径方向与所述其他机器人的运行路径方向相同,则控制所述目标机器人跟随所述其他机器人运行。
  5. 根据权利要求3所述的机器人调度方法,其中,所述目标机器人重新规划路径,并基于新的路径进行移动,包括:
    所述目标机器人将所述其他机器人的目标点设置为虚拟障碍,重新为所述目标机器人规划路径,并基于新的路径进行移动,以绕过所述其他机器人的目标点。
  6. 根据权利要求2所述的机器人调度方法,其中,所述异常调度类型中的所述冲突调度包括十字路口区域冲突调度,所述基于所述其他机器人的当前运行状态,确定异常调度的类 型,包括:
    基于所述其他机器人的当前运行状态,确定处于预设十字路口区域范围内的所有机器人的数量;
    若所述机器人的数量大于或等于预设数量阈值,则确定所述异常调度的类型为所述十字路口区域冲突调度。
  7. 根据权利要求6所述的机器人调度方法,其中,所述采用与所述异常调度的类型对应的调度规则,对所述目标机器人和/或所述其他机器人进行调度,包括:
    若所述目标机器人为待进入所述预设十字路口区域范围的机器人,则控制所述目标机器人处于等待状态,或,重新为所述目标机器人规划路径,并控制所述目标机器人基于新的路径运行。
  8. 根据权利要求2所述的机器人调度方法,其中,所述异常调度类型中的所述冲突调度包括非单行道区域冲突调度,所述非单行道区域冲突调度包括相向冲突调度、同向冲突调度和交汇冲突调度中的任一种,所述基于所述其他机器人的当前运行状态,确定异常调度的类型,包括:
    若基于所述目标机器人的预设运行路径信息和所述其他机器人的当前运行状态,确定所述目标机器人的运行路径与所述其他机器人的运行路径之间的夹角在第一预设夹角范围内,则确定所述异常调度的类型为相向冲突调度;
    若基于所述目标机器人的预设运行路径信息和所述其他机器人的当前运行状态,确定所述目标机器人的运行路径与所述其他机器人的运行路径之间的夹角在第二预设夹角范围内,则确定所述异常调度的类型为交汇冲突调度;
    若基于所述目标机器人的预设运行路径信息和所述其他机器人的当前运行状态,确定所述目标机器人的运行路径与所述其他机器人的运行路径之间的夹角在第三预设夹角范围内,则确定所述异常调度的类型为同向冲突调度;
    其中,所述第一预设夹角范围的最小夹角值大于或等于所述第二预设夹角范围最大夹角值,所述第二预设夹角范围的最小夹角值大于或等于所述第三预设夹角范围的最大夹角值。
  9. 根据权利要求8所述的机器人调度方法,其中,所述采用与所述异常调度的类型对应的调度规则,对所述目标机器人和/或所述其他机器人进行调度,包括:
    若所述异常调度的类型为相向冲突调度,则所述目标机器人采用第一目标行驶道且降低速度运行;其中,所述第一目标行驶道为远离所述其他机器人的道路;
    若所述异常调度的类型为交汇冲突调度,则分别计算所述目标机器人和所述其他机器人到交汇点的距离;若所述目标机器人到所述交汇点的距离大于或等于所述其他机器人到所述交汇点的距离,则控制所述目标机器人处于等待状态;
    若所述异常调度的类型为同向冲突调度,且所述目标机器人的当前位置较所述其他机器人的当前位置靠后,则控制所述目标机器人降低速度运行。
  10. 根据权利要求2所述的机器人调度方法,其中,所述异常调度的类型为死锁调度,所述基于所述其他机器人的当前运行状态,确定异常调度的类型,包括:
    基于所述目标机器人的当前运行状态和所述其他机器人的当前运行状态,确定所述目标 机器人的运行速度和当前位置、及所述其他机器人的运行速度和当前位置;
    若所述目标机器人的运行速度和所述其他机器人的运行速度均小于预设速度阈值,且基于所述目标机器人的当前位置和所述其他机器人的当前位置,确定所述目标机器人及所述其他机器人均未到达对应的预设目标点,则确定所述异常调度的类型为死锁调度。
  11. 根据权利要求10所述的机器人调度方法,其中,所述采用与所述异常调度的类型对应的调度规则,对所述目标机器人和/或所述其他机器人进行调度,包括:
    若所述目标机器人为调度机器人,则所述目标机器人对所述目标机器人和所述其他机器人重新规划路径;
    向所述其他机器人发送新的路径,以使所述其他机器人基于新的路径运行。
  12. 根据权利要求11所述的机器人调度方法,还包括:
    根据所述目标机器人和所述其他机器人的优先级,将所述目标机器人和所述其他机器人中优先级较高的机器人确定为所述调度机器人。
  13. 一种机器人调度装置,包括:
    获取模块,被配置为获取其他机器人的当前运行状态;所述其他机器人包括机器人集群中除目标机器人以外的至少一个机器人,且所述其他机器人为处于所述目标机器人通信范围内的机器人,所述当前运行状态用于表征所述其他机器人在运行过程中产生的运行信息;
    确定模块,被配置为基于所述获取模块获取的所述其他机器人的当前运行状态,确定异常调度的类型;所述异常调度的类型用于表征所述目标机器人和所述其他机器人的运行过程相互阻碍的类型;
    调度模块,被配置为采用与所述确定模块确定的所述异常调度的类型对应的调度规则,对所述目标机器人和/或所述其他机器人进行调度。
  14. 一种电子设备,包括:
    处理器;
    存储器,用于存储计算机可执行指令;
    所述处理器,用于从存储器中读取指令,并执行指令以实现权利要求1-12中任一项所述的机器人调度方法。
  15. 一种计算机可读存储介质,所述可读存储介质中存储计算机指令,所述计算机指令用于使计算机执行权利要求1-12中任一项所述的机器人调度方法。
PCT/CN2023/112019 2022-09-09 2023-08-09 机器人调度方法和装置 WO2024051435A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202211106144.6 2022-09-09
CN202211106144.6A CN117697733A (zh) 2022-09-09 2022-09-09 一种机器人调度方法和装置

Publications (1)

Publication Number Publication Date
WO2024051435A1 true WO2024051435A1 (zh) 2024-03-14

Family

ID=90157615

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/112019 WO2024051435A1 (zh) 2022-09-09 2023-08-09 机器人调度方法和装置

Country Status (2)

Country Link
CN (1) CN117697733A (zh)
WO (1) WO2024051435A1 (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107678424A (zh) * 2017-08-22 2018-02-09 广东美的智能机器人有限公司 机器人避免路径冲突的方法及其装置
CN109976350A (zh) * 2019-04-15 2019-07-05 上海钛米机器人科技有限公司 多机器人调度方法、装置、服务器及计算机可读存储介质
WO2019141221A1 (zh) * 2018-01-19 2019-07-25 库卡机器人(广东)有限公司 多移动机器人的冲突管理方法及系统
CN110632918A (zh) * 2019-07-30 2019-12-31 深圳市普渡科技有限公司 分布式调度方法及系统
CN112000113A (zh) * 2020-06-19 2020-11-27 南京理工大学 一种基于中药房的多agv仓储管理系统及方法
US11017665B1 (en) * 2018-02-25 2021-05-25 Matthew Roy Vehicle-to-vehicle payment system for traffic prioritization in self-driving vehicles
CN113741424A (zh) * 2021-08-04 2021-12-03 深圳市普渡科技有限公司 机器人协同避障系统、方法、机器人及存储介质
CN113821039A (zh) * 2021-09-27 2021-12-21 歌尔股份有限公司 基于时间窗的路径规划方法、装置、设备及存储介质
CN114115292A (zh) * 2021-12-21 2022-03-01 上海智蕙林医疗科技有限公司 行驶控制方法、系统、存储介质和计算机设备
US20220126863A1 (en) * 2019-03-29 2022-04-28 Intel Corporation Autonomous vehicle system
CN114527751A (zh) * 2022-01-21 2022-05-24 北京极智嘉科技股份有限公司 机器人路径规划方法、装置及电子设备
WO2022172077A1 (en) * 2021-02-09 2022-08-18 Agco International Gmbh Data exchange within a robotic system using mobile robots representing a communication chain

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107678424A (zh) * 2017-08-22 2018-02-09 广东美的智能机器人有限公司 机器人避免路径冲突的方法及其装置
WO2019141221A1 (zh) * 2018-01-19 2019-07-25 库卡机器人(广东)有限公司 多移动机器人的冲突管理方法及系统
US11017665B1 (en) * 2018-02-25 2021-05-25 Matthew Roy Vehicle-to-vehicle payment system for traffic prioritization in self-driving vehicles
US20220126863A1 (en) * 2019-03-29 2022-04-28 Intel Corporation Autonomous vehicle system
CN109976350A (zh) * 2019-04-15 2019-07-05 上海钛米机器人科技有限公司 多机器人调度方法、装置、服务器及计算机可读存储介质
CN110632918A (zh) * 2019-07-30 2019-12-31 深圳市普渡科技有限公司 分布式调度方法及系统
CN112000113A (zh) * 2020-06-19 2020-11-27 南京理工大学 一种基于中药房的多agv仓储管理系统及方法
WO2022172077A1 (en) * 2021-02-09 2022-08-18 Agco International Gmbh Data exchange within a robotic system using mobile robots representing a communication chain
CN113741424A (zh) * 2021-08-04 2021-12-03 深圳市普渡科技有限公司 机器人协同避障系统、方法、机器人及存储介质
CN113821039A (zh) * 2021-09-27 2021-12-21 歌尔股份有限公司 基于时间窗的路径规划方法、装置、设备及存储介质
CN114115292A (zh) * 2021-12-21 2022-03-01 上海智蕙林医疗科技有限公司 行驶控制方法、系统、存储介质和计算机设备
CN114527751A (zh) * 2022-01-21 2022-05-24 北京极智嘉科技股份有限公司 机器人路径规划方法、装置及电子设备

Also Published As

Publication number Publication date
CN117697733A (zh) 2024-03-15

Similar Documents

Publication Publication Date Title
WO2021254415A1 (zh) 一种基于时间窗的agv智能调度方法
CN114519448A (zh) 用于在操作环境中优化路线规划的系统和方法
CN110989582B (zh) 基于路径预先占用的多agv自动避让式智能调度方法
RU2589869C2 (ru) Способ и система для эффективного планирования для множества автоматизированных неголономных транспортных средств с использованием планировщика скоординированных маршрутов
CN108287545B (zh) 多移动机器人的冲突管理方法及系统
CN111596658A (zh) 一种多agv无碰撞运行的路径规划方法及调度系统
CN110377038A (zh) 一种机器人避让行驶方法、装置及机器人
Guney et al. Dynamic prioritized motion coordination of multi-AGV systems
EP4141599B1 (en) Multi-robot route planning
CN112824198B (zh) 一种轨迹决策方法、装置、设备和存储介质
TWI796017B (zh) 自動導引車調度方法、電子裝置及電腦可讀儲存媒體
KR20220163426A (ko) 신호등이 없는 교차로에서 차량-도로 협력 구현 방법 및 장치
Li et al. Multi-AGVs conflict-free routing and dynamic dispatching strategies for automated warehouses
AU2021334408B2 (en) Method and apparatus for coordinating multiple cooperative vehicle trajectories on shared road networks
Basile et al. An auction-based approach to control automated warehouses using smart vehicles
Klaas et al. Simulation aided, knowledge based routing for AGVs in a distribution warehouse
WO2022032444A1 (zh) 一种多智能主体避障方法、系统和计算机可读存储介质
WO2024051435A1 (zh) 机器人调度方法和装置
WO2023174096A1 (zh) 自主移动机器人的调度方法、系统、电子设备和存储介质
Wang et al. Driving line-based two-stage path planning in the AGV sorting system
CN115638804B (zh) 一种无死锁的无人车辆在线路径规划方法
Grosset et al. Multi-agent simulation of autonomous industrial vehicle fleets: Towards dynamic task allocation in V2X cooperation mode
CN113788028B (zh) 车辆控制方法、装置及计算机程序产品
CN115496287A (zh) 基于仓储环境的多智能通信强化学习体路径规划方法及系统
CN115657676A (zh) 基于优先级的集中式多agv多径通道变道决策规划方法