DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Information Disclosure Statement
The information disclosure statement (IDS) submitted on 10/26/2023 was filed. The submission is in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Claim Rejections - 35 USC § 103
The following is a quotation of pre-AIA 35 U.S.C. 103(a) which forms the basis for all obviousness rejections set forth in this Office action:
(a) A patent may not be obtained though the invention is not identically disclosed or described as set forth in section 102, if the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art to which said subject matter pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under pre-AIA 35 U.S.C. 103(a) are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claim 1-8, 10, 13-20 is/are rejected under pre-AIA 35 U.S.C. 103(a) as being unpatentable over Korikov et al (“Objective-Based Counterfactual Explanations for Linear Discrete Optimization”, hereinafter Korikov), in view of Yarkoni et al (“Quantum annealing for industry applications: introduction and review,” hereinafter Yarkoni)
Regarding Claim 1:
Korikov discloses: An apparatus comprising: at least one processing device comprising a processor coupled to a memory; the at least one processing device being configured: ([Korikov, Page 29, Section 5.3] discloses Python 3.9.7, Gurobi 9.5, and CPU, which implies the use of device with processor and memory)
to generate a configuration of an artificial intelligence system for solving an optimization problem, ([Korikov, Page 19, Para 3] discloses an AI system NCXplain. [Page 27, Section 5.1, Para 1] discloses forward MILP Scheduling Problem (i.e optimization problem). [Page 27, Section 5.1, Para 3] discloses generating problem instances for the optimization problem. Each problem instance contains a configuration of parameters n jobs, ci weights, r date, and job i at start time t. Examiner interprets the variables for the generated problem instance as a configuration to solving the Scheduling Problem.)
the generated configuration comprising one or more parameters, each of the one or more parameters having an associated parameter value range ([Korikov, Page 20, Section 2.1] discloses solving a standard forward problem using initial input k (i.e configuration). [Page 20-22, Section 2.2] uses equation FW<c, f, X> to solve a forward problem, where the configuration are the parameters decision vector x and objective c. [Page 28, Section 5.2, Para 2] gives a specific example of a configuration for a forward problem, the Scheduling problem: “Letting t∗ ∈ [0, T]n denote job start times in x∗.” The generated configuration contains a parameter start time t* used in solving for the optimal solution x* for the scheduling problem. [0, T]n is the associated parameter range.)
to execute one or more ([Korikov, Page 19, Para 3] discloses an AI system NCXplain. [Page 27, Section 5, Para 1] discloses using NCXplain system to solve the MILP forward problems (i.e optimization problem) to obtain optimal solution x* (i.e given solution): “Optimally solving a MILP⟨c,X⟩ instance to get x∗” [Page 27, Section 5.1, Para 3] discloses generating problem instances for the Scheduling Problem, an optimization problem. Each problem instance contains a configuration of parameters n jobs, ci weights, r date, and job i at start time t. Examiner interprets processes in NCXplain system being executed to determine an optimal solution x* (i.e given solution) to the Scheduling Problem (i.e optimization problem))
to generate one or more counterfactual configurations of the artificial intelligence system; (([Korikov, Page, 20, Section 2.1] discloses after solving a standard forward problem using initial input k, the initial input k is perturbed to have alternative input l (i.e counterfactual configuration). [Page 20-22, Section 2.2] further describes Nearest Counterfactual Explanation (NCE) with Production Schedule example where counterfactual configurations ψ are generated by changing the range of decision vector x. [Page 19, Para 3] discloses an AI system NCXplain to solve with generated configurations. [Page 27, Section 5, Para 1] also uses a Scheduling Problem example to show creating these NCE instances: “Simulating a contrastive question and creating a NCEMILP⟨c,D,ψ,x∗,X⟩ instance.” [Page 28, Section 5.2, Para 2] discloses generating a maximal counterfactual start time t (i.e counterfactual configuration) for the NCE instance: “the maximal counterfactual start time of job j ∈ M such that r ≤
t
j
ψ
<
t
j
*
”, where
t
j
ψ
is the counterfactual start time of job j ∈ M. and
t
j
*
is the initial start time of job j ∈ M. Examiner interprets NCE instances having counterfactual configurations in the NCXplain system)
to execute the one or more ([Korikov, Page 19, Para 3] discloses an AI system NCXplain. [Page 27, Section 5, Para 1] discloses using NCXplain system to solve Nearest Counterfactual Explanation (NCE) instances: “Optimally solving the NCEMILP⟨c,D,ψ,x∗,X⟩ with NCXplain.” [Page 28, Section 5.2, Para 2] discloses counterfactual start time (i.e counterfactual configuration) for the Scheduling problem (i.e optimization problem). [Page 28, Section 5.2, Para 3] discloses a foil set (i.e counterfactual information) after solving NCE instances with counterfactual configurations. [Page 21, Para 3] states the functional motivation (i.e for the given solution to the optimization problem) for determining counterfactual information: “The explainee must first describe a set of alternative solutions Xψ ⊂ X, and ask the contrastive question ‘Why x∗ and not a solution xψ ∈Xψ?’” Examiner interprets this foil set as a set of alternative solutions. Examiner also interprets the set as counterfactual information for answering the question why optimal solution instead of alternatives to the Scheduling problem.)
to generate feedback for the artificial intelligence system based at least in part on the determined counterfactual information; ([Korikov, Page 19, Para 3] discloses an AI system NCXplain. [Page 28, Section 5.2, Para 3] discloses a foil set (i.e counterfactual information) after solving NCE instances with counterfactual configurations. [Korikov, Page 29, Fig. 1; Page 30, Table 1 & Section 6; Page 31, Table 2] discloses generating tables, figure, and explanations of the results (i.e feedback) from finding optimal solutions and foil sets (i.e counterfactual information) in the scheduling problem for evaluating the runtime performances of the NCXplain system)
and to control one or more characteristics of the artificial intelligence system based at least in part on the generated feedback. (([Korikov, Page 19, Para 3] discloses an AI system NCXplain. [Page 30, Section 6; Page 31, Section 7, Para 1] discloses improvements for NCXplain, such as reducing the number of master problem iterations and modifying the algorithm, (i.e control characteristics) based on the runtime performances of the NCXplain as seen the Tables 1-2 and Figure 1 (i.e feedback): “That is, it is computationally cheaper to add a new point to S0 than to solve MPNCE. A direction for future work may thus be to reduce the number of master problem iterations with a variation of NCXplain which adds multiple points to S0 for each iteration of MPNCE…InvMILP can be sped up by modifying Step 3 of Algorithm 1” Examiner interprets the changing the algorithm as controlling the characteristic of NCXplain as a result of analyzing its runtime performances.)
Korikov does not explicitly disclose: to execute the one or more annealing processes
However, Yarkoni discloses: to execute the one or more annealing processes ([Yarkoni, Page 2, Col 1, Para 3] discloses the use of quantum annealing to solve for optimization problems)
Korikov and Yarkoni are analogous art to the present invention because they are from the same field of endeavor directed to machine learning and optimization.
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the apparatus to generate counterfactuals and feedback for optimization problems disclosed by Korikov with annealing by Yarkoni. One of ordinary skill in the art would have been motivated have to use annealing to efficiently solve optimization problems. ([Yarkoni, Page 2, Col 1, Para 3])
Regarding Claim 2:
Korikov in view of Yarkoni discloses: wherein the feedback comprises an explanation of optimality of the given solution to the optimization problem relative to the determined counterfactual information. ([Korikov, Page 29, Fig. 1; Page 31, Table 2] discloses tables, figure, and explanations of the results as feedback. [Page 30, Section 6] In the results, the runtime performance of NCE are described being less than the performance of forward solutions: “The number of instances solved (nS) shows that most NCEMILP instances were solved in under 30 min, though the solution times for the initial forward problem (tF,μ) were much faster” [Page 27, Section 5, Para 1] Solving initial forward problems obtains the optimal solutions x* (i.e given solution) to the Scheduling Problem. [Page 28, Section 5.2, Para 3] Solving for the NCE instances obtains a foil set (i.e counterfactual information). Examiner interprets the feedback showing that the solution times for the initial forward problems being faster than NCE as an explanation of optimality of the optimal solutions relative to the foil sets.)
Regarding Claim 3:
Korikov in view of Yarkoni discloses: wherein the determined counterfactual information comprises one or more counterfactual explanations, each of the one or more counterfactual explanations comprising an alternate solution to the optimization problem. ([Korikov, Page 2-, Section 2.1] discloses a foil as a solution other than the optimal x*: “Here, Q, called a foil set, is a set of alternative outputs, and each alternative output q ∈ Q is called a foil.” [Page 28, Section 5.2, Para 3] Solving for the NCE instances obtains a foil set (i.e counterfactual information). [Page 28, Section 5.2, Para 1] discloses optimization problem Scheduling problem. Examiner interprets determining a foil set (i.e counterfactual information) where a foil set contains a foil (i.e alternate solution) to the Scheduling problem (i.e optimization problem))
Regarding Claim 4:
Korikov in view of Yarkoni discloses: wherein the artificial intelligence system comprises a quantum annealer implementing the one or more annealing processes. ([Yarkoni, Page 2, Col 1, Para 3] discloses the use of quantum annealing to solve for optimization problems)
Regarding Claim 5:
Korikov in view of Yarkoni discloses: wherein a given one of the one or more counterfactual configurations comprises at least one modified parameter value range for at least one of the one or more parameters. ([Korikov, Page 27, Section 5.1, Para 3] discloses parameter start time (i.e for at least one of the one or more parameters): “which is 1 if job i starts at time t and 0.” [Page 28, Section 5.2, Para 2] further the parameter’s associated range “Letting t∗ ∈ [0, T]n denote job start times in x∗.” [Page 28, Section 5.2, Para 2] discloses a maximal counterfactual start time (i.e counterfactual configuration): “the maximal counterfactual start time of job j ∈ M such that r ≤
t
j
ψ
<
t
j
*
” , where
t
j
ψ
is the counterfactual start time of job j ∈ M. and
t
j
*
is the initial start time of job j ∈ M.” Examiner interprets the parameter start time range from the initial configuration t∗ ∈ [0, T]n being modified to r ≤
t
j
ψ
<
t
j
*
for the counterfactual configuration.)
Regarding Claim 6:
Korikov in view of Yarkoni discloses: wherein the at least one modified parameter value range for said at least one of the one or more parameters comprises a narrower parameter value range for said at least one of the one or more parameters. ([Korikov, Page 27, Section 5.1, Para 3] discloses parameter start time (i.e for at least one of the one or more parameters): “which is 1 if job i starts at time t and 0.” [Page 28, Section 5.2, Para 2] further states the parameter’s initial associated range “Letting t∗ ∈ [0, T]n denote job start times in x∗.” [Page 28, Section 5.2, Para 2] discloses a maximal counterfactual start time (i.e counterfactual configuration): “the maximal counterfactual start time of job j ∈ M such that r ≤
t
j
ψ
<
t
j
*
” , where
t
j
ψ
is the counterfactual start time of job j ∈ M. and
t
j
*
is the initial start time of job j ∈ M. Examiner interprets the modified range r ≤
t
j
ψ
<
t
j
*
for start time (i.e parameter) being smaller than [0, T]n in the initial configuration)
Regarding Claim 7:
Korikov in view of Yarkoni discloses: wherein generating a given one of the one or more the counterfactual configurations comprises: selecting a given one of the one or more parameters associated with the given solution to the optimization problem; ([Korikov, Page 28, Section 5.2, Para 2] discloses selecting start time maximal counterfactual start time (i.e counterfactual configuration) for creating and solving NCE instances: “…
t
j
ψ
was randomly selected…” [Page 27, Section 5.1, Para 3] discloses the start time parameter tj also being in the forward problems. [Page 27, Section 5, Para 1] states solving the Scheduling problem obtains the optimal solution x* (i.e given solution): “Optimally solving a MILP⟨c,X⟩ instance to get x∗.” Examiner interprets start time being present for obtaining x* as the parameter being associated with x* to the Scheduling problem.)
and generating a given modified parameter value range for the given parameter for the given counterfactual configuration, ([Korikov, Page 27, Section 5.1, Para 3] discloses parameter start time (i.e given parameter): “which is 1 if job i starts at time t and 0.” [Page 28, Section 5.2, Para 2] further states the parameter’s initial range “Letting t∗ ∈ [0, T]n denote job start times in x∗.” [Page 28, Section 5.2, Para 2] discloses the modified parameter value range as a maximal counterfactual start time (i.e counterfactual configuration): “the maximal counterfactual start time of job j ∈ M such that r ≤
t
j
ψ
<
t
j
*
” , where
t
j
ψ
is the counterfactual start time of job j ∈ M. and
t
j
*
is the initial start time of job j ∈ M. Examiner interprets the process as generating a start time modified range r ≤
t
j
ψ
<
t
j
*
for start time tj for counterfactual start time (i.e counterfactual configuration))
the given modified parameter value range excluding a value of the given parameter associated with the given solution to the optimization problem. ([Korikov, Page 28, Section 5.2, Para 2] the given modified parameter value range r ≤
t
j
ψ
<
t
j
*
excluding a value
t
j
*
of the given parameter start time
t
j
*
. The start time
t
j
*
is the start times chosen in the optimal solution, so it is associated with the optimal solution x* (i.e given solution) to Scheduling Problem (i.e optimization problem). [Page 28, Section 5.2, Para 2] states the parameter’s initial range “Letting t∗ ∈ [0, T]n denote job start times in x∗.” Examiner interprets the modified parameter range excludes values above and equal to
t
j
*
and less than r.)
Regarding Claim 8:
Korikov in view of Yarkoni discloses: wherein the given parameter is selected based at least in part on determining impacts of two or more different ones of the one or more parameters on the given solution to the optimization problem, ([Korikov, Page 27-28, Section 5.1, Para 3; Section 5.2, Para 1-2] discloses selecting time parameter tj based on Equation 18. Equation 18 represents minimizing the total cost of completing the jobs. Time parameter t is also the start time. qi is the processing time and (t + qi) is the completion time. ci(t+qi) is the cost of the completing job i at time t and xi,j is the decision variable to decide if the job I starts at time t. The min and summation add up all the costs and obtains schedule with the smallest total completion cost. Examiner interprets that time parameter t impacts different parameters ci, qi, xi,t in the Equation 18, so it is determining impacts of two or more different parameters on the optimal solution (i.e given solution) to the Scheduling Problem (i.e optimization problem))
wherein the impacts of the two or more different ones of the one or more parameters on the given solution to the optimization problem are determined based at least in part on identifying contributions of two or more constraints of the optimization problem to the given solution to the optimization problem, ([Korikov Page 27-28, Section 5.1-5.2] discloses constraints 18-22. Parameter t impacts parameters ci, qi, xi,t (i.e two or more different ones of the one or more parameters) on the optimal solution (i.e given solution) to the Scheduling Problem (i.e optimization problem). Parameter t has contributions identified in Constraints 19-22 since it appears in the constraints. Therefore, the impacts are the determined in part of its contributions of constraints 19-22 of the Scheduling Problem to the optimal solution to the Scheduling Problem.)
the two or more constraints being associated with different subsets of the one or more parameters of the optimization problem. ([Korikov Page 27-28, Section 5.1, Constraints 19-22] discloses constraints 19-22 having different subsets of parameters in the Scheduling Problem (i.e optimization problem). For example, constraint 19 has a different subset of T, qi, t, xi,t and constraint 20 has a different subset of t, s, qi, xi,s, T)
Regarding Claim 10:
Korikov in view of Yarkoni discloses: wherein generating a given one of the one or more counterfactual configurations comprises: selecting a given one of the one or more parameters associated with the given solution to the optimization problem; ([Korikov, Page 28, Section 5.2, Para 2] discloses selecting start time maximal counterfactual start time (i.e counterfactual configuration) for creating and solving NCE instances: “…
t
j
ψ
was randomly selected…” [Page 27, Section 5.1, Para 3] discloses the start time parameter tj also being in the forward problems. [Page 27, Section 5, Para 1] states solving the Scheduling problem obtains the optimal solution x* (i.e given solution): “Optimally solving a MILP⟨c,X⟩ instance to get x∗.” Examiner interprets start time being present for obtaining x* as the parameter being associated with x* to the Scheduling problem.)
and generating a given modified parameter value range for the given parameter for the given counterfactual configuration, ([Korikov, Page 27, Section 5.1, Para 3] discloses parameter start time (i.e given parameter): “which is 1 if job i starts at time t and 0.” [Page 28, Section 5.2, Para 2] further states the parameter’s initial range “Letting t∗ ∈ [0, T]n denote job start times in x∗.” [Page 28, Section 5.2, Para 2] discloses the modified parameter value range as a maximal counterfactual start time (i.e counterfactual configuration): “the maximal counterfactual start time of job j ∈ M such that r ≤
t
j
ψ
<
t
j
*
” , where
t
j
ψ
is the counterfactual start time of job j ∈ M. and
t
j
*
is the initial start time of job j ∈ M. Examiner interprets the process as generating a start time modified range r ≤
t
j
ψ
<
t
j
*
(i.e a given modified parameter value range) for start time tj (i.e given parameter) for counterfactual start time (i.e counterfactual configuration))
the given modified parameter value range comprising a value range that is one of (i) greater than a value of the given parameter associated with the given solution to the optimization problem and (ii) less than a value of the given parameter associated with the given solution to the optimization problem. ([Korikov, Page 28, Section 5.2, Para 2] the given modified parameter value range r ≤
t
j
ψ
<
t
j
*
which is less than a given parameter start time
t
j
*
. The start time
t
j
*
is the start times chosen in the optimal solution, so it is associated with the optimal solution x* (i.e given solution) to Scheduling Problem (i.e optimization problem))
Regarding Claim 13:
Korikov in view of Yarkoni discloses: the given solution to the optimization problem specifies one or more controls for a physical system which provide a first level of performance of the physical system; ([Korikov, Page 29, Section 5.3] discloses the physical system as the NCXplain since it contains a program and hardware components. [Page 29, Fig. 1(b); Page 30, Section 6, Para 1; Page 31, Table 2] discloses the optimal solutions being obtained in the Scheduling problem (i.e given solution) specifies runtimes
t
F
,
μ
, and
t
F
,
σ
, number of iterations n, and number of items m (i.e controls) for the NCXplain system (i.e physical system), as seen in [Page 31, Table 2]. Examiner interprets the runtimes and iterations as controls of the system since they direct how the system behaves. The runtimes provide the first level of performance of the NCXplain (i.e physical system), as seen the table and figure for forward solution runtimes
t
F
,
μ
and
t
F
,
σ
)
the determined counterfactual information specifies alternate sets of the one or more controls for the physical system providing one or more second levels of performance of the physical system, ([Korikov, Page 29, Section 5.3] discloses the physical system as the NCXplain since it contains a program and hardware components. [Page 29, Fig. 1(b); Page 30, Table 1; Page 30, Section 6, Para 1] discloses solving for the NCE instances, which obtains a foil set (i.e counterfactual information) as mentioned in [Page 28, Section 5.2, Para 3]. Solving for NCE instances specifies an alternate sets of runtimes
t
N
C
E
, number of iterations n, and number of items m (i.e controls) in Table 2. Examiner interprets the runtimes and iterations as controls of the system since they direct how the system behaves. These sets are solved by the NCXplain to provide the second level of runtime performances of the NCXplain (i.e physical system), as seen the tables and figure for forward solution runtimes
t
N
C
E
)
the one or more second levels of performance of the physical system being less than the first level of performance of the physical system; ([Korikov, Page 30, Section 6, Para 2; Page 31, Table 2] discloses the runtime performance of solving NCE (i.e second levels) being less than the runtime performance of solving forward solutions (i.e first level), as seen in the Tables and stated in : “The number of instances solved (nS) shows that most NCEMILP instances were solved in under 30 min, though the solution times for the initial forward problem (tF,μ) were much faster”)
and the at least one processing device is further configured to adjust the one or more controls of the physical system based at least in part on the given solution to the optimization problem and the determined counterfactual information. ([Korikov, Page 29, Section 5.3] discloses NCXplain as a processing device and a physical system. [Page 30, Section 6, Para 3; Page 31, Section 7, Para 1] discloses NCXplain configured to modifying its algorithm (i.e control characteristics of the physical system) such as by reducing the number of iterations it solves, adding multiple points to S0 for each iteration, and adding non-extreme point solutions of itself (i.e physical system). The adjustments are based on the feedback in [Page 31, Table 2] optimal solution (i.e given solution) to Scheduling Problem (i.e optimization problem) and the NCE instances, which obtains a foil set (i.e counterfactual information) as mentioned in [Page 28, Section 5.2, Para 3]: “…may thus be to reduce the number of master problem iterations with a variation of NCXplain which adds multiple points to S0 for each iteration of MPNCE…that InvMILP can be sped up by modifying Step 3 of Algorithm 1 to add non-extreme point solutions f MILP(c,X) to S0”)
Regarding Claim 14:
Korikov in view of Yarkoni discloses: wherein the physical system comprises one or more information technology assets of an information technology infrastructure. ([Korikov, Page 29, Section 5.3] discloses NCXplain system as the physical system, which comprises Python 3.9.7, Gurobi 9.5, and a single core of a 2.6 GHz Intel Core i7-10750H CPU (i.e information technology assets of an information technology infrastructure))
Regarding Claim 15:
Claim 15 is a computer program product claim having similar limitations of apparatus Claim 1, therefore it is rejected under the same rational as of Claim 1. Additionally, Claim 15 includes additional limitations below that are rejected in view of Korikov.
Korikov teaches
A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device: ([Korikov, Page 29, Section 5.3] discloses NCXplain system (i.e physical system) containing Python 3.9.7, Gurobi 9.5, and a single core of a 2.6 GHz Intel Core i7-10750H CPU, which implies processing device and software programs)
Regarding Claim 16:
(Claim 16 recites analogous limitations to Claim 4 and therefore is rejected on the
same ground as Claim 4)
Regarding Claim 17:
(Claim 17 recites analogous limitations to Claim 7 and therefore is rejected on the
same ground as Claim 7)
Regarding Claim 18:
Claim 18 is a method claim having similar limitations of apparatus Claim 1, therefore it is rejected under the same rational as of Claim 1.
Regarding Claim 19:
(Claim 19 recites analogous limitations to Claim 4 and therefore is rejected on the
same ground as Claim 4)
Regarding Claim 20:
(Claim 20 recites analogous limitations to Claim 7 and therefore is rejected on the
same ground as Claim 7)
Claim 9 is/are rejected under pre-AIA 35 U.S.C. 103(a) as being unpatentable over Korikov et al (“Objective-Based Counterfactual Explanations for Linear Discrete Optimization”, hereinafter Korikov), in view of Yarkoni et al (“Quantum annealing for industry applications: introduction and review,” hereinafter Yarkoni), Shao et al (“CUBE: Causal Intervention-Based Counterfactual Explanation for Prediction Models,” hereinafter Shao), and Li (“Deep causal learning for robotic intelligence”)
Regarding Claim 9:
Korikov in view of Yarkoni discloses: wherein the impacts of the two or more different ones of the one or more parameters on the given solution to the optimization problem are determined ([Korikov, Page 27-28, Section 5.1, Para 3; Section 5.2, Para 1-2] discloses selecting time parameter tj based on Equation 18. Equation 18 represents minimizing the total cost of completing the jobs. Time parameter t is also the start time. qi is the processing time and (t + qi) is the completion time. ci(t+qi) is the cost of the completing job i at time t and xi,j is the decision variable to decide if the job I starts at time t. The min and summation add up all the costs and obtains schedule with the smallest total completion cost. Examiner interprets that the time parameter t impacts different parameters ci, qi, xi,t in the Equation 18, so it is determining impacts of two or more different parameters on the optimal solution (i.e given solution) to the Scheduling Problem (i.e optimization problem))
Korikov in view of Yarkoni does not explicitly disclose: wherein the impacts of the two or more different ones of the one or more parameters
However, Shao discloses: wherein the impacts of the two or more different ones of the one or more parameters ([Shao, Page 2418, Col 2, Para 3-5 & Fig. 2] discloses using SCMs, which use casual inference. SCMs are used to find impacts of parameters such as Traffic, Weather, Wake-up Time, and Arrival Time. Examiner interprets use of casual relationships as causal inference. [Page 2419, Col 2, Para 2] further states “…the use of causal inference…”)
Korikov, Yarkoni, and Shao are analogous art to the present invention because they are from the same field of endeavor directed to machine learning and counterfactuals.
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the apparatus to generate counterfactuals and feedback for optimization problems disclosed by Korikov in view of Yarkoni with causal inference by Shao. One of ordinary skill in the art would have been motivated have to use casual inference in order to identify key parameters essential for generating counterfactuals. ([Shao, Page 2418, Col 1, Para 9; Page 2418, Col 2])
Korikov in view of Yarkoni and Shao does not explicitly disclose: wherein the causal inference algorithm comprises an Inductive Causation (IC) algorithm utilizing a Bayesian Information Criterion (BIC) scoring metric.
However, Li discloses: wherein the causal inference algorithm comprises an Inductive Causation (IC) algorithm utilizing a Bayesian Information Criterion (BIC) scoring metric. ([Li, Page 3, Col 1, Para 1] discloses using Inductive Causation algorithm: “The inductive causation algorithm assumes stable distributions (Definition 3.2), tests conditional independence to find the associative relationship between variables…” [Page 3, Section 3.1.2, Para 1] discloses Bayesian information Criterion: “For example, the popular Bayesian information criterion adopts the score function…”)
Korikov, Yarkoni, Shao, and Li are analogous art to the present invention because they are from the same field of endeavor directed to machine learning.
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the apparatus to generate counterfactuals and feedback for optimization problems using casual inference disclosed by Korikov in view of Yarkoni and Shao with IC and BIC by Li. One of ordinary skill in the art would have been motivated have to use IC to find relationships between variables and BIC learn casual graphs. ([Li, Page 2, Col 2; Page 3, Col 1])
Claim 11 is/are rejected under pre-AIA 35 U.S.C. 103(a) as being unpatentable over Korikov et al (“Objective-Based Counterfactual Explanations for Linear Discrete Optimization”, hereinafter Korikov), in view of Yarkoni et al (“Quantum annealing for industry applications: introduction and review,” hereinafter Yarkoni) and Guidotti et al (“Factual and Counterfactual Explanations for Black Box Decision Making,” hereinafter Guidotti)
Regarding Claim 11:
Korikov in view of Yarkoni discloses: wherein generating the one or more counterfactual configurations comprises: selecting a given one of the one or more parameters associated with the given solution to the optimization problem; ([Korikov, Page 20-22, Section 2.2] describes selection of counterfactual configurations ψ by changing the initial inputs, as seen in Production Schedule examples. [Page 28, Section 5.2, Para 2] discloses selecting start time maximal counterfactual start time (i.e counterfactual configuration) for creating and solving NCE instances: “…
t
j
ψ
was randomly selected…” [Page 27, Section 5.1, Para 3] discloses the start time parameter tj also being in the forward problems. [Page 27, Section 5, Para 1] states solving the Scheduling problem obtains the optimal solution x* (i.e given solution): “Optimally solving a MILP⟨c,X⟩ instance to get x∗.” Examiner interprets start time being present for obtaining x* as the parameter being associated with x* to the Scheduling problem.)
Korikov in view of Yarkoni does not explicitly disclose: the first modified parameter value range comprising a first value range less than a value of the given parameter associated with the given solution to
However, Guidotti discloses: generating a first modified parameter value range for the given parameter for a first one of the one or more counterfactual configurations, ([Guidotti, Page 18, Col 2, Para 2-3] discloses generating first modified parameter range values for parameter age for a counterfactual configuration q2: 17 < age ≤ 25.)
the first modified parameter value range comprising a first value range less than a value of the given parameter associated with the given solution ([Guidotti, Page 18, Col 1, Para 4; Page 18, Col 2, Para 2-3] discloses an instance x (i.e given solution). [Page 18, Col 2, Para 2-3] discloses different paths for generating counterfactual instances, such as q1, q2, q3, and q4, that contain different ranges. The first modified parameter range values: 17 < age ≤ 25 to be less than a value of the parameters in the instance x (i.e given solution), where age = 22. Examiner interprets age can be less than 22 in the modified range, such as values 18-21 being less than the given parameter age = 22.)
and generating a second modified parameter value range for the given parameter for a second one of the one or more counterfactual configurations, the second modified parameter value range comprising a second value range greater than the value of the given parameter associated with the given solution ([Guidotti, Page 18, Col 1, Para 4; Page 18, Col 2, Para 2-3] discloses an instance x (i.e given solution). [Page 18, Col 2, Para 2-3] discloses different paths for generating counterfactual instances, such as q1, q2, q3, and q4, that contain different ranges. The second modified parameter range values: age > 25 to be greater than a value of the parameters in the instance x (i.e given solution), where age = 22.)
Korikov, Yarkoni, and Guidotti are analogous art to the present invention because they are from the same field of endeavor directed to machine learning.
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the apparatus to generate counterfactuals and feedback for optimization problems using casual inference disclosed by Korikov in view of Yarkoni with different modified ranges by Guidotti. One of ordinary skill in the art would have been motivated have to generate local explanations by having counterfactuals use different ranges than that of the original parameters with minimal changes. ([Guidotti, Page 15, Col 1, Para 2])
Claim 12 is/are rejected under pre-AIA 35 U.S.C. 103(a) as being unpatentable over Korikov et al (“Objective-Based Counterfactual Explanations for Linear Discrete Optimization”, hereinafter Korikov), in view of Yarkoni et al (“Quantum annealing for industry applications: introduction and review,” hereinafter Yarkoni) and Shleyfman et al (“Counterfactual Explanations for Optimization-Based Decisions in the Context of the GDPR,” hereinafter Shleyfman)
Regarding Claim 12:
Korikov in view of Yarkoni discloses: generating the feedback for the artificial intelligence system ([Korikov, Page 19, Para 3] discloses an AI system NCXplain. [Korikov, Page 29, Fig. 1; Page 30, Table 1 & Section 6; Page 31, Table 2] discloses generating tables, figure, and explanations of the results (i.e feedback) in the scheduling problem for evaluating the runtime performances of the NCXplain system )
Korikov in view of Yarkoni does not explicitly disclose: wherein generating the feedback for the artificial intelligence system comprises identifying one or more modifications to the optimization problem to increase an optimality of the given solution to the optimization problem, the one or more modifications to the optimization problem comprising one or more changes to at least one of (i) one or more parameter value ranges for the one or more parameters of the optimization problem and (ii) one or more constraints of the optimization problem.
However, Shleyfman discloses: wherein generating the feedback and (ii) one or more constraints of the optimization problem. ([Shleyfman, Page 4099, Col 2, Section 4.1, Para 1-2] discloses counterfactual explanations as feedback. [Page 4100, Col 2, Para 2] discloses identifying modifications to the optimization problem KP problem (i.e optimization problem) using the feedback: “Using the NCE0-1, the explanation for a person not receiving a service can be ‘Because the benefit of offering you this service was only cj. If it had increased to
c
-
j
*
, you would have been offered the service.’ Conversely, a person who was offered the service can assess how much their benefit cj can decrease before the service is assigned to someone else.” Examiner interprets this suggestion to decrease cj as an identifying modification to increase the optimality of cj (i.e given solution) by changing the c in the constraints clause mentioned in [Section 4.1, Para 1]: {max
∑
i
=
1
n
x
i
c
i
∑
i
=
1
n
x
i
w
i
:
≤
W
})
Korikov, Yarkoni, and Shleyfman are analogous art to the present invention because they are from the same field of endeavor directed to machine learning.
It would have been obvious for one of ordinary skill in the art before the effective filing date of the claimed invention to have combined the apparatus to generate counterfactuals and feedback for optimization problems disclosed by Korikov in view of Yarkoni with modifications to increase optimality of the given based on feedback by Shleyfman. One of ordinary skill in the art would have been motivated have to used feedback to discover which modifications can be made to the parameters and constraints in an optimization problem in order to maximize profits. ([Shleyfman, Page 4099, Col 2, Section 4.1, Para 1-2; Page 4100, Col 2, Para 2])
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Amanda D. Nguyen whose telephone number is (571)270-1854. The examiner can normally be reached M-F, 7:00am to 4:30 pm ET First Fridays off, 2nd Friday 7:00 am - 3:30 pm ET.
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, Abdullah Al Kawsar can be reached at (571)270-3169. 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.
/AMANDA D NGUYEN/Examiner, Art Unit 2127
/ABDULLAH AL KAWSAR/Supervisory Patent Examiner, Art Unit 2127