DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Responsive to the communication dated 5/22/2026.
Claims 1, 2, 3, 4, 5, 6, 7, 8, 9, 13, 15, 16, 17, 19, 20 are amended.
Claims 1 – 20 are presented for examination.
Final Action
THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Response to Arguments
Claim Rejections - 35 USC § 101
The Applicant asserts that under step 2A Prong One that the claim is not directed to an abstract idea but rather it is directed towards optimizing design elements of a physical system using a computer and that that Applicant’s have provided examples of a physical system that includes, but not limited to, optical and electronic systems and that the claim does not recite a mathematical relationship (i.e., a mathematical equation).
In response the argument is not persuasive. As stated in the rejection, the claim recite the generation of a symbolic tree and to update the node symbolic parameters by solving a multi-armed bandit calculation and making a path through the symbolic tree to evaluate a fitness function to output a desired/choses (e.g., optimal) path of the symbolic tree. This is a series of mathematical operation for solving a category of stochastic scheduling problems which the “multi-armed bandit problem” is one. In the claim, a symbolic tree is a mathematical construct known as a recursive partitioning graph. The claim recites to “solve” the multi-armed bandit problem and also states to “evaluate” a path through the recursive partitioning graph using an “objective function.” An objective function is a mathematical function that is either minimized or maximized. Accordingly, the claim is directed towards a mathematical abstract idea of “optimizing” parameters (i.e., values of variables) in an equation. While the claim recites to output “an optimized path of the symbolic tree” this is merely a mathematically informed opinion with regard to a mathematical construct known as a symbolic tree.
The Applicant’s assertion that the claim optimizes design elements of a physical system is not persuasive because the claim does not actually perform any operations on any physical system. The claim merely performs mathematical operations. Any exemplary reference to a physical system is at most merely linking the mathematical operations to a notional “design”. Indeed, the Applicant’s own arguments assert that the physical system is not limited to any type of physical system. Accordingly the claim, at best, recites a series of mathematical operation where they symbology of the nodes in the tree are symbolic representations that mentally represent the concept of a physical object. This is, however, the very definition of descriptive mathematics which is the use of mathematical concepts, models, or data analysis to describe, summarize, and understand real-world phenomena. The purpose of the abstract idea rejection under 35 USC 101 is to prevent the patenting of fundamental scientific principles. These claims, as outlined above, clearly seek to patent the fundamental scientific principle of descriptive mathematics that describe, summarize, and understand a notional design.
Further, the use of a computer is not indicative of a practical application as the computer is recited merely as a platform upon which the mathematical abstract idea is executed.
Under step 2A Prong Two the Applicant asserts that the claims make an improvement to a computer related technology which allows a computer to perform a function that computers where not capable of performing previously. The Applicant asserts that “namely, the evaluation of design options for components of a physical system that include both discrete and continuous elements” was something that no computer was able to previously perform. The Applicant cites paragraph 144 – 158 of the specification states how the claimed process would function in operation of an optical system, which intrinsically includes both discrete and continuous elements, which is very difficult to do with existing design processes.
The argument is not persuasive. The Applicant asserts that these mathematical calculation improve the computer because a computer could not previously evaluate design options for components of a physical system that includes both discrete and continuous elements, however, their own arguments further assert that existing methods of doing such evaluations were not impossible but rather simply “very difficult” and that computer did such evaluations using genetic algorithms which are mathematical calculations and evaluations of permutations. Accordingly, the Applicant is arguing that they have improved upon previous mathematical evaluation algorithms with a further mathematical evaluation algorithm.
Moreover, the Applicant argues that the claim requires a physical system that includes both discrete and continuous elements, however, the is not actually required by the claim. The claim only requires generating a symbolic tree with a plurality of nodes where the nodes are symbolic representations of “a discrete system component with a continuous feature.” Therefore, the mathematical symbols representing the nodes in the mathematical tree construct symbolically reference the notion of a discrete (i.e., standalone) object and the standalone object itself further has some continuous feature. A continuous feature is merely, for example, a smooth surface (i.e., any surface without steps, gaps, or discrete subdivisions in a particular geometric dimension). Examples of such surfaces may be, for example, the outer diameter of a shaft, the face of a flange, or the inner wall of a hole. These types of geometric surfaces are continuous in at least one dimension. Further these objects are geometric (i.e., mathematical) constructions. Furthermore, these “continuous features” when mathematically modeled form a mathematical boundary condition of the mathematical model. A continuous feature means a smooth, unbroken change or a fixed geometric property along a surface or length (like a uniform diameter, a continuous fillet). Mathematical boundary conditions are rules or descriptions for the edges or surfaces of geometric objects. The continuous features defines how the geometric object is shaped at its edge and therefore is a mathematical boundary condition applied to the mathematical equation that represents a geometric shape. Therefore, merely claiming that a notional geometric object has a continuous boundary condition is nothing more that further describing the mathematical construction itself.
The Applicant further asserts that the specification indicates that the claimed mathematical calculation is faster than previous mathematical calculations.
In response, merely having a mathematical calculation that is asserted to be faster than other mathematical calculation does not make the mathematical calculation patent eligible because an improvement to mathematical calculations itself is merely an improvement to the abstract idea itself. The claim must make an improvement to something that it beyond the abstract idea itself.
The Applicant finally argues that claims 8 and 20 recite a practical implementation of optical or electrical systems.
In response these elements merely link the objective function to the field of optical system design and electrical system design. and merely linking the use of a mathematical calculation to a field of use is not a practical application nor is it significantly more. Indeed, Durand_2018 teaches to perform multi-armed bandit methods using Thompson sampling to optimize optical system design parameters. Accordingly, it is known in the art to have design objectives that include optical system design objectives. Therefore, these elements are not significantly more than the abstract idea because they are also common in the art of optical systems. Also executing an abstract idea on a computer is not indicative of a practical application nor is it significantly more. See MPEP 2106.05(f) which indicates that mere instructions to apply an exception is not sufficient.
The Applicant asserts that the claim as a whole includes features that are not part of the abstract idea and that the Examiner did not consider these elements and by not considering these elements as an ordered combination the analysis is fatally flawed.
In response the argument is not persuasive. The Examiner specifically considered the ordered combination. See, for example, the Examiner’s response under argument 1 above which fully considered the ordered combination. Also, see the analysis in the Office action which fully considered the ordered combination. The Examiner clearly articulated how the elements of the ordered combination are part of the abstract idea. The Examiner also considered any additional elements which were not part of the abstract idea.
Claim Rejections - 35 USC § 103
The Applicant argues that the instant claims require a symbolic tree, which can represent any system, where each node is a discrete system component with a continuous feature and that Gautier uses a finite training set and therefore are useful only to the subject matter upon which the model is trained. The Applicant asserts that the claimed subject matter is not possible with Gautier.
In response this argument is not persuasive. The Applicant assertion that the instant claims encompass all systems while the cited reference only teach a subset of all systems does not mean that the reference’s subset does not make the claimed superset non-obvious under 35 USC 103. Assuming that the Applicant’s assertion is correct that the claim is to any, and all systems then any, and all systems includes the ones upon which the cited reference is trained. Accordingly, the cited reference teaches a species of any, and all systems while the claim is to the generous of any, and all system. A teaching of the species makes the generous obvious under 35 USC 103.
With regard to discrete systems with continuous features, it is noted that Gautier on page 3 section 2.1 teaches to have a design space where “the difference in the designs can be described through the definition of different design parameters… More formally stated, the input space 𝑋 is defined as 𝑋 = {𝑘1 × 𝑘2 × ... × 𝑘𝑛} ∈ X𝑚×𝑛 where 𝑘𝑖 is a knob vector containing all the possible values for this knob, and in this case, X = R. The resulting matrix has 𝑛 columns for each knob, and𝑚 rows for each unique and valid combination of knob values, i.e.,𝑚 design candidates. Knobs take 𝑛 values, for 𝑛 ∈ [2, ∞]. They can be discrete, categorical, or continuous. Continuous knobs can generally be discretized by knowing the bounds of the knob and choosing a reasonable set of values based on the target platform…”
Therefore, Gautier teaches that design parameters may be discrete and/or continuous and that a continuous parameter may be discretized. Nevertheless, Gautier does not state that the nodes of a decision tree are discrete system component with a continuous feature.
The Applicant further argues that Sugimura does not appear to show a design tree diagram and that the instant claim specifically recites a design tree symbolic diagram where the symbolic tree has node that symbolically represent discrete objects with continuous features.
In response Sugimura teaches decision tree where the decision tree nodes are design variables. Therefore, Sugimura discusses a decision tree for choosing a path through the tree that optimizes the design variables that achieve a design. A diagram of this tree is illustrated in Fig. 3 on page 292. Therefore, Sugimura does show a design tree diagram with nodes. The decision tree of Sugimura, however, does not illustrate that the nodes may be discrete objects with continuous features.
The Applicant argues that Gautier does not make obvious the amended limitation of using Thompson sampling to choose which node in the symbolic tree to go to next because Gautier uses Tompson Sampling to decide which algorithmic approach to use.
In response the Examiner notes that while Gautier teaches to use Thompson Sampling to choose among a pool of alternative models, and while the pool of alternative models is not explicitly nodes in a symbolic tree the implication taught by Gautier is clear. Gautier is teaching to use Thompson Sampling to make decision about which choice is better. Gautier, at page 10, clearly teaches: “… a good choice of sampling algorithm is Thompson Sampling [29] that provides a good tradeoff between exploration and exploitation [4]. Durand_2018 further makes clear what those of ordinary skill in the art understand by the exploitation and exploration taught by Gautier. Durand_2018, at page 2 states: “… optimization techniques search for good parameters… this results in the so-called exploration-exploitation trade-off, which is the main scope of the well-known multi-armed bandits framework. Here, we consider a bandits algorithm combining kernel regression and Thomspon Sampling (TS)… to capture the underlying structure of the parameter space and efficiently model each objective…”. Therefore, when Gautier teaches to use Thompson Sampling for exploration and exploitation, those of ordinary skill in the art understand that this means to capture the underlying parameter space to identify/choose which combination of parameters provide the best combination to achieve the objective.
Further, Sugimura_2009 clearly illustrates a decision tree where the nodes are design variables on page 292 Fig. 3. Therefore, in combination Gautier, Sugimura_2009, and Durand_2018 make obvious to use Thompson Sampling to choose design variables in the design variable space and when the design variable of the design variable space are the nodes of a decision tree as taught by Sugimura_2009 the Thompson Sampling chooses the best design variables (i.e., node) which is a path through the decision tree.
The Applicant further asserts that the dependent claims are allowable due to their dependence from an allowable independent claim.
In response the argument is not persuasive as the Examiner disagrees that the independent claims are in condition for allowance due to the reasons presented above and as found in the body of the Office action below.
End Response to Arguments
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.
Claim 1 – 20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception without significantly more.
Claim 1.
STEP 1: Yes. The claim recites “a… method…”. A method is one of the statutory categories.
STEP 2A PRONG ONE. The claim recites:
“a computer implemented method for automated design optimization comprising:
Generating, with a computer, a symbolic tree with a plurality of nodes, wherein each node represents a discrete system component with a continuous feature
Updating, with the computer node symbol parameters for each of the plurality of nodes using a plurality of samples;
sampling the plurality of samples with a computer implemented method for solving a multi-armed bandit problem;
promoting, with a computer each sample in the plurality of samples down a path of the plurality of nodes, of the symbolic tree;
evaluating, with the computer, each path with a problem specific fitness function; and
outputting, with a computer an optimized path of the symbolic tree” which are a series of mathematical operation for solving the category of stochastic scheduling problems which the “multi-armed bandit problem” is one. In the claim, a symbolic tree is a mathematical construct known as a recursive partitioning graph. The claim recites to “solve” the multi-armed bandit problem and also states to “evaluate” a path through the recursive partitioning graph using an “objective function.” An objective function is a mathematical function that is either minimized or maximized. Accordingly, the claim is directed towards a mathematical abstract idea of “optimizing” parameters (i.e., values of variables) in an equation. While the claim recites to output “an optimized path of the symbolic tree” this is merely a mathematically informed opinion with regard to a mathematical construct known as a symbolic tree.
STEP 2A PRONG TWO: NO.
While the claim recites “a computer implemented method” and recites that the steps are performed “with a computer” MPEP 2106 indicates that “a claim that requires a computer may still recite a mental process. The computer is generally recites and is therefore a general purpose computer and the claim merely uses the computer as a tool for performing the abstract idea. This is not indicative of a practical application.
While the claim recites “design” this merely characterizes the optimized parameter values as being linked to the field of “design.” This merely generally links the mathematical concept of optimizing variable values of a mathematical function to a generalized notion of “design.” Generally linking an abstract idea to a field of use is not indicative of a practical application. See MPEP 2106.05(h).
While the claim recites that the nodes of the symbolic tree “represents” discrete system component with a continuous feature this is merely articulating the concept of symbolic abstraction where mathematical symbols and/or variables is mentally considered to represent something else. In the claim the recited symbolic abstraction is very generally recited because the claim simply states that the nodes represent, broadly, “discrete system component with a continuous feature.” This simply links the mathematical nodes as symbolic representations of anything with a “continuous features” (i.e., a surface). Accordingly, the link to broadly to any object with a surface. This is similar to saying an equation with variable wherein each variable represents an object with a surface. Symbolic abstraction is the very heart of how humans mentally understand or interpret mathematical relationships and therefore merely reciting that elements of a mathematical construct (i.g., symbolic tree/graph) represent generalized components with surfaces is not a practical application.
While the claim recites outputting “… an optimized path of the symbolic tree” this is merely a recitation to output data from the mathematical operations. Merely outputting a mathematical output is not indicative of a practical application. Additionally, even if these elements were interpreted to be something other than the abstract idea itself, merely “outputting” data is insufficient application. See MPEP 2106.05(f), MPEP 2106.05(g) Further, simply characterizing the outputted path as “optimized” is merely reciting an opinion about a particular sequence of mathematical branches in the mathematical graph. Even if the steps of the method did in fact produce a sequence of branches and nodes (i.e., path) that is in some way qualitatively improved when compared to other sequences of branches and nodes in the mathematical graph this is simply an improvement to the mathematical construct itself. Improvements to the abstract idea itself is not a practical application.
STEP 2B: NO.
The claim recites “outputting … an optimized path of the symbolic tree” which is simply outputting data at a high level of generality because it simply recites “outputting.” The general “outputting” of data is a conventional computer activity. Generally reciting to output data is routine and conventional. Indeed, Sugimura_2009 states “we use the commercial software JMP (SAS Institute) for calculating decision tree diagrams” and shows an illustration of a path through a decision tree in Fig. 3 output from the commercial JMP tool. The fact that a commercial software tool exists that outputs a path of a symbolic tree is evidence that such activities are well-understood routine and conventional.
Accordingly, as outlined above, when the elements of the claim are considered individually and as a whole, the claim is found to be directed towards an abstract idea without a practical application and without significantly more. The claim is rejected under 35 USC 101.
Also, while the claim recites that the path is an “optimized” one, this is typical of decision tree analysis in which the objective is to maximize some objective function. Indeed, Subimura_2009 in section 2.5 discusses decision tree analysis and clearly states that the analysis divides the paths through the tree into two groups. The one path, illustrated in Fig. 3, that maximizes the objective function is the optimized path while all other paths are considered as not the optimal path. Accordingly, merely outputting a desired/optimal path (according to some objective function) is not significantly more than the abstract idea itself because this is merely outputting the result of the mathematical calculations.
2. The claim recites: “further comprising: providing, as input, at least one design parameter” however, parameters are merely variables in the mathematical equations. Naming the variables or rather linking the variables to the field of design does not provide a practical application nor indicate significantly more than the abstract idea itself. Additionally, providing input to a mathematical operation is at best pre-solution data gathering. MPEP 2106.05(g) indicates that selecting a particular data source or type of data (i.e., input parameters) to be manipulated amounts to necessary data gathering and is insignificant extra-solution activity. Also executing an abstract idea on a computer is not indicative of a practical application nor is it significantly more. See MPEP 2106.05(f).
3. The claim recites: “wherein the at least one design parameter comprises one of: a discrete parameter; and a continuous parameter” which merely characterizes the variables to be mathematically discrete or continuous. These elements are merely additional recitation of mathematical elements. Also executing an abstract idea on a computer is not indicative of a practical application nor is it significantly more. See MPEP 2106.05(f).
4. The claim recites: “further comprising: providing, as input, a plurality of design parameters, the plurality of design parameters further comprising: discrete parameters and continuous parameters” which merely characterizes the variables to be mathematically discrete or continuous. These elements are merely additional recitation of mathematical elements. Also executing an abstract idea on a computer is not indicative of a practical application nor is it significantly more. See MPEP 2106.05(f).
5. While the claim recites: “wherein the method for solving the multi-armed bandit problem comprises Thompson sampling to choose which node of the plurality of nodes in the symbolic tree to do to next” which are additional mathematical elements because Thompson sampling is a mathematical/statistical method. While the claim indicates that the purpose of the Thompson sampling is to inform a choice with regard to the sequence of branches along a mathematical graph (i.e., symbolic tree), this is merely a mathematical operation informing a choice/opinion about a mathematical sequence. These elements are merely additional elements of the abstract idea. Also executing an abstract idea on a computer is not indicative of a practical application nor is it significantly more. See MPEP 2106.05(f).
6. While the claim recites: “further comprising: sampling using batch; computing a success rate; and updating Thompson parameters” which are merely additional mathematical elements. Also executing an abstract idea on a computer is not indicative of a practical application nor is it significantly more. See MPEP 2106.05(f).
7. While the claim recites “further comprising: providing, as input, an error function, the error function defining a design objective” which are merely additional mathematical elements. An error function is merely some sort of mathematical difference associated with the objective function and the objective function is a mathematical maximization or minimization. MPEP 2106.05(g) indicates that choosing input data sources or selecting information or types of input data is insignificant pre-solution activity.
8. While the claim recites “wherein the design objective comprises an optical system design objective” these elements merely link the objective function to the field of “optical system design” and merely linking the use of a mathematical calculation to a field of use is not a practical application nor is it significantly more. Indeed, Durand_2018 teaches to perform multi-armed bandit methods using Thompson sampling to optimize optical system design parameters. Accordingly, it is known in the art to have design objectives that include optical system design objectives. Therefore, these elements are not significantly more than the abstract idea because they are also common in the art of optical systems. Also executing an abstract idea on a computer is not indicative of a practical application nor is it significantly more. See MPEP 2106.05(f).
Claim 9.
STEP 1: Yes. The claim recites “a computer implemented optimization method”
STEP 2A PRONG ONE: Yes. The claim recites:
“A computer implemented optimization method comprising: initializing a symbolic tree with a plurality of nodes, wherein each node represents a discrete system component with a continuous feature in a preparation phase;
Updating parameters held by each node in the symbolic tree using samples collected during an epoch in a parameter phase;
Evaluating at least one sample down the symbolic tree with Thompson sampling in order to select at least one sample in a Thompson phase; and
Updating parameter distributions using the selected at least one sample, incrementing the epoch, and evaluating an error function for a selected path on the symbolic tree, in a rejection phase” which are a series of mathematical operation for solving the category of stochastic scheduling problems which the “multi-armed bandit problem” one. In the claim, a symbolic tree is a mathematical construct known as a recursive partitioning graph. The claim recites to “solve” the multi-armed bandit problem and also states to “evaluate” a path through the recursive partitioning graph using an “objective function.” An objective function is a mathematical function that is either minimized or maximized. Accordingly, the claim is directed towards a mathematical abstract idea of “optimizing” parameters (i.e., values of variables) in an equation. While the claim recites to output “an optimized path of the symbolic tree” this is merely a mathematically informed opinion with regard to a mathematical construct known as a symbolic tree.
STEP 2A PRONG TWO: NO.
While the claim recites “a computer implemented” method merely executing a mathematical abstract idea on a generally recited computer is not indicative of a practical application. See MEPEP 2106.05(f).
While the claim recites that the nodes of the mathematical graph “represent a discrete system component with a continuous features” this is merely articulating the concept of symbolic abstraction where mathematical symbols and/or variables is mentally considered to represent something else. In the claim the recited symbolic abstraction is very generally recited because the claim simply states that the nodes represent, broadly, “discrete system component with a continuous feature.” This simply links the mathematical nodes as symbolic representations of anything with a “continuous features” (i.e., a surface). Accordingly, this links broadly to any object with a surface. This is similar to saying an equation with variable wherein each variable represents an object with a surface. Symbolic abstraction is the very heart of how humans mentally understand or interpret mathematical relationships and therefore merely reciting that elements of a mathematical construct (i.g., symbolic tree/graph) represent generalized components with surfaces is not a practical application.
STEP 2B: NO.
The claim merely recites the steps of a mathematical operation. Merely stating that the mathematical operation is executed by a computer is not significantly more than the abstract idea itself. Further, reciting that the nodes of a mathematical graph are abstract symbols representative of objects with surfaces, at best, merely links the use of the mathematical symbolism to objects with surfaces. Such elements are not significantly more than the abstract idea itself.
10. the claim recites “wherein the preparation phase further comprises: generating a tree node with two sets of distributions, wherein each tree node contains a Thompson Distribution” which is part of the mathematical abstract idea.
11. The claim recites: “wherein each node contains a plurality of parameter priors for each of its respective parameters” this is a recitation of mathematical operations as a prior (prior probability distribution).
12. The claim recites: “wherein the parameter phase further comprises: determining a batch size and an error value for the epoch” which are also part of the mathematical operations.
13. The claim recites “wherein the parameter phase further comprises: setting a batch size to be a number of samples taken in each rejection phase, wherein the batch size decreases” which are part of the mathematical operation.
14. The claim recites: “wherein the parameter phase further comprises: updating parameter distributions using saved samples and incrementing the epoch” which is part of the mathematical operation.
15. the claim recites: “wherein the Thompson phase further comprises: updating parameter distribution in the Thompson Phase only if there are more than five accepted samples through a node” which is part of the mathematical operation.
16. The claim recites: “wherein the error function defines a design objective” which only generally links the use of mathematical objective function to the general notion of “design” and generally linking the use of an abstract idea to a field of use is not indicative of a practical application or significantly more.
17. The limitations of claim 17 are substantially the same as those of claim 1 and are rejected due to the same reasons as outlined above for claim 1. Additionally, while the claim recites “An optimization system comprising: a computer system, the computer system further comprising: at least one processor; a graphical user interface; and a computer-usable medium embodying computer program code, the computer- usable medium capable of communicating with the at least one processor, the computer program code comprising instructions executable by the at least one processor and configured for” the mere recitation to use a generally recited computer to perform a mathematical optimization is not indicative of a practical application nor significantly more. See MPEP 2106.05(f) and MPEP 2106.05(g).
18. The claim recites “further comprising: providing at least one design parameter, the at least one design parameter comprising one of: a discrete parameter; and a continuous parameter” are part of the mathematical abstract idea.
19. The claim recites “wherein the method for solving the multi-armed bandit problem comprises Thompson sampling to choose which node of the plurality of nodes in the symbolic tree to go to next, the Thompson sampling further comprising sampling using batch; computing a success rate; and updating Thompson parameters” which are part of the mathematical abstract idea. While the claim indicates that the purpose of the Thompson sampling is to inform a choice with regard to the sequence of branches along a mathematical graph (i.e., symbolic tree), this is merely a mathematical operation informing a choice/opinion about a mathematical sequence. These elements are merely additional elements of the abstract idea. Also executing an abstract idea on a computer is not indicative of a practical application nor is it significantly more. See MPEP 2106.05(f).
20. The claim recites: “further comprising: providing an error function, the error function defining one of an optical system design objective and an electrical system a design objective”, however, providing an error function that defines a design objective is additionally part of the mathematical abstract idea. While the error function (e.g., a difference between an objective parameter value and an actual parameter value) is characterized as defining some objective linked to one of an optical system and an electrical system this merely links a mathematical function to a field of use. This is not a practical application as neither the optical nor electrical rely or depend upon the mathematical abstract idea.
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.
Claims 1, 2, 3, 4, 7 are rejected under 35 U.S.C. 103 as being unpatentable over Gautier_2021 (Sherlock: A Multi-Objective Design Space Exploration Framework, April 1, 2021) in view of Sugimura_2009 (A New Design Method based on Cooperative Data Mining from Multi-Objective Design Space, Journal of Computational Science and Technology, Vol. 3, No. 1, 2009) in view of Schell_2008 (US 2008/0189083 A1).
Claim 1. Gautier_2021 makes obvious “A method for design optimization (abstract: “Design space exploration (DSE) provides intelligent methods to tune… optimization parameters…”; introduction: “optimizing… design…”; page 2: “… a design space exploration (DSE) framework that uses active learning to evaluate and intelligently explore the HLS design space… reach the set of Pareto optimal designs…”)
comprising
Updating,, node symbol parameters, using a plurality of samples;
Sampling the plurality of samples with a method for solving a multi-armed bandit problem; Promoting, each sample in the plurality of samples down a path of the symbolic tree; Evaluating, , each path with a problem specific fitness function” (page 2: “… we create a selection strategy based on the multi-armed bandit problem that rewards the models directly improving the actual Pareto front; Page 5 Fig. 2: Pareto Score and choice of sampling method; page 8: “… a popular ensemble model is the Random Forest predictor based on a set of decision trees… Sherlock can use any of these types of learning algorithms. We experiment with Random Forest and Gaussian process as they can generally model complex design spaces…”: page 9 Algorithm 3: the model selection algorithm, Page 9: “… we propose to learn the best model using a multi-armed bandit strategy that iteratively updates the importance of each model based on the Pareto set improvement…”; page 10 section 2.4; page 3 section 2.1: “… aims to find the set P ⊆ S
of design candidates that are optimal on at least one objective…”; page 12 section 3.2 par 3: “… parameters that translate into architectural changes… some optimizations specific to each application…” EXAMINER NOTE: optimizing to one objective and/or optimizing to a specific application is indicative of a problem specific fitness function.);
Gautier_2021 does not teach “a computer implemented method for automated” design optimization nor “generating with a computer a symbolic tree with a plurality of nodes wherein each node represents a discrete system component with a continuous feature” nor “with a computer” nor node symbol parameters “for each of the plurality of node” nor “computer implemented” nor “with a computer” nor a path of “the plurality of nodes” nor “with the computer” nor “and outputting, with the computer, an optimized a path of the symbolic tree.”
Sugimura_2009 makes obvious “generating a symbolic tree with a plurality of nodes ” and node symbol parameters “for each of the plurality of node” and a path of “the plurality of nodes” and “and outputting,, an optimized a path of the symbolic tree” (Fig. 2 illustrates a decision tree analysis performed on the design database and outputting at least a list of design rules. Page 292 section 2.5 Decision Tree Analysis and Fig. 3 illustrates a path through the symbolic tree that is defined by the rules. Page 292 section 2.5: “… following this procedure, a tree diagram, as shown in Fig. 3 is obtained… a single design rule can be obtained by tracing a path to the desired result… the rule is obtained as: …[equation 8]… we use the commercial software JMP (SAS institute) for calculating decision tree diagrams…”; page 297: “… decision tree analysis was then applied to the database, and a corresponding decision tree diagram to each objective function was obtained. From these diagrams, the following rules for extremely improving corresponding objective functions were obtained… the order of design variables appearing in the condition terms represents the order of sensitivity to the corresponding objective function…”).
Gautier_2021 and Sugimura_2009 are analogous art because they are from the same field of endeavor called design optimization. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Sugimura_2009. The rationale for doing so would have been that Gautier_2021 teaches to perform parameter optimization by doing design space exploration and Sugimura_2009 teaches “it has become common to design products using parameter surveys and optimization that use simulations and experiments. The resultant data can be recognized as a design database… we believe that it is more important to analyze such databases to deepen understanding of design problems. Namely, we should determine a final solution after reviewing the design knowledge obtained from the design database. Therefore, it is believed that a parameter design method that practices this idea should be developed” (page 1 introduction). Accordingly, Sugimura_2009 teaches to take the results of design space exploration (DSE) and to perform a decision tree analysis and output the design rules (i.e., the trace through the decision tree). Therefore, it would have been obvious to combine design space exploration (DSE) that creates a set of designs (i.e., a database) as taught by Gautier_2021 with the decision tree analysis of Sugimura_2009 for the benefit of gaining a better understanding of the design space to better inform the selection of the most optimal design parameters to obtain the invention as specified in the claims.
Gautier_2021 and Sugimura_2009 do not explicitly recite: “a computer implemented method for automated” nor “generating with a computer” a symbolic tree with a plurality of nodes “wherein each node represents a discrete system component with a continuous feature” nor “with a computer” nor “computer implemented” nor “with a computer” nor “with the computer” nor with the computer.”
Schell_2008 makes obvious ““a computer implemented method for automated” and “generating with a computer” a symbolic tree with a plurality of nodes “wherein each node represents a discrete system component with a continuous feature” and “with a computer” and “computer implemented” and “with a computer” and “with the computer” and with the computer” (FIG. 15 illustrates a computer system with a processor, display, memory, etc.; par 27: “… an example computer system according to one embodiment of the invention…”; par 32: “… the techniques shown in the figures can be implemented using code and data stored and executed on one or more computers…”; par 31: “… in alternative embodiments of the invention the data structure takes a different form (e.g., list, graph, tree, table, trie, stack, etc.)…”; par 33: “… a structural processing of a modular system is mode possible. Particularly for automated processing proceeding mechanically or in computer-based fashion… computer controlled generation of assembly drawings…”; par 34: “… the features for each component stored in the first data structure include information concerning geometric auxiliary figures in the design… e.g., surfaces, planes, axes, cylinders, lines, circles and/or edges. Therefore, features are advantageously stored…” par 40: “… each design variant is represented by a graph, especially a graph free of circles, where the nodes of the graph exactly represent the components used in the design variant, and the edges of the graph represent physical connections between the components, and the coded design variants are transferred to a computing device for the automated generating…”; par 49: “… the design variants are codable as graphs having nodes and edges…”; par 53: “… the design variant may be represented by a graph… the nodes of the graph exactly represent the components used in the design variant, and the edges of the graph represent physical connections between the components… executed on a computing device… this is advantageous because a compact coding of design variants is made available… from which an assembly drawing and/or a 3D model is able to be generated easily and with little computational work by a computing device… able to be automated…”; FIG. 7 is an illustration of a discrete system component with continuous features. EXAMINER NOTE: a cylinder, for example, is a discrete object that possesses continuous features like a smooth, unbroken lateral surface. Therefore, a tree data structure that contain features of component parts that are smooth and unbroken surfaces is a tree where the nodes represent discrete system components with a continuous feature.)
Gautier_2021 and Schell_2008 are analogous art because they are from the same field of endeavor called design space exploration. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Schell_2008.
The rationale for doing so would have been that Gautier_2021 teaches to perform design space exploration which is an evaluation of design variants while Schell_2008 teaches that design space exploration can be optimized by the use of a computer where design variants are stored in a tree structure that advantageously allows a computer to store design variants and process the design variants automatically with “little computational work by a computing device” (par 40, 53).
Therefore, it would have been obvious to combine Gautier_2021 and Schell_2008 for the benefit of having coded design variants that are transferable to a computer for automation and require little computational work by the computing device to obtain the invention as specified in the claims.
Claim 2. Gautier_2021 makes obvious “further comprising: providing, as input at least one design parameter” (page 3 section 2.1: “A design space is composed of both an input space and an output space. The input space is a set of FPGA HLS designs that met the application’s functional requirements. The difference in the designs can be described through the definition of different design parameters, also known in the DSE literature as knobs… more formally stated, the input space X is defined as
X = {K1 X K2 X … X Kn}
∈
XMxn where Ki is a knob… Figure 1 provides an example of a design space. The input space consists of five knobs (n = 5) and the output space has two objectives (o=2)…”).
Claim 3. Gautier_2021 makes obvious “wherein the at least one design parameter comprises one of: a discrete parameter; and a continuous parameter” (page 3 section 2.1: “… Knobs take 𝑛 values, for 𝑛 ∈ [2, ∞]. They can be discrete, categorical, or continuous…”).
Claim 4. Gautier_2021 makes obvious “further comprising: providing, as input, a plurality of design parameters, the plurality of design parameters further comprising: discrete parameters and continuous parameters” (page 3 section 2.1: “A design space is composed of both an input space and an output space. The input space is a set of FPGA HLS designs that met the application’s functional requirements. The difference in the designs can be described through the definition of different design parameters, also known in the DSE literature as knobs… more formally stated, the input space X is defined as
X = {K1 X K2 X … X Kn}
∈
XMxn where Ki is a knob… Figure 1 provides an example of a design space. The input space consists of five knobs (n = 5) … Knobs take 𝑛 values, for 𝑛 ∈ [2, ∞]. They can be discrete, categorical, or continuous…”).
Claim 7. Gautier_2021 makes obvious “further comprising: providing, as input, an error function, the error function defining a design objective” (page 11 section 3.1: “… we compute an error metric based on the ground truth design spaces, using the Average Distance to References Set (ADRS) metric [19] ADRS measures the average normalized distance between the estimated Pareto front and the reference Pareto front. The closer it is to 0, the better the estimation is. EXAMINER NOTE: a specifying a reference value for the error function makes obvious to provide the error function as an input because the specification of the reference defines the error function).
Claims 5, 6, 8 are rejected under 35 U.S.C. 103 as being unpatentable over Gautier_2021 in view of Sugimura_2009 in view of Durand_2018 (A machine learning approach for online automated optimization of super-resolution optical microscopy, Nature Communications, 2018).
Claim 5. Gautier_2021 makes obvious “wherein the method for solving the multi-armed bandit problem comprising Thompson sampling to choose which [of a plurality of options” (Gautier, at page 10, clearly teaches: “… a good choice of sampling algorithm is Thompson Sampling [29] that provides a good tradeoff between exploration and exploitation [4]. EXAMINER NOTE: Gautier teaches to use Thompson Sampling to choose among a pool of alternative models (i.e. a plurality of options) by using “exploration and exploitation” and while the pool of alternative models is not explicitly nodes in a symbolic tree it is clear that Gautier is teaching to use Thompson Sampling to make decisions about which choice is better when there are alternative choices by using exploration and exploitation).
Durand_2018 further makes clear what those of ordinary skill in the art understand by the exploitation and exploration taught by Gautier. Durand_2018, at page 2 states: “… optimization techniques search for good parameters… this results in the so-called exploration-exploitation trade-off, which is the main scope of the well-known multi-armed bandits framework. Here, we consider a bandits algorithm combining kernel regression and Thomspon Sampling (TS)… to capture the underlying structure of the parameter space and efficiently model each objective…”. Therefore, when Gautier teaches to use Thompson Sampling for exploration and exploitation, those of ordinary skill in the art understand that this means to capture the underlying parameter space to identify/choose which combination of parameters provide the best combination to achieve the objective.
Gautier_2021 and Durand_2018 are analogous art because they are from the same field of endeavor called parameter optimization. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Durand_2018. The rationale for doing so would have been that Gautier_2021 teaches to use multi-armed bandit approach to optimize parameters in a design space and teaches to use Thompson Sampling to choose among options using exploration and exploitation. Durand_2018 teaches to use the multi-armed bandit approach with Thompson Sampling to optimize parameters. Therefore, it would have been obvious to combine the algorithm and code for design space exploration taught by Gautier_2021 with Durand_2018 which teaches Thompson Sampling for parameter selection and optimization for the benefit of choosing the optimal design parameter to obtain the invention as specified in the claims.
Further, Sugimura_2009 clearly illustrates a decision tree where the nodes are design variables on page 292 Fig. 3. Therefore, in combination Gautier, Sugimura_2009, and Durand_2018 make obvious to use Thompson Sampling to choose design variables in the design variable space and when the design variable of the design variable space are the nodes of a decision tree as taught by Sugimura_2009 the Thompson Sampling chooses the best design variables (i.e., node) which is a path through the decision tree. Accordingly, the combination makes obvious “node of the plurality of nodes in the symbolic tree to go to next.”
Gautier_2021 and Sugimura_2009 are analogous art because they are from the same field of endeavor called design optimization. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Sugimura_2009. The rationale for doing so would have been that Gautier_2021 teaches to perform parameter optimization by doing design space exploration and Sugimura_2009 teaches “it has become common to design products using parameter surveys and optimization that use simulations and experiments. The resultant data can be recognized as a design database… we believe that it is more important to analyze such databases to deepen understanding of design problems. Namely, we should determine a final solution after reviewing the design knowledge obtained from the design database. Therefore, it is believed that a parameter design method that practices this idea should be developed” (page 1 introduction). Accordingly, Sugimura_2009 teaches to take the results of design space exploration (DSE) and to perform a decision tree analysis and output the design rules (i.e., the trace through the decision tree). Therefore, it would have been obvious to combine design space exploration (DSE) that creates a set of designs (i.e., a database) as taught by Gautier_2021 with the decision tree analysis of Sugimura_2009 for the benefit of gaining a better understanding of the design space to better inform the selection of the most optimal design parameters to obtain the invention as specified in the claims.
Claim 6. Gautier_2021 makes obvious “further comprising: sampling using batch; computing a success rate; and updating Thompson parameters” (page 9 algorithm 3; Page 10 Fig. 4; Page 10: “… In this case, we consider each model as a bandit. The outcome of observing one bandit is either an improvement in the current Pareto set, or no improvement. In other words, we are trying to learn a Bernoulli distribution for each model. Consequently, we can select the prior distribution of the bandits as a Beta distribution. We define the prior distribution with parameter 𝜃 for each model 𝑖 as 𝑃𝑖 (𝜃) = 𝐵𝑒𝑡𝑎(𝛼𝑖 , 𝛽𝑖 ). We update these distributions by selecting one bandit and observing the outcome. A good choice of sampling algorithm is Thompson Sampling [29] that provides a good tradeoff between exploration and exploitation [4]. The algorithm draws a random sample from each distribution: 𝜃ˆ𝑖 ∼ 𝐵𝑒𝑡𝑎(𝛼𝑖 , 𝛽𝑖 ) ∀𝑖, then chooses the bandit with the largest sample value. The observation 𝑥 of the selected bandit corresponds to the improvement of hypervolume over the known designs (hypervolume(𝐾)), after we sample a design according to a strategy as defined in Section 2.2.3. In other words, if the model 𝑔𝑖 improved the Pareto set, 𝑥 is a positive outcome, i.e., 𝑥 = 1, otherwise 𝑥 = 0. A value of 𝑥 > 0 increases 𝛼𝑖 , while a value of 𝑥 = 0 increases the value of 𝛽𝑖 . As can be seen in Figure 4, by increasing 𝛼𝑖 and holding 𝛽𝑖 constant, the likelihood that the distribution provides are larger value (closer to 1) is increased. Likewise, increasing 𝛽𝑖 makes is more likely that smaller sample value will be selected (closer to 0). We use this updated function to compute the posterior distribution based on the outcome, and use it as prior for the next iteration. Algorithm 3 shows the details of the method and how it integrates with the Sherlock algorithm described in Algorithm 1. Note that we use an optional posterior reshaping factor 𝑟 that changes the variance of the distributions. As a result, increasing the value of 𝑟 favors exploitation over exploration (i.e., the model providing the best outcome gets selected more often), and the policy
becomes more greedy. Increasing this value also has the side benefit that each positive outcome is
given more consideration, and potential improvements from models later in the sampling process
will re-adjust their importance faster. It provides a small chance to switch the most important
model during the sampling process. A model selection algorithm is valuable…”).
Claim 8. While Gautier_2021 teaches integrated circuit system design objectives and while Sugimura_2009 teaches centrifugal fan design objectives. While both Gautier_2021 and Sugimura_2009 teach the use of multi-armed bandit approach to optimizing generalized systems and accordingly it may be properly found that it would have been obvious to those of ordinary skill in the art to try such an approach on an optical system, Gautier_2021 and Sugimura_2009 do not explicitly teach to apply the multi-armed bandit solution to optical system design objectives.
Nevertheless, Durand_2018 makes obvious “wherein the design objective comprises an optical system design objective” (page 2: “Super-resolution techniques have revolutionized the field of optical microscopy… tuning of many parameters, such as laser excitation and depletion power, pixel size, scanning speed, detector gating, and illumination scheme… we propose here an online machine learning approach to improve the performance of optical nanoscopy by addressing an online optimization problem, where the aim is to maximize the outcome (here objectives) during the real imaging phase. We format this problem under the multi-armed bandit’s framework… we achieve multi-objective (MO) optimization…”; page 10 diagram a: illustrates using multi-armed bandit methods with optical microscope.).
Gautier_2021 and Durand_2018 are analogous art because they are from the same field of endeavor called parameter optimization. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Durand_2018. The rationale for doing so would have been that Gautier_2021 teaches to use multi-armed bandit approach to optimize parameters in a design space and Durand_2018 teaches to use the multi-armed bandit approach to optimize parameters for an optical microscopy system. Therefore, it would have been obvious to combine the algorithm and code for design space exploration taught by Gautier_2021 with the optical system taught by Durand_2018 for the benefit of having an executable algorithm that optimizes design parameter to obtain the invention as specified in the claims.
Claims 17, 18 are rejected under 35 U.S.C. 103 as being unpatentable over Gautier_2021 in view of Sugimura_2009 in view of Schell_2008 in view of Balakrishnan_2020 (US 2020/0019871 A1).
Claim 17. The limitations of claim 17 are substantially the same as those of claim 1 and are therefore rejected due to the same reasons as outlined above for claim 1. While Gautier_2021 clearly teaches computer code (see algorithm 1, 2, and 3) and while this would have clearly implied to those of ordinary skill in the art “An optimization system comprising: A computer system, the computer system further comprising: at least one processor; A graphical user interface; and A computer-usable medium embodying computer program code, the computer-usable medium capable of communicating with the at least one processor, the computer program code comprising instructions executable by the at least one processor and configured for:” as claimed, Gautier_2021 does not explicitly recite these elements.
Nevertheless, Balakrishnan_2020 makes obvious “An optimization system comprising: A computer system, the computer system further comprising: at least one processor; A graphical user interface; and A computer-usable medium embodying computer program code, the computer-usable medium capable of communicating with the at least one processor, the computer program code comprising instructions executable by the at least one processor and configured for:” (FIG. 1, FIG. 3, FIG. 4, FIG. 7, FIG. 10; par 3: “… a system can comprise a memory that stores computer executable components and a processor that executes the computer executable components stored in the memory. The computer executable components can comprise a recommendation component that can recommend a decision based on one or more decision policies… the computer executable components can further comprise an explanation component that can generate an explanation of the decision…”; par 36: “… a user interface (e.g., graphical user interface (GUI), form-based interface, natural language interface, command line, documentation GUI, etc…”; par 41: “… selection component 114 can comprise a user interface (e.g., a graphical user interface (GUI)… that can facilitate receiving input…”; par 109: “the system memory 1016 can also include volatile memory 1020 and nonvolatile memory 1022… BIOS… computer 1012 can also include removable/non-removable… computer storage media… disk storage…”).
Gautier_2021 and Balakrishnan_2020 are analogous art because they are from the same field of endeavor called decision support/recommendation system. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Balakrishnan_2020. The rational would have been that Gautier_2021 teaches to have a design space exploration algorithm/method that uses a multi-bandit approach and Thompson sampling to optimize parameters and illustrates the algorithm using code (see FIG. 3). Optimizing parameters based on a design space exploration is a recommendation system. Balakrishnan_2020 teaches to use a computer to execute code that perform a recommendation system based on a multi-bandit operation that uses Thompson sampling (see Par 26: “… to facilitate performance of such operations described above, recommendation system… can employ one or more heuristic techniques… to address the exploration-exploitation dilemma in a multi-armed bandit setting (e.g., a constrained contextual multi-armed bandit setting) … can employ a Thompson sampling algorithm…”). Therefore, it would have been obvious to combine the algorithm of Gautier_2021 with the computer system of Balakrishnan_2020 the benefit of having a computer processor upon which the algorithm can be executed to obtain the invention as specified in the claims.
Claim 18. Gautier_2021 makes obvious “further comprising: providing at least one design parameter, the at least one design parameter comprising one of: a discrete parameter; and a continuous parameter” (page 3 section 2.1: “… Knobs take 𝑛 values, for 𝑛 ∈ [2, ∞]. They can be discrete, categorical, or continuous…”).
Claims 17, 18, 20 are rejected under 35 U.S.C. 103 as being unpatentable over Gautier_2021 in view of Sugimura_2009 in view of Schell_2008 in view of Balakrishnan_2020 in view of Lin_2017 (Electronic-Photonic Co-Optimization of High-Speed Silicon Photonic Transmitters, IEEE Explore, 2017).
Claim 20. Gautier_2021 makes obvious “further comprising: providing an error function, the error function defining design objective” (Page 4: “Since the goal of DSE is to find the Pareto front P… understand the design space around the Pareto font… DSE outputs an estimated Pareto front P. To understand the quality of the estimated Pareto front, a metric is needed to compare the estimated Pareto designs with the actual Pareto front. Average Distance to Reference Set (ADRS) [19] measures the average normalized distance between the estimated Pareto fron P and the actual Pareto front… 0 indicates that every estimated Pareto point is on the actual Pareto front…”; page 11 section 3.1: “… we compute an error metric based on the ground truth design spaces, using the Average Distance to References Set (ADRS) metric [19] ADRS measures the average normalized distance between the estimated Pareto front and the reference Pareto front. The closer it is to 0, the better the estimation is.).
Lin_2017 makes obvious “one of an optical system design objective and an electrical system” (abstract: “… electro-optical co-optimization…”; Fig. 1 illustrate both optical parameters and electrical parameters, page 2 section II par 1: “… silicon photonic device and link co-design… co-optimization as it optimizes photonic device parameters such a doping levels and geometries alongside CMOS circuits and architectural choices. The optimization goal is to minimize the overall energy-per bit (E/b) of the transmitter macro (laser plus driver) under both technology and link design constraints… shown in Fig. 1…”).
Gautier_2021 and Lin_2017 are analogous art because they are from the same field of endeavor called design optimization. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Lin_2017. The rationale for doing so would have been that Gautier_2021 teaches to perform design exploration using Thompson Sampling which converges quickly towards a low-error solution. Lin_2017 teaches the need to optimize electronic-photonic system to have bandwidth-dense and energy-efficient high-seed devices. Therefore, it would have been obvious to combine a low-error design optimization exploration-exploitation method with electronic-photonic systems for the benefit of exploring and optimizing design parameters to have bandwidth-dense and energy-efficient high-speed devices to obtain the invention as specified in the claims.
Claims 19 are rejected under 35 U.S.C. 103 as being unpatentable over Gautier_2021 in view of Sugimura_2009 in view of Schell_2008 in view of Balakrishnan_2020 in view of Durand_2018
Claim 19. Gautier_2021 makes obvious “wherein the method for solving the multi-armed bandit problem comprises Thompson sampling to choose which [option] the Thompson sampling further comprising sampling using batch; computing a success rate; and updating Thompson parameters” (page 9 algorithm 3; Page 10 Fig. 4; Page 10: “… In this case, we consider each model as a bandit. The outcome of observing one bandit is either an improvement in the current Pareto set, or no improvement. In other words, we are trying to learn a Bernoulli distribution for each model. Consequently, we can select the prior distribution of the bandits as a Beta distribution. We define the prior distribution with parameter 𝜃 for each model 𝑖 as 𝑃𝑖 (𝜃) = 𝐵𝑒𝑡𝑎(𝛼𝑖 , 𝛽𝑖 ). We update these distributions by selecting one bandit and observing the outcome. A good choice of sampling algorithm is Thompson Sampling [29] that provides a good tradeoff between exploration and exploitation [4]. The algorithm draws a random sample from each distribution: 𝜃ˆ𝑖 ∼ 𝐵𝑒𝑡𝑎(𝛼𝑖 , 𝛽𝑖 ) ∀𝑖, then chooses the bandit with the largest sample value. The observation 𝑥 of the selected bandit corresponds to the improvement of hypervolume over the known designs (hypervolume(𝐾)), after we sample a design according to a strategy as defined in Section 2.2.3. In other words, if the model 𝑔𝑖 improved the Pareto set, 𝑥 is a positive outcome, i.e., 𝑥 = 1, otherwise 𝑥 = 0. A value of 𝑥 > 0 increases 𝛼𝑖 , while a value of 𝑥 = 0 increases the value of 𝛽𝑖 . As can be seen in Figure 4, by increasing 𝛼𝑖 and holding 𝛽𝑖 constant, the likelihood that the distribution provides are larger value (closer to 1) is increased. Likewise, increasing 𝛽𝑖 makes is more likely that smaller sample value will be selected (closer to 0). We use this updated function to compute the posterior distribution based on the outcome, and use it as prior for the next iteration. Algorithm 3 shows the details of the method and how it integrates with the Sherlock algorithm described in Algorithm 1. Note that we use an optional posterior reshaping factor 𝑟 that changes the variance of the distributions. As a result, increasing the value of 𝑟 favors exploitation over exploration (i.e., the model providing the best outcome gets selected more often), and the policy becomes more greedy. Increasing this value also has the side benefit that each positive outcome is given more consideration, and potential improvements from models later in the sampling process will re-adjust their importance faster. It provides a small chance to switch the most important model during the sampling process. A model selection algorithm is valuable…” EXAMINER NOTE: Gautier teaches to use Thompson Sampling to choose among a pool of alternative models (i.e. a plurality of options) by using “exploration and exploitation” and while the pool of alternative models is not explicitly nodes in a symbolic tree it is clear that Gautier is teaching to use Thompson Sampling to make decisions about which choice is better when there are alternative choices by using exploration and exploitation).
Durand_2018 further makes clear what those of ordinary skill in the art understand by the exploitation and exploration taught by Gautier. Durand_2018, at page 2 states: “… optimization techniques search for good parameters… this results in the so-called exploration-exploitation trade-off, which is the main scope of the well-known multi-armed bandits framework. Here, we consider a bandits algorithm combining kernel regression and Thomspon Sampling (TS)… to capture the underlying structure of the parameter space and efficiently model each objective…”. Therefore, when Gautier teaches to use Thompson Sampling for exploration and exploitation, those of ordinary skill in the art understand that this means to capture the underlying parameter space to identify/choose which combination of parameters provide the best combination to achieve the objective.
Gautier_2021 and Durand_2018 are analogous art because they are from the same field of endeavor called parameter optimization. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Durand_2018. The rationale for doing so would have been that Gautier_2021 teaches to use multi-armed bandit approach to optimize parameters in a design space and teaches to use Thompson Sampling to choose among options using exploration and exploitation. Durand_2018 teaches to use the multi-armed bandit approach with Thompson Sampling to optimize parameters. Therefore, it would have been obvious to combine the algorithm and code for design space exploration taught by Gautier_2021 with Durand_2018 which teaches Thompson Sampling for parameter selection and optimization for the benefit of choosing the optimal design parameter to obtain the invention as specified in the claims.
Further, Sugimura_2009 clearly illustrates a decision tree where the nodes are design variables on page 292 Fig. 3. Therefore, in combination Gautier, Sugimura_2009, and Durand_2018 make obvious to use Thompson Sampling to choose design variables in the design variable space and when the design variable of the design variable space are the nodes of a decision tree as taught by Sugimura_2009 the Thompson Sampling chooses the best design variables (i.e., node) which is a path through the decision tree. Accordingly, the combination makes obvious “node of the plurality of nodes in the symbolic tree to go to next.”
Gautier_2021 and Sugimura_2009 are analogous art because they are from the same field of endeavor called design optimization. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Sugimura_2009. The rationale for doing so would have been that Gautier_2021 teaches to perform parameter optimization by doing design space exploration and Sugimura_2009 teaches “it has become common to design products using parameter surveys and optimization that use simulations and experiments. The resultant data can be recognized as a design database… we believe that it is more important to analyze such databases to deepen understanding of design problems. Namely, we should determine a final solution after reviewing the design knowledge obtained from the design database. Therefore, it is believed that a parameter design method that practices this idea should be developed” (page 1 introduction). Accordingly, Sugimura_2009 teaches to take the results of design space exploration (DSE) and to perform a decision tree analysis and output the design rules (i.e., the trace through the decision tree). Therefore, it would have been obvious to combine design space exploration (DSE) that creates a set of designs (i.e., a database) as taught by Gautier_2021 with the decision tree analysis of Sugimura_2009 for the benefit of gaining a better understanding of the design space to better inform the selection of the most optimal design parameters to obtain the invention as specified in the claims.
Claims 9 – 16 are rejected under 35 U.S.C. 103 as being unpatentable over Gautier_2021 in view of Balakrishnan_2020 in view of Sugimura_2009 in view of Schell_2008
Claim 9. Gautier_2021 makes obvious “a optimization method comprising: initializing a symbolic tree in a preparation phase; Updating a parameter held by each node in the symbolic tree using samples collected during an epoch in a parameter phase; Evaluating at least one sample down the symbolic tree with Thompson sampling in order to select at least one sample in a Thompson phase; and Updating parameter distributions using the selected at least one sample and incrementing the epoch, and evaluating an error function in a rejection phase” (page 2: “… we create a selection strategy based on the multi-armed bandit problem that rewards the models directly improving the actual Pareto front; Page 5 Fig. 2: Pareto Score and choice of sampling method; page 8: “… a popular ensemble model is the Random Forest predictor based on a set of decision trees… Sherlock can use any of these types of learning algorithms. We experiment with Random Forest and Gaussian process as they can generally model complex design spaces…”: page 9 Algorithm 3: the model selection algorithm, Page 9: “… we propose to learn the best model using a multi-armed bandit strategy that iteratively updates the importance of each model based on the Pareto set improvement…”; page 9-10 section 2.4; page 10 FIG 4; page 19 section 5: “… an evaluation-based, multi-objective, design space exploration framework… heavily focused on improving the set of optimal designs at each iteration, and as such converges very quickly towards a low-error solution…” EXAMINER NOTE: each iteration evaluates the objective function rejecting solutions that are not low-error and then performs further iterations until the solution is low-error (i.e., has acceptably low error – below, for example, a threshold). Page 11 section 3.1: “… we compute an error metric based on the ground truth design spaces, using the Average Distance to Reference Set (ADRS metric [19]. ADRS measures the average normalized distance between the estimated Pareto front and the reference Pareto front. The closer it is to 0, the better the estimation is… the goal of Sherlock is to produce a curve that converges to zero as fast as possible…” EXAMINER NOTE: this teaches to use an error function (i.e., a difference function) to determine if an estimated result has reached the objective making obvious to those of ordinary skill in the art to use an error estimation to assess the performance of an objective function.)
Gautier_2021 does not explicitly recite “computer implemented” nor a symbolic tree “With a plurality of nodes, wherein each node represents a discrete system component with a continuous feature” nor evaluating an error function “for a selected path on the symbolic tree.”
Balakrishnan_2020 makes obvious “computer implemented” (FIG. 1, FIG. 3, FIG. 4, FIG. 7, FIG. 10; par 3: “… a system can comprise a memory that stores computer executable components and a processor that executes the computer executable components stored in the memory. The computer executable components can comprise a recommendation component that can recommend a decision based on one or more decision policies… the computer executable components can further comprise an explanation component that can generate an explanation of the decision…”; par 36: “… a user interface (e.g., graphical user interface (GUI), form-based interface, natural language interface, command line, documentation GUI, etc…”; par 41: “… selection component 114 can comprise a user interface (e.g., a graphical user interface (GUI)… that can facilitate receiving input…”; par 109: “the system memory 1016 can also include volatile memory 1020 and nonvolatile memory 1022… BIOS… computer 1012 can also include removable/non-removable… computer storage media… disk storage…”).
Gautier_2021 and Balakrishnan_2020 are analogous art because they are from the same field of endeavor called decision support/recommendation system. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Balakrishnan_2020. The rational would have been that Gautier_2021 teaches to have a design space exploration algorithm/method that uses a multi-bandit approach and Thompson sampling to optimize parameters and illustrates the algorithm using code (see FIG. 3). Optimizing parameters based on a design space exploration is a recommendation system. Balakrishnan_2020 teaches to use a computer to execute code that perform a recommendation system based on a multi-bandit operation that uses Thompson sampling (see Par 26: “… to facilitate performance of such operations described above, recommendation system… can employ one or more heuristic techniques… to address the exploration-exploitation dilemma in a multi-armed bandit setting (e.g., a constrained contextual multi-armed bandit setting) … can employ a Thompson sampling algorithm…”). Therefore, it would have been obvious to combine the algorithm of Gautier_2021 with the computer system of Balakrishnan_2020 the benefit of having a computer processor upon which the algorithm can be executed to obtain the invention as specified in the claims.
Gautier_2021 and Balakrishnan_2020 Gautier_2021 does not explicitly recite a symbolic tree “With a plurality of nodes, wherein each node represents a discrete system component with a continuous feature” nor evaluating an error function “for a selected path on the symbolic tree.”
Sugimura_2009 makes obvious “a symbolic tree with a plurality of nodes ” (Fig. 2 illustrates a decision tree analysis performed on the design database and outputting at least a list of design rules. Page 292 section 2.5 Decision Tree Analysis and Fig. 3 illustrates a path through the symbolic tree that is defined by the rules. Page 292 section 2.5: “… following this procedure, a tree diagram, as shown in Fig. 3 is obtained… a single design rule can be obtained by tracing a path to the desired result… the rule is obtained as: …[equation 8]… we use the commercial software JMP (SAS institute) for calculating decision tree diagrams…”; page 297: “… decision tree analysis was then applied to the database, and a corresponding decision tree diagram to each objective function was obtained. From these diagrams, the following rules for extremely improving corresponding objective functions were obtained… the order of design variables appearing in the condition terms represents the order of sensitivity to the corresponding objective function…”).
Gautier_2021 and Sugimura_2009 are analogous art because they are from the same field of endeavor called design optimization. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Sugimura_2009. The rationale for doing so would have been that Gautier_2021 teaches to perform parameter optimization by doing design space exploration and Sugimura_2009 teaches “it has become common to design products using parameter surveys and optimization that use simulations and experiments. The resultant data can be recognized as a design database… we believe that it is more important to analyze such databases to deepen understanding of design problems. Namely, we should determine a final solution after reviewing the design knowledge obtained from the design database. Therefore, it is believed that a parameter design method that practices this idea should be developed” (page 1 introduction). Accordingly, Sugimura_2009 teaches to take the results of design space exploration (DSE) and to perform a decision tree analysis and output the design rules (i.e., the trace through the decision tree). Therefore, it would have been obvious to combine design space exploration (DSE) that creates a set of designs (i.e., a database) as taught by Gautier_2021 with the decision tree analysis of Sugimura_2009 for the benefit of gaining a better understanding of the design space to better inform the selection of the most optimal design parameters to obtain the invention as specified in the claims.
Additionally, Gautier_2021 in view of Sugimura_2009 makes obvious evaluating an error function “for a selected path on the symbolic tree” because Gautier_2021 teaches to use an error function to evaluate the result of the objective function (See page 19 section 5: “… an evaluation-based, multi-objective, design space exploration framework… heavily focused on improving the set of optimal designs at each iteration, and as such converges very quickly towards a low-error solution…” EXAMINER NOTE: each iteration evaluates the objective function rejecting solutions that are not low-error and then performs further iterations until the solution is low-error (i.e., has acceptably low error – below, for example, a threshold). Page 11 section 3.1: “… we compute an error metric based on the ground truth design spaces, using the Average Distance to Reference Set (ADRS metric [19]. ADRS measures the average normalized distance between the estimated Pareto front and the reference Pareto front. The closer it is to 0, the better the estimation is… the goal of Sherlock is to produce a curve that converges to zero as fast as possible…” EXAMINER NOTE: this teaches to use an error function (i.e., a difference function) to determine if an estimated result has reached the objective making obvious to those of ordinary skill in the art to use an error estimation to assess the performance of an objective function.) and Sugimura_2009 teaches to use an objective function to choose a path through a symbolic tree with multiple nodes (Fig. 2 illustrates a decision tree analysis performed on the design database and outputting at least a list of design rules. Page 292 section 2.5 Decision Tree Analysis and Fig. 3 illustrates a path through the symbolic tree that is defined by the rules. Page 292 section 2.5: “… following this procedure, a tree diagram, as shown in Fig. 3 is obtained… a single design rule can be obtained by tracing a path to the desired result… the rule is obtained as: …[equation 8]… we use the commercial software JMP (SAS institute) for calculating decision tree diagrams…”; page 297: “… decision tree analysis was then applied to the database, and a corresponding decision tree diagram to each objective function was obtained. From these diagrams, the following rules for extremely improving corresponding objective functions were obtained… the order of design variables appearing in the condition terms represents the order of sensitivity to the corresponding objective function…”). Therefore it would have been obvious to those of ordinary skill in the art to evaluate result of the objective function, which is a path through a decision tree, by using an error function that evaluates if the path through the decision tree is a solution that has converged to the objective by demonstrating zero error.
Schell_2008 makes obvious a symbolic tree with a plurality of nodes “wherein each node represents a discrete system component with a continuous feature” and “with a computer” (FIG. 15 illustrates a computer system with a processor, display, memory, etc.; par 27: “… an example computer system according to one embodiment of the invention…”; par 32: “… the techniques shown in the figures can be implemented using code and data stored and executed on one or more computers…”; par 31: “… in alternative embodiments of the invention the data structure takes a different form (e.g., list, graph, tree, table, trie, stack, etc.)…”; par 33: “… a structural processing of a modular system is mode possible. Particularly for automated processing proceeding mechanically or in computer-based fashion… computer controlled generation of assembly drawings…”; par 34: “… the features for each component stored in the first data structure include information concerning geometric auxiliary figures in the design… e.g., surfaces, planes, axes, cylinders, lines, circles and/or edges. Therefore, features are advantageously stored…” par 40: “… each design variant is represented by a graph, especially a graph free of circles, where the nodes of the graph exactly represent the components used in the design variant, and the edges of the graph represent physical connections between the components, and the coded design variants are transferred to a computing device for the automated generating…”; par 49: “… the design variants are codable as graphs having nodes and edges…”; par 53: “… the design variant may be represented by a graph… the nodes of the graph exactly represent the components used in the design variant, and the edges of the graph represent physical connections between the components… executed on a computing device… this is advantageous because a compact coding of design variants is made available… from which an assembly drawing and/or a 3D model is able to be generated easily and with little computational work by a computing device… able to be automated…”; FIG. 7 is an illustration of a discrete system component with continuous features. EXAMINER NOTE: a cylinder, for example, is a discrete object that possesses continuous features like a smooth, unbroken lateral surface. Therefore, a tree data structure that contain features of component parts that are smooth and unbroken surfaces is a tree where the nodes represent discrete system components with a continuous feature.)
Gautier_2021 and Schell_2008 are analogous art because they are from the same field of endeavor called design space exploration. Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to combine Gautier_2021 and Schell_2008. The rationale for doing so would have been that Gautier_2021 teaches to perform design space exploration which is an evaluation of design variants while Schell_2008 teaches that design space exploration can be optimized by the use of a computer where design variants are stored in a tree structure that advantageously allows a computer to store design variants and process the design variants automatically with “little computational work by a computing device” (par 40, 53). Therefore, it would have been obvious to combine Gautier_2021 and Schell_2008 for the benefit of having coded design variants that are transferable to a computer for automation and require little computational work by the computing device to obtain the invention as specified in the claims.
Claim 10. Gautier_2021 makes obvious “wherein the preparation phase further comprises: generating a tree node with two sets of distributions, wherein each tree node contains a Thompson Distribution” (page 9-10 section 2.4; page 10 FIG 4)
Balakrishnan_2020 makes obvious “wherein the preparation phase further comprises: generating a tree node with two sets of distributions, wherein each tree node contains a Thompson Distribution” (FIG. 2 “Thompson Sampling”; page 26, 27, 30).
Claim 11. Gautier_2021 makes obvious “wherein each node contains a plurality of parameter priors for each of its respective parameters” page 9-10 section 2.4: “… the prior distributions of the bandits as a Beta distribution. We define the prior distribution with parameter
θ
… and use it as prior for the next iteration. Algorithm 3 shows the details of the method…”).
Balakrishnan_2020 makes obvious “wherein each node contains a plurality of parameter priors for each of its respective parameters” (FIG. 2 “Thompson Sampling”; page 26, 27, 30).
Claim 12. Gautier_2021 makes obvious “Wherein the parameter phase further comprises: determining a batch size and an error value for the epoch” (page 2: “… design space exploration (DSE) framework that uses active learning to evaluate and intelligently explore the HLS design space. Sherlock can quickly reach the set of Pareto optimal designs by minimizing the initialization size, and performing sample selection … using a strategy that balances exploration and exploitation…”; FIG. 2: pareto score/increase/decrease exploit/explore “sample”…”; page 6: “… 2.2.3 Sample Selection… decide at every iteration the index I of the next candidate design to sample…” page 11: “… the number of samples …”).
Balakrishnan_2020 makes obvious “Wherein the parameter phase further comprises: determining a batch size and an error value for the epoch” (FIG. 2 “Thompson Sampling”; page 26, 27, 30).
Claim 13. Gautier_2021 makes obvious “wherein the parameter phase further comprises: setting a batch size to be a number of samples taken in each rejection phase, wherein the batch size decreases” (page 2: “… design space exploration (DSE) framework that uses active learning to evaluate and intelligently explore the HLS design space. Sherlock can quickly reach the set of Pareto optimal designs by minimizing the initialization size, and performing sample selection … using a strategy that balances exploration and exploitation…”; FIG. 2: pareto score/increase/decrease exploit/explore “sample”…”; page 6: “… 2.2.3 Sample Selection… decide at every iteration the index I of the next candidate design to sample…” page 11: “… the number of samples …” EXAMINER NOTE: during Thompson sampling a batch is a policy change (i.e., set of choices) and because future choices are dependent (i.e., limited/reduced) based on previous choices that indicate that the batches decrease as a sequence of decision is made using Thompson sampling due to the number of future choices becoming more and more limited as the set of choices narrows the decision space. For example, choosing objects from a set without replacement reduces batch because the policy can no longer include the previous selected object.
In other words, when choices deplete the pool of available actions, the action set Ai becomes a subset of the original set (Ai ⊂ A0). In this way it is obvious to those of ordinary skill in the art that when using Thompson Sampling according to the combination of Gautier_2021 and Sugimura_2009 where Sugimura_2009 is teaching a decision tree, the policy changes/batches reduce as a path is generated through the decision tree.).
Claim 14. Gautier_2021 makes obvious “wherein the parameter phase further comprises: updating parameter distributions using saved samples and incrementing the epoch” (Algorithm 3, Figure 4).
Claim 15. Gautier_2021 makes obvious “wherein the Thompson phase further comprises: updating parameter distribution in the Thompson Phase only if there is more than five acceptable samples through a node (Figure 2, Algorithm 3 EXAMINER NOTE: A strategy of conditional parameter distribution updating improves computational tractability by reducing update frequency because the Algorithm skips heavy math needed to update the parameter distribution when a batch lacks enough signal (i.e., acceptable data). Those of ordinary skill in the art would recognize that such a strategy would be a tradeoff between achieving a quick result vs. achieving an optimal choice. This is a common design tradeoff in Engineering. Commonly called the trilemma, Iron Triangle of “fast, cheap, and good” which states that you can pick only two of these quantities and the heuristic of how to pick/weight the choice is a design choice. Accordingly, the selection of “five acceptable samples through node” is merely design choice that weights computational tractability over optimal outcome.).
Claim 16. Gautier_2021 makes obvious “wherein the error function defines a design objective” (Page 4: “Since the goal of DSE is to find the Pareto front P… understand the design space around the Pareto font… DSE outputs an estimated Pareto front P. To understand the quality of the estimated Pareto front, a metric is needed to compare the estimated Pareto designs with the actual Pareto front. Average Distance to Reference Set (ADRS) [19] measures the average normalized distance between the estimated Pareto fron P and the actual Pareto front… 0 indicates that every estimated Pareto point is on the actual Pareto front…”; page 11 section 3.1: “… we compute an error metric based on the ground truth design spaces, using the Average Distance to References Set (ADRS) metric [19] ADRS measures the average normalized distance between the estimated Pareto front and the reference Pareto front. The closer it is to 0, the better the estimation is.).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to BRIAN S COOK whose telephone number is (571)272-4276. The examiner can normally be reached 8:00 AM - 5:00 PM.
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, Emerson Puente can be reached at 571-272-3652. 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.
/BRIAN S COOK/Primary Examiner, Art Unit 2187