Office Action Predictor
Last updated: April 16, 2026
Application No. 18/747,421

TECHNIQUES FOR PATH CLEARANCE PLANNING

Final Rejection §103
Filed
Jun 18, 2024
Examiner
EVANS, KARSTON G
Art Unit
3657
Tech Center
3600 — Transportation & Electronic Commerce
Assignee
Path Robotics, INC.
OA Round
2 (Final)
70%
Grant Probability
Favorable
3-4
OA Rounds
2y 9m
To Grant
91%
With Interview

Examiner Intelligence

Grants 70% — above average
70%
Career Allow Rate
100 granted / 143 resolved
+17.9% vs TC avg
Strong +21% interview lift
Without
With
+21.2%
Interview Lift
resolved cases with interview
Typical timeline
2y 9m
Avg Prosecution
31 currently pending
Career history
174
Total Applications
across all art units

Statute-Specific Performance

§101
9.9%
-30.1% vs TC avg
§103
48.2%
+8.2% vs TC avg
§102
13.8%
-26.2% vs TC avg
§112
21.3%
-18.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 143 resolved cases

Office Action

§103
DETAILED ACTION 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 The amendment filed 2/25/2026 has been entered. Claims 1-12 and 15-20 are amended. Claims 1-20 remain pending in the application. Applicant’s amendments to the claims have overcome each and every 112(b) and 101 rejection set forth in the Non-Final Office Action mailed 11/7/2025. Applicant's arguments, see pages 15-16, with respect to Mao not teaching the amended subject matter have been fully considered but they are not persuasive. Particularly, the applicant argues that the examiner is misinterpreting the claimed “line segments” because Mao’s physical robot links that are interpreted as “line segments” are not “determined” by a controller. The applicant also argues a narrower interpretation of the “line segments,” that is they must be in task space or Cartesian space and relies on the specification’s description to define the “line segments.” However, the claims do not actually define the “line segments” with the narrow interpretation. Under broad reasonable interpretation of the claims, a robot linkage configuration determined by a controller is interpreted as “controller-determined line segments.” In Mao, determining joint angle configurations defines the configurations of line/linkage segments because the configuration/positions of the linkage segments are made up by the angles between the joints. Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. 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 factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. Claim(s) 1-3, 6-8, 11-14, 16-18, and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Mao (IDS: US 20210178590 A1) in view of Utsumi (US 20240123606 A1). Regarding Claim 1, Mao teaches A computer-implemented method of generating instructions for a robot, the computer-implemented method comprising: (“The present disclosure is directed to a method and system for robot path planning while avoiding obstacles.” See at least [0011]; “the present teaching may be implemented on a computer such as computer 500 via its hardware, software program, firmware, or a combination thereof.” See at least [0026]) generating, based on an end effectuator (EE), a joint, or a combination thereof of a robot arm of the robot for the robot arm in a first state, a plurality of controller-determined candidate states along one or more controller-determined line segments associated with the first state of the robot arm; (“A robotic arm as referred to herein is an arm of a robot having a plurality of segments. A pose (i.e., position and orientation) of the robotic arm may be determined by a plurality of values (e.g., angle values) each of which corresponds to an angle formed between consecutive operable segments of the robotic arm.” See at least [0011]; “It must be appreciated that the robot's arm may include an end-effector (i.e., a device or tool connected at an end of the robot's arm). … for a 6-DOF robot, any particular position may be represented by a joint angle configuration J=(j.sub.1, j.sub.2, j.sub.3, j.sub.4, j.sub.5, j.sub.6), where j.sub.i is the joint angle of the i-th joint. The term configuration is used to represent the combined joint angles of all joints, which uniquely determines the end-effector's pose.” See at least [0013-0014]; “computing an angle step-value for the current pose of the robotic arm based on a function of a distance between the current pose and the desired pose, wherein the angle step value is to be used to determine a plurality of candidate next poses of the plurality of operable segments;” See at least Claim 1; Also see at least [0016-0018]; Examiner Interpretation: The computer 500 is interpreted as a controller. The current pose or the desired pose is the first state and candidate next poses are candidate states. The plurality of arm segments connected by joints is interpreted as the series of line segments. The configuration of angles between each joint is determined for the possible moves (candidate states) and therefore the determined plurality of candidate states are along series of line segments of the robot arm.) based on the plurality of controller-determined candidate states, determining a set of controller-determined verified states, where each controller-determined verified state included in the set of controller-determined verified states satisfies a clearance threshold value with respect to an object; (“selecting one or more of the plurality of candidate next poses based on at least one criterion;” See at least Claim 1; “The method of claim 1, wherein the at least one criterion corresponds to each of the one or more candidate next poses being a predetermined distance away from one or more obstacles observed between the current pose and the desired pose.” See at least Claim 3; “the neighbor reduction may be based on obstacle awareness. If the movement from node n to a neighbor hits an obstacle or is within a distance which is not allowed from the obstacle, the direction of the move may be added to a set of avoidable directions for node n. Denote that set by A(n). After all neighbors of node n have been visited, the set A(n) contains motion directions that should be avoided. This set may be applied to the direct neighbors of node n when it comes to the time to explore those neighbors.” See at least [0020]) determining, based on a cost function, a controller-determined trajectory between the first state and a second state, the second state included in the set of controller-determined verified states; (“After the neighborhood reduction, a trajectory is determined based on the reduced neighborhood which minimizes a cost function (step 212), using the conventional A* algorithm.” See at least [0021]; “At step 308, ignore the preceding waypoints whose direct paths to the current waypoint p.sub.k collide with the obstacle. Then for each of the remaining non-colliding waypoints {p.sub.m}, a cost may be computed. The cost may be computed as a weighted sum of the Euclidean distance from the current waypoint p.sub.k to the preceding waypoint p.sub.m and the cost at p.sub.m. The cost at p.sub.m was already computed when the waypoint p.sub.m was visited the first time. Intuitively this is the cost to go from the current waypoint p.sub.k to the first waypoint via the waypoint p.sub.m. At step 312, the waypoint among all the preceding waypoints {p.sub.m} with the minimum cost is picked.” See at least [0023-0024]; Examiner Interpretation: The selected candidate waypoint based on the cost function is the second state.) Mao does not explicitly teach, but Utsumi teaches and controlling the robot arm to move along the trajectory. (“The operation control unit 43 sends an operation command to a robot drive part 45 for driving the robot 1. The robot drive part 45 includes an electrical circuit configured to drive a robot drive motor 22. The robot drive part 45 supplies electricity to the robot drive motor 22 based on an operation command.” See at least [0041]) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the teachings of Mao to further include the teachings of Utsumi with a reasonable expectation of success to improve the automation of robot teaching and welding. (See at least [0009-0011] and [0074]) Regarding Claim 2, Mao further teaches wherein: the first state includes an initial state or a goal state; (“At step 202, the robot's initial joint angles at the starting pose may be obtained. … At step 206, the goal/desired pose of the robot joint angles may be obtained.” See at least [0016]) the initial state is associated with an approach of the robot arm to perform an operation, (“The path planning problem becomes that of finding a path starting from the initial node in the grid to the desired node in the grid while satisfying certain criteria.” See at least [0014]; Examiner Interpretation: The path is the operation and the initial node/pose is the initial state at the start of the path and therefore is associated with the approach of the robotic arm. The claimed goal state description is not included because of the claimed “or.”) Mao does not explicitly teach, but Utsumi teaches the object includes a part to be welded, a fixture configured to hold the part, or a combination thereof; and the operation includes a welding operation, a scan operation, or a combination thereof. (“the setting control is performed while the welding torch 2 is maintained in a state of being retracted from the workpieces 81 and 82. By performing this control, it is possible to avoid the welding torch 2 from colliding with the workpieces 81 and 82 or with the fixing members arranged around the workpieces 81 and 82, or the like. For example, in the case in which a workpiece is bent, the welding torch may collide with the workpiece when the welding torch moves linearly to the movement point corresponding to the search point. By setting the position of the teaching point in a state where the welding torch is away from the workpiece, collision between the welding torch and other objects can be avoided.” See at least [0077]) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the teachings of Mao to further include the teachings of Utsumi with a reasonable expectation of success to improve the automation of robot teaching and welding. (See at least [0009-0011] and [0074]) Regarding Claim 3, Mao further teaches wherein generating the plurality of candidate states includes: determining, for each controller-determined line segment of the one or more controller-determined line segments, a controller-determined candidate state on the controller-determined line segment and included in the plurality of controller-determined candidate states. (“Robot path planning may usually be performed in a discretized space of joint angles. Each joint angle may be discretized by an interval 6 (also referred to herein as an angle step-value). For example, for a 6-DOF robot, any particular position may be represented by a joint angle configuration J=(j.sub.1, j.sub.2, j.sub.3, j.sub.4, j.sub.5, j.sub.6), where j.sub.i is the joint angle of the i-th joint. The term configuration is used to represent the combined joint angles of all joints, which uniquely determines the end-effector's pose. According to one embodiment, after the robot moves to a next position, each of the joints may be in one of the joint angles at j.sub.i−δ, j.sub.i, j.sub.i, +δ, i=1, 2, . . . , 6. ... Therefore, there may be 3.sup.6−1=728 possible moves (for a total of N=6 joints) from one configuration to the next.” See at least [0014]; “wherein the angle step value is to be used to determine a plurality of candidate next poses of the plurality of operable segments;” See at least claim 1.; Examiner Interpretation: Since the configuration/positions of the line segments are made up by the angles between the joints, determining joint angle configurations defines the configurations of line segments wherein candidate states are interpreted as positions on the operable/line segments.) Regarding Claim 6, Mao further teaches wherein the one or more controller-determined line segments comprises at least one end-effectuator-to-joint line segment. (“A robotic arm as referred to herein is an arm of a robot having a plurality of segments. A pose (i.e., position and orientation) of the robotic arm may be determined by a plurality of values (e.g., angle values) each of which corresponds to an angle formed between consecutive operable segments of the robotic arm.” See at least [0011]; “the robot's arm may include multiple segments, wherein a connection between adjacent segments is referred to as a joint.” See at least [0013]; “obtaining information of a current pose of a robotic arm having a plurality of operable segments, wherein the information includes a plurality of values, each of which corresponds to an angle formed between consecutive operable segments of the robotic arm;” See at least Claim 1; “Robot path planning may usually be performed in a discretized space of joint angles. Each joint angle may be discretized by an interval 6 (also referred to herein as an angle step-value). For example, for a 6-DOF robot, any particular position may be represented by a joint angle configuration J=(j.sub.1, j.sub.2, j.sub.3, j.sub.4, j.sub.5, j.sub.6), where j.sub.i is the joint angle of the i-th joint. The term configuration is used to represent the combined joint angles of all joints, which uniquely determines the end-effector's pose. According to one embodiment, after the robot moves to a next position, each of the joints may be in one of the joint angles at j.sub.i−δ, j.sub.i, j.sub.i, +δ, i=1, 2, . . . , 6. ... Therefore, there may be 3.sup.6−1=728 possible moves (for a total of N=6 joints) from one configuration to the next.” See at least [0014]; “wherein the angle step value is to be used to determine a plurality of candidate next poses of the plurality of operable segments;” See at least claim 1.; Examiner Interpretation: The plurality of arm segments connected by joints is interpreted as the series of line segments along the robot arm. At least one is an end-effectuator-to-joint line segment because the configuration “determines the end-effector's pose.”) Regarding Claim 7, Mao further teaches wherein: generating the plurality of controller-determined candidate states includes determining the one or more controller-determined line segments from a first point on the robot arm to each of one or more other points on the robot arm; (“A robotic arm as referred to herein is an arm of a robot having a plurality of segments. A pose (i.e., position and orientation) of the robotic arm may be determined by a plurality of values (e.g., angle values) each of which corresponds to an angle formed between consecutive operable segments of the robotic arm.” See at least [0011]; “the robot's arm may include multiple segments, wherein a connection between adjacent segments is referred to as a joint.” See at least [0013]; “Robot path planning may usually be performed in a discretized space of joint angles. Each joint angle may be discretized by an interval 6 (also referred to herein as an angle step-value). For example, for a 6-DOF robot, any particular position may be represented by a joint angle configuration J=(j.sub.1, j.sub.2, j.sub.3, j.sub.4, j.sub.5, j.sub.6), where j.sub.i is the joint angle of the i-th joint. The term configuration is used to represent the combined joint angles of all joints, which uniquely determines the end-effector's pose. According to one embodiment, after the robot moves to a next position, each of the joints may be in one of the joint angles at j.sub.i−δ, j.sub.i, j.sub.i, +δ, i=1, 2, . . . , 6. ... Therefore, there may be 3.sup.6−1=728 possible moves (for a total of N=6 joints) from one configuration to the next.” See at least [0014]; Examiner Interpretation: Every joint angle configuration constitutes for each line segment, determining a candidate state and including it in the plurality of candidate states since the line segments make up the angles between the joints.)Examiner Interpretation: A joint constitutes a point on the robot arm, therefore, since adjacent segments are each connected with a joint, this constitutes determining a set of line segments from a first point to one or more other points on the robot arm.) and the first point includes the end effectuator (EE) of the robot arm, at least one point of the one or more other points includes a joint of the robot arm, or a combination thereof. (“The goal pose (i.e., final position and orientation) 106 may represent a desired pose of the robot's arm. It must be appreciated that the robot's arm may include an end-effector (i.e., a device or tool connected at an end of the robot's arm).” See at least [0013]; “for a 6-DOF robot, any particular position may be represented by a joint angle configuration J=(j.sub.1, j.sub.2, j.sub.3, j.sub.4, j.sub.5, j.sub.6), where j.sub.i is the joint angle of the i-th joint. The term configuration is used to represent the combined joint angles of all joints, which uniquely determines the end-effector's pose.” See at least [0014]; Examiner Interpretation: The combined joint angles determining the end-effector's post constitutes a first point including the end effectuator of the robot arm and the one or more points includes a joint of the robot arm.) Regarding Claim 8, Mao further teaches wherein: determining the set of controller-determined verified states includes, for each controller-determined candidate state of the plurality of controller-determined candidate states: determining a distance between the controller-determined candidate state and the object; and performing a first comparison based on the distance and the clearance threshold value; and for each controller-determined candidate state of the plurality of controller-determined candidate states, the controller-determined candidate state is included in the set of controller-determined verified states based on the distance between the controller-determined candidate state and the object being greater than or equal to the clearance threshold value. (“selecting one or more of the plurality of candidate next poses based on at least one criterion;” See at least Claim 1; “The method of claim 1, wherein the at least one criterion corresponds to each of the one or more candidate next poses being a predetermined distance away from one or more obstacles observed between the current pose and the desired pose.” See at least Claim 3; “the neighbor reduction may be based on obstacle awareness. If the movement from node n to a neighbor hits an obstacle or is within a distance which is not allowed from the obstacle, the direction of the move may be added to a set of avoidable directions for node n. Denote that set by A(n). After all neighbors of node n have been visited, the set A(n) contains motion directions that should be avoided. This set may be applied to the direct neighbors of node n when it comes to the time to explore those neighbors.” See at least [0020]) Regarding Claim 11, Mao further teaches wherein determining the controller-determined trajectory includes: identifying a portion of a path from the first state to the second state, determining that no feasible path exists between the first state and the second state, or identifying a complete path from the first state to the second state. (“the neighbor reduction may be based on obstacle awareness. If the movement from node n to a neighbor hits an obstacle or is within a distance which is not allowed from the obstacle, the direction of the move may be added to a set of avoidable directions for node n. Denote that set by A(n). After all neighbors of node n have been visited, the set A(n) contains motion directions that should be avoided. This set may be applied to the direct neighbors of node n when it comes to the time to explore those neighbors.” See at least [0020]; “At step 214, the found path may be smoothed to generate a smooth trajectory.” See at least [0024]; Examiner Interpretation: A movement from node n to a neighbor that hits an obstacle is a path identified as not feasible. The found path and/or smooth trajectory is the complete path.) Regarding Claim 12, Mao teaches An (“The present disclosure is directed to a method and system for robot path planning while avoiding obstacles.” See at least [0011]; “the present teaching may be implemented on a computer such as computer 500 via its hardware, software program, firmware, or a combination thereof.” See at least [0026]) generate, based on an end effectuator (EE), a joint, or a combination thereof of a robot arm of the robot for the robot arm in a first state, a plurality of controller-determined candidate states along one or more controller-determined line segments associated with the first state of the robot arm; (“A robotic arm as referred to herein is an arm of a robot having a plurality of segments. A pose (i.e., position and orientation) of the robotic arm may be determined by a plurality of values (e.g., angle values) each of which corresponds to an angle formed between consecutive operable segments of the robotic arm.” See at least [0011]; “It must be appreciated that the robot's arm may include an end-effector (i.e., a device or tool connected at an end of the robot's arm). … for a 6-DOF robot, any particular position may be represented by a joint angle configuration J=(j.sub.1, j.sub.2, j.sub.3, j.sub.4, j.sub.5, j.sub.6), where j.sub.i is the joint angle of the i-th joint. The term configuration is used to represent the combined joint angles of all joints, which uniquely determines the end-effector's pose.” See at least [0013-0014]; “computing an angle step-value for the current pose of the robotic arm based on a function of a distance between the current pose and the desired pose, wherein the angle step value is to be used to determine a plurality of candidate next poses of the plurality of operable segments;” See at least Claim 1; Also see at least [0016-0018]; Examiner Interpretation: The computer 500 is interpreted as a controller. The current pose or the desired pose is the first state and candidate next poses are candidate states. The plurality of arm segments connected by joints is interpreted as the series of line segments. The configuration of angles between each joint is determined for the possible moves (candidate states) and therefore the determined plurality of candidate states are along series of line segments of the robot arm.) based on the plurality of controller-determined candidate states, determine a set of controller-determined verified states, where each controller-determined verified state included in the set of controller-determined verified states satisfies a clearance threshold value with respect to an object; (“selecting one or more of the plurality of candidate next poses based on at least one criterion;” See at least Claim 1; “The method of claim 1, wherein the at least one criterion corresponds to each of the one or more candidate next poses being a predetermined distance away from one or more obstacles observed between the current pose and the desired pose.” See at least Claim 3; “the neighbor reduction may be based on obstacle awareness. If the movement from node n to a neighbor hits an obstacle or is within a distance which is not allowed from the obstacle, the direction of the move may be added to a set of avoidable directions for node n. Denote that set by A(n). After all neighbors of node n have been visited, the set A(n) contains motion directions that should be avoided. This set may be applied to the direct neighbors of node n when it comes to the time to explore those neighbors.” See at least [0020]) determine, based on a cost function, a controller-determined trajectory between the first state and a second state, the second state included in the set of controller-determined verified states. (“After the neighborhood reduction, a trajectory is determined based on the reduced neighborhood which minimizes a cost function (step 212), using the conventional A* algorithm.” See at least [0021]; “At step 308, ignore the preceding waypoints whose direct paths to the current waypoint p.sub.k collide with the obstacle. Then for each of the remaining non-colliding waypoints {p.sub.m}, a cost may be computed. The cost may be computed as a weighted sum of the Euclidean distance from the current waypoint p.sub.k to the preceding waypoint p.sub.m and the cost at p.sub.m. The cost at p.sub.m was already computed when the waypoint p.sub.m was visited the first time. Intuitively this is the cost to go from the current waypoint p.sub.k to the first waypoint via the waypoint p.sub.m. At step 312, the waypoint among all the preceding waypoints {p.sub.m} with the minimum cost is picked.” See at least [0023-0024]; Examiner Interpretation: The selected candidate waypoint based on the cost function is the second state.) Mao does not explicitly teach, but Utsumi teaches An assembly robotic system configured to scan an object to be welded (“a robot apparatus that fixes a plurality of workpieces by arc welding.” See at least [0030]; “The operation position detecting unit 52 detects the position of the weld line WL1, i.e., the welding position to be welded, based on the output of the laser sensor 27. The teaching point setting unit 55 according to the present embodiment sets this welding position as the position of the teaching point TP1. FIG. 7 illustrates a perspective view of the welding torch and the workpiece illustrating the control for setting the position of the next teaching point.” See at least [0061-0062] and fig. 7) and control the robot arm to move along the trajectory. (“The operation control unit 43 sends an operation command to a robot drive part 45 for driving the robot 1. The robot drive part 45 includes an electrical circuit configured to drive a robot drive motor 22. The robot drive part 45 supplies electricity to the robot drive motor 22 based on an operation command.” See at least [0041]) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the teachings of Mao to further include the teachings of Utsumi with a reasonable expectation of success to improve the automation of robot teaching and welding. (See at least [0009-0011] and [0074]) Regarding Claim 13, Mao further teaches wherein the first state includes an initial state or a goal state. (“At step 202, the robot's initial joint angles at the starting pose may be obtained. … At step 206, the goal/desired pose of the robot joint angles may be obtained.” See at least [0016]) Regarding Claim 14, Mao further teaches wherein the initial state is associated with an approach of the robot arm to perform an operation, (“The path planning problem becomes that of finding a path starting from the initial node in the grid to the desired node in the grid while satisfying certain criteria.” See at least [0014]; Examiner Interpretation: The path is the operation and the initial node/pose is the initial state at the start of the path and therefore is associated with the approach of the robotic arm. The claimed goal state description is not included because of the claimed “or.”) Regarding Claim 16, Mao further teaches wherein the one or more controller-determined line segments comprises at least one end-effectuator-to-joint line segment. (“A robotic arm as referred to herein is an arm of a robot having a plurality of segments. A pose (i.e., position and orientation) of the robotic arm may be determined by a plurality of values (e.g., angle values) each of which corresponds to an angle formed between consecutive operable segments of the robotic arm.” See at least [0011]; “the robot's arm may include multiple segments, wherein a connection between adjacent segments is referred to as a joint.” See at least [0013]; “obtaining information of a current pose of a robotic arm having a plurality of operable segments, wherein the information includes a plurality of values, each of which corresponds to an angle formed between consecutive operable segments of the robotic arm;” See at least Claim 1; “Robot path planning may usually be performed in a discretized space of joint angles. Each joint angle may be discretized by an interval 6 (also referred to herein as an angle step-value). For example, for a 6-DOF robot, any particular position may be represented by a joint angle configuration J=(j.sub.1, j.sub.2, j.sub.3, j.sub.4, j.sub.5, j.sub.6), where j.sub.i is the joint angle of the i-th joint. The term configuration is used to represent the combined joint angles of all joints, which uniquely determines the end-effector's pose. According to one embodiment, after the robot moves to a next position, each of the joints may be in one of the joint angles at j.sub.i−δ, j.sub.i, j.sub.i, +δ, i=1, 2, . . . , 6. ... Therefore, there may be 3.sup.6−1=728 possible moves (for a total of N=6 joints) from one configuration to the next.” See at least [0014]; “wherein the angle step value is to be used to determine a plurality of candidate next poses of the plurality of operable segments;” See at least claim 1.; Examiner Interpretation: The plurality of arm segments connected by joints is interpreted as the series of line segments along the robot arm. At least one is an end-effectuator-to-joint line segment because the configuration “determines the end-effector's pose.”) Regarding Claim 17, Mao further teaches wherein: generating the plurality of controller-determined candidate states includes determining the one or more controller-determined line segments from a first point on the robot arm to each of one or more other points on the robot arm; (“A robotic arm as referred to herein is an arm of a robot having a plurality of segments. A pose (i.e., position and orientation) of the robotic arm may be determined by a plurality of values (e.g., angle values) each of which corresponds to an angle formed between consecutive operable segments of the robotic arm.” See at least [0011]; “the robot's arm may include multiple segments, wherein a connection between adjacent segments is referred to as a joint.” See at least [0013]; “Robot path planning may usually be performed in a discretized space of joint angles. Each joint angle may be discretized by an interval 6 (also referred to herein as an angle step-value). For example, for a 6-DOF robot, any particular position may be represented by a joint angle configuration J=(j.sub.1, j.sub.2, j.sub.3, j.sub.4, j.sub.5, j.sub.6), where j.sub.i is the joint angle of the i-th joint. The term configuration is used to represent the combined joint angles of all joints, which uniquely determines the end-effector's pose. According to one embodiment, after the robot moves to a next position, each of the joints may be in one of the joint angles at j.sub.i−δ, j.sub.i, j.sub.i, +δ, i=1, 2, . . . , 6. ... Therefore, there may be 3.sup.6−1=728 possible moves (for a total of N=6 joints) from one configuration to the next.” See at least [0014]; Examiner Interpretation: Every joint angle configuration constitutes for each line segment, determining a candidate state and including it in the plurality of candidate states since the line segments make up the angles between the joints.)Examiner Interpretation: A joint constitutes a point on the robot arm, therefore, since adjacent segments are each connected with a joint, this constitutes determining a set of line segments from a first point to one or more other points on the robot arm.) and the first point includes the end effectuator (EE) of the robot arm, at least one point of the one or more other points includes a joint of the robot arm, or a combination thereof. (“The goal pose (i.e., final position and orientation) 106 may represent a desired pose of the robot's arm. It must be appreciated that the robot's arm may include an end-effector (i.e., a device or tool connected at an end of the robot's arm).” See at least [0013]; “for a 6-DOF robot, any particular position may be represented by a joint angle configuration J=(j.sub.1, j.sub.2, j.sub.3, j.sub.4, j.sub.5, j.sub.6), where j.sub.i is the joint angle of the i-th joint. The term configuration is used to represent the combined joint angles of all joints, which uniquely determines the end-effector's pose.” See at least [0014]; Examiner Interpretation: The combined joint angles determining the end-effector's post constitutes a first point including the end effectuator of the robot arm and the one or more points includes a joint of the robot arm.) Regarding Claim 18, Mao further teaches wherein: determining the set of controller-determined verified states includes, for each controller-determined candidate state of the plurality of controller-determined candidate states: determining a distance between the controller-determined candidate state and the object; and performing a first comparison based on the distance and the clearance threshold value. (“selecting one or more of the plurality of candidate next poses based on at least one criterion;” See at least Claim 1; “The method of claim 1, wherein the at least one criterion corresponds to each of the one or more candidate next poses being a predetermined distance away from one or more obstacles observed between the current pose and the desired pose.” See at least Claim 3; “the neighbor reduction may be based on obstacle awareness. If the movement from node n to a neighbor hits an obstacle or is within a distance which is not allowed from the obstacle, the direction of the move may be added to a set of avoidable directions for node n. Denote that set by A(n). After all neighbors of node n have been visited, the set A(n) contains motion directions that should be avoided. This set may be applied to the direct neighbors of node n when it comes to the time to explore those neighbors.” See at least [0020]) Regarding Claim 20, Mao teaches A non-transitory computer-readable medium storing instructions that, when executed by one or more processors of a controller cause the controller to: (“The present disclosure is directed to a method and system for robot path planning while avoiding obstacles.” See at least [0011]; “the present teaching may be implemented on a computer such as computer 500 via its hardware, software program, firmware, or a combination thereof.” See at least [0026]; See at least [0028] for the “Tangible non-transitory “storage” type media.”) generate, based on an end effectuator (EE), a joint, or a combination thereof of a robot arm of the robot for the robot arm in a first state, a plurality of candidate states along one or more controller-determined line segments associated with the first state of the robot arm; (“A robotic arm as referred to herein is an arm of a robot having a plurality of segments. A pose (i.e., position and orientation) of the robotic arm may be determined by a plurality of values (e.g., angle values) each of which corresponds to an angle formed between consecutive operable segments of the robotic arm.” See at least [0011]; “It must be appreciated that the robot's arm may include an end-effector (i.e., a device or tool connected at an end of the robot's arm). … for a 6-DOF robot, any particular position may be represented by a joint angle configuration J=(j.sub.1, j.sub.2, j.sub.3, j.sub.4, j.sub.5, j.sub.6), where j.sub.i is the joint angle of the i-th joint. The term configuration is used to represent the combined joint angles of all joints, which uniquely determines the end-effector's pose.” See at least [0013-0014]; “computing an angle step-value for the current pose of the robotic arm based on a function of a distance between the current pose and the desired pose, wherein the angle step value is to be used to determine a plurality of candidate next poses of the plurality of operable segments;” See at least Claim 1; Also see at least [0016-0018]; Examiner Interpretation: The computer 500 is interpreted as a controller. The current pose or the desired pose is the first state and candidate next poses are candidate states. The plurality of arm segments connected by joints is interpreted as the series of line segments. The configuration of angles between each joint is determined for the possible moves (candidate states) and therefore the determined plurality of candidate states are along series of line segments of the robot arm.) based on the plurality of controller-determined candidate states, determine a set of controller-determined verified states, where each controller-determined verified state included in the set of controller-determined verified states satisfies a clearance threshold value with respect to an object; (“selecting one or more of the plurality of candidate next poses based on at least one criterion;” See at least Claim 1; “The method of claim 1, wherein the at least one criterion corresponds to each of the one or more candidate next poses being a predetermined distance away from one or more obstacles observed between the current pose and the desired pose.” See at least Claim 3; “the neighbor reduction may be based on obstacle awareness. If the movement from node n to a neighbor hits an obstacle or is within a distance which is not allowed from the obstacle, the direction of the move may be added to a set of avoidable directions for node n. Denote that set by A(n). After all neighbors of node n have been visited, the set A(n) contains motion directions that should be avoided. This set may be applied to the direct neighbors of node n when it comes to the time to explore those neighbors.” See at least [0020]) determine, based on a cost function, a controller-determined trajectory between the first state and a second state, the second state included in the set of controller-determined verified states; (“After the neighborhood reduction, a trajectory is determined based on the reduced neighborhood which minimizes a cost function (step 212), using the conventional A* algorithm.” See at least [0021]; “At step 308, ignore the preceding waypoints whose direct paths to the current waypoint p.sub.k collide with the obstacle. Then for each of the remaining non-colliding waypoints {p.sub.m}, a cost may be computed. The cost may be computed as a weighted sum of the Euclidean distance from the current waypoint p.sub.k to the preceding waypoint p.sub.m and the cost at p.sub.m. The cost at p.sub.m was already computed when the waypoint p.sub.m was visited the first time. Intuitively this is the cost to go from the current waypoint p.sub.k to the first waypoint via the waypoint p.sub.m. At step 312, the waypoint among all the preceding waypoints {p.sub.m} with the minimum cost is picked.” See at least [0023-0024]; Examiner Interpretation: The selected candidate waypoint based on the cost function is the second state.) Mao does not explicitly teach, but Utsumi teaches and control the robot arm to move along the trajectory. (“The operation control unit 43 sends an operation command to a robot drive part 45 for driving the robot 1. The robot drive part 45 includes an electrical circuit configured to drive a robot drive motor 22. The robot drive part 45 supplies electricity to the robot drive motor 22 based on an operation command.” See at least [0041]) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the teachings of Mao to further include the teachings of Utsumi with a reasonable expectation of success to improve the automation of robot teaching and welding. (See at least [0009-0011] and [0074]) Claim(s) 4 and 15 is/are rejected under 35 U.S.C. 103 as being unpatentable over Mao (IDS: US 20210178590 A1) in view of Utsumi (US 20240123606 A1) and He (US 20240278432 A1). Regarding Claims 4 and 15, Modified Mao does not explicitly teach, but He teaches wherein generating the plurality of controller-determined candidate states includes: determining, for each controller-determined line segment of the one or more controller-determined line segments, a number of controller-determined candidate states associated with the controller-determined line segment based on a length of the controller-determined line segment. (“At step 808, the processor 102 is configured to determine the number of the waypoints based on total curve or arc length of the path.” See at least [0018]) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the teachings of modified Mao to further include the teachings of He with a reasonable expectation of success to improve the automation, accuracy, and adaptability of waypoint configuration. (See at least [0006-0007] and [0016-0018]) Claim(s) 5 is/are rejected under 35 U.S.C. 103 as being unpatentable over Mao (IDS: US 20210178590 A1) in view of Utsumi (US 20240123606 A1) and Wong (US 20230109223 A1). Regarding Claim 5, Modified Mao does not explicitly teach, but Wong teaches wherein generating the plurality of controller-determined candidate states includes: determining, for each controller-determined line segment of the one or more controller-determined line segments, a number of controller-determined candidate states associated with the controller-determined line segment and that are evenly spaced along the controller-determined line segment. (“to divide the proposed move into a sequence of discrete increments, and evaluate the robot criteria at each of the increments rather than in a continuous path along the way. A proposed home move or a new proposed branch node may be divided into discrete increments using either joint space interpolation or linear interpolation. FIG. 5 illustrates the proposed move divided into increments using joint space interpolation—where the joint motions required to move from the node 510 to the node 520 are equally divided into five increments.” See at least [0050-0051] and fig. 5, wherein the nodes are candidate states.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the teachings of modified Mao to further include the teachings of Wong with a reasonable expectation of success to more efficiently and robustly evaluate a path for errors and collisions. (See at least [0042], [0050-0051], and [0055]) Claim(s) 9 is/are rejected under 35 U.S.C. 103 as being unpatentable over Mao (IDS: US 20210178590 A1) in view of Utsumi (US 20240123606 A1) and Huang (US 20210401520 A1). Regarding Claim 9 Mao further teaches wherein: determining the set of controller-determined verified states includes, for each controller-determined candidate state of the plurality of controller-determined candidate states: determining a distance between the controller-determined candidate state and the object; performing a first comparison based on the distance and the clearance threshold value; (“selecting one or more of the plurality of candidate next poses based on at least one criterion;” See at least Claim 1; “The method of claim 1, wherein the at least one criterion corresponds to each of the one or more candidate next poses being a predetermined distance away from one or more obstacles observed between the current pose and the desired pose.” See at least Claim 3; “the neighbor reduction may be based on obstacle awareness. If the movement from node n to a neighbor hits an obstacle or is within a distance which is not allowed from the obstacle, the direction of the move may be added to a set of avoidable directions for node n. Denote that set by A(n). After all neighbors of node n have been visited, the set A(n) contains motion directions that should be avoided. This set may be applied to the direct neighbors of node n when it comes to the time to explore those neighbors.” See at least [0020]) Modified Mao does not explicitly teach, but Huang teaches and performing a second comparison based on the distance and another threshold; and the controller-determined candidate state is excluded from the set of controller-determined verified states based on the distance between the controller-determined candidate state and the object being greater than or equal to the other threshold. (“the collision boundary is configured to provide (i) a first threshold distance between the contact point and the object and/or (ii) a first angular threshold between the contact point and the object. In certain implementations, the computer-executable instructions further cause the at least one processor to: determine that the contact point is within a second threshold distance and/or angle from the object, the second threshold distance and/or angle being greater than the first threshold distance and/or angle, wherein the determination that moving the robotic arm according to the first user input would cause the contact point to come into contact with or cross the collision boundary is performed in response to determining that the contact point is within the second threshold distance and/or angle from the object. … determine that the contact point is within the first threshold distance and/or angle from the object, identify a vector component of the user input having a direction that would cause the contact point of the robotic arm to move away from the object, and guide the movement of the robotic arm according to the identified vector component such that the contact point moves away from the object.” See at least [0009-0011]; Examiner Interpretation: At least the guiding the robot away from the object is equivalent to excluding the candidate states because the potential location(s) interfering with the object are avoided/prevented.) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the teachings of modified Mao to further include the teachings of Huang with a reasonable expectation of success to improve safety of the robot operation. (See at least [0003-0004] and [0173]) Claim(s) 10 and 19 is/are rejected under 35 U.S.C. 103 as being unpatentable over Mao (IDS: US 20210178590 A1) in view of Utsumi (US 20240123606 A1) and Terada (US 20200189101 A1). Regarding Claim 10, Mao further teaches wherein determining the controller-determined trajectory includes applying the cost function to the set of controller-determined verified states (“After the neighborhood reduction, a trajectory is determined based on the reduced neighborhood which minimizes a cost function (step 212), using the conventional A* algorithm.” See at least [0021]; “At step 308, ignore the preceding waypoints whose direct paths to the current waypoint p.sub.k collide with the obstacle. Then for each of the remaining non-colliding waypoints {p.sub.m}, a cost may be computed. The cost may be computed as a weighted sum of the Euclidean distance from the current waypoint p.sub.k to the preceding waypoint p.sub.m and the cost at p.sub.m. The cost at p.sub.m was already computed when the waypoint p.sub.m was visited the first time. Intuitively this is the cost to go from the current waypoint p.sub.k to the first waypoint via the waypoint p.sub.m. At step 312, the waypoint among all the preceding waypoints {p.sub.m} with the minimum cost is picked.” See at least [0023-0024]) Modified Mao does not explicitly teach, but Terada teaches wherein determining the controller-determined trajectory includes applying the verified states during a time period, and further comprising: determining whether the time period is lapsed; and stopping application of the (“the trajectory candidates 71a-71e are generated in the predetermined period TS between time t2 and time t3, as shown in FIG. 3. Then, by the time when time t3 is reached, the trajectory 70 is selected from the trajectory candidates 71a-71e. A trajectory 70 on which the mobile body 1 or the gripper 20 moves, between time t2 and time t3, was generated between time t1 and time t2. Thus, the computing unit 61 periodically generates the trajectory candidates 71a-71e that can he connected in the next period (from time t3) to the trajectory 70 of the current time (time t2 to time t3). The computing unit 61 generates various trajectory candidates 71a-71e that satisfy the predetermined first restraint conditions, as many as possible in a single predetermined period TS.” See at least [0052]) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the teachings of modified Mao to further include the teachings of Terada with a reasonable expectation of success to “reduce the computation time while curbing reduction of the accuracy, when it generates a trajectory.” (See at least [0004]) Regarding Claim 19, Mao further teaches wherein determining the controller-determined trajectory includes applying the cost function to the set of controller-determined verified states (“After the neighborhood reduction, a trajectory is determined based on the reduced neighborhood which minimizes a cost function (step 212), using the conventional A* algorithm.” See at least [0021]; “At step 308, ignore the preceding waypoints whose direct paths to the current waypoint p.sub.k collide with the obstacle. Then for each of the remaining non-colliding waypoints {p.sub.m}, a cost may be computed. The cost may be computed as a weighted sum of the Euclidean distance from the current waypoint p.sub.k to the preceding waypoint p.sub.m and the cost at p.sub.m. The cost at p.sub.m was already computed when the waypoint p.sub.m was visited the first time. Intuitively this is the cost to go from the current waypoint p.sub.k to the first waypoint via the waypoint p.sub.m. At step 312, the waypoint among all the preceding waypoints {p.sub.m} with the minimum cost is picked.” See at least [0023-0024]) Modified Mao does not explicitly teach, but Terada teaches wherein determining the trajectory includes applying the during a time period, and further comprising: determining whether the time period is lapsed; and stopping application of the (“the trajectory candidates 71a-71e are generated in the predetermined period TS between time t2 and time t3, as shown in FIG. 3. Then, by the time when time t3 is reached, the trajectory 70 is selected from the trajectory candidates 71a-71e. A trajectory 70 on which the mobile body 1 or the gripper 20 moves, between time t2 and time t3, was generated between time t1 and time t2. Thus, the computing unit 61 periodically generates the trajectory candidates 71a-71e that can he connected in the next period (from time t3) to the trajectory 70 of the current time (time t2 to time t3). The computing unit 61 generates various trajectory candidates 71a-71e that satisfy the predetermined first restraint conditions, as many as possible in a single predetermined period TS.” See at least [0052]) It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to modify the teachings of modified Mao to further include the teachings of Terada with a reasonable expectation of success to “reduce the computation time while curbing reduction of the accuracy, when it generates a trajectory.” (See at least [0004]) 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 Karston G Evans whose telephone number is (571)272-8480. The examiner can normally be reached Mon-Fri 9:00-5:00. 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, Abby Lin can be reached at (571)270-3976. 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. /K.G.E./Examiner, Art Unit 3657 /ABBY LIN/Supervisory Patent Examiner, Art Unit 3657
Read full office action

Prosecution Timeline

Jun 18, 2024
Application Filed
Nov 05, 2025
Non-Final Rejection — §103
Feb 25, 2026
Response Filed
Mar 07, 2026
Final Rejection — §103
Apr 07, 2026
Response after Non-Final Action

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12602054
CONTROL DEVICE FOR MOBILE OBJECT, CONTROL METHOD FOR MOBILE OBJECT, AND STORAGE MEDIUM
2y 5m to grant Granted Apr 14, 2026
Patent 12600037
REMOTE CONTROL ROBOT, REMOTE CONTROL ROBOT CONTROL SYSTEM, AND REMOTE CONTROL ROBOT CONTROL METHOD
2y 5m to grant Granted Apr 14, 2026
Patent 12589493
INFORMATION PROCESSING APPARATUS AND STORAGE MEDIUM
2y 5m to grant Granted Mar 31, 2026
Patent 12566457
BULK STORE SLOPE ADJUSTMENT VIA TRAVERSAL INCITED SEDIMENT GRAVITY FLOW
2y 5m to grant Granted Mar 03, 2026
Patent 12552023
METHOD FOR CONTROLLING A ROBOT, AND SYSTEM
2y 5m to grant Granted Feb 17, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

3-4
Expected OA Rounds
70%
Grant Probability
91%
With Interview (+21.2%)
2y 9m
Median Time to Grant
Moderate
PTA Risk
Based on 143 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in for Full Analysis

Enter your email to receive a magic link. No password needed.

Free tier: 3 strategy analyses per month