DETAILED CORRESPONDENCE
This is the first office action regarding application number 19/125,605, filed on 29 April 2025.
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 .
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 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.
Claim Interpretation
The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked.
As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph:
(A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function;
(B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and
(C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function.
Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function.
Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function.
Claim limitations in this application that use the word “means” (or “step”) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action.
This application includes one or more claim limitations that do not use the word “means,” but are nonetheless being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, because the claim limitations use a generic placeholder that is coupled with functional language without reciting sufficient structure to perform the recited function and the generic placeholder is not preceded by a structural modifier. Such claim limitations are:
a. “priority setter” in claims 1-4, 10, 12-13, 17, 19-20, 22-23
b. “determiner” in claims 1 and 27
c. “path setter” in claims 1 and 12
Because these claim limitations are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, they are being interpreted to cover the corresponding structure described in the specification as performing the claimed function, and equivalents thereof. Regarding the limitations reciting the “priority setter”, “determiner” and “path setter”, the specification discloses a computer in Figure 1 and [0025] and an algorithm for performing the claimed functions in Figure 5 and its corresponding paragraphs, in the specification filed on 29 April 2025.
If applicant does not intend to have these limitations interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitations to avoid them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph (e.g., by reciting sufficient structure to perform the claimed function); or (2) present a sufficient showing that the claim limitations recite sufficient structure to perform the claimed function so as to avoid them being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-4, 10-13, 17, 19-20, 22-23, 27 and 29 rejected under 35 U.S.C. 101 because the claimed invention is directed to mental processes without significantly more.
Regarding Claim 1
Claim 1 recites a motion path setting device, comprising:
a priority setter configured to set a use priority of each of a plurality of candidate motion paths of a robot;
a determiner configured to select at least one candidate motion path of the plurality of candidate motion paths based on the use priority and perform an interference determination process to determine whether the robot interferes with an obstacle for the selected at least one candidate motion path; and
a path setter configured to set a motion path of the robot based on a candidate motion path of the plurality of candidate motion paths on which the robot is determined not to interfere with the obstacle by the determiner.
Claim analysis via 2019 PEG
Step 1: Statutory Category – Yes
The claim recites the “priority setter”, “determiner” and “path setter”, as discussed above. Thus, the claim falls within one of the four statutory categories because the claim is to a manufacture/machine. See MPEP 2106.03.
Step 2A Prong One Evaluation: Judicial Exception – Yes – Mental processes
Claims are to be analyzed to determine whether it recites subject matter that falls within one of the following groups of abstract ideas: a) mathematical concepts, b) mental processes, and/or c) certain methods of organizing human activity.
The Office submits that the foregoing bolded limitation(s) constitutes judicial exceptions in terms of “mental processes” because under its broadest reasonable interpretation, the claim covers performance of the limitation in the human mind.
The claim recites the limitations of “set a use priority of each of a plurality of candidate motion paths of a robot”, “select at least one candidate motion path of the plurality of candidate motion paths based on the use priority and perform an interference determination process to determine whether the robot interferes with an obstacle for the selected at least one candidate motion path” and “set a motion path of the robot based on a candidate motion path of the plurality of candidate motion paths on which the robot is determined not to interfere with the obstacle”. These limitations, as drafted, are a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer components “priority setter”, “determiner” and “path setter”. That is, other than reciting the “priority setter”, “determiner” and “path setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses a person mentally labeling a plurality of candidate paths with priority numbers, selecting one of the candidate paths, determining if the selected candidate path will interfere with an obstacle, and setting the selected candidate path for a robot if it does not interfere with the obstacle. The mere nominal recitation of the computer components does not take the claim limitations out of the mental process grouping. Thus, the claim recites a mental process.
Accordingly, the claim is directed to an abstract idea.
Step 2A Prong Two Evaluation: Practical Application - No
The claims are evaluated whether as a whole they integrate the recited judicial exception into a practical application. As noted in the 2019 PEG, it must be determined whether any additional elements in the claim beyond the abstract idea integrate the exception into a practical application in a manner that imposes a meaningful limit on the judicial exception. The courts have indicated that additional elements merely using a computer to implement an abstract idea, adding insignificant extra solution activity, or generally linking use of a judicial exception to a particular technological environment or field of use do not integrate a judicial exception into a “practical application.”
In the present case, the additional limitations beyond the above-noted abstract idea are as follows (where the underlined portions are the “additional limitations” while the bolded portions continue to represent the “abstract idea”).
The claim recites additional elements “priority setter”, “determiner” and “path setter”. These elements do not integrate the abstract idea into a practical application because they are described at high level of generality and are merely a computer being used as a tool to perform the abstract idea. See MPEP 2106.04(d)(I). Accordingly, even in combination, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
Accordingly, the claim is directed to an abstract idea.
Step 2B Evaluation: Inventive concept - No
The claim(s) is evaluated whether the claim as a whole amounts to significantly more than the recited exception, i.e., whether any additional element, or combination of additional elements, adds an inventive concept to the claim.
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed with respect to Step 2A Prong Two, for the additional elements in the claim in which the “priority setter”, “determiner” and “path setter” are merely a tool being used to perform the abstract idea, the same analysis applies here as above. Merely using a computer as a tool to perform an abstract idea cannot integrate a judicial exception into a practical application or provide an inventive concept.
Claim 1 is not patent eligible.
Regarding Claims 2-4, 10-13, 17, 19-20, 22-23 and 27
Claim 2 recites the motion path setting device according to claim 1,
wherein the priority setter sets the use priority based on obstacle information about the obstacle.
Claim 3 recites the motion path setting device according to claim 2,
wherein the priority setter calculates an obstacle density based on the obstacle information for each of a plurality of positions in a multidimensional space and sets the use priority based on the calculated obstacle density, the obstacle density varies based on a degree to which the obstacle occupies an area around a corresponding position of the plurality of positions, and the multidimensional space is a physical workspace of the robot or a configuration space of the robot.
Claim 4 recites the motion path setting device according to claim 1,
wherein the priority setter sets the use priority based on a potential field being set in the multidimensional space being the physical workspace of the robot or the configuration space of the robot, and
a position in the potential field has a potential indicating a degree of acceptability for the robot to pass through the position in the multidimensional space.
Claim 10 recites the motion path setting device according to claim 3,
wherein the priority setter sets a plurality of representative points on the obstacle in the multidimensional space, and
the priority setter sets the obstacle density at a position in the multidimensional space based on at least one of the plurality of representative points located within a predetermined range from the position.
Claim 11 recites the motion path setting device according to claim 3,
wherein the obstacle density at a position in the multidimensional space varies based on proximity of the position to the obstacle around the position.
Claim 12 recites the motion path setting device according to claim 1,
wherein the priority setter sets the use priority based on a past motion path being the motion path set by the path setter in a past.
Claim 13 recites the motion path setting device according to claim 12,
wherein the priority setter sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the past motion path in the multidimensional space being the physical workspace of the robot or the configuration space of the robot.
Claim 17 recites the motion path setting device according to claim 12,
wherein the priority setter sets the use priority based on a result of motion of the robot along the past motion path.
Claim 19 recites the motion path setting device according to claim 1,
wherein the priority setter sets the use priority based on a specific area in the multidimensional space being the physical workspace of the robot or the configuration space of the robot, and the specific area is an area through which the robot is to avoid passing.
Claim 20 recites the motion path setting device according to claim 19,
wherein the priority setter sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the specific area in the multidimensional space.
Claim 22 recites the motion path setting device according to claim 2,
wherein the priority setter sets the use priority based on a reference path being a shortest path connecting a starting point and an ending point of motion of the robot in the multidimensional space being the physical workspace of the robot or the configuration space of the robot.
Claim 23 recites the motion path setting device according to claim 22,
wherein the priority setter sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the reference path in the multidimensional space.
Claim 27 recites the motion path setting device according to claim 1,
wherein the determiner performs the interference determination process selectively for the at least one candidate motion path of the plurality of candidate motion paths selected based on the use priority, or
the determiner performs the interference determination process for one or more of the plurality of candidate motion paths selected in an order based on the use priority.
Claim analysis via 2019 PEG
Step 1: Statutory category – Yes
The claims recite the “priority setter”, “determiner” and “path setter”, as discussed above. Thus, the claims fall within one of the four statutory categories because the claims are to a manufacture/machine. See MPEP 2106.03.
Step 2A Prong One Evaluation: Judicial Exception – Yes – Mental processes
Claims are to be analyzed to determine whether it recites subject matter that falls within one of the following groups of abstract ideas: a) mathematical concepts, b) mental processes, and/or c) certain methods of organizing human activity.
The Office submits that the foregoing bolded limitation(s) constitutes judicial exceptions in terms of “mental processes” because under its broadest reasonable interpretation, the claims cover performance of the limitation in the human mind.
Regarding claim 2, the claim recites the limitation of “sets the use priority based on obstacle information about the obstacle.”. This limitation, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “priority setter”. That is, other than reciting the “priority setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by further setting the use priority based on obstacle information. The mere nominal recitation of the priority setter does not take the claim limitation out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 3, the claim recites the limitation of “calculates an obstacle density….”. This limitation, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “priority setter”. That is, other than reciting the “priority setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by further calculating obstacle density at a plurality of positions via the aid of pen and paper. The mere nominal recitation of the priority setter does not take the claim limitation out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 4, the claim recites the limitations of “sets the use priority based on a potential field being set in the multidimensional space being the physical workspace of the robot or the configuration space of the robot” and “a position in the potential field has a potential indicating a degree of acceptability for the robot to pass through the position in the multidimensional space.”. These limitations, as drafted, are a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “priority setter”. That is, other than reciting the “priority setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by further setting the use priority based on a degree of acceptability for the robot to pass through various positions. The mere nominal recitation of the priority setter does not take the claim limitations out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 10, the claim recites the limitations of “sets a plurality of representative points on the obstacle in the multidimensional space” and “sets the obstacle density at a position in the multidimensional space based on at least one of the plurality of representative points located within a predetermined range from the position.”. These limitations, as drafted, are a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “priority setter”. That is, other than reciting the “priority setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by further setting representative points on the obstacle and setting the obstacle density based on the points, via the aid of pen and paper. The mere nominal recitation of the priority setter does not take the claim limitations out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 11, the claim recites the limitation of “wherein the obstacle density at a position in the multidimensional space varies based on proximity of the position to the obstacle around the position.”. This limitation, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind. That is, nothing in the claim elements precludes the step from practically being performed in the mind. For example, the claim encompasses the person performing the path setting mental process discussed above, by determining the obstacle density based on proximity of a position to the obstacle. Thus, the claim recites a mental process.
Regarding claim 12, the claim recites the limitation of “sets the use priority based on a past motion path being the motion path set in the past”. This limitation, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer components “priority setter” and “path setter”. That is, other than reciting the “priority setter” and “path setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by further setting the use priority passed on the proximity of each candidate path to a past motion path. The mere nominal recitation of the priority setter and path setter does not take the claim limitation out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 13, the claim recites the limitation of “sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the past motion path in the multidimensional space being the physical workspace of the robot or the configuration space of the robot.”. This limitation, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “priority setter”. That is, other than reciting the “priority setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by further setting the use priority passed on the proximity of each candidate path to a past motion path. The mere nominal recitation of the priority setter does not take the claim limitation out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 17, the claim recites the limitation of “sets the use priority based on a result of motion of the robot along the past motion path.”. This limitation, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “priority setter”. That is, other than reciting the “priority setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by further setting the use priority based on a result of motion of the robot along the past motion path. The mere nominal recitation of the priority setter does not take the claim limitation out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 19, the claim recites the limitation of “sets the use priority based on a specific area in the multidimensional space being the physical workspace of the robot or the configuration space of the robot, and the specific area is an area through which the robot is to avoid passing.”. This limitation, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “priority setter”. That is, other than reciting the “priority setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by fut6her setting the use priority for a specific area which the robot is to avoid passing. The mere nominal recitation of the priority setter does not take the claim limitation out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 20, the claim recites the limitation of “sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the specific area in the multidimensional space.”. This limitation, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “priority setter”. That is, other than reciting the “priority setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by further setting the use priority based on a proximity of each candidate path to a specific area. The mere nominal recitation of the priority setter does not take the claim limitation out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 22, the claim recites the limitation of “sets the use priority based on a reference path being a shortest path connecting a starting point and an ending point of motion of the robot in the multidimensional space being the physical workspace of the robot or the configuration space of the robot.”. This limitation, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “priority setter”. That is, other than reciting the “priority setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by setting a user priority based on a reference path being a shortest path connecting a starting point and an ending point of motion of the robot. The mere nominal recitation of the priority setter does not take the claim limitation out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 23, the claim recites the limitation of “sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the reference path in the multidimensional space.”. This limitation, as drafted, is a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “priority setter”. That is, other than reciting the “priority setter”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by setting a user priority based on proximity of the candidate motion path to the reference path in the multidimensional space. The mere nominal recitation of the priority setter does not take the claim limitation out of the mental process grouping. Thus, the claim recites a mental process.
Regarding claim 27, the claim recites the limitations of “performs the interference determination process selectively for the at least one candidate motion path of the plurality of candidate motion paths selected based on the use priority” and “performs the interference determination process for one or more of the plurality of candidate motion paths selected in an order based on the use priority.”. These limitations, as drafted, are a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer components “priority setter” and “determiner”. That is, other than reciting the “priority setter” and “determiner”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses the person performing the path setting mental process discussed above, by performing the interference determination process for one or more of the plurality of candidate motion paths selected in an order based on the use priority. The mere nominal recitation of the priority setter and determiner does not take the claim limitations out of the mental process grouping. Thus, the claim recites a mental process.
Accordingly, the claims are directed to an abstract idea.
Step 2A Prong Two Evaluation: Practical Application - No
The claims are evaluated whether as a whole they integrate the recited judicial exception into a practical application. As noted in the 2019 PEG, it must be determined whether any additional elements in the claim beyond the abstract idea integrate the exception into a practical application in a manner that imposes a meaningful limit on the judicial exception. The courts have indicated that additional elements merely using a computer to implement an abstract idea, adding insignificant extra solution activity, or generally linking use of a judicial exception to a particular technological environment or field of use do not integrate a judicial exception into a “practical application.”
In the present case, the additional limitations beyond the above-noted abstract idea are as follows (where the underlined portions are the “additional limitations” while the bolded portions continue to represent the “abstract idea”).
Claim 11 does not recite any additional elements.
Claims 2-4, 10, 12-13, 17, 19-20, 22-23 and 27 recite additional elements “priority setter”, “determiner” and “path setter”. These elements do not integrate the abstract idea into a practical application because they are described at high level of generality and are merely a computer being used as a tool to perform the abstract idea. See MPEP 2106.04(d)(I). Accordingly, even in combination, these additional elements do not integrate the abstract idea into a practical application because they do not impose any meaningful limits on practicing the abstract idea.
Accordingly, the claims are directed to an abstract idea.
Step 2B Evaluation: Inventive concept - No
The claim(s) is evaluated whether the claim as a whole amounts to significantly more than the recited exception, i.e., whether any additional element, or combination of additional elements, adds an inventive concept to the claim.
The claims not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed with respect to Step 2A Prong Two, for the additional elements in the claim in which the “priority setter”, “determiner” and “path setter” are merely a tool being used to perform the abstract idea, the same analysis applies here as above. Merely using a computer as a tool to perform an abstract idea cannot integrate a judicial exception into a practical application or provide an inventive concept.
Claims 2-4, 10-13, 17, 19-20, 22-23 and 27 are not patent eligible.
Regarding Claim 29
Claim 29 recites a non-transitory computer-readable recording medium storing a program for causing a computer to perform operations comprising:
setting a use priority of each of a plurality of candidate motion paths of a robot;
selecting at least one candidate motion path of the plurality of candidate motion paths based on the use priority and performing an interference determination process to determine whether the robot interferes with an obstacle for the selected at least one candidate motion path; and
setting a motion path of the robot based on a candidate motion path of the plurality of candidate motion paths on which the robot is determined not to interfere with the obstacle.
Claim analysis via 2019 PEG
Step 1: Statutory Category – Yes
The claim recites a non-transitory computer-readable recording medium. Thus, the claim falls within one of the four statutory categories because the claim is to a manufacture. See MPEP 2106.03.
Step 2A Prong One Evaluation: Judicial Exception – Yes – Mental processes
Claims are to be analyzed to determine whether it recites subject matter that falls within one of the following groups of abstract ideas: a) mathematical concepts, b) mental processes, and/or c) certain methods of organizing human activity.
The Office submits that the foregoing bolded limitation(s) constitutes judicial exceptions in terms of “mental processes” because under its broadest reasonable interpretation, the claim covers performance of the limitation in the human mind.
The claim recites the limitations of “setting a use priority of each of a plurality of candidate motion paths of a robot;”, “selecting at least one candidate motion path of the plurality of candidate motion paths based on the use priority and performing an interference determination process to determine whether the robot interferes with an obstacle for the selected at least one candidate motion path;” and “setting a motion path of the robot based on a candidate motion path of the plurality of candidate motion paths on which the robot is determined not to interfere with the obstacle.”. These limitations, as drafted, are a process that, under its broadest reasonable interpretation, covers performance of the limitation in the mind but for the recitation of the generic computer component “non-transitory computer-readable recording medium”. That is, other than reciting the “non-transitory computer-readable recording medium”, nothing in the claim elements precludes the step from practically being performed in the mind. For example, but for the generic computer language, the claim encompasses a person mentally labeling a plurality of candidate paths with priority numbers, selecting one of the candidate paths, determining if the selected candidate path will interfere with an obstacle, and setting the selected candidate path for a robot if it does not interfere with the obstacle. The mere nominal recitation of the non-transitory computer-readable recording medium does not take the claim limitations out of the mental process grouping. Thus, the claim recites a mental process.
Accordingly, the claim is directed to an abstract idea.
Step 2A Prong Two Evaluation: Practical Application - No
The claims are evaluated whether as a whole they integrate the recited judicial exception into a practical application. As noted in the 2019 PEG, it must be determined whether any additional elements in the claim beyond the abstract idea integrate the exception into a practical application in a manner that imposes a meaningful limit on the judicial exception. The courts have indicated that additional elements merely using a computer to implement an abstract idea, adding insignificant extra solution activity, or generally linking use of a judicial exception to a particular technological environment or field of use do not integrate a judicial exception into a “practical application.”
In the present case, the additional limitations beyond the above-noted abstract idea are as follows (where the underlined portions are the “additional limitations” while the bolded portions continue to represent the “abstract idea”).
The claim recites an additional element “non-transitory computer-readable recording medium”. This element does not integrate the abstract idea into a practical application because it is described at high level of generality and is merely a computer being used as a tool to perform the abstract idea. See MPEP 2106.04(d)(I). Accordingly, even in combination, this additional element does not integrate the abstract idea into a practical application because it does not impose any meaningful limits on practicing the abstract idea.
Accordingly, the claim is directed to an abstract idea.
Step 2B Evaluation: Inventive concept - No
The claim(s) is evaluated whether the claim as a whole amounts to significantly more than the recited exception, i.e., whether any additional element, or combination of additional elements, adds an inventive concept to the claim.
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. As discussed with respect to Step 2A Prong Two, for the additional element in the claim in which the “non-transitory computer-readable recording medium” is merely a tool being used to perform the abstract idea, the same analysis applies here as above. Merely using a computer as a tool to perform an abstract idea cannot integrate a judicial exception into a practical application or provide an inventive concept.
Claim 29 is not patent eligible.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1, 27 and 29 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Okabayashi et al. (US 5530791 A and Okabayashi hereinafter).
Regarding Claim 1
Okabayashi teaches a motion path setting device (see Col. 2, lines 1-38), comprising:
a priority setter configured to set a use priority of each of a plurality of candidate motion paths of a robot (see Fig. 3B, template limiting section 48 and priority order granting section 49; Fig. 37B, step 106; Col. 6, lines 52-58, "The template limiting section 48 limits the available trajectory templates T from among the trajectory templates T registered in the template storage 42, based on an attitude mode "m" of the manipulator M. The priority order granting section 49 grants a priority order based on the execution environment, to the trajectory template T which is determined as available by the template limiting section 48."; Col. 12, lines 64-67 "A number "n" of the priority order is assigned, by the priority order assigning section 49, for the trajectory template T the use of which is determined as available by the template limiting section 48 at step 106.");
a determiner configured to select at least one candidate motion path of the plurality of candidate motion paths based on the use priority (see Fig. 3B, priority order granting section 49 and first interference inspecting section 50; Fig. 37B, steps 107-109; Col. 6, lines 55-64, "The priority order granting section 49 grants a priority order based on the execution environment, to the trajectory template T which is determined as available by the template limiting section 48. The first interference inspecting section 50 inspects an interference of the trajectory template T with the obstacle O1 on the environment model in a process in which the trajectory template T is read from the template storage 42 in the order of a higher priority order on the basis of the priority order assigned by the priority order assigning section 49."; Col. 13, lines 1-4, "An interference of the trajectory template T having a highest priority order "n" (n=1) with the obstacle O1 is inspected by the first interference inspecting section 50 as shown in FIG. 37B at steps 107 to 110.") and perform an interference determination process to determine whether the robot interferes with an obstacle for the selected at least one candidate motion path (see Fig. 3B, first/second interference inspecting sections 50/52; Fig. 37B, steps 110 and 112-113; Col. 6, line 59 - Col. 7, line 9, "The first interference inspecting section 50 inspects an interference of the trajectory template T with the obstacle O1 on the environment model in a process in which the trajectory template T is read from the template storage 42 in the order of a higher priority order on the basis of the priority order assigned by the priority order assigning section 49 ... The second interference inspecting section 52 executes a detailed interference-inspection between the manipulator M and the obstacle O1 by performing a simulation on the environment model on the basis of the trajectory data produced by the curve interpolation section."; Col. 13, lines 1-22, "An interference of the trajectory template T having a highest priority order "n" (n=1) with the obstacle O1 is inspected by the first interference inspecting section 50 as shown in FIG. 37B at steps 107 to 110. In this interference inspection, if it is determined that the interference is not generated at step 110, the control proceeds to step 111 and trajectory data are produced by interpolation through the curve interpolation section 51 with respect to the trajectory template T which is determined so that the interference is not generated. Then a simulation is executed by the second interference inspecting section 52 on the basis of the trajectory data, and a detailed interference-inspection of the manipulator M and the obstacle O1 is executed at step 112 .. On the other hand, if it is determined that the interference is present at step 110 or step 113, then the process as described above is again executed based on the trajectory template T of the next priority order "n"at step 115."); and
a path setter configured to set a motion path of the robot based on a candidate motion path of the plurality of candidate motion paths on which the robot is determined not to interfere with the obstacle by the determiner (see Fig. 3B, curve interpolation section 51; Fig. 37B, steps 111 and 113-114; Col. 6, lines 65 - Col. 7, line 4, "The curve interpolation section 51 produces the trajectory data of the manipulator M when the first interference inspecting section 50 determines that the interference is not generated, by interpolating the trajectory template T for which the above decision has been made based on the environment model on the basis of an operational characteristic of the manipulator M. "; Col. 13, lines 5-18 "In this interference inspection, if it is determined that the interference is not generated at step 110, the control proceeds to step 111 and trajectory data are produced by interpolation through the curve interpolation section 51 with respect to the trajectory template T which is determined so that the interference is not generated ... Through the interference inspection, if it is determined that the interference is not generated at step 113, the trajectory data described above is fed to an actual manipulator-driver (not shown) at step 114.").
Regarding Claim 27
Modified Okabayashi teaches the motion path setting device according to claim 1 (as discussed above in claim 1),
Okabayashi further teaches wherein the determiner performs the interference determination process selectively for the at least one candidate motion path of the plurality of candidate motion paths selected based on the use priority (see Fig. 3B, first/second interference inspecting sections 50/52; Fig. 37B, steps 110 and 112-113; Col. 6, line 59 - Col. 7, line 9, "The first interference inspecting section 50 inspects an interference of the trajectory template T with the obstacle O1 on the environment model in a process in which the trajectory template T is read from the template storage 42 in the order of a higher priority order on the basis of the priority order assigned by the priority order assigning section 49 ... The second interference inspecting section 52 executes a detailed interference-inspection between the manipulator M and the obstacle O1 by performing a simulation on the environment model on the basis of the trajectory data produced by the curve interpolation section."; Col. 13, lines 1-22, "An interference of the trajectory template T having a highest priority order "n" (n=1) with the obstacle O1 is inspected by the first interference inspecting section 50 as shown in FIG. 37B at steps 107 to 110. In this interference inspection, if it is determined that the interference is not generated at step 110, the control proceeds to step 111 and trajectory data are produced by interpolation through the curve interpolation section 51 with respect to the trajectory template T which is determined so that the interference is not generated. Then a simulation is executed by the second interference inspecting section 52 on the basis of the trajectory data, and a detailed interference-inspection of the manipulator M and the obstacle O1 is executed at step 112 .. On the other hand, if it is determined that the interference is present at step 110 or step 113, then the process as described above is again executed based on the trajectory template T of the next priority order "n"at step 115."), or
the determiner performs the interference determination process for one or more of the plurality of candidate motion paths selected in an order based on the use priority (see Fig. 37B, steps 110 and 112-113; Col. 6, line 59 - Col. 7, line 9, "The first interference inspecting section 50 inspects an interference of the trajectory template T with the obstacle O1 on the environment model in a process in which the trajectory template T is read from the template storage 42 in the order of a higher priority order on the basis of the priority order assigned by the priority order assigning section 49 ... The second interference inspecting section 52 executes a detailed interference-inspection between the manipulator M and the obstacle O1 by performing a simulation on the environment model on the basis of the trajectory data produced by the curve interpolation section."; Col. 13, lines 1-22, "An interference of the trajectory template T having a highest priority order "n" (n=1) with the obstacle O1 is inspected by the first interference inspecting section 50 as shown in FIG. 37B at steps 107 to 110. In this interference inspection, if it is determined that the interference is not generated at step 110, the control proceeds to step 111 and trajectory data are produced by interpolation through the curve interpolation section 51 with respect to the trajectory template T which is determined so that the interference is not generated. Then a simulation is executed by the second interference inspecting section 52 on the basis of the trajectory data, and a detailed interference-inspection of the manipulator M and the obstacle O1 is executed at step 112 .. On the other hand, if it is determined that the interference is present at step 110 or step 113, then the process as described above is again executed based on the trajectory template T of the next priority order "n"at step 115.").
Regarding Claim 29
Okabayashi teaches a non-transitory computer-readable recording medium storing a program (see Col. 2, lines 1-38) for causing a computer to perform operations comprising:
setting a use priority of each of a plurality of candidate motion paths of a robot (see Fig. 3B, template limiting section 48 and priority order granting section 49; Fig. 37B, step 106; Col. 6, lines 52-58, "The template limiting section 48 limits the available trajectory templates T from among the trajectory templates T registered in the template storage 42, based on an attitude mode "m" of the manipulator M. The priority order granting section 49 grants a priority order based on the execution environment, to the trajectory template T which is determined as available by the template limiting section 48."; Col. 12, lines 64-67 "A number "n" of the priority order is assigned, by the priority order assigning section 49, for the trajectory template T the use of which is determined as available by the template limiting section 48 at step 106.");
selecting at least one candidate motion path of the plurality of candidate motion paths based on the use priority (see Fig. 3B, priority order granting section 49 and first interference inspecting section 50; Fig. 37B, steps 107-109; Col. 6, lines 55-64, "The priority order granting section 49 grants a priority order based on the execution environment, to the trajectory template T which is determined as available by the template limiting section 48. The first interference inspecting section 50 inspects an interference of the trajectory template T with the obstacle O1 on the environment model in a process in which the trajectory template T is read from the template storage 42 in the order of a higher priority order on the basis of the priority order assigned by the priority order assigning section 49."; Col. 13, lines 1-4, "An interference of the trajectory template T having a highest priority order "n" (n=1) with the obstacle O1 is inspected by the first interference inspecting section 50 as shown in FIG. 37B at steps 107 to 110.") and performing an interference determination process to determine whether the robot interferes with an obstacle for the selected at least one candidate motion path (see Fig. 3B, first/second interference inspecting sections 50/52; Fig. 37B, steps 110 and 112-113; Col. 6, line 59 - Col. 7, line 9, "The first interference inspecting section 50 inspects an interference of the trajectory template T with the obstacle O1 on the environment model in a process in which the trajectory template T is read from the template storage 42 in the order of a higher priority order on the basis of the priority order assigned by the priority order assigning section 49 ... The second interference inspecting section 52 executes a detailed interference-inspection between the manipulator M and the obstacle O1 by performing a simulation on the environment model on the basis of the trajectory data produced by the curve interpolation section."; Col. 13, lines 1-22, "An interference of the trajectory template T having a highest priority order "n" (n=1) with the obstacle O1 is inspected by the first interference inspecting section 50 as shown in FIG. 37B at steps 107 to 110. In this interference inspection, if it is determined that the interference is not generated at step 110, the control proceeds to step 111 and trajectory data are produced by interpolation through the curve interpolation section 51 with respect to the trajectory template T which is determined so that the interference is not generated. Then a simulation is executed by the second interference inspecting section 52 on the basis of the trajectory data, and a detailed interference-inspection of the manipulator M and the obstacle O1 is executed at step 112 .. On the other hand, if it is determined that the interference is present at step 110 or step 113, then the process as described above is again executed based on the trajectory template T of the next priority order "n"at step 115."); and
setting a motion path of the robot based on a candidate motion path of the plurality of candidate motion paths on which the robot is determined not to interfere with the obstacle (see Fig. 3B, curve interpolation section 51; Fig. 37B, steps 111 and 113-114; Col. 6, lines 65 - Col. 7, line 4, "The curve interpolation section 51 produces the trajectory data of the manipulator M when the first interference inspecting section 50 determines that the interference is not generated, by interpolating the trajectory template T for which the above decision has been made based on the environment model on the basis of an operational characteristic of the manipulator M. "; Col. 13, lines 5-18 "In this interference inspection, if it is determined that the interference is not generated at step 110, the control proceeds to step 111 and trajectory data are produced by interpolation through the curve interpolation section 51 with respect to the trajectory template T which is determined so that the interference is not generated ... Through the interference inspection, if it is determined that the interference is not generated at step 113, the trajectory data described above is fed to an actual manipulator-driver (not shown) at step 114.").
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 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.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claims 2-3 are rejected under 35 U.S.C. 103 as being unpatentable over Okabayashi as applied to claim 1 above, and further in view of Hager et al. (US 20200276710 A1 and Hager hereinafter).
Regarding Claim 2
Modified Okabayashi teaches the motion path setting device according to claim 1 (as discussed above in claim 1),
Okabayashi is silent regarding wherein the priority setter sets the use priority based on obstacle information about the obstacle.
Hager teaches a motion path setting device (see all Figs.; [0011]-[0015]), comprising:
a priority setter configured to set a use priority of each of a plurality of candidate motion paths of a robot; and
a determiner configured to select at least one candidate motion path of the plurality of candidate motion paths based on the use priority (see [0013 "An autonomous agent can use motion and density information to avoid crowded areas (if that is a navigation rule/goal) and make reasonable selections among potential routes when selecting a route or selecting a target or goal location (e.g., by rejecting routes through forcing the autonomous agent to cross a group's path or go upstream of flow, by rejecting target locations that are upstream of a zone/area that has a higher density (is heavily crowded with pedestrians), and the like). "]-[0015], [0037 "The rules 144 may call for routes/course 145 to be evaluated to choose one which allows the robot 130 to “go with the flow” by moving in the same direction as the traffic (e.g., move with or adjacent to group 122 in area/zone 112) or to “avoid dense flow” such as by moving through areas with single-to-few pedestrians or other obstacles (lower pedestrian density values) and no or few groups of obstacles 122, 126."], [0047]-[0049 "The processor also can process the frame 310 to provide density data (as part of the traffic data output to an autonomous agent such as a mobile robot or robotic assembly with parts that move in the monitored workspace), and, as shown, the floor/mall space 311 has a higher density of obstacles/pedestrians on the left side than on the right side and includes very low density areas/zones in the center (e.g., between groups 316 and 324 there are no obstacles/pedestrians). Such density information may be very useful as input to a navigation module (such as module 136 in FIG. 1) of a robot as it may be useful to select lower density areas/zones for a route/course through this space (or portion of a mall, in this example) when the route selection rules indicate a route with a shortest travel time be chosen or to select the higher density areas/zones for a route/course when the route selection rules differ (e.g., the purpose of the robot is to interact with and/or entertain the most possible people in the space)."], [0053] and [0058]-[0059]);
wherein the priority setter sets the use priority based on obstacle information about the obstacle (see Figs. 3-6, all; [0012]-[0015], [0037 "The rules 144 may call for routes/course 145 to be evaluated to choose one which allows the robot 130 to “go with the flow” by moving in the same direction as the traffic (e.g., move with or adjacent to group 122 in area/zone 112) or to “avoid dense flow” such as by moving through areas with single-to-few pedestrians or other obstacles (lower pedestrian density values) and no or few groups of obstacles 122, 126."], [0047]-[0049 "The processor also can process the frame 310 to provide density data (as part of the traffic data output to an autonomous agent such as a mobile robot or robotic assembly with parts that move in the monitored workspace), and, as shown, the floor/mall space 311 has a higher density of obstacles/pedestrians on the left side than on the right side and includes very low density areas/zones in the center (e.g., between groups 316 and 324 there are no obstacles/pedestrians). Such density information may be very useful as input to a navigation module (such as module 136 in FIG. 1) of a robot as it may be useful to select lower density areas/zones for a route/course through this space (or portion of a mall, in this example) when the route selection rules indicate a route with a shortest travel time be chosen or to select the higher density areas/zones for a route/course when the route selection rules differ (e.g., the purpose of the robot is to interact with and/or entertain the most possible people in the space)."] and [0053]).
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 motion path setting device of Okabayashi to set the use priority based on obstacle information about the obstacle, as taught by Hager, in order to select a candidate motion path traveling through an area of relatively low obstacle density to reduce overall travel time.
Regarding Claim 3
Modified Okabayashi teaches the motion path setting device according to claim 2 (as discussed above in claim 2),
Okabayashi is silent regarding wherein the priority setter calculates an obstacle density based on the obstacle information for each of a plurality of positions in a multidimensional space and sets the use priority based on the calculated obstacle density, the obstacle density varies based on a degree to which the obstacle occupies an area around a corresponding position of the plurality of positions, and the multidimensional space is a physical workspace of the robot or a configuration space of the robot.
Hager teaches wherein the priority setter calculates an obstacle density based on the obstacle information for each of a plurality of positions in a multidimensional space and sets the use priority based on the calculated obstacle density (see Figs. 3-6, all; [0012]-[0015], [0037 "The rules 144 may call for routes/course 145 to be evaluated to choose one which allows the robot 130 to “go with the flow” by moving in the same direction as the traffic (e.g., move with or adjacent to group 122 in area/zone 112) or to “avoid dense flow” such as by moving through areas with single-to-few pedestrians or other obstacles (lower pedestrian density values) and no or few groups of obstacles 122, 126."], [0047]-[0049 "The processor also can process the frame 310 to provide density data (as part of the traffic data output to an autonomous agent such as a mobile robot or robotic assembly with parts that move in the monitored workspace), and, as shown, the floor/mall space 311 has a higher density of obstacles/pedestrians on the left side than on the right side and includes very low density areas/zones in the center (e.g., between groups 316 and 324 there are no obstacles/pedestrians). Such density information may be very useful as input to a navigation module (such as module 136 in FIG. 1) of a robot as it may be useful to select lower density areas/zones for a route/course through this space (or portion of a mall, in this example) when the route selection rules indicate a route with a shortest travel time be chosen or to select the higher density areas/zones for a route/course when the route selection rules differ (e.g., the purpose of the robot is to interact with and/or entertain the most possible people in the space)."] and [0053]), the obstacle density varies based on a degree to which the obstacle occupies an area around a corresponding position of the plurality of positions (see Figs. 3-5, all; [0012]-[0015], [0037], [0047]-[0049 "...the floor/mall space 311 has a higher density of obstacles/pedestrians on the left side than on the right side and includes very low density areas/zones in the center (e.g., between groups 316 and 324 there are no obstacles/pedestrians)"] and [0053 "Exemplary route selection rules for the agent presently may be: (1) avoid areas of a workspace that have a density greater than “X”..."]]), and the multidimensional space is a physical workspace of the robot or a configuration space of the robot (see Figs. 3-5, all; [0012 "For example, the space or observation area can be split into several zones or areas (or spaces), and the traffic or flow module can be adapted to generate and report out an overall traffic flow direction and speed for each zone."]-[0015], [0037], [0047 "The sensor/camera used to capture the frame 310 was positioned in a typical mall environment, which includes a floor or mall space 311 that is generally open for free or unregulated flow of numerous moving obstacles/objects (in this case, only pedestrians are shown as the obstacles but other robots and other moving objects may also be included as “obstacles”)."]-[0049] and [0053]).
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 motion path setting device of Okabayashi to set the use priority based on a calculated obstacle density based on obstacle information for each of a plurality of positions in a multidimensional space, as taught by Hager, in order to select a candidate motion path traveling through an area of relatively low obstacle density to reduce overall travel time.
Claim 4 is rejected under 35 U.S.C. 103 as being unpatentable over Okabayashi as applied to claim 1 above, and further in view of Khan et al. (US 20190009412 A1 and Khan hereinafter).
Regarding Claim 4
Modified Okabayashi teaches the motion path setting device according to claim 1 (as discussed above in claim 1),
Okabayashi further teaches wherein the priority setter sets the use priority based on a potential field being set in the multidimensional space being the physical workspace of the robot or the configuration space of the robot (see Figs. 4 and 6-8, all; Col. 6, lines 52-58, "The template limiting section 48 limits the available trajectory templates T from among the trajectory templates T registered in the template storage 42, based on an attitude mode "m" of the manipulator M. The priority order granting section 49 grants a priority order based on the execution environment, to the trajectory template T which is determined as available by the template limiting section 48."; Col. 12, lines 64-67 "A number "n" of the priority order is assigned, by the priority order assigning section 49, for the trajectory template T the use of which is determined as available by the template limiting section 48 at step 106."), and
a position in the potential field has a potential indicating a degree of acceptability for the robot to pass through the position in the multidimensional space (see Col. 7, lines 23-38, "Trajectory templates T1 to T3 included in group represent a manipulator-head trajectory passing above the obstacle (a positive direction on the "z" coordinate). Trajectory templates T4 to T6 included in group 2 represent a manipulator-head trajectory passing behind the obstacle (a negative direction on the "x" coordinate). Trajectory templates T7 to T9 included in group 3 represent a manipulator-head trajectory passing in front of the obstacle (a positive direction on the "x" coordinate). Trajectory templates T10 and T11 included in group 4 represent manipulator-head trajectories passing on the left side of the obstacle (a positive direction on "y" coordinate) or passing on the right side of the obstacle (a negative direction on "y" coordinate) respectively when viewed from the top."; Col. 9, lines 43-47, "The priority order granting section 49 grants the priority order to the trajectory templates T first by evaluating the execution environment and next by granting a point to the respective trajectory templates T on the basis of a result of such evaluation."; Col. 10, lines 33-47, "Based on a result of the evaluation, an algorithm for granting the priority order to the respective trajectory templates T is exemplified as follows; (1) First, the positional relationship on the xy plane is determined, and a point is assigned to each trajectory template T based on such determination(the weight of the point is determined, for example, in accordance with the distance between the start and end points along with the trajectory of the manipulator-head);...").
Okabayashi teaches each and every feature of the claim, as discussed above. For the sake of compact prosecution and for the possible argument of "Okabayashi is silent regarding a position in the potential field has a potential indicating a degree of acceptability for the robot", Khan teaches the claim.
That is, Khan teaches a motion path setting device (see all Figs.; [0004]), comprising:
a priority setter configured to set a use priority of each of a plurality of candidate motion paths of a robot (see [0004], [0010 "In some aspects, a computer-implemented method for determining a preferred robotic path configuration for performing a robotic processing operation along a workpiece can include: providing a two-dimensional representation of a plurality of possible three-dimensional robotic tool paths to be performed to move a tool connected to a robotic tool handling system along the workpiece along a processing path, the two-dimensional representation identifying, based on robotic system data and/or workpiece data, one or more obstacles associated with the robotic tool paths; based on the identified obstacles, generating a set of channels about the set of obstacles to indicate feasible homotopic tool paths that avoid the obstacles; and based on the channels, determining one or more acceptable robotic path configurations for performing a robotic processing operation along the processing path on the workpiece."]-[0012 "The determining one or more acceptable robotic path configurations can include analyzing each region to determine an acceptable path through each channel and linking the determined acceptable paths through each adjacent region to form an acceptable robotic path configuration. The linking can include forming a path through midpoints of each region. The method can further include, for each of the one or more acceptable robotic path configurations, calculating a distance between midpoints of adjacent regions. The method can further include selecting one of the one or more acceptable robotic path configurations to be used to perform the robotic processing operation along the workpiece based on an accumulated calculated distance between midpoints of adjacent regions for each path. The selection can be based on the path having the least accumulated distance."], [0045 "Additionally, in some embodiments, a preferred (e.g., optimal) robotic tool path can be determined. For example, any of the various techniques or methods described herein for generating a map, analyzing the map, generating channels (e.g., generating and analyzing columns that together form channels) and determining optimal tool paths, such as using channel midpoints, using user selected points, grading pixels, reducing unnecessary movements between columns of channels (e.g., between pixels of adjacent columns), etc. can be implemented to determine the preferred tool path."] and [0089]-[0090]);
wherein the priority setter sets the use priority based on a potential field being set in the multidimensional space being the physical workspace of the robot or the configuration space of the robot (see [0004], [0010 "In some aspects, a computer-implemented method for determining a preferred robotic path configuration for performing a robotic processing operation along a workpiece can include: providing a two-dimensional representation of a plurality of possible three-dimensional robotic tool paths to be performed to move a tool connected to a robotic tool handling system along the workpiece along a processing path, the two-dimensional representation identifying, based on robotic system data and/or workpiece data, one or more obstacles associated with the robotic tool paths; based on the identified obstacles, generating a set of channels about the set of obstacles to indicate feasible homotopic tool paths that avoid the obstacles; and based on the channels, determining one or more acceptable robotic path configurations for performing a robotic processing operation along the processing path on the workpiece."]-[0012], [0045 "Additionally, in some embodiments, a preferred (e.g., optimal) robotic tool path can be determined. For example, any of the various techniques or methods described herein for generating a map, analyzing the map, generating channels (e.g., generating and analyzing columns that together form channels) and determining optimal tool paths, such as using channel midpoints, using user selected points, grading pixels, reducing unnecessary movements between columns of channels (e.g., between pixels of adjacent columns), etc. can be implemented to determine the preferred tool path."] and [0089]-[0090]), and
a position in the potential field has a potential indicating a degree of acceptability for the robot to pass through the position in the multidimensional space (see [0004], [0010 "...based on the identified obstacles, generating a set of channels about the set of obstacles to indicate feasible homotopic tool paths that avoid the obstacles; and based on the channels, determining one or more acceptable robotic path configurations for performing a robotic processing operation along the processing path on the workpiece."]-[0012 "The determining one or more acceptable robotic path configurations can include analyzing each region to determine an acceptable path through each channel and linking the determined acceptable paths through each adjacent region to form an acceptable robotic path configuration. The linking can include forming a path through midpoints of each region. The method can further include, for each of the one or more acceptable robotic path configurations, calculating a distance between midpoints of adjacent regions. The method can further include selecting one of the one or more acceptable robotic path configurations to be used to perform the robotic processing operation along the workpiece based on an accumulated calculated distance between midpoints of adjacent regions for each path. The selection can be based on the path having the least accumulated distance."], [0045] and [0089]-[0090]).
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 motion path setting device of Okabayashi to set the use priority based on a potential field having a potential indicating a degree of acceptability for the robot to pass through the position, as taught by Khan, in order to determine acceptable path configurations through channels on a workpiece.
Claims 10-11 are rejected under 35 U.S.C. 103 as being unpatentable over Okabayashi (as modified by Hager) as applied to claim 3 above, and further in view of Satou (US 20150127161 A1 and Satou hereinafter).
Regarding Claim 10
Modified Okabayashi teaches the motion path setting device according to claim 3 (as discussed above in claim 3),
Okabayashi is silent regarding wherein the priority setter sets a plurality of representative points on the obstacle in the multidimensional space, and
the priority setter sets the obstacle density at a position in the multidimensional space based on at least one of the plurality of representative points located within a predetermined range from the position.
Satou teaches a motion path setting device (see all Figs.; [0007]), comprising:
a determiner configured to select at least one candidate motion path of the plurality of candidate motion paths (see [0007 "...a hand position posture calculation unit calculating a hand position posture based on the density local maximum position calculated by the maximum position calculation unit, the hand position posture being a position and a posture of the hand capable of picking up an article at the density local maximum position or in the vicinity of the density local maximum position..."]);
wherein the priority setter sets a plurality of representative points on the obstacle in the multidimensional space (see Figs. 3-8, all; [0007], [0033 "Initially, step S1 measures surfaces of a plurality of articles 20 randomly piled in a three-dimensional space using the three-dimensional measurement instrument 11 and then acquires a three-dimensional point set 30 ... In the figure, the three-dimensional points 31 are illustrated with black circles and the three-dimensional point set 30 is illustrated as a region surrounded by a dotted line including all the black circles."]-[0035] and [0049]-[0052 "The projection point 34 corresponds to the three-dimensional point 31 and therefore, a density distribution of projection points 34 can be considered a density distribution of three-dimensional points 31."]), and
the priority setter sets the obstacle density at a position in the multidimensional space based on at least one of the plurality of representative points located within a predetermined range from the position (see Figs. 9-10, all, especially circle 37; [0007], [0049]-[0052 "Step S5 sets measurement points on each plane 33 over the entire range of the respective planes 33 and determines the number of projection points 34 located within a predetermined distance from each measurement point. The number corresponds to a density of projection points 34 in each measurement point, and step S5 calculates a density distribution of projection points 34 on the plane 33. The projection point 34 corresponds to the three-dimensional point 31 and therefore, a density distribution of projection points 34 can be considered a density distribution of three-dimensional points 31."] and [0053]-[0055]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to further modify the motion path setting device of modified Okabayashi to set a plurality of representative points on the obstacle and set the obstacle density based on at least one of the plurality of representative points located within a predetermined range from the position, as taught by Satou, in order to calculate obstacle density data of obstacles positioned in various orientations and to calculate a density local maximum position based on the obstacle density data.
Regarding Claim 11
Modified Okabayashi teaches the motion path setting device according to claim 3 (as discussed above in claim 3),
Okabayashi is silent regarding wherein the obstacle density at a position in the multidimensional space varies based on proximity of the position to the obstacle around the position.
Satou teaches wherein the obstacle density at a position in the multidimensional space varies based on proximity of the position to the obstacle around the position (see Fig. 9, all, especially circle 37; [0007], [0049]-[0052 "Step S5 sets measurement points on each plane 33 over the entire range of the respective planes 33 and determines the number of projection points 34 located within a predetermined distance from each measurement point. The number corresponds to a density of projection points 34 in each measurement point, and step S5 calculates a density distribution of projection points 34 on the plane 33. The projection point 34 corresponds to the three-dimensional point 31 and therefore, a density distribution of projection points 34 can be considered a density distribution of three-dimensional points 31."] and [0053]-[0055]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to further modify the motion path setting device of modified Okabayashi to determine the obstacle density at a position in the multidimensional space based on proximity of the position to the obstacle around the position, as taught by Satou, in order to calculate obstacle density data of obstacles positioned in various orientations and to calculate a density local maximum position based on the obstacle density data.
Claims 12-13 and 17 are rejected under 35 U.S.C. 103 as being unpatentable over Okabayashi as applied to claim 1 above, and further in view of Yabushita et al. (JP 2007257274 A and Yabushita hereinafter).
Regarding Claim 12
Modified Okabayashi teaches the motion path setting device according to claim 1 (as discussed above in claim 1),
Okabayashi is silent regarding wherein the priority setter sets the use priority based on a past motion path being the motion path set by the path setter in a past.
Yabushita teaches a motion path setting device (see all Figs.; [0009]; see the corresponding paragraphs in the attached reference JP_2007257274_A), comprising:
a priority setter configured to set a use priority of each of a plurality of candidate motion paths of a robot (see Fig. 4, all; [0009 "Evaluation value calculation means for calculating each evaluation value of a plurality of candidate routes extracted by the candidate route extraction means, and route determination means for determining a route to be adopted based on the evaluation value calculated by the evaluation value calculation means The evaluation value calculation means calculates the evaluation value based on the route length from the reference point to the target point and the route history information adopted in the past."], [0010 "Here, the evaluation value calculation means assigns a point value to a node on a route that has been adopted in the past, and is calculated according to the sum of the point values assigned to the node on the candidate route and the route length. By calculating the evaluation value of the candidate route based on the obtained value, it is possible to easily realize a process of adopting a route similar to a route adopted in the past."]-[0012], [0025]-[0027], [0029 "Further, since the point value having a negative value is given when passing through the same node as the previous time, the evaluation value becomes smaller as it passes through the same node as the previous time. Specifically, the computer reads information on the candidate route from the storage means, obtains a route length (corresponding to a value calculated according to the route length) from the coordinates of each node on the route, and similarly each node on the route. The sum of the point values having a negative value is obtained based on the point value. "]-[0032] and [0039]); and
a determiner configured to select at least one candidate motion path of the plurality of candidate motion paths based on the use priority (see [0030 "In this manner, a route to be adopted is determined based on the evaluation value calculated for each of the plurality of candidate routes (S103). In this example, the smallest evaluation value and the calculated candidate route are selected as adopted routes. Specifically, the computer reads the evaluation value of each candidate route from the storage unit, selects a candidate route having the smallest evaluation value by performing a comparison process, and stores information on the adopted route in the storage unit."]);
wherein the priority setter sets the use priority based on a past motion path being the motion path set by the path setter in a past (see Fig. 4, all; [0009 "Evaluation value calculation means for calculating each evaluation value of a plurality of candidate routes extracted by the candidate route extraction means, and route determination means for determining a route to be adopted based on the evaluation value calculated by the evaluation value calculation means The evaluation value calculation means calculates the evaluation value based on the route length from the reference point to the target point and the route history information adopted in the past."], [0010 "Here, the evaluation value calculation means assigns a point value to a node on a route that has been adopted in the past, and is calculated according to the sum of the point values assigned to the node on the candidate route and the route length. By calculating the evaluation value of the candidate route based on the obtained value, it is possible to easily realize a process of adopting a route similar to a route adopted in the past."]-[0012], [0025]-[0027], [0029 "Further, since the point value having a negative value is given when passing through the same node as the previous time, the evaluation value becomes smaller as it passes through the same node as the previous time. Specifically, the computer reads information on the candidate route from the storage means, obtains a route length (corresponding to a value calculated according to the route length) from the coordinates of each node on the route, and similarly each node on the route. The sum of the point values having a negative value is obtained based on the point value. "]-[0032] and [0039]).
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 motion path setting device of Okabayashi to set the use priority based on a past motion path being the motion path set by the path setter in a past, as taught by Yabushita, in order to generate a stable motion path similar to a motion path in the past and therefore to avoid switching to a completely different motion path each time path generation is performed.
Regarding Claim 13
Modified Okabayashi teaches the motion path setting device according to claim 12 (as discussed above in claim 12),
Okabayashi is silent regarding wherein the priority setter sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the past motion path in the multidimensional space being the physical workspace of the robot or the configuration space of the robot.
Yabushita teaches wherein the priority setter sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the past motion path in the multidimensional space being the physical workspace of the robot or the configuration space of the robot (see Fig. 4, all; [0009 "Evaluation value calculation means for calculating each evaluation value of a plurality of candidate routes extracted by the candidate route extraction means, and route determination means for determining a route to be adopted based on the evaluation value calculated by the evaluation value calculation means The evaluation value calculation means calculates the evaluation value based on the route length from the reference point to the target point and the route history information adopted in the past."], [0010 "Here, the evaluation value calculation means assigns a point value to a node on a route that has been adopted in the past, and is calculated according to the sum of the point values assigned to the node on the candidate route and the route length. By calculating the evaluation value of the candidate route based on the obtained value, it is possible to easily realize a process of adopting a route similar to a route adopted in the past."]-[0012], [0025]-[0027], [0029 "Further, since the point value having a negative value is given when passing through the same node as the previous time, the evaluation value becomes smaller as it passes through the same node as the previous time. Specifically, the computer reads information on the candidate route from the storage means, obtains a route length (corresponding to a value calculated according to the route length) from the coordinates of each node on the route, and similarly each node on the route. The sum of the point values having a negative value is obtained based on the point value. "]-[0032] and [0039]).
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 motion path setting device of Okabayashi to set the use priority based on proximity of the candidate motion path to the past motion path in the multidimensional space, as taught by Yabushita, in order to generate a stable motion path similar to a motion path in the past and therefore to avoid switching to a completely different motion path each time path generation is performed.
Regarding Claim 17
Modified Okabayashi teaches the motion path setting device according to claim 12 (as discussed above in claim 12),
Okabayashi is silent regarding wherein the priority setter sets the use priority based on a result of motion of the robot along the past motion path.
Yabushita teaches wherein the priority setter sets the use priority based on a result of motion of the robot along the past motion path (see Fig. 4, all; [0009 "Evaluation value calculation means for calculating each evaluation value of a plurality of candidate routes extracted by the candidate route extraction means, and route determination means for determining a route to be adopted based on the evaluation value calculated by the evaluation value calculation means The evaluation value calculation means calculates the evaluation value based on the route length from the reference point to the target point and the route history information adopted in the past."], [0010 "Here, the evaluation value calculation means assigns a point value to a node on a route that has been adopted in the past, and is calculated according to the sum of the point values assigned to the node on the candidate route and the route length. By calculating the evaluation value of the candidate route based on the obtained value, it is possible to easily realize a process of adopting a route similar to a route adopted in the past."]-[0012], [0025]-[0027], [0029 "Further, since the point value having a negative value is given when passing through the same node as the previous time, the evaluation value becomes smaller as it passes through the same node as the previous time. Specifically, the computer reads information on the candidate route from the storage means, obtains a route length (corresponding to a value calculated according to the route length) from the coordinates of each node on the route, and similarly each node on the route. The sum of the point values having a negative value is obtained based on the point value. "]-[0032] and [0039]).
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 motion path setting device of Okabayashi to set the use priority based on a result of motion of the robot along the past motion path, as taught by Yabushita, in order to generate a stable motion path similar to a motion path in the past and therefore to avoid switching to a completely different motion path each time path generation is performed.
Claims 19-20 are rejected under 35 U.S.C. 103 as being unpatentable over Okabayashi as applied to claim 1 above, and further in view of Takeda (US 20150239121 A1 and Takeda hereinafter).
Regarding Claim 19
Modified Okabayashi teaches the motion path setting device according to claim 1 (as discussed above in claim 1),
Okabayashi further teaches wherein the priority setter sets the use priority based on a specific area in the multidimensional space being the physical workspace of the robot or the configuration space of the robot (see Figs. 4 and 6-8, all; Col. 6, lines 52-58, "The priority order granting section 49 grants a priority order based on the execution environment, to the trajectory template T which is determined as available by the template limiting section 48."; Col. 12, lines 64-67 "A number "n" of the priority order is assigned, by the priority order assigning section 49, for the trajectory template T the use of which is determined as available by the template limiting section 48 at step 106.").
Okabayashi is silent regarding the specific area is an area through which the robot is to avoid passing.
Takeda teaches a motion path setting device (see all Figs.; [0009]), comprising:
a priority setter configured to set a use priority of each of a plurality of candidate motion paths of a robot (see [0009 "...an evaluating part which evaluates each of the second motion paths based on at least one previously determined parameter; and a motion path selecting part which selects an optimum motion path of the robot from the second motion paths based on an evaluation result by the evaluating part."], [0028]-[0030], [0041]-[0054] and [0057]-[0060]); and
a determiner configured to select at least one candidate motion path of the plurality of candidate motion paths based on the use priority (see [0009 "...an evaluating part which evaluates each of the second motion paths based on at least one previously determined parameter; and a motion path selecting part which selects an optimum motion path of the robot from the second motion paths based on an evaluation result by the evaluating part."]-[0013] and [0057 "Then, by selecting the motion path having the highest evaluation value, a more practical motion path may be obtained."]-[0060]);
wherein the priority setter sets the use priority based on a specific area in the multidimensional space being the physical workspace of the robot or the configuration space of the robot (see [0009], [0028]-[0030], [0041]-[0054] and [0057]-[0060], especially [0042 "As the parameter (or evaluation item) for calculating the above evaluation value, following parameters may be used, for example. The following parameters may be calculated or estimated by executing the simulation along the second motion path."]-[0044 "...(b) a minimum distance between the robot and the peripheral object..."] and [0054 "Regarding above parameter (b), when the distance between the robot and the peripheral object is too short, the interference easily occurs between the actual robot and the actual peripheral object. On the other hand, when the distance therebetween is too long, the evaluation value regarding the other parameters tends to be decreased. Therefore, in relation to parameter (b), a proper distance between the robot and the peripheral object may be predetermined (for example, 5 cm to 10 cm), and the evaluation value may be increased as a difference between the proper distance and the minimum distance is decreased."]), and the specific area is an area through which the robot is to avoid passing (see [0009 "...generates different second motion paths by which the interference between the robot and the peripheral object does not occur…"], [0028]-[0030 "In the next step S3, at least one third teaching point is automatically added between start point Pm and end point Pn so as to generate a second motion path 34 by which the interference between robot 12 and peripheral object 14 does not occur..."], [0041]-[0054] and [0057]-[0060]).
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 motion path setting device of Okabayashi to set the use priority based on a specific area which is an area through which the robot is to avoid passing, as taught by Takeda, in order to select a candidate motion path which is properly positioned at a distance not too far from and not too close to an obstacle.
Regarding Claim 20
Modified Okabayashi teaches the motion path setting device according to claim 19 (as discussed above in claim 19),
Okabayashi is silent regarding wherein the priority setter sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the specific area in the multidimensional space.
Takeda teaches wherein the priority setter sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the specific area in the multidimensional space (see [0009], [0028]-[0030], [0041]-[0054] and [0057]-[0060], especially [0042 "As the parameter (or evaluation item) for calculating the above evaluation value, following parameters may be used, for example. The following parameters may be calculated or estimated by executing the simulation along the second motion path."]-[0044 "...(b) a minimum distance between the robot and the peripheral object..."] and [0054 "Regarding above parameter (b), when the distance between the robot and the peripheral object is too short, the interference easily occurs between the actual robot and the actual peripheral object. On the other hand, when the distance therebetween is too long, the evaluation value regarding the other parameters tends to be decreased. Therefore, in relation to parameter (b), a proper distance between the robot and the peripheral object may be predetermined (for example, 5 cm to 10 cm), and the evaluation value may be increased as a difference between the proper distance and the minimum distance is decreased."]).
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 motion path setting device of Okabayashi to set the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the specific area in the multidimensional space, as taught by Takeda, in order to select a candidate motion path which is properly positioned at a distance not too far from and not too close to an obstacle.
Claims 22-23 are rejected under 35 U.S.C. 103 as being unpatentable over Okabayashi (as modified by Hager) as applied to claim 2 above, and further in view of Dupuis et al. (US 20220147058 A1 and Dupuis hereinafter).
Regarding Claim 22
Modified Okabayashi teaches the motion path setting device according to claim 2 (as discussed above in claim 2),
Okabayashi is silent regarding wherein the priority setter sets the use priority based on a reference path being a shortest path connecting a starting point and an ending point of motion of the robot in the multidimensional space being the physical workspace of the robot or the configuration space of the robot.
Dupuis teaches a motion path setting device (see all Figs.; [0004]), comprising:
a priority setter configured to set a use priority of each of a plurality of candidate motion paths of a robot (see [0075 "In some implementations, the server system 104 generates one or more scores to characterize properties for each of the adjusted paths. The scores may be generated at various steps along the path planning process to evaluate the different versions of the adjusted paths, and can be used to determine whether each adjusted path sufficiently meets the criteria or constraints. A score can be based on a variety of factors, such as deviation distance from the initial path 112, a number of turns, a path distance, magnitude of the amplitudes of the turns, a length of time it takes for the robot to traverse the adjusted path, and so on."]-[0076] and [0091]-[0096]); and
a determiner configured to select at least one candidate motion path of the plurality of candidate motion paths based on the use priority (see [0063] and [0091 "The robot 200 can select and move along the path with the highest score (e.g., the planned path). Additionally, the scoring engine 214 may compare each of the generated scores to thresholds to determine whether the corresponding path meets the desired criteria."]);
wherein the priority setter sets the use priority based on a reference path being a shortest path connecting a starting point and an ending point of motion of the robot in the multidimensional space being the physical workspace of the robot or the configuration space of the robot (see Fig. 1, all, especially straight-line/initial path 112; Fig. 3, all; [0050]-[0052 "The robot 110 can receive the sensor data and analyze the sensor data to determine the obstacles along the straight-line path 112 from the robot 110's current location to the destination."], [0063]-[0066], [0074] and [0091 "For example, the scoring engine 214 generates the score for various paths based on their characteristics. The characteristics used for scoring can include the distance that a path deviates from the initial path 112 ... The smaller number of turns and the shorter the overall path distance of the path, the higher the score generated by the scoring engine 214, for example. Alternatively, if the deviation distance from the initial path is high or a magnitude of the amplitudes of the turns is high, the scoring engine 214 may generate a lower score, for example. The path evaluation module 212 can generate multiple paths (each different from one another) for a particular environment. The scoring engine 214 can generate scores for each path of the multiple paths."]-[0096]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to further modify the motion path setting device of modified Okabayashi to set the use priority based on a reference path being a shortest path connecting a starting point and an ending point of motion of the robot, as taught by Dupuis, in order to select a candidate motion path which is closest in distance to the reference path.
Regarding Claim 23
Modified Okabayashi teaches the motion path setting device according to claim 22 (as discussed above in claim 22),
Okabayashi is silent regarding wherein the priority setter sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the reference path in the multidimensional space.
Dupuis teaches wherein the priority setter sets the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to the reference path in the multidimensional space (see Fig. 1, all; Fig. 3, all; [0050], [0063]-[0066], [0074] and [0091 "For example, the scoring engine 214 generates the score for various paths based on their characteristics. The characteristics used for scoring can include the distance that a path deviates from the initial path 112 ... The smaller number of turns and the shorter the overall path distance of the path, the higher the score generated by the scoring engine 214, for example. Alternatively, if the deviation distance from the initial path is high or a magnitude of the amplitudes of the turns is high, the scoring engine 214 may generate a lower score, for example. The path evaluation module 212 can generate multiple paths (each different from one another) for a particular environment. The scoring engine 214 can generate scores for each path of the multiple paths."]-[0096]).
It would have been obvious to a person having ordinary skill in the art before the effective filing date of the invention to further modify the motion path setting device of modified Okabayashi to set the use priority of a candidate motion path of the plurality of candidate motion paths based on proximity of the candidate motion path to a reference path being a shortest path connecting a starting point and an ending point of motion of the robot, as taught by Dupuis, in order to select a candidate motion path which is closest in distance to the reference path.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to TANNER LUKE CULLEN whose telephone number is (303)297-4384. The examiner can normally be reached Monday-Friday 9:00-5:00 MT.
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, Khoi Tran can be reached at (571) 272-6919. 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.
/TANNER L CULLEN/Examiner, Art Unit 3656 /KHOI H TRAN/Supervisory Patent Examiner, Art Unit 3656