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 .
Status of Claims
This first action on the merits is in response to the application filed on April 11, 2024. Claims 1-20 are pending and have been examined.
Claim Objections
Claim 18 is objected to because of the following informalities:
“wherein: the receiving comprises: the receiving comprises” in lines 1-2 should read “wherein: ”
Appropriate correction is required.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-16 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception without significantly more. The claims recite an abstract idea. This judicial exception is not integrated into a practical application. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception.
The steps for determining eligibility under 35 U.S.C. 101 can be found in the MPEP § 2106.03-2106.05.
Under Step 1, the claims are directed to statutory categories. Specifically, the method, as claimed in claims 1-8, is directed to a process. Additionally, the system, as claimed in claims 9-16, is directed to a machine.
While the claims fall within statutory categories, under Step 2A, Prong 1, the claimed invention recites the abstract idea of creating a customized product offering. Specifically, representative claim 1 recites the abstract idea of:
receiving user data indicating a scope of work;
predicting at least one resource required to complete the scope of work, the predicting comprising processing the user data;
determining at least one provisioning property of the at least one resource;
applying the at least one provisioning property to a standard product offering, thereby creating a customized product offering commensurate with the scope of work; and
performing processing responsive to a user request using the customized product offering.
Under Step 2A, Prong 1, it is necessary to evaluate whether the claim recites a judicial exception by referring to subject matter groupings articulated in the guidance. When considering MPEP §2106.04(a), the claims recite an abstract idea. For example, representative claim 1 recites the abstract idea of creating a customized product offering, as noted above. This concept is considered to be a certain method of organizing human activity. Certain methods of organizing human activity are defined in the MPEP as including “fundamental economic principles or practices (including hedging, insurance, mitigating risk); commercial or legal interactions (including agreements in the form of contracts; legal obligations; advertising, marketing or sales activities or behaviors; business relations); managing personal behavior or relationships or interactions between people (including social activities, teaching, and following rules or instructions).” MPEP §2106.04(a)(2) subsection II. Here, the abstract idea recited in representative claim 1 is a certain method of organizing human activity because predicting at least one resource required to complete the scope of work, the predicting comprising processing the user data; determining at least one provisioning property of the at least one resource; and applying the at least one provisioning property to a standard product offering, thereby creating a customized product offering commensurate with the scope of work is a sales activity. Thus, representative claim 1 recites an abstract idea.
The recited limitations of representative claim 1 also recite an abstract idea because they are considered to be mental processes. As described in the MPEP, mental processes are “concepts performed in the human mind (including an observation, evaluation, judgment, opinion)”. MPEP §2106.04(a)(2) subsection III. Here, receiving user data indicating a scope of work is a type of observation. Additionally, predicting at least one resource required to complete the scope of work, the predicting comprising processing the user data; determining at least one provisioning property of the at least one resource; applying the at least one provisioning property to a standard product offering, thereby creating a customized product offering commensurate with the scope of work and performing processing responsive to a user request using the customized product offering are types of judgment. Thus, representative claim 1 recites an abstract idea.
Under Step 2A, Prong 2, if it is determined that the claims recite a judicial exception, it is then necessary to evaluate whether the claims recite additional elements that integrate the judicial exception into a practical application of that exception. See MPEP §2106.04(d). In this case, representative claim 1 includes additional elements such as at least one processor, and a machine learning (ML) process.
Although reciting additional elements, the additional elements do not integrate the abstract idea into a practical application because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a computer as a tool to perform the abstract idea. These additional elements are described at a high level in Applicant’s specification without any meaningful detail about their structure or configuration. Similar to the limitations of Alice, representative claim 1 merely recites a commonplace business method (i.e., creating a customized product offering) being applied on a general purpose computer. See MPEP §§2106.04(d) and 2106.05(f). Thus, the claimed additional elements are merely generic elements and the implementation of the elements merely amounts to no more than an instruction to apply the abstract idea using a generic computer. Since the additional elements merely include instructions to implement the abstract idea on a generic computer or merely use a generic computer as a tool to perform an abstract idea, the abstract idea has not been integrated into a practical application. As such, claim 1 is directed to an abstract idea.
Under Step 2B, if it is determined that the claims recite a judicial exception that is not integrated into a practical application of that exception, it is then necessary to evaluate the additional elements individually and in combination to determine whether they provide an inventive concept (i.e., whether the additional elements amount to significantly more than the exception itself). See MPEP §2106.05.
Here, as noted above, the additional elements recited in independent claim 1 are recited and described in a generic manner merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea.
Even when considered as an ordered combination, the additional elements of representative claim 1 do not add anything that is not already present when they considered individually. In Alice, the court considered the additional elements “as an ordered combination,” and determined that “the computer components ... ‘ad[d] nothing ... that is not already present when the steps are considered separately’ and simply recite intermediated settlement as performed by a generic computer.” Alice Corp. Pty. Ltd. v. CLS Bank Int’l, 573 U.S. 208, 224, 110 USPQ2d 1976, 1983-84 (2014). (citing Mayo, 566 U.S. at 79, 101 USPQ2d at 1972). Also see MPEP §2106.05(f). Similarly, when viewed as a whole, representative claim 1 simply conveys the abstract idea itself facilitated by generic computing components. Therefore, under Step 2B, there are no meaningful limitations in representative claim 1 that transforms the judicial exception into a patent eligible application such that the claims amount to significantly more than the judicial exception itself.
As such, representative claim 1 is ineligible.
Dependent claims 2-8 do not aid in the eligibility of independent claim 1. For example, claims 2-5 and 7 merely further define the abstract limitations of claim 1. Also, claims 6 and 8 merely provide further embellishments of the abstract limitations recited in independent claim 1.
Additionally, claim 2 includes further additional elements of presenting a user interface (UI) comprising a progression of interface elements to the user; and as the UI progresses through the interface elements, receiving and updating the user data through the UI; claim 4 includes further additional elements of at least one resource code; mapping the at least one resource code to at least one application programming interface (API) code; and sending at least one API call including the at least one API code to at least one API; claim 6 includes further additional elements of wherein the ML process comprises predicting the at least one resource using a multi-label classifier; and claim 7 includes further additional elements of training, by the at least one processor, at least one ML model used in the ML process with at least a first training data set indicative of example scopes of work and a second training data set indicative of example resources. However, the additional elements do not integrate the abstract idea into a practical application because they merely amount to an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. The additional elements are merely generic elements and are likewise described in a generic manner in Applicant’s specification. Additionally, the additional elements do not amount to significantly more because they merely amount to an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea.
Furthermore, it is noted that claims 3, 5, and 8 do not include further additional elements not previously recited. Therefore, the claims do not integrate the abstract idea into a practical application because they merely amount to an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. The claims also do not amount to significantly more than the abstract idea because they merely amount to an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea.
Thus, dependent claims 2-8 are also ineligible.
Lastly, the analysis above applies to all statutory categories of invention. Although literally invoking a machine, claims 9-16 remain only broadly and generally defined, with the claimed functionality paralleling that of claims 1-8, respectively. It is noted that claim 9 includes further additional elements of a system comprising: at least one processor; and at least one non-transitory computer readable medium storing instructions that, when executed by the at least one processor, cause the at least one processor to perform processing. However, these additional elements do not integrate the abstract idea into a practical application because they merely amount to an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. These additional elements are merely generic elements and are likewise described in a generic manner in Applicant’s specification. Additionally, the additional elements do not amount to significantly more because they merely amount to an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. As such, claims 9-16 are rejected for at least similar rationale as discussed above.
Claims 17-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception without significantly more. The claims recite an abstract idea. This judicial exception is not integrated into a practical application. The claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception.
The steps for determining eligibility under 35 U.S.C. 101 can be found in the MPEP § 2106.03-2106.05.
Under Step 1, the claims are directed to statutory categories. Specifically, the method, as claimed in claims 17-20, is directed to a process.
While the claims fall within a statutory category, under Step 2A, Prong 1, the claimed invention recites the abstract idea of creating a customized product offering. Specifically, claim 17 recites the abstract idea of:
receiving user data indicating a scope of work;
predicting at least one resource required to complete the scope of work, the predicting comprising processing the user data;
determining at least one provisioning property of the at least one resource;
applying the at least one provisioning property to a standard product offering, thereby creating a customized product offering commensurate with the scope of work; and
performing processing responsive to a user request using the customized product offering.
Under Step 2A, Prong 1, it is necessary to evaluate whether the claim recites a judicial exception by referring to subject matter groupings articulated in the guidance. When considering MPEP §2106.04(a), the claims recite an abstract idea. For example, representative claim 1 recites the abstract idea of creating a customized product offering, as noted above. This concept is considered to be a certain method of organizing human activity. Certain methods of organizing human activity are defined in the MPEP as including “fundamental economic principles or practices (including hedging, insurance, mitigating risk); commercial or legal interactions (including agreements in the form of contracts; legal obligations; advertising, marketing or sales activities or behaviors; business relations); managing personal behavior or relationships or interactions between people (including social activities, teaching, and following rules or instructions).” MPEP §2106.04(a)(2) subsection II. Here, the abstract idea recited in claim 17 is a certain method of organizing human activity because predicting at least one resource required to complete the scope of work, the predicting comprising processing the user data; determining at least one provisioning property of the at least one resource; and applying the at least one provisioning property to a standard product offering, thereby creating a customized product offering commensurate with the scope of work is a sales activity. Thus, claim 17 recites an abstract idea.
The recited limitations of claim 17 also recite an abstract idea because they are considered to be mental processes. As described in the MPEP, mental processes are “concepts performed in the human mind (including an observation, evaluation, judgment, opinion)”. MPEP §2106.04(a)(2) subsection III. Here, receiving user data indicating a scope of work is a type of observation. Additionally, predicting at least one resource required to complete the scope of work, the predicting comprising processing the user data; determining at least one provisioning property of the at least one resource; applying the at least one provisioning property to a standard product offering, thereby creating a customized product offering commensurate with the scope of work and performing processing responsive to a user request using the customized product offering are types of judgment. Thus, claim 17 recites an abstract idea.
Under Step 2A, Prong 2, if it is determined that the claims recite a judicial exception, it is then necessary to evaluate whether the claims recite additional elements that integrate the judicial exception into a practical application of that exception. See MPEP §2106.04(d). In this case, claim 17 includes additional elements such as at least one processor, and a machine learning (ML) multi-label classifier trained on at least a first training data set indicative of example scopes of work and a second training data set indicative of example resources.
Although reciting additional elements, the additional elements do not integrate the abstract idea into a practical application because they merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a computer as a tool to perform the abstract idea. These additional elements are described at a high level in Applicant’s specification without any meaningful detail about their structure or configuration. Similar to the limitations of Alice, claim 17 merely recites a commonplace business method (i.e., creating a customized product offering) being applied on a general purpose computer. See MPEP §§2106.04(d) and 2106.05(f). Thus, the claimed additional elements are merely generic elements and the implementation of the elements merely amounts to no more than an instruction to apply the abstract idea using a generic computer. Since the additional elements merely include instructions to implement the abstract idea on a generic computer or merely use a generic computer as a tool to perform an abstract idea, the abstract idea has not been integrated into a practical application. As such, claim 17 is directed to an abstract idea.
Under Step 2B, if it is determined that the claims recite a judicial exception that is not integrated into a practical application of that exception, it is then necessary to evaluate the additional elements individually and in combination to determine whether they provide an inventive concept (i.e., whether the additional elements amount to significantly more than the exception itself). See MPEP §2106.05.
Here, as noted above, the additional elements recited in independent claim 17 are recited and described in a generic manner merely amount to no more than an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea.
Even when considered as an ordered combination, the additional elements of claim 17 do not add anything that is not already present when they considered individually. In Alice, the court considered the additional elements “as an ordered combination,” and determined that “the computer components ... ‘ad[d] nothing ... that is not already present when the steps are considered separately’ and simply recite intermediated settlement as performed by a generic computer.” Alice Corp. Pty. Ltd. v. CLS Bank Int’l, 573 U.S. 208, 224, 110 USPQ2d 1976, 1983-84 (2014). (citing Mayo, 566 U.S. at 79, 101 USPQ2d at 1972). Also see MPEP §2106.05(f). Similarly, when viewed as a whole, claim 17 simply conveys the abstract idea itself facilitated by generic computing components. Therefore, under Step 2B, there are no meaningful limitations in claim 17 that transforms the judicial exception into a patent eligible application such that the claims amount to significantly more than the judicial exception itself.
As such, claim 17 is ineligible.
Dependent claims 18-20 do not aid in the eligibility of independent claim 17. For example, claims 18-20 merely further define the abstract limitations of claim 17.
Additionally, claim 18 includes further additional elements of presenting a user interface (UI) comprising a progression of interface elements to the user; and as the UI progresses through the interface elements, receiving and updating the user data through the UI; and claim 19 includes further additional elements of at least one resource code; mapping the at least one resource code to at least one application programming interface (API) code; and sending at least one API call including the at least one API code to at least one API. However, the additional elements do not integrate the abstract idea into a practical application because they merely amount to an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. The additional elements are merely generic elements and are likewise described in a generic manner in Applicant’s specification. Additionally, the additional elements do not amount to significantly more because they merely amount to an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea.
Furthermore, it is noted that claim 20 does not include further additional elements not previously recited. Therefore, the claims do not integrate the abstract idea into a practical application because they merely amount to an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea. The claims also do not amount to significantly more than the abstract idea because they merely amount to an instruction to apply the abstract idea using a generic computer or merely use a generic computer as a tool to perform an abstract idea.
Thus, dependent claims 18-20 are also ineligible.
Claim Rejections - 35 USC § 102(a)(2)
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1, 5-6, 8-9, 13-14, and 16 are rejected under 35 U.S.C. 102(a)(2) as being anticipated by Bikumala et. al. (US 20210241337 A1, herein referred to as Bikumala).
Claim 1:
Bikumala discloses:
A method comprising {Bikumala: fig 9; [0060] process 900 that includes receiving an order}:
receiving, by at least one processor, user data indicating a scope of work {Bikumala: fig 10, processor(s) 1002; [0061] server 104 may receive the query 134 from the channel partner 108(M) that includes the criteria 140; [0023] operations may include providing, using the API, a set of criteria to filter a set of configurations. For example, the set of criteria may include at least one of: (i) a particular time period comprising a start date and an end date, (ii) a price range comprising a lowest price and a highest price, (iii) a particular location comprising a postal code, a county, a city, a state, or a country, (iv) a profit margin, or (v) a number of units sold; [0021] A verification module may verify that the modified configuration (e.g., as selected and modified by the channel partner) can be built. Examiner interprets that the scope of work is the criteria for building the modified configuration};
predicting, by the at least one processor, at least one resource required to complete the scope of work, the predicting comprising processing the user data with a machine learning (ML) process {Bikumala: fig 10, processor(s) 1002; [0032] channel partner 108(M) may send a query 134 that specifies the criteria 140 to the server 104. Based on the criteria 140, the configuration recommendation engine 118 may filter the product configuration catalog 120 and the configurations 125 in the database 124 to determine the subset 142 of the configurations 125; [0038] product configuration data 208 may include data associated with parts (i.e., at least one resource) associated with a particular configuration of a product; [0036] input data 202 may be used as input to multiple machine learning models 118. Examiner interprets that the configuration recommendation engine 118 uses machine learning models};
determining, by the at least one processor, at least one provisioning property of the at least one resource {Bikumala: fig 10, processor(s) 1002; [0023] set of criteria may include a price range; [0042] One use of the machine learning quality model 216 may be to produce bill of materials for multiple product versions 312. A price-oriented bill of materials 316 may identify parts having a lower price (i.e., at least one provisioning property of at least one resource) than the parts identified in the quality-oriented bill of materials 314};
applying, by the at least one processor, the at least one provisioning property to a standard product offering, thereby creating a customized product offering commensurate with the scope of work {Bikumala: fig 10, processor(s) 1002; [0005] The computing device may be used to select a particular configuration in the subset (i.e., standard product offering) and to perform one or more modifications to the particular configuration to create a modified configuration (i.e., customized product offering); [0021] verification module may use an intelligent parts catalog that uses various machine learning models to identify the most similar parts to a particular part to enable the channel partner to substitute similar parts for parts specified in a bill of materials used to manufacture a computing device.}; and
performing, by the at least one processor, processing responsive to a user request using the customized product offering {Bikumala: fig 10, processor(s) 1002; [0032] channel partner 108(M) may review the subset 142, make a selection 137 of a particular configuration (e.g., the configuration 125(N)) of the subset 142, determine one or more modifications 138 to the particular configuration, and send the modifications 138 to the server 104. The API 112 may use the configuration validation module 114 to determine whether the modifications to the particular configuration (e.g., the configuration 125(N)) are valid (e.g., whether the modified configuration can be built) and send validation results 122 to the channel partner 108(M); [0058] If the process determines, at 814, that “yes” the modified configuration has been verified, then the process may proceed to place an order to purchase a particular quantity of the modified configuration using the API.}.
Claim 5:
Bikumala discloses the method of claim 1. Bikumala further discloses:
determining, by the at least one processor, an estimated product offering from the at least one resource {Bikumala: fig 10, processor(s) 1002; [0037] determine multiple bill of materials (i.e., estimated product offering) for multiple versions of a product}; and
providing, by the at least one processor, information describing the estimated product offering to a user {Bikumala: fig 10, processor(s) 1002; [0042] One use of the machine learning quality model 216 may be to produce bill of materials for multiple product versions 312. For example, a quality-oriented bill of materials 314 may identify parts having a relatively high reliability score 322 (e.g., 90% or higher) to create a particular product. A price-oriented bill of materials 316 may identify parts having a lower price than the parts identified in the quality-oriented bill of materials 314}.
Claim 6:
Bikumala discloses the method of claim 1. Bikumala further discloses:
wherein the ML process comprises predicting the at least one resource using a multi-label classifier {Bikumala: [0049] A K-nearest neighbors (KNN) 514 algorithm may be used on the configuration clusters 510 to classify the clusters 512; [0050] K is a user-defined constant, and an unlabeled vector (a query or test point) may be classified by assigning the label which is most frequent among the K-training samples nearest to that query point.}.
Claim 8:
Bikumala discloses the method of claim 1. Bikumala further discloses:
wherein the at least one provisioning property includes at least one price, and the customized product offering includes a product price incorporating the at least one price {Bikumala: [0042] One use of the machine learning quality model 216 may be to produce bill of materials for multiple product versions 312. A price-oriented bill of materials 316 may identify parts having a lower price than the parts identified in the quality-oriented bill of materials 314.}.
Regarding claims 9, 13-14, and 16, claims 9, 13-14, and 16 are directed to a system. Claims 9, 13-14, and 16 recite limitations that are parallel in nature to those addressed above for claims 1, 5-6, and 8, which are directed towards a method. Therefore, claims 9, 13-14, and 16 are rejected for the same reasons as set forth above for claims 1, 5-6, and 8, respectively.
It is noted that claim 9 includes additional elements of:
A system comprising:
at least one processor; and
at least one non-transitory computer readable medium storing instructions that, when executed by the at least one processor, cause the at least one processor to perform processing.
Bikumala discloses:
A system comprising {Bikumala: fig 1; [0018] systems and techniques described herein enable multiple channel partners to access, via an application programming interface (API), the manufacturer's sales data and configuration details}:
at least one processor {Bikumala: fig 10, processor(s) 1002}; and
at least one non-transitory computer readable medium storing instructions that, when executed by the at least one processor, cause the at least one processor to perform processing {Bikumala: fig 10, memory 1004; [0067] Memory 1004 are examples of computer storage media (e.g., memory storage devices) for storing instructions that can be executed by the processors 1002 to perform the various functions described herein. Memory 1004 may be collectively referred to as memory or computer storage media herein and may be any type of non-transitory media capable of storing computer-readable, processor-executable program instructions as computer program code that can be executed by the processors 1002}.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 2-3, 7, 10-11, 15, 17-18, and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Bikumala et. al. (US 20210241337 A1, herein referred to as Bikumala), in view of Sinha et. al. (US 20240296400 A1, herein referred to as Sinha).
Claim 2:
Bikumala discloses the method of claim 1. Bikumala does not disclose:
wherein the receiving comprises:
presenting a user interface (UI) comprising a progression of interface elements to the user; and
as the UI progresses through the interface elements, receiving and updating the user data through the UI.
Bikumala does disclose a display device 1008 and input/output devices 1010 for entering and displaying information (Bikumala: fig 10; [0069]).
However, Sinha teaches:
wherein the receiving comprises:
presenting a user interface (UI) comprising a progression of interface elements to the user {Sinha: fig 5, product needs attributes such as product category, operating environment, task description, etc.; [0082] FIGS. 5 and 6 illustrate user interface screens 500 and 600 that can be presented as part of a product recommendation process. In the screen 500, a user can enter a particular product category using a user interface control 508. The product category selected can also be used to define the needs attributes for which a user provides values using the user interface screen 500}; and
as the UI progresses through the interface elements, receiving and updating the user data through the UI {Sinha: [0082] product category can be associated with particular needs attributes, which are retrieved (such as from a database table or other database object) and rendered when the product category is selected using the interface control 508; [0085] user interface screen 600 of FIG. 6 presents product recommendations based on needs attributes entered through the user interface screen 500 of FIG. 5. In the user interface screen 600, the values for the needs attributes entered using the user interface screen 500 are summarized in a panel 610; [0087] needs attributes entered in the user interface screen 500 are provided to a solution configuration machine learning model defined for the solution, and a recommended configuration 710 is provided for the selected solution, as shown in the user interface screen 700, which can be an update to the user interface screen 600.}.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the user interface as taught by Sinha in the modified configuration method of Bikumala to provide for a guided product recommendation process (Sinha: [0039]).
Claim 3:
Bikumala and Sinha teach the method of claim 2. Bikumala further discloses:
repeating the predicting, determining, and applying in response to the updating of the user data {Bikmuala: [0032] channel partner 108(M) may iteratively repeat the process of providing the modifications 138 and receiving the validation results 122 until the validation results 122 indicate that the modifications 138 to the particular configuration (e.g., the configuration 125(N)) can be built.}.
Claim 7:
Bikumala discloses the method of claim 1. Bikumala further discloses:
training, by the at least one processor, at least one ML model used in the ML process {Bikmuala: [0050] input includes the K-closest training examples in a feature space. The training examples may be vectors in a multidimensional feature space, with each vector having a class label. The training phase of the algorithm may include storing the feature vectors and class labels of the training samples}.
Although disclosing that the machine learning model is trained, Bikumala does not disclose:
training at least one ML model with at least a first training data set indicative of example scopes of work and a second training data set indicative of example resources.
Bikumala does disclose scopes of work (Bikumala: [0021]-[0023]) and resources (Bikumala: [0023], [0042]).
However, Sinha teaches:
training at least one ML model with at least a first training data set indicative of example scopes of work and a second training data set indicative of example resources {Sinha: [0011] machine learning model is trained using a first data set including requirements data (i.e., scope of work) and configuration data for a plurality of solutions. A plurality of second machine learning models are trained using a respective plurality of second data sets, where a respective second data set of the respective plurality of second data sets includes configuration data for a respective solution (i.e., resource) of the plurality of solutions.}.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included multiple training datasets as taught by Sinha in the modified configuration method of Bikumala to provide more accurate results than a more general model (Sinha: [0051]).
Regarding claims 10-11 and 15, claims 10-11 and 15 are directed to a system. Claims 10-11 and 15 recite limitations that are parallel in nature to those addressed above for claims 2-3 and 7, which are directed towards a method. Therefore, claims 10-11 and 15 are rejected for the same reasons as set forth above for claims 2-3 and 7, respectively.
Claim 17:
Bikumala discloses:
A method comprising{Bikumala: fig 9; [0060] process 900 that includes receiving an order}:
receiving, by at least one processor, user data indicating a scope of work {Bikumala: fig 10, processor(s) 1002; [0061] server 104 may receive the query 134 from the channel partner 108(M) that includes the criteria 140; [0023] operations may include providing, using the API, a set of criteria to filter a set of configurations. For example, the set of criteria may include at least one of: (i) a particular time period comprising a start date and an end date, (ii) a price range comprising a lowest price and a highest price, (iii) a particular location comprising a postal code, a county, a city, a state, or a country, (iv) a profit margin, or (v) a number of units sold; [0021] A verification module may verify that the modified configuration (e.g., as selected and modified by the channel partner) can be built. Examiner interprets that the scope of work is the criteria for building the modified configuration};
predicting, by the at least one processor, at least one resource required to complete the scope of work, the predicting comprising processing the user data with a machine learning (ML) multi-label classifier trained {Bikumala: fig 10, processor(s) 1002; [0032] channel partner 108(M) may send a query 134 that specifies the criteria 140 to the server 104. Based on the criteria 140, the configuration recommendation engine 118 may filter the product configuration catalog 120 and the configurations 125 in the database 124 to determine the subset 142 of the configurations 125; [0038] product configuration data 208 may include data associated with parts (i.e., at least one resource) associated with a particular configuration of a product; [0036] input data 202 may be used as input to multiple machine learning models 118; [0049] A K-nearest neighbors (KNN) 514 algorithm may be used on the configuration clusters 510 to classify the clusters 512; [0050] K is a user-defined constant, and an unlabeled vector (a query or test point) may be classified by assigning the label which is most frequent among the K-training samples nearest to that query point. Examiner interprets that the configuration recommendation engine 118 uses machine learning models};
determining, by the at least one processor, at least one provisioning property of the at least one resource {Bikmuala: fig 10, processor(s) 1002; [0023] set of criteria may include a price range; [0042] One use of the machine learning quality model 216 may be to produce bill of materials for multiple product versions 312. A price-oriented bill of materials 316 may identify parts having a lower price (i.e., at least one provisioning property of at least one resource) than the parts identified in the quality-oriented bill of materials 314};
applying, by the at least one processor, the at least one provisioning property to a standard product offering, thereby creating a customized product offering commensurate with the scope of work {Bikmuala: fig 10, processor(s) 1002; [0005] The computing device may be used to select a particular configuration in the subset (i.e., standard product offering) and to perform one or more modifications to the particular configuration to create a modified configuration (i.e., customized product offering); [0021] verification module may use an intelligent parts catalog that uses various machine learning models to identify the most similar parts to a particular part to enable the channel partner to substitute similar parts for parts specified in a bill of materials used to manufacture a computing device.}; and
performing, by the at least one processor, processing responsive to a user request using the customized product offering {Bikmuala: fig 10, processor(s) 1002; [0032] channel partner 108(M) may review the subset 142, make a selection 137 of a particular configuration (e.g., the configuration 125(N)) of the subset 142, determine one or more modifications 138 to the particular configuration, and send the modifications 138 to the server 104. The API 112 may use the configuration validation module 114 to determine whether the modifications to the particular configuration (e.g., the configuration 125(N)) are valid (e.g., whether the modified configuration can be built) and send validation results 122 to the channel partner 108(M); [0058] If the process determines, at 814, that “yes” the modified configuration has been verified, then the process may proceed to place an order to purchase a particular quantity of the modified configuration using the API.}.
Although disclosing a method for customizing a product offering using a trained machine learning model, Bikumala does not disclose:
machine learning (ML) trained on at least a first training data set indicative of example scopes of work and a second training data set indicative of example resources.
Bikumala does disclose scopes of work (Bikumala: [0021]-[0023]) and resources (Bikumala: [0023], [0042]).
However, Sinha teaches:
machine learning (ML) trained on at least a first training data set indicative of example parameters and a second training data set indicative of example solutions {Sinha: [0011] machine learning model is trained using a first data set including requirements data (i.e., scope of work) and configuration data for a plurality of solutions. A plurality of second machine learning models are trained using a respective plurality of second data sets, where a respective second data set of the respective plurality of second data sets includes configuration data for a respective solution (i.e., resource) of the plurality of solutions.}.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included multiple training datasets as taught by Sinha in the modified configuration method of Bikumala to provide more accurate results than a more general model (Sinha: [0051]).
Claim 18:
Bikumala and Sinha teach the method of claim 17. Bikumala further discloses:
wherein:
the method further comprises repeating the predicting, determining, and applying in response to the updating of the user data {Bikmuala: [0032] channel partner 108(M) may iteratively repeat the process of providing the modifications 138 and receiving the validation results 122 until the validation results 122 indicate that the modifications 138 to the particular configuration (e.g., the configuration 125(N)) can be built.}.
Although disclosing that the processes can be iterative, Bikumala does not disclose:
wherein: the receiving comprises:
the receiving comprises presenting a user interface (UI) comprising a progression of interface elements to the user and, as the UI progresses through the interface elements, receiving and updating the user data through the UI.
Bikumala does disclose a display device 1008 and input/output devices 1010 for entering and displaying information (Bikumala: fig 10; [0069]).
However, Sinha teaches:
wherein: the receiving comprises:
the receiving comprises presenting a user interface (UI) comprising a progression of interface elements to the user {Sinha: fig 5, product needs attributes such as product category, operating environment, task description, etc.; [0082] FIGS. 5 and 6 illustrate user interface screens 500 and 600 that can be presented as part of a product recommendation process. In the screen 500, a user can enter a particular product category using a user interface control 508. The product category selected can also be used to define the needs attributes for which a user provides values using the user interface screen 500}, and
as the UI progresses through the interface elements, receiving and updating the user data through the UI {Sinha: [0082] product category can be associated with particular needs attributes, which are retrieved (such as from a database table or other database object) and rendered when the product category is selected using the interface control 508; [0085] user interface screen 600 of FIG. 6 presents product recommendations based on needs attributes entered through the user interface screen 500 of FIG. 5. In the user interface screen 600, the values for the needs attributes entered using the user interface screen 500 are summarized in a panel 610; [0087] needs attributes entered in the user interface screen 500 are provided to a solution configuration machine learning model defined for the solution, and a recommended configuration 710 is provided for the selected solution, as shown in the user interface screen 700, which can be an update to the user interface screen 600.}.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the user interface as taught by Sinha in the modified configuration method of Bikumala to provide for a guided product recommendation process (Sinha: [0039]).
Claim 20:
Bikumala and Sinha teach claim 17. Bikumala further discloses:
determining, by the at least one processor, an estimated product offering from the at least one resource {Bikmuala: fig 10, processor(s) 1002; [0037] determine multiple bill of materials (i.e., estimated product offering) for multiple versions of a product}; and
providing, by the at least one processor, information describing the estimated product offering to a user {Bikmuala: fig 10, processor(s) 1002; [0042] One use of the machine learning quality model 216 may be to produce bill of materials for multiple product versions 312. For example, a quality-oriented bill of materials 314 may identify parts having a relatively high reliability score 322 (e.g., 90% or higher) to create a particular product. A price-oriented bill of materials 316 may identify parts having a lower price than the parts identified in the quality-oriented bill of materials 314}.
Claims 4 and 12 are rejected under 35 U.S.C. 103 as being unpatentable over Bikumala et. al. (US 20210241337 A1, herein referred to as Bikumala), in view of Benkreira (US 20210241036 A1, herein referred to as Benkreira).
Claim 4:
Bikumala discloses the method of claim 1. Bikumala does not disclose:
wherein the determining comprises:
determining at least one resource code of the at least one resource;
mapping the at least one resource code to at least one application programming interface (API) code;
sending at least one API call including the at least one API code to at least one API; and
receiving, from the at least one API in response to the sending, data indicating the at least one provisioning property.
Bikumala does disclose using an application programming interface 112 as a mechanism to send and receive data, including parts information and price (Bikumala: fig 1; [0018], [0063]).
However, Benkreira teaches:
wherein the determining comprises:
determining at least one resource code of the at least one resource {Benkreira: [0041] software application including the API may automatically identify types of HTML tags of interest (i.e., resource code) according to set of HTML tags upon user selection of the interface object; [0040] content (i.e., resource) is web-based content, such as a website. Accordingly, the content may include hypertext markup language (HTML) structures};
mapping the at least one resource code to at least one application programming interface (API) code {Benkreira: [0041] API may automatically identify types of HTML tags of interest according to set of HTML tags upon user selection of the interface object; [0042] user computing device 101 may compare the tags in the HTML code to the set of HTML tags of interest.};
sending at least one API call including the at least one API code to at least one API {Benkreira: [0042] Upon finding a match, the user computing device 101 may generate the request with the matching tags and communicate the request to the content detection engine 111; [0041] software application may convey the HTML tags of interest to the content detection engine 111 via the API along with the request.}; and
receiving, from the at least one API in response to the sending, data indicating the at least one property {Benkreira: [0044] content detection engine 111 may utilize the tags provided with the request to identify the content including the product associated with the product identifier (e.g., a name, serial number, vendor, manufacturer, or other identifier associated with the HTML tag for the product identifier), and the product price; [0039] content detection engine 111 may receive the request and automatically identify content, including appropriate data items for which to predict future variations and/or states.}.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the API structure as taught by Benkreira in the modified configuration method of Bikumala to improve the efficiency of the user computing device (Benkreira: [0043]).
Regarding claim 12, claim 12 is directed to a system. Claim 12 recites limitations that are parallel in nature to those addressed above for claim 4, which is directed towards a method. Therefore, claim 12 is rejected for the same reasons as set forth above for claim 4.
Claim 19 is rejected under 35 U.S.C. 103 as being unpatentable over Bikumala et. al. (US 20210241337 A1, herein referred to as Bikumala), in view of Sinha et. al. (US 20240296400 A1, herein referred to as Sinha), in further view of Benkreira (US 20210241036 A1, herein referred to as Benkreira).
Claim 19:
Bikumala and Sinha teach the method of claim 17. Bikumala does not disclose:
wherein the determining comprises:
determining at least one resource code of the at least one resource;
mapping the at least one resource code to at least one application programming interface (API) code;
sending at least one API call including the at least one API code to at least one API; and
receiving, from the at least one API in response to the sending, data indicating the at least one provisioning property.
Bikumala does disclose using an application programming interface 112 as a mechanism to send and receive data, including price (Bikumala: fig 1; [0018], [0063]).
However, Benkreira teaches:
wherein the determining comprises:
determining at least one resource code of the at least one resource {Benkreira: [0041] software application including the API may automatically identify types of HTML tags of interest (i.e., resource code) according to set of HTML tags upon user selection of the interface object; [0040] content (i.e., resource) is web-based content. Accordingly, content may include hypertext markup language (HTML) structures};
mapping the at least one resource code to at least one application programming interface (API) code {Benkreira: [0041] API may automatically identify types of HTML tags of interest according to set of HTML tags upon user selection of the interface object; [0042] user computing device 101 may compare the tags in the HTML code to the set of HTML tags of interest.};
sending at least one API call including the at least one API code to at least one API {Benkreira: [0042] Upon finding a match, the user computing device 101 may generate the request with the matching tags and communicate the request to the content detection engine 111; [0041] software application may convey the HTML tags of interest to the content detection engine 111 via the API along with the request.}; and
receiving, from the at least one API in response to the sending, data indicating the at least one property {Benkreira: [0044] content detection engine 111 may utilize the tags provided with the request to identify the content including the product associated with the product identifier (e.g., a name, serial number, vendor, manufacturer, or other identifier associated with the HTML tag for the product identifier), and the product price; [0039] content detection engine 111 may receive the request and automatically identify content, including appropriate data items for which to predict future variations and/or states.}.
It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to have included the API structure as taught by Benkreira in the modified configuration method of Bikumala to improve the efficiency of the user computing device (Benkreira: [0043]).
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure:
Bryant et. al. (US 12437327 B2) was used to understand other methods for generating quotes using machine learning.
Haro et. al. (US 20220414724 A1) was used to understand other methods for generating product customizations based on user criteria.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to KATHERINE A BARLOW whose telephone number is (571)272-5820. The examiner can normally be reached Monday-Tuesday 11am-7pm EST.
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, Marissa Thein can be reached at (571) 272-6764. 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.
KATHERINE A. BARLOW
Examiner
Art Unit 3689
/VICTORIA E. FRUNZI/Primary Examiner, Art Unit 3689 1/21/2026