Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 12/17/2025 has been entered.
Response to Arguments
Applicant’s arguments, see pages 10-11, filed 12/17/2025, with respect to the rejection(s) of claim(s) 1-18 and 20 under 35 U.S.C. 112(a) have been fully considered and are persuasive. The amendments to the claims have overcome the previous 112(a) rejection. Therefore, the rejection has been withdrawn. However, upon further consideration, a new ground(s) of rejection is made under 35 U.S.C. 112(a), as the claim language “wherein only the leader robotic device updates task assignments in the list of tasks stored at the database server” is not described in the specification and is new matter.
Applicant's arguments, see pages 11-14, filed 12/17/2025, regarding the rejection of claims 1-18 and 20 under 35 U.S.C. 103 in view of Zou US 20180039258 A1 (“Zou”) in combination with MA et al. US 20220197249 A1 (“MA”) have been fully considered but they are not persuasive. Applicant argues that Zou does not teach the element “wherein only the leader robotic device updates task assignments in the list of tasks stored at the database server”, as described in the amended claim 1. However, as discussed in further detail below, Zou teaches in FIG. 5 and paragraph 60 that only the leader’s movement needs to be updated in terms of task assignments, and the follower simply stops its movement as a result. This reads on the claim language as amended, and for this reason the rejection of claims 1-3, 5-6, and 9-20 are maintained. Claim 21 is also rejected in view of Zou in combination with MA. Claim 22 is rejected in view of Zou, MA, and Ogawa.
Claim Rejections - 35 USC § 112
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claims 1-18 and 20 rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention.
Claim 1 recites the element “wherein only the leader robotic device updates task assignments in the list of tasks stored at the database server” in lines 12-13. This element is not disclosed in the specification, not shown in the drawings, and not described in the original claims, and so it is rejected as new matter. Likewise, claims 2-8, which depend from claims 1, are also rejected by virtue of their dependency.
Claim 9 recites the element “wherein only the leader robotic device updates task assignments in a remotely stored list of tasks” in lines 3-4. This element is not disclosed in the specification, not shown in the drawings, and not described in the original claims, and so it is rejected as new matter. Likewise, claims 10-19, which depend from claims 9, are also rejected by virtue of their dependency.
Claim 20 recites the element “wherein only the leader robotic device updates task assignments in a remotely stored list of tasks” in lines 5-6. This element is not disclosed in the specification, not shown in the drawings, and not described in the original claims, and so it is rejected as new matter.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1-18 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Zou US 20180039258 A1 (“Zou”) in combination with MA et al. US 20220197249 A1 (“MA”).
Regarding Claim 1. Zou teaches a system for distributing and synchronizing tasks among a plurality of robotic devices ([paragraphs 20-22]), the system comprising:
a database server having stored thereon a list of tasks and a list of robotic devices, wherein the list of robotic devices comprises an entry for each respective robotic device of the plurality of robotic devices, wherein each entry associates the respective robotic device with an identifier and a status (A computer system may maintain a status mapping between robot identifiers to robot statuses. An identifier of a robot may uniquely identify the robot. A status of the robot may indicate whether the robot is available, allocated to a macro robot, performing an inventory-related action, or scheduled to perform an inventory-related action [paragraph 39]); and
the plurality of robotic devices configured to:
receive, by the plurality robotic devices, a first wireless communication signal, from the database server, indicating that a leader robotic device of the plurality of robotic devices is inactive (the computer system of Zou may maintain a mapping that assigns each task to a robot [paragraph 41]. Whether the computer system is located inside the leader robot or through a remote server is a matter of obviousness, as it would be obvious to try placing the computer system inside one or all of the robots so that the selected leader robot can update the assigned task list without requiring a connection to a remote system. If a leader robot is assigned, it is implicit that no other robot is authorized to perform the tasks of the leader robot. Assigning the tasks based on the dependencies may include setting one of the robots 210 and 220 as a leader robot [paragraph 42]. In an example, assigning tasks may include setting one of the robots as a leader and the other as a follower [paragraph 42]. Once the inventory-related action is complete (e.g., the item 330 moved to the destination location 334), the computer system may de-allocate the leader 324A and followers 324B-324D from the macro robot 322 and may terminate the instance of the macro robot 322 (e.g., delete the instance or mark the instance as having a complete status). Once de-allocated, the leader 324A and followers 324B-324D, or equivalently the robots 312A-312D, may become available again to perform other inventory-related actions [paragraph 53]), wherein only the leader robotic device updates task assignments in the list of tasks stored at the database server (the leader 510 may stop its movement automatically or based on specific instructions from the computer system (e.g., if there was an obstacle but not a communication loss or delay). A status of the task corresponding to the leader's 510 movement may be updated to “stop” or some other value [paragraph 60, FIG. 5]. If the leader has not moved by a set time, the follower may stop its movement);
based on the first wireless communication signal, determine, by the plurality of robotic devices, a new leader robotic device having an active status (paragraph 42 explains how a leader robot is assigned. Then in FIG. 9, selection of a different robot out of a macro robot to be the leader robot as well as forming new arrangements of robots, which would obviously mean assigning a new leader to the plurality of robots [paragraph 89]); and wherein the new leader robotic device is configured to:
receive, by the new leader robotic device from the database server, a second wireless communication signal indicating a new task in the list of tasks stored at the database server ([paragraph 53]);
determine, by the new leader robotic device and based on the list of robotic devices stored at the database server, an additional robotic device to assign the new task; and
assign, by the new leader robotic device (once again, this is a matter of obviousness. It would have been obvious to one of ordinary skill in the art at the time the invention was filed to try mounting the system for assigning tasks onto the robot so that they can assign tasks directly, rather than requiring this process to be performed by a remote computer system, as this would be an obvious modification of known elements to produce a highly predictable result), the new task to the additional robotic device based on the additional robotic device having an active status, wherein assigning the new task comprises updating, by the new leader robotic device, the list of tasks stored at the database server to associate the new task with the additional robotic device, and wherein the plurality of robotic devices are configured to monitor the list of tasks to identify assigned tasks (In an example, assigning tasks may include setting one of the robots as a leader and the other as a follower [paragraph 42]. Once the inventory-related action is complete (e.g., the item 330 moved to the destination location 334), the computer system may de-allocate the leader 324A and followers 324B-324D from the macro robot 322 and may terminate the instance of the macro robot 322 (e.g., delete the instance or mark the instance as having a complete status). Once de-allocated, the leader 324A and followers 324B-324D, or equivalently the robots 312A-312D, may become available again to perform other inventory-related actions [paragraph 53]), wherein the additional robotic device is configured to perform the new task responsive to receiving, from the database server, a third wireless communication signal indicating that the new task is assigned to the additional robotic device in the list of tasks stored at the database server (In FIG. 9, at operation 916, the local management system may receive a task status from the selected robot. For instance, sending the task may performed at a certain transmission rate. In comparison, the robot may report its status back to the computer system at a higher monitoring rate over the data network. The reported status may identify the task, the new position of the robot, traveled distance and direction, any encountered obstacle, and/or any other parameters related with performing the task [paragraph 87]. In step 918, the local management system may determine whether to send a next task to a next robot. If so, the local management system may perform the operation 912 to select the next robot given the current selected robot and the current task dependencies from the current task as identified in the task mapping [paragraph 88], indicating that the new task can be assigned to an additional robot]).
Zou does not teach:
wherein the status of the robotic device is a heartbeat.
However, MA teaches:
wherein the status of the robotic device is a heartbeat (A robot 12 can communicate with a server/orchestrator 14 and an RPA agent (FIG. 2, number 24) may transmit to the orchestrator a heartbeat signal [paragraph 29]).
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou with wherein the status of the robotic device is a heartbeat as taught by MA so that the database server can determine if a robot is even active or connected to the system before trying to assign them as the lead. This is arguably implicit in Zou, even though it is not explicitly taught.
Regarding Claim 2. Zou in combination with MA teaches the system of claim 1.
Zou also teaches:
wherein the list of tasks comprises an entry for each task associating each task with a status indicator (a central management system implementing this approach may broadcast long move tasks with timestamps to the robots and wait for completion until broadcasting the next long move tasks [paragraph 24]. Once the tasks and dependencies are generated, the central computer system may broadcast instructions specifying the tasks over the data network. The broadcast may be sequential and at a particular transmission rate, where the broadcasted instructions may depend on the tasks, the dependencies, and a progress of performing the tasks. For instance, the broadcast may include sending instructions about a first task to a first robot, monitoring at a relatively higher monitoring rate how the first task is performed (e.g., by receiving status reports from the first robot), and, depending on the monitoring and a dependency to a second task, sending instructions about the second task to a second robot, and so on and so forth [paragraph 27]).
Regarding Claim 3. Zou in combination with MA teaches the system of claim 2.
Zou also teaches:
wherein the control system of the new leader robotic device is further configured to:
receive an indication of a new robotic device in the list of robotic devices (The system can form a new arrangement allocating a new robot or robots [paragraph 89]);
determine a task from the list of tasks stored at the database server to assign to the new robotic device; and
assign the task to the new robotic device based on the new task having an active status indicator, wherein assigning the task to the new robotic device comprises associating the task with the new robotic device in the list of tasks stored at the database server to cause the new robotic device to carry out the task (In FIG. 9, at operation 916, the local management system may receive a task status from the selected robot. For instance, sending the task may performed at a certain transmission rate. In comparison, the robot may report its status back to the computer system at a higher monitoring rate over the data network. The reported status may identify the task, the new position of the robot, traveled distance and direction, any encountered obstacle, and/or any other parameters related with performing the task [paragraph 87]. In step 918, the local management system may determine whether to send a next task to a next robot. If so, the local management system may perform the operation 912 to select the next robot given the current selected robot and the current task dependencies from the current task as identified in the task mapping [paragraph 88], indicating that the new task can be assigned to an additional robot]).
Regarding Claim 5. Zou in combination with MA teaches the system of claim 1.
Zou also teaches:
wherein the control system of the new leader robotic device is further configured to:
monitor a current leader field for the list of robotic devices (Once the tasks and dependencies are generated, the central computer system may broadcast instructions specifying the tasks over the data network. The broadcast may be sequential and at a particular transmission rate, where the broadcasted instructions may depend on the tasks, the dependencies, and a progress of performing the tasks. For instance, the broadcast may include sending instructions about a first task to a first robot, monitoring at a relatively higher monitoring rate how the first task is performed (e.g., by receiving status reports from the first robot), and, depending on the monitoring and a dependency to a second task, sending instructions about the second task to a second robot, and so on and so forth [paragraph 27]);
transmit an indication to add the new leader robotic device to the current leader field (FIG. 2 shows a macro robot formed by a number of robots, any one of which can be selected as a leader robot [FIG. 4, paragraph 54]. a new robot can be added to the macro robot [paragraph 89]); and
receive an indication that transmitting the indication to add the given robotic device was successful (the management system can receive status from robots in the macro robot [paragraphs 87-89], which indicates that the robot added to the macro robot is also sending a task status. It would not be possible for the added robot to do that if they were not added successfully, so it is implicit that an indication is given to the management system that the robotic device was added successfully).
Regarding Claim 6. Zou in combination with MA teaches the system of claim 5.
Zou also teaches:
wherein the current leader field is part of a list of leader robotic devices stored at the database server (Paragraph 20, the macro robot is controlled by a central management system, which may be implemented as a cloud-based computing service or a local server [paragraph 29]).
Regarding Claim 7. Zou in combination with MA teaches the system of claim 1.
Zou also teaches:
wherein the election of the new leader robotic device to be the leader robotic device by the plurality of robotic devices is based on carrying out a leadership election algorithm (Paragraph 85 describes how the local management system may select a robot from the macro robot to be the leader robot. By definition, any robot).
Regarding Claim 9. Zou teaches a method comprising:
receiving, by a plurality of robotic devices, an indication, from a database server, that a leader robotic device of the plurality of robotic devices is inactive (the computer system of Zou may maintain a mapping that assigns each task to a robot [paragraph 41]. Whether the computer system is located inside the leader robot or through a remote server is a matter of obviousness, as it would be obvious to try placing the computer system inside one or all of the robots so that the selected leader robot can update the assigned task list without requiring a connection to a remote system. If a leader robot is assigned, it is implicit that no other robot is authorized to perform the tasks of the leader robot. Assigning the tasks based on the dependencies may include setting one of the robots 210 and 220 as a leader robot [paragraph 42]. In an example, assigning tasks may include setting one of the robots as a leader and the other as a follower [paragraph 42]. Once the inventory-related action is complete (e.g., the item 330 moved to the destination location 334), the computer system may de-allocate the leader 324A and followers 324B-324D from the macro robot 322 and may terminate the instance of the macro robot 322 (e.g., delete the instance or mark the instance as having a complete status). Once de-allocated, the leader 324A and followers 324B-324D, or equivalently the robots 312A-312D, may become available again to perform other inventory-related actions [paragraph 53]), wherein only the leader robotic device updates task assignments in a remotely stored list of tasks (the leader 510 may stop its movement automatically or based on specific instructions from the computer system (e.g., if there was an obstacle but not a communication loss or delay). A status of the task corresponding to the leader's 510 movement may be updated to “stop” or some other value [paragraph 60, FIG. 5]. If the leader has not moved by a set time, the follower may stop its movement);
determining, by the plurality of robotic devices, a new leader robotic device having an active status (paragraph 42 explains how a leader robot is assigned. Then in FIG. 9, selection of a different robot out of a macro robot to be the leader robot as well as forming new arrangements of robots, which would obviously mean assigning a new leader to the plurality of robots [paragraph 89]);
receiving, by the new leader robotic device, an indication of a new task in the remotely stored list of tasks (paragraph 27), stored by the database server, wherein the new leader robotic device is exclusively authorized to update task assignments in the remotely stored list of tasks (the computer system of Zou may maintain a mapping that assigns each task to a robot [paragraph 41]. Whether the computer system is located inside the leader robot or through a remote server is a matter of obviousness, as it would be obvious to try placing the computer system inside one or all of the robots so that the selected leader robot can update the assigned task list without requiring a connection to a remote system. If a leader robot is assigned, it is implicit that no other robot is authorized to perform the tasks of the leader robot);
determining, by the new leader robotic device and based on a remotely stored list of robotic devices, an additional robotic device to assign the new task, wherein the remotely stored list of robotic devices comprises an entry for each respective robotic device of the plurality of robotic devices associating the respective robotic device with an identifier and a status (the computer system may maintain a status mapping between robot identifiers to robot statuses. An identifier of a robot may uniquely identify the robot. A status of the robot may indicate whether the robot is available, allocated to a macro robot, performing an inventory-related action, or scheduled to perform an inventory-related action [paragraph 39]); and
assigning, by the new leader robotic device (once again, this is a matter of obviousness. It would have been obvious to one of ordinary skill in the art at the time the invention was filed to try mounting the system for assigning tasks onto the robot so that they can assign tasks directly, rather than requiring this process to be performed by a remote computer system, as this would be an obvious modification of known elements to produce a highly predictable result), the new task to the additional robotic device based on the additional robotic device having an active status, wherein assigning the new task to the additional robotic device comprises associating, by the new leader robotic device, the new task with the additional robotic device in the remotely stored list of tasks to cause the additional robotic device to carry out the new task (In FIG. 9, at operation 916, the local management system may receive a task status from the selected robot. For instance, sending the task may performed at a certain transmission rate. In comparison, the robot may report its status back to the computer system at a higher monitoring rate over the data network. The reported status may identify the task, the new position of the robot, traveled distance and direction, any encountered obstacle, and/or any other parameters related with performing the task [paragraph 87]. In step 918, the local management system may determine whether to send a next task to a next robot. If so, the local management system may perform the operation 912 to select the next robot given the current selected robot and the current task dependencies from the current task as identified in the task mapping [paragraph 88], indicating that the new task can be assigned to an additional robot]), wherein the plurality of robotic devices are configured to monitor the remotely stored list of tasks to identify assigned tasks (In an example, assigning tasks may include setting one of the robots as a leader and the other as a follower [paragraph 42]. Once the inventory-related action is complete (e.g., the item 330 moved to the destination location 334), the computer system may de-allocate the leader 324A and followers 324B-324D from the macro robot 322 and may terminate the instance of the macro robot 322 (e.g., delete the instance or mark the instance as having a complete status). Once de-allocated, the leader 324A and followers 324B-324D, or equivalently the robots 312A-312D, may become available again to perform other inventory-related actions [paragraph 53]).
Zou does not teach:
wherein the status of the robotic device is a heartbeat.
However, MA teaches:
wherein the status of the robotic device is a heartbeat (A robot 12 can communicate with a server/orchestrator 14 and an RPA agent (FIG. 2, number 24) may transmit to the orchestrator a heartbeat signal [paragraph 29]).
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou with wherein the status of the robotic device is a heartbeat as taught by MA so that the database server can determine if a robot is even active or connected to the system before trying to assign them as the lead. This is arguably implicit in Zou, even though it is not explicitly taught.
Regarding Claim 10. Zou in combination with MA teaches the method of claim 9.
Zou also teaches:
further comprising:
transmitting, by the new leader robotic device to a server device that stores the remotely stored list of robotic devices, an indication of the new leader robotic device still having an active status (FIG. 9 shows that each robot sends a task status to the management system, which can include the robot’s availability [paragraph 39]. A robot that is not active cannot be available, so this element is implicit).
Zou does not teach:
wherein the active status of the robotic device is an active heartbeat.
However, MA teaches:
wherein the active status of the robotic device is an active heartbeat (A robot 12 can communicate with a server/orchestrator 14 and an RPA agent (FIG. 2, number 24) may transmit to the orchestrator a heartbeat signal [paragraph 29]).
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou with wherein the active status of the robotic device is an active heartbeat as taught by MA so that the database server can determine if a robot is even active or connected to the system before trying to assign them as the lead. This is arguably implicit in Zou, even though it is not explicitly taught.
Regarding Claim 11. Zou in combination with MA teaches the method of claim 10.
Zou also teaches:
wherein transmitting the indication of still having the active status is periodic (Claim 18).
Zou does not teach:
wherein the active status of the robotic device is an active heartbeat.
However, MA teaches:
wherein the active status of the robotic device is an active heartbeat (A robot 12 can communicate with a server/orchestrator 14 and an RPA agent (FIG. 2, number 24) may transmit to the orchestrator a heartbeat signal [paragraph 29]).
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou with wherein the active status of the robotic device is an active heartbeat as taught by MA so that the database server can determine if a robot is even active or connected to the system before trying to assign them as the lead. This is arguably implicit in Zou, even though it is not explicitly taught.
Regarding Claim 12. Zou in combination with MA teaches the method of claim 9.
Zou does not teach:
wherein the remotely stored list of robotic devices is stored in a first state space and the remotely stored list of tasks is stored in a second state space.
However, the decision of where and how to store the list of tasks and robotic devices is purely a matter of design choice. Zou is silent as to how many memory state spaces are used, and it would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou to have two storage spaces instead of one because it is an obvious modification of known elements in the art that would produce a predictable result with high chance of success.
Regarding Claim 13. Zou in combination with MA teaches the method of claim 9.
Zou also teaches:
wherein the remotely stored list of robotic devices is stored on a server (Paragraph 29).
Zou does not teach:
wherein the additional robotic device having the active heartbeat indicates that the additional robotic device transmitted an indication to the server of being active less than at least a threshold amount of time from a current time.
However, MA teaches:
wherein the additional robotic device having the active heartbeat indicates that the additional robotic device transmitted an indication to the server of being active less than at least a threshold amount of time from a current time (Paragraph 70, a predetermined number of consecutive heartbeat signals may be required for communication with the orchestrator, and can even be based on a periodic time requirement).
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou with wherein the additional robotic device having the active heartbeat indicates that the additional robotic device transmitted an indication to the server of being active less than at least a threshold amount of time from a current time as taught by MA so as to allow the system of Zou so as to ensure that the robot maintains a regular periodic status communication with the server.
Regarding Claim 14. Zou in combination with MA teaches the method of claim 9.
Zou does not teach:
wherein the remotely stored list of robotic devices is stored on a server, wherein the additional robotic device transmits an indication to the server of having an active heartbeat periodically.
However, MA teaches:
wherein the remotely stored list of robotic devices is stored on a server, wherein the additional robotic device transmits an indication to the server of having an active heartbeat periodically (Paragraph 70, a predetermined number of consecutive heartbeat signals may be required for communication with the orchestrator, and can even be based on a periodic time requirement).
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou with wherein the remotely stored list of robotic devices is stored on a server, wherein the additional robotic device transmits an indication to the server of having an active heartbeat periodically as taught by MA so as to allow the system of Zou so as to ensure that the robot maintains a regular periodic status communication with the server.
Regarding Claim 15. Zou in combination with MA teaches the method of claim 9.
Zou also teaches:
wherein the remotely stored list of tasks and the remotely stored list of robotic devices are both stored in a database (Paragraph 20, the macro robot is controlled by a central management system, which may be implemented as a cloud-based computing service or a local server [paragraph 29]. The global management system may interface with a computing component, such as another computer system or database, of an inventory system [paragraph 72]).
Regarding Claim 16. Zou in combination with MA teaches the method of claim 9.
Zou also teaches:
wherein determining, by the leader robotic device and based on the remotely stored list of robotic devices, the additional robotic device to assign the new task comprises:
determining a subset of robotic devices from the remotely stored list of robotic devices, wherein each robotic device in the subset has an active status and is not already associated with a task (the computer system may maintain a status mapping between robot identifiers to robot statuses. An identifier of a robot may uniquely identify the robot. A status of the robot may indicate whether the robot is available, allocated to a macro robot, performing an inventory-related action, or scheduled to perform an inventory-related action [paragraph 39]).
Zou does not teach:
wherein the active status of the robotic device is an active heartbeat.
However, MA teaches:
wherein the active status of the robotic device is an active heartbeat (A robot 12 can communicate with a server/orchestrator 14 and an RPA agent (FIG. 2, number 24) may transmit to the orchestrator a heartbeat signal [paragraph 29]).
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou with wherein the active status of the robotic device is an active heartbeat as taught by MA so that the database server can determine if a robot is even active or connected to the system before trying to assign them as the lead. This is arguably implicit in Zou, even though it is not explicitly taught.
Regarding Claim 18. Zou in combination with MA teaches the method of claim 9.
Zou also teaches:
further comprising:
receiving, by the new leader robotic device, an indication of a further new task in the remotely stored list of tasks, wherein the further new task was added by the additional robotic device in carrying out the assigned new task (paragraph 53); and
assigning the further new task to a further robotic device in the remotely stored list of robotic devices (In FIG. 9, at operation 916, the local management system may receive a task status from the selected robot. For instance, sending the task may performed at a certain transmission rate. In comparison, the robot may report its status back to the computer system at a higher monitoring rate over the data network. The reported status may identify the task, the new position of the robot, traveled distance and direction, any encountered obstacle, and/or any other parameters related with performing the task [paragraph 87]. In step 918, the local management system may determine whether to send a next task to a next robot. If so, the local management system may perform the operation 912 to select the next robot given the current selected robot and the current task dependencies from the current task as identified in the task mapping [paragraph 88], indicating that the new task can be assigned to an additional robot]).
Regarding Claim 19. Zou in combination with MA teaches the method of claim 9.
Zou also teaches:
further comprising:
receiving, by the new leader robotic device, an indication of a further new task (paragraph 53).
Zou does not teach:
determining, based on the remotely stored list of robotic devices, that no further robotic devices are available to assign the further new task; and
waiting, by the leader robotic device, for an indication of a further robotic device.
However, Zou teaches that a status of a robot may indicate whether a robot is available [paragraph 39]. It is implicit that if no robot sends an available status, then no robot will be assigned to the task, and the system will wait for a new indication of a robotic device that is available. This element is implied, even if not expressly taught.
Regarding Claim 20. Zou teaches one or more non-transitory computer readable media (Claim 13) comprising program instructions executable by at least one processor to cause the at least one processor to perform functions comprising:
receiving, by a plurality of robotic devices, a first indication, from a database server, that leader robotic device of the plurality of robotic devices is inactive (the computer system of Zou may maintain a mapping that assigns each task to a robot [paragraph 41]. Whether the computer system is located inside the leader robot or through a remote server is a matter of obviousness, as it would be obvious to try placing the computer system inside one or all of the robots so that the selected leader robot can update the assigned task list without requiring a connection to a remote system. If a leader robot is assigned, it is implicit that no other robot is authorized to perform the tasks of the leader robot. Assigning the tasks based on the dependencies may include setting one of the robots 210 and 220 as a leader robot [paragraph 42]. In an example, assigning tasks may include setting one of the robots as a leader and the other as a follower [paragraph 42]. Once the inventory-related action is complete (e.g., the item 330 moved to the destination location 334), the computer system may de-allocate the leader 324A and followers 324B-324D from the macro robot 322 and may terminate the instance of the macro robot 322 (e.g., delete the instance or mark the instance as having a complete status). Once de-allocated, the leader 324A and followers 324B-324D, or equivalently the robots 312A-312D, may become available again to perform other inventory-related actions [paragraph 53]), wherein only the leader robotic device updates task assignments in a remotely stored list of tasks (the leader 510 may stop its movement automatically or based on specific instructions from the computer system (e.g., if there was an obstacle but not a communication loss or delay). A status of the task corresponding to the leader's 510 movement may be updated to “stop” or some other value [paragraph 60, FIG. 5]. If the leader has not moved by a set time, the follower may stop its movement);
determining, by the plurality of robotic devices, a new leader robotic device having an active status (paragraph 42 explains how a leader robot is assigned. Then in FIG. 9, selection of a different robot out of a macro robot to be the leader robot as well as forming new arrangements of robots, which would obviously mean assigning a new leader to the plurality of robots [paragraph 89]);
receiving, by the leader robotic device, an indication of a new task in a remotely stored list of tasks (paragraph 27), wherein the leader robotic device is exclusively authorized to update task assignments in the remotely stored list of tasks (the computer system of Zou may maintain a mapping that assigns each task to a robot [paragraph 41]. Whether the computer system is located inside the leader robot or through a remote server is a matter of obviousness, as it would be obvious to try placing the computer system inside one or all of the robots so that the selected leader robot can update the assigned task list without requiring a connection to a remote system. If a leader robot is assigned, it is implicit that no other robot is authorized to perform the tasks of the leader robot);
determining, by the new leader robotic device and based on a remotely stored list of robotic devices, an additional robotic device to assign the new task, wherein the remotely stored list of robotic devices comprises an entry for each respective robotic device of the plurality of robotic devices associating the respective robotic device with an identifier and a status (the computer system may maintain a status mapping between robot identifiers to robot statuses. An identifier of a robot may uniquely identify the robot. A status of the robot may indicate whether the robot is available, allocated to a macro robot, performing an inventory-related action, or scheduled to perform an inventory-related action [paragraph 39]); and
assigning, by the new leader robotic device (once again, this is a matter of obviousness. It would have been obvious to one of ordinary skill in the art at the time the invention was filed to try mounting the system for assigning tasks onto the robot so that they can assign tasks directly, rather than requiring this process to be performed by a remote computer system, as this would be an obvious modification of known elements to produce a highly predictable result), the new task to the additional robotic device based on the additional robotic device having an active status, wherein assigning the new task to the additional robotic device comprises associating, by the leader robotic device, the new task with the additional robotic device in the remotely stored list of tasks to cause the additional robotic device to carry out the new task (In FIG. 9, at operation 916, the local management system may receive a task status from the selected robot. For instance, sending the task may performed at a certain transmission rate. In comparison, the robot may report its status back to the computer system at a higher monitoring rate over the data network. The reported status may identify the task, the new position of the robot, traveled distance and direction, any encountered obstacle, and/or any other parameters related with performing the task [paragraph 87]. In step 918, the local management system may determine whether to send a next task to a next robot. If so, the local management system may perform the operation 912 to select the next robot given the current selected robot and the current task dependencies from the current task as identified in the task mapping [paragraph 88], indicating that the new task can be assigned to an additional robot]), wherein the plurality of robotic devices are configured to monitor the remotely stored list of tasks to identify assigned tasks (In an example, assigning tasks may include setting one of the robots as a leader and the other as a follower [paragraph 42]. Once the inventory-related action is complete (e.g., the item 330 moved to the destination location 334), the computer system may de-allocate the leader 324A and followers 324B-324D from the macro robot 322 and may terminate the instance of the macro robot 322 (e.g., delete the instance or mark the instance as having a complete status). Once de-allocated, the leader 324A and followers 324B-324D, or equivalently the robots 312A-312D, may become available again to perform other inventory-related actions [paragraph 53]).
Zou does not teach:
wherein the status of the robotic device is a heartbeat.
However, MA teaches:
wherein the status of the robotic device is a heartbeat (A robot 12 can communicate with a server/orchestrator 14 and an RPA agent (FIG. 2, number 24) may transmit to the orchestrator a heartbeat signal [paragraph 29]).
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou with wherein the status of the robotic device is a heartbeat as taught by MA so that the database server can determine if a robot is even active or connected to the system before trying to assign them as the lead. This is arguably implicit in Zou, even though it is not explicitly taught.
Regarding Claim 21. Zou in combination with MA teaches the method of claim 9.
Zou also teaches:
wherein the database server is a cloud hosted database (paragraph 29).
Claim(s) 17 is rejected under 35 U.S.C. 103 as being unpatentable over Zou US 20180039258 A1 (“Zou”) in combination with MA et al. US 20220197249 A1 (“MA”) as applied to claim 9 above, and further in view of Rana et al. US 20210232989 A1 (“Rana”).
Regarding Claim 17. Zou in combination with MA teaches the method of claim 9.
Zou does not teach:
wherein determining the additional robotic device to assign the new task is based on one or more requirements of the new task and one or more specifications of the additional robotic device.
However, Rana teaches:
wherein determining the additional robotic device to assign the new task is based on one or more requirements of the new task and one or more specifications of the additional robotic device (A system for orchestrating mobile vehicles, the mobile vehicles can be customizable in their programming to accomplish one or more different tasks in the worksite environment. For example, for different work pieces, different tasks on a work piece 2 or at different locations in the manufacturing environment 1, different configurations or software modules can be flexibly loaded by the mobile vehicle or by its components according to the specific task the vehicle has to fulfil. Such orchestration and assignment of a specific task at a specific time to a specific vehicle can therein be done flexibly according to an availability and the capabilities of the mobile vehicle, wherein much of the therefore required computational intelligence and information can be provided at the edge, which means at the mobile vehicle 5 [paragraph 87]).
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou with wherein determining the additional robotic device to assign the new task is based on one or more requirements of the new task and one or more specifications of the additional robotic device as taught by Rana so that robots will be assigned to tasks based on their ability to carry out the tasks assigned.
Claim(s) 22 is rejected under 35 U.S.C. 103 as being unpatentable over Zou US 20180039258 A1 (“Zou”) in combination with MA et al. US 20220197249 A1 (“MA”) as applied to claim 1 above, and further in view of Ogawa et al. US 20230069393 A1 (“Ogawa”).
Regarding Claim 22. Zou in combination with MA teaches the system of claim 1.
Zou also teaches:
wherein the additional robotic device is configured to:
carry out the new task (In FIG. 9, at operation 916, the local management system may receive a task status from the selected robot. For instance, sending the task may performed at a certain transmission rate. In comparison, the robot may report its status back to the computer system at a higher monitoring rate over the data network. The reported status may identify the task, the new position of the robot, traveled distance and direction, any encountered obstacle, and/or any other parameters related with performing the task [paragraph 87]. In step 918, the local management system may determine whether to send a next task to a next robot. If so, the local management system may perform the operation 912 to select the next robot given the current selected robot and the current task dependencies from the current task as identified in the task mapping [paragraph 88], indicating that the new task can be assigned to an additional robot]).
Zou does not teach:
detect any intermediary task that the additional robotic device is unable to perform, wherein the intermediary task must be completed for the additional robotic device to complete the new task; and
transmit, to the database server, the intermediary task as an additional new task to be assigned by the new leader robotic device based on a requirement of the intermediary task.
Ogawa teaches:
detect any intermediary task that the additional robotic device is unable to perform, wherein the intermediary task must be completed for the additional robotic device to complete the new task (In such a case that, unless a first task assigned to either one of the robot 5 or the other working bodies 8 is started or finished, a second task assigned to the other one of the robot 5 or the other working body 8 cannot be started or finished, the first task is called “key task” and the second task is called “dependent task” [paragraph 70]); and
transmit, to the database server, the intermediary task as an additional new task to be assigned by the new leader robotic device based on a requirement of the intermediary task (paragraphs 70-71).
It would have been obvious to one of ordinary skill in the art at the time the invention was filed to modify the invention of Zou with detect any intermediary task that the additional robotic device is unable to perform, wherein the intermediary task must be completed for the additional robotic device to complete the new task; and transmit, to the database server, the intermediary task as an additional new task to be assigned by the new leader robotic device based on a requirement of the intermediary task as taught by Ogawa so as to allow the system to determine when an intermediary task must be completed before another task can be performed.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to AARON G CAIN whose telephone number is (571)272-7009. The examiner can normally be reached Monday: 7:30am - 4:30pm EST to Friday 7:30pm - 4:30am.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Wade Miles can be reached at (571) 270-7777. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/AARON G CAIN/Examiner, Art Unit 3656