Task planning method and device, electronic equipment and storage medium
Patent Information
- Application Number
- CN202510551437.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-28
- Publication Date
- 2026-10-30
AI Technical Summary
[0003]然而,相关技术中提供的方法无法对临时任务进行高效规划,进而造成清洁资源的浪费和能源的浪费
[0081]本公开提供了一种在获取到临时作业任务后,合理根据当前作业任务、临时作业任务两种任务的任务信息,综合权衡以得到指示所述临时作业任务的执行时机的任务执行策略。基于这种实施方式,机器人能够能加合理地安排多个作业任务的作业顺序,避免了机器人在处理临时作业任务时通常要经过重复、无意义的路线的问题,提升了机器人作业效率、降低了机器人能源消耗,用户体验较好。
Smart Images

Figure CN123000753A_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of robot task planning technology, and in particular to task planning methods, apparatus, electronic devices and storage media. Background Technology
[0002] In recent years, the application scenarios for cleaning robots have become increasingly diverse, and user needs have become more complex. Therefore, it is possible to interrupt the task execution logic of cleaning robots so that users can control the cleaning robots to prioritize tasks that they deem more important by issuing commands.
[0003] However, the methods provided in the relevant technologies cannot efficiently plan temporary tasks, resulting in a waste of clean resources and energy. Summary of the Invention
[0004] To overcome the problems existing in related technologies, this disclosure provides a task planning method, apparatus, electronic device, and storage medium.
[0005] The first aspect of this disclosure provides a task planning method, the method comprising:
[0006] When the robot acquires a temporary task, a task execution strategy is determined based on the task information of the current task and the task information of the temporary task. The current task includes the task that the robot is currently executing, and the task execution strategy is used to indicate the timing of the execution of the temporary task.
[0007] The current job task and the temporary job task are executed based on the task execution strategy.
[0008] Optionally, the method further includes:
[0009] During the robot's task execution, environmental data of the robot's environment is collected based on preset sensors.
[0010] Based on the environmental data, determine whether there are any work objects in the robot's environment that are not included in the current task;
[0011] If there are work objects in the robot's environment that are not included in the current work task, a temporary work task is determined for the work objects.
[0012] Optionally, the task execution strategy includes at least one of the following:
[0013] Execute the temporary task immediately;
[0014] The temporary task will be executed after the first duration has elapsed.
[0015] The temporary task is executed after the current task is completed.
[0016] Discard the temporary job task.
[0017] Optionally, the task information of the temporary task includes the task source of the temporary task;
[0018] The step of determining the task execution strategy based on the task information of the current task and the task information of the temporary task includes:
[0019] If the source of the temporary job task is a user, the task execution strategy is determined to be to execute the temporary job task immediately.
[0020] Optionally, the method further includes:
[0021] When the task execution strategy is determined to execute the temporary task immediately, or to execute the temporary task after a first period of time, the current task is placed in the task queue when the execution of the temporary task begins, so that the robot can continue to execute the current task after the temporary task is completed.
[0022] Optionally, the task information of the current job task includes:
[0023] The execution progress of the current task;
[0024] And / or, the task information of the temporary job task includes:
[0025] The distance between the work area corresponding to the temporary task and the robot's current position.
[0026] Optionally, the execution progress includes at least one of the following:
[0027] The completed time of the current task, the estimated remaining time of the current task, the completed area of the current task, and the estimated remaining area of the current task.
[0028] Optionally, determining the task execution strategy based on the task information of the current task and the task information of the temporary task includes:
[0029] The task information of the current task and the task information of the temporary task are combined according to a preset rule to obtain combined text information;
[0030] The combined text information is processed based on a preset feature representation method to obtain initial features;
[0031] The initial features are subjected to dimensionality reduction processing to obtain an information feature vector of a preset dimension;
[0032] Input the task information of the current task and the task information of the temporary task into the execution strategy model to obtain the task execution strategy.
[0033] Optionally, the task information is used at least to determine the work process when the robot performs the corresponding task.
[0034] Optionally, the task information includes at least one of the following:
[0035] The type of dirt on the work object;
[0036] Work actions targeting the work object;
[0037] The location characteristics of the work area, wherein the location characteristics are used to characterize whether the distance between the edge of the work area and the obstacle is less than a preset threshold;
[0038] The area of the work area;
[0039] Geometric features of the work area;
[0040] The ground material covering the work area;
[0041] Are there any animals within the pre-defined area surrounding the work area?
[0042] A second aspect of this disclosure provides a task planning apparatus, the apparatus comprising:
[0043] The strategy determination module is used to determine a task execution strategy based on the task information of the current task and the task information of the temporary task when the robot acquires a temporary task. The current task includes the task that the robot is currently executing, and the task execution strategy is used to indicate the execution timing of the temporary task.
[0044] The task execution module is used to execute the current job task and the temporary job task based on the task execution strategy.
[0045] Optionally, the device further includes a temporary task determination module, used for:
[0046] During the robot's task execution, environmental data of the robot's environment is collected based on preset sensors.
[0047] Based on the environmental data, determine whether there are any work objects in the robot's environment that are not included in the current task;
[0048] If there are work objects in the robot's environment that are not included in the current work task, a temporary work task is determined for the work objects.
[0049] Optionally, the task execution strategy includes at least one of the following:
[0050] Execute the temporary task immediately;
[0051] The temporary task will be executed after the first duration has elapsed.
[0052] The temporary task is executed after the current task is completed.
[0053] Discard the temporary job task.
[0054] Optionally, the task information of the temporary task includes the task source of the temporary task;
[0055] The strategy determination module, when determining the task execution strategy based on the task information of the current task and the task information of the temporary task, is specifically used for:
[0056] If the source of the temporary job task is a user, the task execution strategy is determined to be to execute the temporary job task immediately.
[0057] Optionally, the device further includes:
[0058] The queue module is used to place the current task in the task queue when the task execution strategy is determined to execute the temporary task immediately, or to execute the temporary task after a first period of time, so that the robot can continue to execute the current task after the temporary task is completed.
[0059] Optionally, the task information of the current job task includes: the execution progress of the current job task; and / or,
[0060] The task information of the temporary task includes the distance between the work area corresponding to the temporary task and the current position of the robot.
[0061] Optionally, the execution progress includes at least one of the following:
[0062] The completed time of the current task, the estimated remaining time of the current task, the completed area of the current task, and the estimated remaining area of the current task.
[0063] Optionally, when the strategy determination module determines the task execution strategy based on the task information of the current task and the task information of the temporary task, it is specifically used for:
[0064] The task information of the current task and the task information of the temporary task are combined according to a preset rule to obtain combined text information;
[0065] The combined text information is processed based on a preset feature representation method to obtain initial features;
[0066] The initial features are subjected to dimensionality reduction processing to obtain an information feature vector of a preset dimension;
[0067] Input the task information of the current task and the task information of the temporary task into the execution strategy model to obtain the task execution strategy.
[0068] Optionally, the task information is used at least to determine the work process when the robot performs the corresponding task.
[0069] Optionally, the task information includes at least one of the following:
[0070] The type of dirt on the work object;
[0071] Work actions targeting the work object;
[0072] The location characteristics of the work area, wherein the location characteristics are used to characterize whether the distance between the edge of the work area and the obstacle is less than a preset threshold;
[0073] The area of the work area;
[0074] Geometric features of the work area;
[0075] The ground material covering the work area;
[0076] Are there any animals within the pre-defined area surrounding the work area?
[0077] A third aspect of this disclosure provides a computer program product including a computer program / instructions that, when executed by a processor, implement the method described in the first aspect.
[0078] A fourth aspect of this disclosure provides an electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the computer program, implements the method as described in the first aspect.
[0079] The fifth aspect of this disclosure provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in the first aspect.
[0080] The technical solutions provided by the embodiments of this disclosure may include the following beneficial effects:
[0081] This disclosure provides a task execution strategy that, after acquiring a temporary task, rationally weighs the task information of both the current task and the temporary task to determine the appropriate timing for executing the temporary task. Based on this implementation, the robot can more rationally arrange the order of multiple tasks, avoiding the problem of the robot traversing repetitive and meaningless routes when handling temporary tasks, thus improving robot efficiency, reducing energy consumption, and providing a better user experience.
[0082] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0083] The accompanying drawings, which are incorporated in and form part of this disclosure, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure.
[0084] Figure 1 This is a flowchart illustrating a task planning method using some exemplary embodiments.
[0085] Figure 2 This is a flowchart illustrating another task planning method using some exemplary embodiments.
[0086] Figure 3 This is a flowchart illustrating another task planning method using some exemplary embodiments.
[0087] Figure 4 These are schematic diagrams illustrating the structure of a pre-trained model, showcasing some exemplary embodiments.
[0088] Figure 5 This is a block diagram illustrating a task planning apparatus through some exemplary embodiments.
[0089] Figure 6 These are hardware structure diagrams of an electronic device illustrating some exemplary embodiments. Detailed Implementation
[0090] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this disclosure as detailed in the appended claims.
[0091] As described in the background section, the methods provided in related technologies cannot efficiently plan temporary tasks, leading to a waste of cleaning resources and energy. For example, directly executing temporary tasks may disrupt the robot's original work plan, causing the robot to have to repeat the same route to execute the original task after completing the temporary task, resulting in low efficiency and high energy consumption. On the other hand, if temporary tasks are scheduled after the current task, the robot may not be able to handle temporary tasks in a timely manner, leading to problems such as dirt and odor, and a decline in user experience.
[0092] In view of the above, this disclosure provides a task planning method, apparatus, electronic device, and storage medium. The embodiments of this disclosure will now be described in detail.
[0093] The first aspect of this disclosure provides a task planning method that can be applied to cleaning robots (such as sweeping robots, which will be used as an example in the following description of embodiments), industrial obstacle removal robots, and other operational robots. Please see [link to relevant documentation]. Figure 1 It may include steps S101 to S102.
[0094] Step S101: When the robot acquires a temporary task, a task execution strategy is determined based on the task information of the current task and the task information of the temporary task. The current task includes the task that the robot is currently executing, and the task execution strategy is used to indicate the timing of the execution of the temporary task.
[0095] When performing routine cleaning tasks, the cleaning robot may need to retain the relevant status of the routine cleaning task based on its own sensing devices or additional instructions from the user, before executing a temporary cleaning task. After completing the temporary cleaning task, the robot will return to continue performing the previous routine cleaning task.
[0096] The above applications can be summarized as temporary task planning for cleaning robots. For example, if a robot vacuum detects liquid dirt such as milk in an area during its regular cleaning task, it will temporarily pause its original task and repeatedly mop the area with milk until it is clean, and then continue its original task. As another example, if a user issues an instruction to clean a specific area immediately, the robot will temporarily pause its original task and immediately clean the area specified by the user until it is clean, and then continue its original task.
[0097] Therefore, optionally, the method may further include: during the robot's execution of a task, collecting environmental data of the robot's environment based on preset sensors; determining, based on the environmental data, whether there is a task object in the robot's environment that is not included in the current task; and, if there is a task object in the robot's environment that is not included in the current task, determining a temporary task for the task object.
[0098] For example, see Figure 2 During the pre-executed patrol, the robot discovered two stains, A and B, and determined the work sequence to be stain A-stain B. While the robot was cleaning stain A, the user's pet suddenly left stain C (pet urine). The robot can then determine that stain C is a work object that needs to be handled, and since it is not included in the current task, a temporary work object can be created for C.
[0099] It's worth noting that whether dirt C is a task requiring processing can be determined based on a preset algorithm or deep learning model. The criteria for this determination can vary depending on the application scenario and user settings. For example, if a user enjoys eating oranges and habitually throws the peels on the ground, they can activate the robot's automatic peel-collecting function. In this case, the robot can collect environmental data using visual sensors or other sensors during its work, determining if there are any previously undetected peels nearby. If so, it can be considered a new peel discarded by the user, and picking it up can be treated as a temporary task. This enhances the robot's adaptability to the environment, making it more aligned with the user's lifestyle and acting as a life assistant, significantly improving the user experience.
[0100] The following section introduces the concepts of task information and environmental parameters.
[0101] Task information refers to information related to a task. Optionally, it can at least be used to determine the workflow when the robot performs the corresponding task.
[0102] For example, task information includes at least one of the following: the type of dirt or grime in the task, the area of the task's work zone, the location characteristics of the task, the ground material covered by the task, whether animals exist in the work zone corresponding to the task, the geometric features of the work zone, and the actions performed on the target object. Information in these dimensions can significantly improve the flexibility of robot task planning and its adaptability to the environment. These optional dimensions are described below.
[0103] The type of dirt in a task can refer to the classification of the task on a preset dimension. For example, the type of dirt in a task can include at least one of the following: solid dirt (such as eraser shavings mentioned above), liquid dirt (such as milk mentioned above), and stubborn dirt (such as viscous substances like honey, dried liquid stains, and abrasion marks on chair legs mentioned above; stubborn dirt usually corresponds to repetitive tasks or complex work processes). It should be understood that the type of dirt can also have more refined dimensions, such as whether the work object is prone to spoilage or odor, or whether the task involves hair (which may need to be cut). For example, the rate at which dirt spoils can be positively correlated with the priority of the task (priority here is a term introduced for ease of expression; it means that the higher the priority, the more the robot tends to perform the task first, or to perform the task as much as possible before performing other tasks), that is, it can make the robot tend to prioritize handling dirt that is more prone to spoilage and odor.
[0104] The working area of a task can be the area covered by the object on the ground or its projected area on the ground. Of course, the "working area corresponding to the task" can be the same as or different from the area covered by the task or its projected area on the ground. This is because a robot is a physical entity that needs to occupy a certain space, and the installation position and cleaning actions of the cleaning components mounted on the robot may be different. Therefore, for actual operations, the working area corresponding to the task can be different from the area covered by the task. For example, the dirt may be circular, but the cleaning area when the robot cleans the dirt is the rectangle circumscribed by the circle. The specific method of determination can be related to the specific structural and functional design of the robot, which will not be elaborated in this disclosure.
[0105] The location characteristics of a task can be used to characterize whether the distance between the edge of the area corresponding to the task and an obstacle is less than a preset threshold. Here, obstacles can refer to walls, table legs, chair legs, etc. In simpler terms, for a robotic vacuum cleaner, the location characteristics of a task can be understood as whether the task is "near a wall" (areas near walls and corners are usually difficult to clean, so the robotic vacuum cleaner's handling logic for dirt near walls is usually different from that for dirt not near walls).
[0106] The geometric features of the work area affect the task execution strategy. Irregular shapes and shapes with acute interior angles are generally more difficult to clean, while rectangular areas are generally easier to clean.
[0107] The type of floor material covered by a robot vacuum cleaner can be categorized based on its chemical and physical properties. Chemically, the cleaning agents used by a robot vacuum cleaner may be corrosive to some materials, such as leather and wood. Physically, some of the robot's actions may damage other materials; for example, while stiff rotating brushes are suitable for cleaning stubborn stains, they may leave scratches on glass and tiles. Furthermore, because carpets and other fabrics are highly absorbent, spilled milk can cause them to smell bad (while tiles are less likely to develop an odor). Therefore, the type of floor material covered by a robot vacuum cleaner can significantly impact its actions, thus affecting the overall workflow and the difficulty of the task.
[0108] The presence of animals within the work area corresponding to a task can also affect the robot's overall workflow and difficulty. For example, pets may interfere with the robot's work, while the robot's work may disturb the pets. Therefore, for instance, the presence of animals can correspond to a lower priority (meaning the robot may be more inclined to go to areas where there are no animals first), while the absence of animals can correspond to a higher priority.
[0109] The aforementioned environmental data can be collected based on sensors deployed on the base station, or it can be obtained from other devices interconnected with the base station. For example, the method may further include communicating with pre-deployed gateway devices and / or sensor devices to determine environmental data, wherein the sensors include at least one of the following: a camera, a human body sensor, a smart speaker, a thermometer, and a hygrometer. These sensors can continuously collect parameter information within their sensing range and report this parameter information to the base station through the gateway, so that the base station can obtain richer environmental data information. For example, a camera (as well as lidar, ultrasonic radar, etc.) can be used to acquire potential work objects around the robot, while a human body sensor can be used to detect whether there is a human body in the room. For example, in the aforementioned example of picking up fruit peels, if there is actually no human body around the robot, the fruit peel recognition algorithm can be more stringent (to minimize false recognition), while the opposite can be true when there is a human body around; a smart speaker can be used to receive user commands.
[0110] In addition to the environmental data mentioned above, the task information of the current task may include: the execution progress of the current task; while the task information of the temporary task may include: the distance between the work area corresponding to the temporary task and the robot's current position.
[0111] The above implementation can be closely integrated with the aforementioned scenarios. For example, if a robot detects new dirt 1 meter ahead while cleaning an area, it can comprehensively determine the task execution strategy based on both the "1 meter" data and the "how much of the current task has been completed." In one exemplary logic, if only the execution progress of the current task is considered, the robot is more inclined to prioritize completing the current task when its execution progress is higher; if only the distance between the temporary task and the robot's current location is considered, the greater the distance, the more inclined the robot is to prioritize completing the current task.
[0112] The task execution progress may include at least one of the following: the completed time of the current task, the estimated remaining time of the current task, the completed area of the current task, and the estimated remaining area of the current task. These methods of representing execution progress can closely approximate the application scenario of the task robot and accurately represent the progress information of the current task without increasing the amount of computation, and are highly adaptable to the application scenario of the task robot.
[0113] Step S102: Execute the current job task and the temporary job task based on the task execution strategy.
[0114] Since the task execution strategy indicates when the temporary task will be executed, the robot can determine how to execute the current task and the temporary task based on the task execution strategy. Optionally, in this disclosure, the task execution strategy may include at least one of the following: immediately executing the temporary task; executing the temporary task after a first duration; executing the temporary task after the current task has been completed; or discarding the temporary task.
[0115] Both strategies—executing the temporary task immediately and executing it after a first set of time—do not require waiting for the current task to complete before proceeding to execute the temporary task. Optionally, the method may further include: when the task execution strategy is determined to be executing the temporary task immediately or executing it after a first set of time, placing the current task in a task queue when starting the execution of the temporary task, so that the robot can continue executing the current task after the temporary task is completed.
[0116] In other words, when the task execution strategy instructs the robot not to wait for the current task to complete, the robot can record some task information and progress information of the current task before proceeding to execute a temporary task. It can then place the remaining (unexecuted) current tasks in a task queue, allowing the robot to continue executing the current task after processing the temporary task (e.g., after completing the temporary task, the robot returns to its starting position and continues executing the "current task"). Based on this, the robot can develop adaptive logic for temporary tasks, avoiding the omission of tasks.
[0117] It should be understood that when the task execution strategy instructs "execute the temporary task after a first period of time," the current task may have already been completed after the first period of time, or other tasks may have already begun. In this case, the "other tasks" can be processed in the same way as described above, that is, treated as the current task and recorded in the task queue. Discarding the temporary task means ignoring it, assuming that the temporary task does not need to be executed or can be transferred to other devices for execution.
[0118] Optionally, the task information of the temporary task includes the task source of the temporary task; determining the task execution strategy based on the task information of the current task and the task information of the temporary task includes: if the task source of the temporary task is a user, determining the task execution strategy as immediately executing the temporary task.
[0119] In other words, temporary tasks can be created either automatically by the robot based on its surrounding environmental data, or they can be directly issued by the user (e.g., the user instructs the robot to temporarily move to a certain area for work via a mobile app, or issues instructions for temporary tasks via devices such as smart speakers). In the latter case, the robot can directly determine its task execution strategy to immediately execute the temporary task, enabling it to better execute user instructions and improve the user experience. For example, in... Figure 2 When the robot has finished cleaning dirt A and is about to move on to dirt B, the user instructs the robot to clean the area containing dirt C. The robot can then directly follow the predetermined route from... Figure 2 The route shown is switched to Figure 3 The route shown.
[0120] In this disclosure, the task execution strategy can be based on a preset algorithm or a deep learning model. For example, determining the task execution strategy based on the task information of the current task and the task information of the temporary task may include: combining the task information of the current task and the task information of the temporary task according to preset rules to obtain text combination information; processing the text combination information based on a preset feature representation method to obtain initial features; performing dimensionality reduction processing on the initial features to obtain information feature vectors of a preset dimension; and inputting the task information of the current task and the task information of the temporary task into a pre-trained model to obtain the task execution strategy.
[0121] In this process, the various task information of temporary and current tasks can first be concatenated and merged to form a complete text description. Next, the combined text information can be processed based on a preset feature representation method to obtain initial features, such as Bag-of-Words, TF-IDF (Term Frequency-Inverse Document Frequency), or One-Hot Encoding. Then, dimensionality reduction algorithms such as Principal Component Analysis (PCA) or Linear Discriminant Analysis (LDA) can be used to reduce the dimensionality of the feature vector while retaining the main information. Of course, "dimensionality reduction" here means "outputting feature vectors of a preset dimension," and it doesn't necessarily reduce the dimensionality of the feature vectors. Finally, the dimensionality-reduced task feature vectors can be input into a pre-trained model to determine the task execution strategy. The pre-trained model can be a neural network model, such as a Multilayer Perceptron (MLP).
[0122] Please see Figure 4The example illustrates a pre-trained model from which the drying control parameters in step S103 can be derived. This model can have an input layer with n neural units and an output layer with 2 neural units, where n is the vector dimension. The two neurons in the output layer can represent the task execution strategy and the first duration (effective when the task execution strategy is to wait for the first duration before executing the temporary task), respectively. The hidden layer structure and number of layers are dynamically adjusted during model training and optimization, for example, through incremental training and user feedback, to continuously optimize the model. Taking a hidden layer containing one neuron as an example, the model can optionally include two fully connected layers and two activation functions. The first fully connected layer is located between the input layer and the hidden layer, with an input size of n and an output size of m (where m is the number of neurons in the hidden layer). The second fully connected layer is located between the hidden layer and the output layer, with an input size of m and an output size of 2. One set of activation functions processes the output of the first fully connected layer, and the other set processes the output of the second fully connected layer.
[0123] The above-described implementation method can improve the robot's adaptability to different tasks, enabling the robot to process various complex task information and correctly evaluate reasonable task execution strategies based on this information.
[0124] In summary, this disclosure provides a task execution strategy that, upon receiving a temporary task, rationally weighs the task information of both the current task and the temporary task to determine the appropriate timing for executing the temporary task. Based on this implementation, the robot can more rationally arrange the order of multiple tasks. Even if the robot receives temporary tasks (or even multiple temporary tasks), it will not disrupt its original task plan, thus avoiding the problem of the robot having to traverse repetitive routes to re-execute the previously ongoing task. This improves robot efficiency, reduces energy consumption, and provides a better user experience.
[0125] Corresponding to the embodiments of the foregoing methods, this disclosure also provides embodiments of the apparatus and the terminal to which it is applied.
[0126] A second aspect of this disclosure provides a task planning apparatus; please refer to [link to relevant documentation]. Figure 5 The device includes:
[0127] The strategy determination module 501 is used to determine a task execution strategy based on the task information of the current task and the task information of the temporary task when the robot acquires a temporary task. The current task includes the task that the robot is currently executing, and the task execution strategy is used to indicate the execution timing of the temporary task.
[0128] The task execution module 502 is used to execute the current job task and the temporary job task based on the task execution strategy.
[0129] Optionally, the device further includes a temporary task determination module, used for:
[0130] During the robot's task execution, environmental data of the robot's environment is collected based on preset sensors.
[0131] Based on the environmental data, determine whether there are any work objects in the robot's environment that are not included in the current task;
[0132] If there are work objects in the robot's environment that are not included in the current work task, a temporary work task is determined for the work objects.
[0133] Optionally, the task execution strategy includes at least one of the following:
[0134] Execute the temporary task immediately;
[0135] The temporary task will be executed after the first duration has elapsed.
[0136] The temporary task is executed after the current task is completed.
[0137] Discard the temporary job task.
[0138] Optionally, the task information of the temporary task includes the task source of the temporary task;
[0139] The strategy determination module, when determining the task execution strategy based on the task information of the current task and the task information of the temporary task, is specifically used for:
[0140] If the source of the temporary job task is a user, the task execution strategy is determined to be to execute the temporary job task immediately.
[0141] Optionally, the device further includes:
[0142] The queue module is used to place the current task in the task queue when the task execution strategy is determined to execute the temporary task immediately, or to execute the temporary task after a first period of time, so that the robot can continue to execute the current task after the temporary task is completed.
[0143] Optionally, the task information of the current job task includes: the execution progress of the current job task; and / or,
[0144] The task information of the temporary task includes the distance between the work area corresponding to the temporary task and the current position of the robot.
[0145] Optionally, the execution progress includes at least one of the following:
[0146] The completed time of the current task, the estimated remaining time of the current task, the completed area of the current task, and the estimated remaining area of the current task.
[0147] Optionally, when the strategy determination module determines the task execution strategy based on the task information of the current task and the task information of the temporary task, it is specifically used for:
[0148] The task information of the current task and the task information of the temporary task are combined according to a preset rule to obtain combined text information;
[0149] The combined text information is processed based on a preset feature representation method to obtain initial features;
[0150] The initial features are subjected to dimensionality reduction processing to obtain an information feature vector of a preset dimension;
[0151] Input the task information of the current task and the task information of the temporary task into the execution strategy model to obtain the task execution strategy.
[0152] Optionally, the task information is used at least to determine the work process when the robot performs the corresponding task.
[0153] Optionally, the task information includes at least one of the following:
[0154] The type of dirt on the work object;
[0155] Work actions targeting the work object;
[0156] The location characteristics of the work area, wherein the location characteristics are used to characterize whether the distance between the edge of the work area and the obstacle is less than a preset threshold;
[0157] The area of the work area;
[0158] Geometric features of the work area;
[0159] The ground material covering the work area;
[0160] Are there any animals within the pre-defined area surrounding the work area?
[0161] The specific implementation process of the functions and roles of each module in the above device can be found in the implementation process of the corresponding steps in the above method, and will not be repeated here.
[0162] A third aspect of this disclosure provides a computer program product including a computer program / instructions that, when executed by a processor, implement the method described in the first aspect.
[0163] For the device embodiments and computer program product embodiments, since they basically correspond to the method embodiments, the relevant parts can be referred to in the description of the method embodiments. Furthermore, the device embodiments described above are merely illustrative; the modules described as separate components may or may not be physically separate, and the components shown as modules may or may not be physical modules, i.e., they may be located in one place or distributed across multiple network modules. Some or all of the modules can be selected to achieve the purpose of this disclosure according to actual needs. Those skilled in the art can understand and implement this without any inventive effort.
[0164] Fourthly, embodiments of the task planning apparatus provided in this disclosure can be applied to electronic devices. See also... Figure 6 The illustration exemplifies a hardware schematic of an electronic device. For example, device 600 could be a mobile phone, computer, digital broadcasting terminal, messaging device, game console, tablet device, medical device, fitness equipment, personal digital assistant, etc.
[0165] Device 600 may include one or more of the following components: processing component 601, memory 602, power supply component 603, multimedia component 604, audio component 605, input / output (I / O) interface 606, sensor component 607, and communication component 608.
[0166] Processing component 601 typically controls the overall operation of device 600, such as operations associated with display, telephone calls, data communication, camera operation, and recording. Processing component 601 may include one or more processors 609 to execute instructions to perform all or part of the steps of the methods described above. Furthermore, processing component 601 may include one or more modules to facilitate interaction between processing component 601 and other components. For example, processing component 601 may include a multimedia module to facilitate interaction between multimedia component 604 and processing component 601.
[0167] Memory 602 is configured to store various types of data to support the operation of device 600. Examples of this data include instructions for any application or method operating on device 600, contact data, phonebook data, messages, pictures, videos, etc. Memory 602 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.
[0168] Power supply component 603 provides power to various components of device 600. Power supply component 603 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to device 600.
[0169] Multimedia component 604 includes a screen that provides an output interface between the device 600 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touch, swipe, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 604 includes a front-facing camera and / or a rear-facing camera. When the device 600 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or the rear-facing camera may receive external multimedia data. Each front-facing camera and rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.
[0170] Audio component 605 is configured to output and / or input audio signals. For example, audio component 605 includes a microphone (MIC) configured to receive external audio signals when device 600 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 602 or transmitted via communication component 608. In some embodiments, audio component 605 also includes a speaker for outputting audio signals.
[0171] Input / output (I / O) interface 606 provides an interface between processing component 601 and peripheral interface modules, such as keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, power buttons, and lock buttons.
[0172] Sensor assembly 607 includes one or more sensors for providing state assessments of various aspects of device 600. For example, sensor assembly 607 may detect the on / off state of device 600, the relative positioning of components such as the display and keypad of device 600, changes in the position of device 600 or a component of device 600, the presence or absence of user contact with device 600, the orientation or acceleration / deceleration of device 600, and temperature changes of device 600. Sensor assembly 607 may also include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 607 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 607 may also include an accelerometer, a gyroscope, a magnetometer, a pressure sensor, or a temperature sensor.
[0173] Communication component 608 is configured to facilitate wired or wireless communication between device 600 and other devices. Device 600 can access wireless networks based on communication standards, such as WiFi, 2G or 3G, 4G or 5G, or combinations thereof. In one exemplary embodiment, communication component 608 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 608 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0174] In an exemplary embodiment, device 600 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the task planning method of the aforementioned electronic device.
[0175] Fifthly, in exemplary embodiments, this disclosure also provides a non-transitory computer-readable storage medium including instructions, such as a memory 602 including instructions, which can be executed by a processor 609 of device 600 to complete the task planning method of the electronic device. For example, the non-transitory computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.
[0176] The foregoing has described specific embodiments of this disclosure. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recited in the claims may be performed in a different order than that shown in the embodiments and may still achieve the desired results. Furthermore, the processes depicted in the drawings do not necessarily require the specific or sequential order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0177] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of the invention applied herein. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not claimed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following claims.
[0178] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.
[0179] The above description is merely a preferred embodiment of this disclosure and is not intended to limit this disclosure. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
Claims
1. A task planning method, characterized in that, The method includes: When the robot acquires a temporary task, a task execution strategy is determined based on the task information of the current task and the task information of the temporary task. The current task includes the task that the robot is currently executing, and the task execution strategy is used to indicate the timing of the execution of the temporary task. The current job task and the temporary job task are executed based on the task execution strategy.
2. The task planning method according to claim 1, characterized in that, The method further includes: During the robot's task execution, environmental data of the robot's environment is collected based on preset sensors. Based on the environmental data, determine whether there are any work objects in the robot's environment that are not included in the current task; If there are work objects in the robot's environment that are not included in the current work task, a temporary work task is determined for the work objects.
3. The task planning method according to claim 1, characterized in that, The task execution strategy includes at least one of the following: Execute the temporary task immediately; The temporary task will be executed after the first duration has elapsed. The temporary task is executed after the current task is completed. Discard the temporary job task.
4. The task planning method according to claim 3, characterized in that, The task information of the temporary task includes the task source of the temporary task; The step of determining the task execution strategy based on the task information of the current task and the task information of the temporary task includes: If the source of the temporary job task is a user, the task execution strategy is determined to be to execute the temporary job task immediately.
5. The task planning method according to claim 3, characterized in that, The method further includes: When the task execution strategy is determined to execute the temporary task immediately, or to execute the temporary task after a first period of time, the current task is placed in the task queue when the execution of the temporary task begins, so that the robot can continue to execute the current task after the temporary task is completed.
6. The task planning method according to claim 1, characterized in that, The task information of the current job task includes: the execution progress of the current job task; and / or, The task information of the temporary task includes the distance between the work area corresponding to the temporary task and the current position of the robot.
7. The task planning method according to claim 6, characterized in that, The execution schedule includes at least one of the following: The completed time of the current task, the estimated remaining time of the current task, the completed area of the current task, and the estimated remaining area of the current task.
8. The task planning method according to claim 1, characterized in that, The step of determining the task execution strategy based on the task information of the current task and the task information of the temporary task includes: The task information of the current task and the task information of the temporary task are combined according to a preset rule to obtain combined text information; The combined text information is processed based on a preset feature representation method to obtain initial features; The initial features are subjected to dimensionality reduction processing to obtain an information feature vector of a preset dimension; The task information of the current task and the task information of the temporary task are input into the pre-trained model to obtain the task execution strategy.
9. The task planning method according to claim 1, characterized in that, The task information is used at least to determine the workflow when the robot performs the corresponding task.
10. The task planning method according to claim 1, characterized in that, The task information includes at least one of the following: The type of dirt on the work object; Work actions targeting the work object; The location characteristics of the work area, wherein the location characteristics are used to characterize whether the distance between the edge of the work area and the obstacle is less than a preset threshold; The area of the work area; Geometric features of the work area; The ground material covering the work area; Are there any animals within the pre-defined area surrounding the work area? 11. A task planning device, characterized in that, The device includes: The strategy determination module is used to determine a task execution strategy based on the task information of the current task and the task information of the temporary task when the robot acquires a temporary task. The current task includes the task that the robot is currently executing, and the task execution strategy is used to indicate the execution timing of the temporary task. The task execution module is used to execute the current job task and the temporary job task based on the task execution strategy.
12. A computer program product comprising a computer program / instructions, characterized in that, When the computer program / instructions are executed by the processor, they implement the method as described in any one of claims 1 to 10.
13. An electronic device, characterized in that, It includes 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 method as described in any one of claims 1 to 10.
14. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by the processor, it implements the method as described in any one of claims 1 to 10.
