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 .
Response to Arguments
Applicant’s argument that the amendment to the claims overcome the 35 USC 101 rejection is persuasive. The rejection is hereby withdrawn. Applicant argues that Zheng does not teach the newly amended feature of “control each mobile robot to enter a low-power state at a designated staging location.” Applicant argument is persuasive. However, applicant’s amendment to the claims has changed the scope of the claims and had necessitated a new ground of rejection which is set forth below.
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.
The text of those sections of Title 35, U.S. Code not included in this action can be found in a prior Office action.
Claim(s) 1, 4-11, 13, and 16 – 23 are rejected under 35 U.S.C. 103 as being unpatentable over US 2008/0109114 Orita et al. in view of US 2022/0308593 Yu et al.
Regarding claim 1, Orita teaches a server for scheduling a plurality of mobile robots in
a robot pool to perform tasks (see Orita at least fig. 1; robot control system [A]), the server
comprising:
a memory (see Orita at least fig. 3; storage device [200]); and
a processor interconnected with the memory (see Orita at least fig. 3 and par. 64; "robot control apparatus 3 includes an input/output device 100, a storage device 200 and a control unit 300"), the processor configured to:
obtain a planning period divided into a plurality of timeslots (see Orita at least par. 76 and fig. 4; "expected task start time (start time; (v); expected task finish time (end time)");
obtain input constraints including (i) a number of mobile robots in the robot pool (see (see Orita at least par. 31 and fig. 1; "a plurality of robots RA, RB and RC"), (ii) a number of docks for charging the mobile robots (see Orita at least par. 117 and fig. 1; "a plurality of battery charge areas (B1 to B3 of FIG. 1)") and (iii) a target number of active robots available for work at a given timeslot (see Orita at least par. 164 and par. 165; schedule organizationis preferably made for the robots R which have not made a reservation for the batterycharging task"; "a situation where two robots R1, R2 are put in the task execution area");
obtain robot parameters from each of the mobile robots (see Orita at least par. 55; "the status information includes: (i) various pieces of data (hereinafter referred to as "battery information" in general) including remaining battery charge data") and generate a robot agent based on the robot parameters for each of the mobile robots (see Orita at least par. 55 and par. 56; "status information includes: (i) various pieces of data (hereinafter referred to as "battery information" in general)... (ii) coordinate data indicative of the current position of the robot R (position information); (iii) data composed of a task ID...; and (iv) data indicative of an own identification number assigned to each robot R (robot ID)"; "control unit 40 is configured (1) to generate and output the status information"); define a work weight and a charge weight for each timeslot in the planning period (see Orita at least par. 76, fig. 4, and fig. 11; "(ii) priority of the task; (iii) importance of the task"; examiner note: priority and importance apply to charging and other content in fig.11);
determine, for each mobile robot by the respective robot agent, a schedule portion based
on the work weights, the charge weights and the robot parameters, the schedule portion selecting, for each timeslot in the planning period for the mobile robot to work or to charge (see Orita at least par. 156 and par. 158; "establish task executive plans (task schedule) under which the robots R carry out their own tasks as well as to rearrange the task executive plans in accordance with the process predetermined for each battery level (mode 1 to mode 4)";
"determines which robot R will be caused to carry out a task based on the priority
determined for each task"); and in response to determining that a finalization condition and the input constraints are satisfied by the schedule portions (see Orita at least par. 170; "the task schedule production unit 341 obtains the total costs (C.sub. Total) respectively for all the combinations, and finds a minimum-cost combination"), send the schedule portions to each respective mobile robot to fulfill during the planning period (see Orita at least par. 187; "the task schedule adjustment unit 342 transmits to the executive instruction generator 350 the executive instruction request signal (see FIG. 6). Therefore, the executive instruction generator 350 generates the executive instruction requesting the robot R to execute the battery charging task and transmits the same to the robot R").
Orita does not disclose: control each mobile robot to enter a low-power state at a designated staging location.
However, Yu discloses a plurality of robots that need to charge. When a charging station is occupied and robot does not have enough power to reach another charging station or another charging station is not available, the robot goes into a low power mode and waits ofr the charging station that can be reach to become available. (See [0044] fig. 10).
Therefore, at the time of filing of the invention, it would have been obvious to one of ordinary skill in the art to modify Orita such that when a charging station is not available for a robot that needs charged, the robot will go into a low power state at a location from which the robot can reach the charging station when it is available. Thus, the robot can conserve its charge until the charging station is available for charging.
Regarding claim 4, Orita already teaches the server of claim 1, wherein the processor is further configured to assign, to each mobile robot, a work task for each timeslot in which the robot agent elected to work and a charging task for each timeslot in which the robot agent elected to charge (see Orita at least fig. 9; content column corresponding to start and end times has guide, porter, and charge).
With regard to claim 5, modified Orita already has: wherein the charging task comprises entering he low-power state the designated staging location (see cited and incorporated portions of Yu in claim 1 above).
Regarding claim 6, Orita already teaches the server of claim 1, wherein Additionally, Orita teaches to determine the schedule portions, each robot agent is configured to optimize combined weights from the work weights and the charge weights in view of the robot parameters (see Orita at least par. 170; "the task schedule production unit 341 obtains the total costs (C.sub. Total) respectively for all the combinations, and finds a minimum-cost combination").
Regarding claim 7, Orita already teaches the server of claim 1, wherein Additionally, Orita teaches the robot parameters comprise one or more of: a current battery level, a last deep charge time, a target deep charge frequency, and a battery level model (see Orita at least par. 55; (i) various pieces of data (hereinafter referred to as "battery information" in general) including remaining battery charge data indicative of the remaining amount of charge in the battery 70 installed in the robot R, and data indicative of battery temperature, battery voltage value and battery current value, etc").
Regarding claim 8, Orita already teaches the server of claim 1, wherein Additionally, Orita teaches the work weights and the charge weights are defined based on a work weight curve and a charge weight curve, respectively (see Orita at least par. 98; "calculating the priority P of the task using Equation (1) below: P=(T.sub.pri+n(T.sub.sp)f(T.sub.err) (1)").
Regarding claim 9, Orita already teaches the server of claim 8, wherein the work weight curve and the charge weight curve take a previous iteration of the schedule portions as input (see Orita at least par. 98; "calculating the priority P of the task using Equation (1) below P=(T.sub.pri+n(T.sub.sp))f(T.sub.er). (1)... T.sub.pri is the importance of the task determined as desired at the time of registration of the task into the task information database 220").
Regarding claim 10, Orita already teaches the server of claim 1, wherein the processor is further configured to: in response to a trigger condition, obtain updated robot parameters (see Orita at least par. 172; "the task schedule adjustment unit 342 makes a reservation fo r the task for moving the robot R to the battery charge area (i.e., battery charging task) with respect to the task schedule of the robot R or makes the robot R execute the battery charging task if the remaining amount of charge in the battery of the robot R becomes equal to or smaller than a certain threshold"); pass the updated robot parameters to the respective robot agents to determine new schedule portions (see Orita at least par. 172; "the task schedule adjustment unit 342 makes a reservation for the task for moving the robot R to the battery charge area (i.e., battery charging task) with respect to the task schedule of the robot R or makes the robot R execute the battery charging task if the remaining amount of charge in the battery of the robot R becomes equal to or smaller than a certain threshold"); and in response to determining that the finalization condition and the input constraints are satisfied by the new schedule portions (see Orita at least par. 170; "the task schedule production unit 341 obtains the total costs (C.sub. Total) respectively for all the combinations, and finds a minimum-cost combination"), send the new schedule portions to each respective mobile robot to fulfill during the planning period (see Orita at least par. 187; m"the task schedule adjustment unit 342 transmits to the executive instruction generator 350 the executive instruction request signal (see FIG. 6). Therefore, the executive instruction generator 350 generates the executive instruction requesting the robot R to execute the battery charging task and transmits the same to the robot R").
Regarding claim 11, Orita already teaches the server of claim 1, wherein Additionally, Orita teaches the processor is further configured to: in response to determining that the finalization condition is not satisfied by the schedule portions (see Orita at least par. 177 and fig. 11; "If the statement of the battery indicated by the battery mode information is in mode 2 (step S5; Yes)"), update the work weights and the charge weights based on the schedule portions (see Orita at least par. 181; "task schedule adjustment unit 342 sets the priority value for the highest priority value among those of the information items") and determining new schedule portions until the finalization condition is satisfied (see Orita at least par. 182; "the task schedule production unit 341 sets (rearrange) the task schedule in accordance with the above process and based on the thus reset priority").
Regarding claim 13, Orita teaches a method for scheduling a plurality of mobile robots in a robot pool to perform tasks (see Orita at least fig. 1, fig. 11, and par. 28; "a process carried out by the robot control apparatus 3"), the method comprising:
obtaining a planning period divided into a plurality of timeslots (see Orita at least par. 76 and fig. 4; "expected task start time (start time; (v); expected task finish time (end time)");
obtaining input constraints including (i) a number of mobile robots in the robot pool (see Orita at least par. 31 and fig. 1; "a plurality of robots RA, RB and RC"), (ii) a number of docks for charging the mobile robots (see Orita at least par. 117 and fig. 1; "a plurality of battery charge areas (B1 to B3 of FIG. 1)") and (iii) a target number of active robots available for work at a given timeslot (see Orita at least par. 164 and par. 165; schedule organization is preferably made for the robots R which have not made a reservation for the battery charging task"; "a situation where two robots R1, R2 are put in the task execution area");
obtaining robot parameters from each of the mobile robots (see Orita at least par. 55; "the status information includes: (i) various pieces of data (hereinafter referred to as "battery information" in general) including remaining battery charge data") and generating a robot agent based on the robot parameters for each of the mobile robots (see Orita at least par. 55 and par. 56; "status information includes: (i) various pieces of data (hereinafter referred to as "battery information" in general)... (ii) coordinate data indicative of the current position of the robot R (position information); (iii) data composed of a task ID...; and (iv) data indicative of an own identification number assigned to each robot R (robot ID)"; "control unit 40 is configured (1) to generate and output the status information");
defining a work weight and a charge weight for each timeslot in the planning period (see Orita at least par. 76, fig. 4, and fig. 11; "(ii) priority of the task; (iii) importance of the task"; examiner note: priority and importance apply to charging and other content in fig. 11);
determining, for each mobile robot by the respective robot agent, a schedule portion based on the work weights, the charge weights and the robot parameters, the schedule portion selecting, for each timeslot in the planning period, for the mobile robot to work or to charge (see Orita at least par. 156 and par. 158; "establish task executive plans (task schedule) under which the robots R carry out their own tasks as well as to rearrange the task executive plans in accordance with the process predetermined for each battery level (mode 1 to mode 4)"; "determines which robot R will be caused to carry out a task based on the priority determined for each task"); and
in response to determining that a finalization condition and the input constraints are satisfied by the schedule portions (see Orita at least par. 170; "the task schedule production unit 341 obtains the total costs (C.sub.Total) respectively for all the combinations, and finds a minimum-cost combination"), sending the schedule portions to each respective mobile robot to fulfill during the planning period (see Orita at least par. 187; "the task schedule adjustment unit 342 transmits to the executive instruction generator 350 the executive instruction request signal (see FIG. 6). Therefore, the executive instruction generator 350 generates the executive instruction requesting the robot R to execute the battery charging task and transmits the same to the robot R").
Orita does not disclose: controlling each mobile robot to enter a low-power state at a designated staging location.
However, Yu discloses a plurality of robots that need to charge. When a charging station is occupied and robot does not have enough power to reach another charging station or another charging station is not available, the robot goes into a low power mode and waits ofr the charging station that can be reach to become available. (See [0044] fig. 10).
Therefore, at the time of filing of the invention, it would have been obvious to one of ordinary skill in the art to modify Orita such that when a charging station is not available for a robot that needs charged, the robot will go into a low power state at a location from which the robot can reach the charging station when it is available. Thus, the robot can conserve its charge until the charging station is available for charging.
Regarding claim 16, Orita already teaches the method of claim 13, further comprising Additionally, Orita teaches assigning, to each mobile robot, a work task for each timeslot in which the robot agent elected to work and a charging task for each timeslot in which the mobile robot elected to charge (see Orita at least fig. 9; content column corresponding to start and end times has guide, porter, and charge).
With regard to claim 17, modified Orita already has: wherein the charging task comprises entering the low-power state atthe designated staging location. (see cited and incorporated portions of Yu in claim 1 above).
Regarding claim 18, Orita already teaches the method of claim 13, wherein Additionally, Orita teaches determining the schedule portions comprises optimizing combined weights from the work weights and the charge weights in view of the robot parameters (see Orita at least par. 170; "the task schedule production unit 341 obtains the total costs (C.sub. Total) respectively for all the combinations, and finds a minimum-cost combination").
Regarding claim 19, Orita already teaches the method of claim 13, wherein Additionally, Orita teaches the robot parameters comprise one or more of a current battery level, a last deep charge time, a target deep charge frequency, and a battery level model (see Orita at least par. 55; (i) various pieces of data (hereinafter referred to as "battery information" in general) including remaining battery charge data indicative of the remaining amount of charge in the battery 70 installed in the robot R, and data indicative of battery temperature, battery voltage value and battery current value, etc").
Regarding claim 20, Orita already teaches the method of claim 13, further comprising Additionally, Orita teaches defining the work weights and the charge weights based on a work weight curve and a charge weight curve, respectively (see Orita at least par. 98; "calculating the priority P of the task using Equation (1) below: P=(T.sub.pri+n(T.sub.sp)f(T.sub.err) (1)").
Regarding claim 21, Orita already teaches the method of claim 20, wherein Additionally, Orita teaches the work weight curve and the charge weight curve take a previous iteration of the schedule portions as input (see Orita at least par. 98; "calculating the priority P of the task using Equation (1) below: P=(T.sub.pri+n(T.sub.sp)f(T.sub.err)(1 T.sub.pri is the importance of the task determined as desired at the time of registration of the task into the task information database 220").
Regarding claim 22, Orita already teaches the method of claim 13, further comprising: Additionally, Orita teaches in response to a trigger condition, obtaining updated robot parameters (see Orita at least par. 172; "the task schedule adjustment unit 342 makes a reservation for the task for moving the robot R to the battery charge area (i.e., battery charging task) with respect to the task schedule of the robot R or makes the robot R execute the battery charging task if the remaining amount of charge in the battery of the robot R becomes equal to or smaller than a certain threshold"); pass the updated robot parameters to the respective robot agents to determine new schedule portions (see Orita at least par. 172; "the task schedule adjustment unit 342 makes a reservation for the task for moving the robot R to the battery charge area (i.e., battery charging task) with respect to the task schedule of the robot R or makes the robot R execute the battery charging task if the remaining amount of charge in the battery of the robot R becomes equal to or smaller than a certain threshold"); and in response to determining that the finalization condition and the input constraints are satisfied by the new schedule portions, send the new schedule portions to each respective mobile robot to fulfill during the planning period (see Orita at least par. 187; "the task schedule adjustment unit 342 transmits to the executive instruction generator 350 the executive instruction request signal (see FIG. 6). Therefore, the executive instruction generator 350 generates the executive instruction requesting the robot R to execute the battery charging task and transmits the same to the robot R").
Regarding claim 23, Orita already teaches the method of claim 13, further comprising: Additionally, Orita teaches in response to determining that the finalization condition is not satisfied by the schedule portions (see Orita at least par. 177 and fig. 11; "If the statement of the battery indicated by the battery mode information is in mode 2 (step S5; Yes)"), updating the work weights and the charge weights based on the schedule portions (see Orita at least par. 181; "task schedule adjustment unit 342 sets the priority value for the highest priority value among those of the information items") and determining new schedule portions until the finalization condition is satisfied (see Orita at least par. 182; "the task schedule production unit 341 sets (rearrange) the task schedule in accordance with the above process and based on the thus reset priority").
Claim(s) 2-3 and 14-14 are rejected under 35 U.S.C. 103 as being unpatentable over US 2008/0109114 Orita et al. in view of US 2022/0308593 Yu et al in further view of 2017/0185928 Zhou at al.
Regarding claim 2, Orita already teaches the server of claim 1, wherein Orita does not explicitly teach the finalization condition comprises a current iteration of the schedule portions matching a previous iteration of the schedule portions.
However, Zhou, who discloses scheduling optimization, discloses the finalization condition comprises a current iteration of the schedule portions matching a previous iteration of the schedule portions (see Zhou at least par. 59; "compare the current iteration with all preceding iterations, and continually select the better-available route schedule solution therefrom. Then, in practice, the iteration controller 120 may stop the iterations upon reaching a pre-defined threshold condition").
It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention to have modified Orita by comparing schedule iterations as is done nin Zhou in order to select the optimized routing schedule (Zhou par. 59).
Regarding claim 3, modified Orita already teaches the server of claim 2, wherein Orita does not explicitly teach the finalization condition further comprises a current iteration of the work weights and the charge weights matching a previous iteration of the work weights and the charge weights.
However, Zhou discloses the finalization condition further comprises a current iteration of the work weights and the charge weights matching a previous iteration of the work weights and the charge weights (see Zhou at least par. 59; "cease iterating after a pre-defined number of iterations, or after a pre-defined number of iterations at which the optimization variable values maintain a pre-defined level of consistency").
It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention to have modified Orita by stopping when optimization variable values are consistent as is done in Zhou in order to select the optimized routing schedule (Zhou par. 59).
Regarding claim 14, Orita already teaches the method of claim 13, wherein Orita does not explicitly teach the finalization condition comprises a current iteration of the schedule portions matching a previous iteration of the schedule portions.
However, Zhou, who discloses scheduling optimization, discloses the finalization condition comprises a current iteration of the schedule portions matching a previous iteration of the schedule portions (see Zhou at least par. 59; "compare the current iteration with all preceding iterations, and continually select the better-available route schedule solution therefrom. Then, in practice, the iteration controller 120 may stop the iterations upon reaching a pre-defined threshold condition").
It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention to have modified Orita by comparing schedule iterations as is done in Zhou in order to select the optimized routing schedule (Zhou par. 59).
Regarding claim 15, Orita already teaches the method of claim 14, wherein Orita does not explicitly teach the finalization condition further comprises a current iteration of the work weights and the charge weights matching a previous iteration of the work weights and the charge weights.
However, Zhou discloses the finalization condition further comprises a current iteration of the work weights and the charge weights matching a previous iteration of the work weights and the charge weights (see Zhou at least par. 59; "cease iterating after a pre-defined number of iterations, or after a pre-defined number of iterations at which the optimization variable values maintain a pre-defined level of consistency").
It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention to have modified Orita by stopping when optimization variable values are consistent as is done in Zhou in order to select the optimized routing schedule (Zhou par. 59).
Claim(s) 12 and 24 is/are rejected under 35 U.S.C. 103 as being unpatentable over Orita in view Y and in further view of Ravankar et al., ("An Intelligent Docking Station Manager for Multiple Mobile Service Robots").
Regarding claim 12, Orita already teaches the server of claim 1, wherein Orita does not explicitly teach the number of docks is smaller than the number of mobile robots in the robot pool.
However, Ravankar, who discloses a docking station manager for multiple robots, teaches the number of docks is smaller than the number of mobile robots in the robot pool (see Ravankar at least pg. 72 col. 2 par. 2; "a limited number of docking station points in presence of a large number of mobile robots").
It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention to have modified Orita by having a larging number of mobile robots as is done in Ravankar in order to "efficiently managing a limited number of docking stations" (Ravankar pg. 72 col. 2 par. 2).
Regarding claim 24, Orita already teaches the method of claim 13, wherein However, Ravankar, who discloses a docking station manager for multiple robots, teaches the number of docks is smaller than the number of mobile robots in the robot pool (see Ravankar at least pg. 72 col. 2 par. 2; "a limited number of docking station points in presence of a large number of mobile robots").
It would have been obvious to one of ordinary skill in the art, before the effective filing date of the claimed invention to have modified Orita by having a larging number of mobile robots as is done in Ravankar in order to "efficiently managing a limited number of docking stations" (Ravankar pg. 72 col. 2 par. 2).
Conclusion
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to ADAM R MOTT whose telephone number is (571)270-5376. The examiner can normally be reached M-F 9 - 5:30.
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, James Trammell can be reached at (571) 272-6712. 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.
/ADAM R MOTT/ Supervisory Patent Examiner, Art Unit 3657