Detailed Action
This office action is in response to communications filed 11/14/2025.
Claims 1-20 are pending and presented for examination.
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 .
Priority
There is no priority claimed in this application.
Claim Interpretation
The following is a quotation of 35 U.S.C. 112(f):
(f) Element in Claim for a Combination. – An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
The following is a quotation of pre-AIA 35 U.S.C. 112, sixth paragraph:
An element in a claim for a combination may be expressed as a means or step for performing a specified function without the recital of structure, material, or acts in support thereof, and such claim shall be construed to cover the corresponding structure, material, or acts described in the specification and equivalents thereof.
This application includes one or more claim limitations that use the word “means” or “step” but are nonetheless not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph because the claim limitation(s) recite(s) sufficient structure, materials, or acts to entirely perform the recited function [See spec: [0068] and the claim itself]. Such claim limitation(s) is/are: “…modules…” in claim 12.
Because this/these claim limitation(s) is/are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, it/they is/are not being interpreted to cover only the corresponding structure, material, or acts described in the specification as performing the claimed function, and equivalents thereof.
If applicant intends to have this/these limitation(s) interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, applicant may: (1) amend the claim limitation(s) to remove the structure, materials, or acts that performs the claimed function; or (2) present a sufficient showing that the claim limitation(s) does/do not recite sufficient structure, materials, or acts to perform the claimed function.
Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 11/14/2025 has been entered.
Response to Arguments
Applicant’s arguments with respect to independent claim(s) 1 and 19 filed on 11/14/25 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument.
Claim Interpretations - 35 USC § 101
Regarding claims 1, 12 and 19, the claimed invention appears to be disclosing improvement to the computer technology [Optimizing usage of allocated resources] by running simulations based on resource model and actual usage data to estimate a second allocation to provide, thus optimizing the resource allocations [See spec: [0002], [0016]].
Regarding claim 19, the one or more computer readable storage media does not include transmission media such as signals or carrier waves. See specification: [0070]. As such, claim 19 is directed towards non-transitory computer readable storage medium.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1-20 are rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claims 1, 12 and 19 recites “estimating…a second allocation to provide to the entity that incentivizes the entity to request an amount of computing resources that corresponds to an amount that is to be actually used…”
Applicant cited support paragraph teaches:
[0044] “through the use of virtual tokens 208, the resource allocation module is configured to allocate virtual tokens in a way that incentivizes the entities…”
The scope of the amended limitation cannot be ascertained because it is unclear how the entity can be incentivized if the entity requests computing resources based on actual use. The specification does not explain or provide the requisite degree on how the term “incentivize” should be interpreted.
For examination purposes, the term “incentives” is interpreted as providing any benefit to the entity. For example, the benefit may encompass performance benefits, timing benefits, reputation benefit, etc.
Dependent claims 2-11, 13-18 and 20 are rejected due to their dependency on claims 1, 12 and 19.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention.
Claim(s) 1-2, 4, 6-10 and 19 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kuo et al. (hereinafter Kuo, US 2013/0138816 A1) in view of Ahmed et al. (US 2018/0260244 A1).
As per claim 1, Kuo discloses a method comprising:
receiving, by a processing device [fig. 2: Simulator 102], entity resource usage data describing computing resource usage of an executable service platform by an entity [[0002]: cloud computing network enables clients to manage web-based applications (e.g. services), [0010-0011]] as part of a first allocation generated using a first allocation mechanism [fig. 3 step #302, fig. 4 step 402, [0007]: receiving data representing performance of a first allocation, [0024]: collect production/performance data/usage data, [0036]];
generating, by the processing device [fig. 2: Simulator 102], an entity resource model based on the entity resource usage data of the computing resource usage of the executable service platform as part of the first allocation mechanism [[0039], [0054]: select a model based on production data, requested size and other rules/policies or parameters OR create a new model based on production data and allocation request];
simulating, by the processing device [fig. 2: Simulator 102], computing resource usage of the executable service platform by the entity as part of a second allocation mechanism based on the entity resource model and the entity resource usage data [Fig. 3 step #306, fig. 4 step #408, [0029-0034]: collect production data and run simulations, [0038], [0040], [0055]: run simulations based on received production/usage data and the model selected], the second allocation mechanism based on resulting usage of the amount of computing resources at the past point in time [[0029-0030, 0064-0067]: production data includes the usage in past point]
estimating, by the processing device [fig. 2: Simulator 102], a second allocation to provide to the entity based on the simulating [Fig. 3, step 306-308, fig. 4 step#412, [0029-0034]: simulator outputs estimated configuration, which includes 2nd allocation of resources, [0040]]; and
outputting, by the processing device [fig. 2: Simulator 102], the second allocation to control access by the entity to the computing resources of the executable service platform (fig. 4 step #416, [0034]: output operating configuration to user for approval or for implementation, [0040], [0061-0062]: output]].
However, Kuo does not explicitly teach the second allocation mechanism is based on an amount requested by the entity at a past point in time and resulting usage of the amount of computing resources at the past point in time [i.e. the second allocation mechanism or rules or techniques does not take into account the past requested size and actual usage of the requested size] and estimating, by the processing device a second allocation to provide to the entity that incentivizes the entity to request an amount of computing resources that corresponds to an amount that is to be actually used.
Ahmed, from the same field of endeavor, explicitly teaches an allocation mechanism which is based on amount requested by the entity at a past point in time (in the past or historical requests) and resulting usage of the amount of computing resources at the past point in time (i.e. in the past, or historical usage) ([0048-0049]: the amount of resources requested for each job the user submits and the actual resource usage is clustered by clustering algorithm, [0052-0057]: AT 112, it is determined whether the allocated/requested resources and the actual resource usage are substantially similar, [0053]: If it is determined that the user behavior is overestimated (e.g. if it is determined that the allocated (requested) resources are larger than the actual used resources for N jobs), then at 114, the scheduler configuration is reconfigured to reduce the resources for this user for the jobs submitted by this user. For instance, the resources may be reduced to the actual used resources or example a percentage or fraction of the difference, [0056]: The resources may be reduced at a ratio, based on application performance of a previous execution), and
estimating, by the processing device a second allocation to provide to the entity that incentivizes the entity to request an amount of computing resources that corresponds to an amount that is to be actually used ([0039, 0041]: auto modify scheduler configuration or policy to adapt the behavior of the job scheduler based on (i) the behavior of jobs based on requested versus actual resource needs and (ii) user perception of impact ton job’s performance and response times, [0048-0057]: The resources are estimated to be provided based on a ratio, [0054-0056]: based on the updated allocation of resources, it is then determined whether the system reconfiguration affected performance for this user, and if previous reconfiguration did not affect the job performance negatively, no action is taken (thus incentivizing the user by maintaining the performance), [0052, 0061]: user behavior classifier to classify user’s behavior as good behavior (not overestimated behavior) or overestimated behavior. Incentivizing is also achieved by providing the user assurance of the job performance which also takes into account user’s feedback or perception).
Therefore, it would have been obvious to a person of ordinary skilled in the art before the effective filing date of the claimed invention to modify Kuo in view of Ahmed in order to use historical data including both requested amount of resources and actual usage of the resources in order to predict the future needs of the resources that incentivizes the requesting entity.
One of ordinary skilled in the art would have been motivated in order to avoid oversubscription of resources by the users, prevent wastage of resources, improve energy use and efficiently maintaining the resources (Ahmed: [0003]).
As per claim 2, Kuo-Ahmed discloses the method as described in claim 1, wherein generating of the entity resource model is based at least in part on the entity resource data that further describes an amount of computing resource usage requested by the entity and amount of computing resource usage used by the entity [Kuo: [0054]: model is selected or created based on production data, i.e. usage data AND allocation request; Ahmed: [0048-0049]: Using clustering algorithm such as k-means or Gaussian Mixture Models to maintain user behavior over time, [0060]: The user behavior and the performance is stored in job database].
Note: The term “entity resource model” without any further details in the claim is broad and therefore, broadest reasonable interpretation applies. The broadest reasonable interpretation of the term “model” may cover algorithms, logical expressions, mathematical correlations, rules, policies, usage of specific parameters, etc.
As per claim 4, Kuo-Ahmed discloses the method as described in claim 1, wherein generating of the entity resource model is based at least in part on the entity resource data that further describes an amount of computing resources made available by the first allocation using the first allocation mechanism [Kuo: [0054]: model is selected or created based on production data, i.e. usage data [0007: originally made available by the cloud provider] AND resource request: create model based on parameters that closely resemble the production data, i.e. usage data made available to entity: Ahmed: [0048-0049]: Using clustering algorithm such as k-means or Gaussian Mixture Models to maintain user behavior over time, [0060]: The user behavior and the performance is stored in job database].
As per claim 6, Kuo discloses the method as described in claim 1, wherein the entity resource model is configured based on a cost of starting the computing resource usage of the computing resources of the executable service platform by the entity [[0068]: simulator uses model that evaluates policies and rules to implement resources at lowest possible cost, [0055-0058], [0039]].
As per claim 7, Kuo discloses the method as described in claim 1, wherein the simulating is performed as corresponding to a future time interval [[0029]: simulations are always for future time interval since it aims to perform the test first before providing requested resources, [0039]].
As per claim 8, Kuo discloses the method as described in claim 1, further comprising evaluating efficiency of the second allocation mechanism based on the simulating [fig. 4 step #412: Simulation satisfies resource request according to SLA and policy rules, fig. 5 step #510-512], [0057]: determine effectiveness of the simulation, [0058-0060]: iterative simulation process until reaching acceptable simulation results, i.e. fine tuning] and wherein the estimating the second allocation is based on the evaluating [Fig. 4 step #414, 415, fig. 5 step #514, 516, [0057-0060]: fine tune].
As per claim 9, Kuo discloses the method as described in claim 8, wherein the evaluating is based on a wastage criterion or average resource utilization [[0057-0060], [0071]: implementing the requested resources while keeping the cost lower, thus avoiding wastage].
As per claim 10, Kuo discloses the method as described in claim 1, wherein the estimating the second allocation to provide to the entity is performed using machine learning [Kuo: [0053-0055], [0057, 0060]: Machine Learning is a broad term and may encompass simple use of models or computer algorithms or mathematical expressions that optimizes the results; Ahmed: [0048-0049]: Using clustering algorithm such as k-means or Gaussian Mixture Models to maintain user behavior over time, [0060]: The user behavior and the performance is stored in job database].
As per claim 19, Kuo discloses one or more computer-readable storage media storing instructions that, responsive to execution by a processing device, causes the processing device to perform operations including:
receiving [fig. 2: Simulator 102] entity resource usage data describing computing resource usage of an executable service platform by an entity [[0002]: cloud computing network enables clients to manage web-based applications (e.g. services), [0010-0011]] as part of a first allocation generated using a first allocation mechanism [fig. 3 step #302, fig. 4 step 402, [0007]: receiving data representing performance of a first allocation, [0024]: collect production/performance data/usage data, [0036]];
generating [fig. 2: Simulator 102] an entity resource model based on the entity resource usage data of the computing resource usage of the executable service platform as part of the first allocation mechanism [[0039], [0054]: select a model based on production data, requested size and other rules/policies or parameters OR create a new model based on production data and allocation request], the generating based at least in part on the entity resource data that further describes an amount of computing resource usage used by the entity at the past point in time [[0039], [0054]: select a model based on production data, requested size and other rules/policies or parameters which closely match the received production data OR create a new model based on production data and allocation request, [0024-0025]: collect production/performance data and determine usage trends of past allocations and usage, [0036]];
simulating [fig. 2: Simulator 102] computing resource usage of the executable service platform by the entity as part of a second allocation mechanism based on the entity resource model and the entity resource usage data [Fig. 3 step #306, fig. 4 step #408, [0029-0034]: collect production data and run simulations, [0038], [0040], [0055]: run simulations based on received production/usage data and the model selected], the second allocation mechanism based on resulting usage of the amount of computing resources at the past point in time [[0029-0030, 0064-0067]: production data includes the usage in past point]
estimating [fig. 2: Simulator 102] a second allocation to provide to the entity based on the simulating using machine learning module [Fig. 3, step 306-308, fig. 4 step#412, [0029-0034]: simulator outputs estimated configuration, which includes 2nd allocation of resources, [0040]]; and
outputting [fig. 2: Simulator 102] the second allocation to control access by the entity to the computing resources of the executable service platform (fig. 4 step #416, [0034]: output operating configuration to user for approval or for implementation, [0040], [0061-0062]: output]].
However, Kuo does not explicitly teach the generating an entity resource model is based at least in part on the entity resource usage data that further describes an amount of computing resource usage requested by the entity at a past point in time and an amount of computing resource usage used by the entity at the past point in time [i.e. the production data does not take into account both parameters including the past requested size/amount of resources and actual usage of the requested size/amount of resources] and estimating, by the processing device a second allocation to provide to the entity that incentivizes the entity to request an amount of computing resources that corresponds to an amount that is to be actually used.
Ahmed, from the same field of endeavor, explicitly teaches an allocation mechanism which is based on amount requested by the entity at a past point in time (in the past or historical requests) and resulting usage of the amount of computing resources at the past point in time (i.e. in the past, or historical usage) ([0048-0049]: the amount of resources requested for each job the user submits and the actual resource usage is clustered by clustering algorithm, [0052-0057]: AT 112, it is determined whether the allocated/requested resources and the actual resource usage are substantially similar, [0053]: If it is determined that the user behavior is overestimated (e.g. if it is determined that the allocated (requested) resources are larger than the actual used resources for N jobs), then at 114, the scheduler configuration is reconfigured to reduce the resources for this user for the jobs submitted by this user. For instance, the resources may be reduced to the actual used resources or example a percentage or fraction of the difference, [0056]: The resources may be reduced at a ratio, based on application performance of a previous execution), and
estimating, by the processing device a second allocation to provide to the entity that incentivizes the entity to request an amount of computing resources that corresponds to an amount that is to be actually used ([0039, 0041]: auto modify scheduler configuration or policy to adapt the behavior of the job scheduler based on (i) the behavior of jobs based on requested versus actual resource needs and (ii) user perception of impact ton job’s performance and response times, [0048-0057]: The resources are estimated to be provided based on a ratio, [0054-0056]: based on the updated allocation of resources, it is then determined whether the system reconfiguration affected performance for this user, and if previous reconfiguration did not affect the job performance negatively, no action is taken (thus incentivizing the user by maintaining the performance), [0052, 0061]: user behavior classifier to classify user’s behavior as good behavior (not overestimated behavior) or overestimated behavior. Incentivizing is also achieved by providing the user assurance of the job performance which also takes into account user’s feedback or perception).
Therefore, it would have been obvious to a person of ordinary skilled in the art before the effective filing date of the claimed invention to modify Kuo in view of Ahmed in order to use historical data including both requested amount of resources and actual usage of the resources in order to predict the future needs of the resources that incentivizes the requesting entity.
One of ordinary skilled in the art would have been motivated in order to avoid oversubscription of resources by the users, prevent wastage of resources, improve energy use and efficiently maintaining the resources (Ahmed: [0003]).
Claim(s) 3, 5 are rejected under 35 U.S.C. 103 as being unpatentable over Kuo et al. (hereinafter Kuo, US 2013/0138816 A1) in view of Ahmed et al. (US 2018/0260244 A1) and further in view of Challa et al. (hereinafter Challa, US 2016/0277310 A1).
As per claim 3, Kuo-Ahmed discloses the method as described in claim 2 above.
However, Kuo-Ahmed does not teach wherein the amount of computing resource usage requested by the entity and amount of computing resource usage used by the entity is specified using virtual tokens.
Challa, from the same field [Dynamic Management of Computing Platform resources], teaches requesting and specifying the computing resources in form of virtual tokens [Summary: Token identifies an amount and type of available computing resources of the second domain that are available for allocation, [0071-0075]: Token based allocation system].
Therefore, it would have been obvious to a person of ordinary skilled in the art before the effective filing date of the claimed invention to modify Kuo-Ahmed in view of Challa in order to use token-based allocation system wherein the amount of computing resource usage requested by the entity and amount of computing resource used by the entity are specified using virtual tokens.
One of ordinary skilled in the art would have been motivated because it would have enabled the management of computing resource sharing using a token-based allocation system [Challa: [0071], Summary].
As per claim 5, Kuo-Ahmed-Challa discloses the method as described in claim 4, wherein the amount of computing resources made available is specified using virtual tokens [Challa: Summary, [0070-0075]: Token based allocation system]. Same rationale as in claim 3 applies.
Claim(s) 12-18 are rejected under 35 U.S.C. 103 as being unpatentable over Kuo et al. (hereinafter Kuo, US 2013/0138816 A1) in view of Ahmed et al. (US 2018/0260244 A1) and further in view of Aggarwal et al. (hereinafter Aggarwal, US 2020/0366682 A1).
As per claim 12, Kuo discloses a system comprising:
a usage data input module implemented by a processing device to receive [fig. 2: Simulator 102], entity resource usage data describing computing resource usage of an executable service platform by an entity [[0002]: cloud computing network enables clients to manage web-based applications (e.g. services), [0010-0011]] as part of a first allocation generated using a first allocation mechanism [fig. 3 step #302, fig. 4 step 402, [0007]: receiving data representing performance of a first allocation, [0024]: collect production/performance data, [0036]];
an entity model generation module implemented by the processing device [fig. 2: Simulator 102], to generate an entity resource model based on the entity resource usage data of the computing resource usage of the executable service platform as part of the first allocation mechanism [[0039], [0054]: select a model based on production data, requested size and other rules OR create a new model based on production data and allocation request];
a simulation module implemented by the processing device [fig. 2: Simulator 102], to simulate computing resource usage of the executable service platform by the entity as part of a second allocation mechanism based on the entity resource model [[0013]: the simulator determines more efficient way to provide the user with the requested resources, e.g. lower cost, [0018]: resource allocation strategies, [0029], [0032, 0035], [0057-0060], [0071]: implementing the requested resources while keeping the cost lower] and the entity resource usage data [Fig. 3 step #306, fig. 4 step #408, [0029-0034]: collect production data and run simulations, [0038], [0040], [0055]: run simulations],
a resource allocation module to estimate a second allocation to provide to the entity based on the simulating [Fig. 3, step 306-308, fig. 4 step#412, [0029-0034]: simulator outputs estimated configuration, [0040]].
However, Kuo does not teach receiving entity resource usage data describing usage of virtual tokens, wherein virtual tokens are made available to the entity as part of first allocation, generate entity resource model based on the entity resource usage of the usage of virtual tokens as part of first allocation, simulate usage of the virtual tokens by the entity as part of a second allocation mechanism based on the entity resource model and the entity resource usage data in which the second allocation mechanism allocates the virtual tokens based on a proportion of the virtual tokens used with respect to an amount of the virtual tokens requested by the entity [Basically, the usage, the availability of offered resources is not measured in form of tokens] and wherein the second allocation to provide to the entity that incentivizes the entity to request an amount of computing resources that corresponds to an amount that is to be actually used.
Ahmed, from the same field of endeavor teaches receiving entity resource usage data describing usage of resources (, wherein the resources (are made available to the entity as part of first allocation, generate entity resource model based on the entity resource usage of the usage of resources (, simulate usage of the resources (mechanism based on the entity resource model and the entity resource usage data in which the second allocation mechanism allocates the second resources ([Basically, the usage, the availability of offered resources is not measured in form of tokens] ([0048-0049]: the amount of resources requested for each job the user submits and the actual resource usage is clustered by clustering algorithm, [0052-0057]: AT 112, it is determined whether the allocated/requested resources and the actual resource usage are substantially similar, [0053]: If it is determined that the user behavior is overestimated (e.g. if it is determined that the allocated (requested) resources are larger than the actual used resources for N jobs), then at 114, the scheduler configuration is reconfigured to reduce the resources for this user for the jobs submitted by this user. For instance, the resources may be reduced to the actual used resources or example a percentage or fraction of the difference, [0056]: The resources may be reduced at a ratio, based on application performance of a previous execution), and
and
wherein the second allocation to provide to the entity that incentivizes the entity to request an amount of computing resources that corresponds to an amount that is to be actually used ([0039, 0041]: auto modify scheduler configuration or policy to adapt the behavior of the job scheduler based on (i) the behavior of jobs based on requested versus actual resource needs and (ii) user perception of impact ton job’s performance and response times, [0048-0057]: The resources are estimated to be provided based on a ratio, [0054-0056]: based on the updated allocation of resources, it is then determined whether the system reconfiguration affected performance for this user, and if previous reconfiguration did not affect the job performance negatively, no action is taken (thus incentivizing the user by maintaining the performance), [0052, 0061]: user behavior classifier to classify user’s behavior as good behavior (not overestimated behavior) or overestimated behavior. Incentivizing is also achieved by providing the user assurance of the job performance which also takes into account user’s feedback or perception).
Therefore, it would have been obvious to a person of ordinary skilled in the art before the effective filing date of the claimed invention to modify Kuo in view of Ahmed in order to use historical data including both requested amount of resources and actual usage of the resources in order to predict the future needs of the resources and allocate based on proportion of the resources used in view of amount of resources requested by the entity and that incentivizes the requesting entity.
One of ordinary skilled in the art would have been motivated in order to avoid oversubscription of resources by the users, prevent wastage of resources, improve energy use and efficiently maintaining the resources (Ahmed: [0003]).
However, Kuo-Ahmed do not teach requesting and specifying the computing resources in form of virtual tokens, i.e. virtual token made available to the entity as part of first allocation, virtual token used, virtual token requested and virtual tokens estimated as a second allocation.
Aggarwal, from the same field of endeavor, teaches resource appropriation in a multi-tenant environment, including assigning a first allocation of resource tokens to an application which correspond to access privileges to plurality of resources and dynamically modify the resource allocation for applications responsive to changes to a risk score or value of a respective application (fig. 2, fig. 3A step #310, 315, fig. 3C, [0005], [0035-0038], [0047], [0053-0054], [0058-0065], [0077-0080]).
Therefore, it would have been obvious to a person of ordinary skilled in the art before the effective filing date of the claimed invention to modify Kuo-Ahmed in view of Aggarwal in order to implement token-based allocation system wherein the amount of computing resource usage requested by the entity and amount of computing resource used by the entity are specified using virtual tokens, wherein entity resource model is generated based on usage of virtual tokens and simulations are based on usage of virtual tokens and further allocations are based on estimated virtual tokens.
One of ordinary skilled in the art would have been motivated because it would have enabled the management of computing resource sharing using a token-based allocation system which corresponds to access privileges to plurality of resources (Aggarwal: Abstract, [0005]).
As per claim 13, Kuo-Ahmed-Aggarwal discloses the system as described in claim 12, wherein the entity model generation module is configured to generate the entity resource model based at least in part on the entity resource data that further describes an amount of virtual token requested by the entity and an amount of virtual tokens used by the entity [Kuo: [0054]: model is selected or created based on production data, i.e. usage data AND allocation request; Aggarwal: fig. 2, fig. 3A step #310, 315, fig. 3C, [0005], [0035-0038], [0047], [0053-0054], [0058-0065], [0077-0080]]). Same rationale as in claim 12 applies.
As per claim 14, Kuo-Ahmed-Aggarwal discloses the system as described in claim 12, wherein the entity model generation module is configured to generate the entity resource model based at least in part on the entity resource data that further describes an amount of virtual tokens made available by the first allocation using the first allocation mechanism [[Kuo: [0054]: model is selected or created based on production data, i.e. usage data AND allocation request; Aggarwal: fig. 2, fig. 3A step #310, 315, fig. 3C, [0005], [0035-0038], [0047], [0053-0054], [0058-0065], [0077-0080]]. Same rationale as in claim 12 applies.
As per claim 15, Kuo-Ahmed-Aggarwal discloses the system as described in claim 12, wherein the entity resource model is configured based on a cost of starting the computing resource usage of the computing resources of the executable service platform by the entity [Kuo: [0068]: simulator uses model that evaluates policies and rules to implement resources at lowest possible cost, [0055-0058], [0039]].
As per claim 16, Kuo-Ahmed-Aggarwal discloses the system as described in claim 12, wherein the simulation module is configured to simulate a future time interval [Kuo: [0029]: simulations are always for future time interval since it aims to perform the test first before providing requested resources, [0039]].
As per claim 17, Kuo-Ahmed-Aggarwal discloses the system as described in claim 12, further comprising a mechanism evaluation module configured to evaluate efficiency of the second allocation mechanism based on the simulation [Kuo: fig. 4 step #412: Simulation satisfies resource request according to SLA and policy rules, fig. 5 step #510-512], [0057]: determine effectiveness of the simulation, [0058-0060]: iterative simulation process until reaching acceptable simulation results, i.e. fine tuning].
As per claim 18, Kuo-Ahmed-Aggarwal discloses the system as described in claim 17, wherein the mechanism evaluation module employs a wastage criterion or average resource utilization [Kuo:[0057-0060], [0071]: implementing the requested resources while keeping the cost lower, thus avoiding wastage].
Claim(s) 11 and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Kuo et al. (hereinafter Kuo, US 2013/0138816 A1) in view of Ahmed et al. (hereinafter Ahmed, US 2018/0260244 A1) and further in view of Krishnegowda et al. (hereinafter Krish, US 11,775,352 B1).
As per claim 11, Kuo-Ahmed discloses the method as described in claim 10 above.
However, Kuo-Ahmed does not teach wherein the machine learning includes reinforcement learning.
Krish, from the same field of endeavor, teaches using reinforcement learning as a machine language for automated prediction of computing resource performance scaling [Fig. 2 step #204, col. 1 L50-67, col. 6 L56-67].
Therefore, it would have been obvious to a person of ordinary skilled in the art before the effective filing date of the claimed invention to modify Kuo-Ahmed in view of Krish in order to use the reinforcement learning technique to estimate the second allocation to provide to the entity.
One of ordinary skilled in the art would have been motivated in order to learn an optimal configuration of the computing resources to allocate [Krish: col. 6L50 to col. 7 L44]].
As per claim 20, it does not teach or further define over the limitations in claim 11. Therefore, claim 20 is rejected for the same reasons as set forth in claim 11.
Additional References
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Huberman et al., US 2006/0020628 A1: Determining Size of a data center – Teaches acquiring historical data, developing usage profile, calculating resource usage and running simulations to calculate/determine appropriate amount of resources.
Shesahdri et al., US 2022/0383324 A1: Dynamic autoscaling of resources using intelligent demand analytics system – teaches using the trained ML models to predict future resource usage or demand based on past data and prediction inputs
Habak et al., US 2017/0351546 A1: Resource Predictors indicative of predicted resource usage.
Baughman et al., US 2015/0350108 A1: Adjusting Cloud Resource Allocation
Arndt et al., US 9965727 B2: Resolving Contention in a Computer system
Campbell et al., US 11210138 B1: Dynamic Resource Allocation for Computational Simulation
Parikh, US 2014/0059228 A1: Resource Allocation Diagnosis on distributed computer systems.
Mukherkee et al., US 2016/0292606 A1: Optimal Allocation of Hardware inventory procurements.
Conclusion
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to KAMAL B DIVECHA whose telephone number is 571-272-5863. The examiner can normally be reached IFP Normal Hours M-F: 9am-5pm 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, Colleen Fauz can be reached at 5712721667. 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.
KAMAL B. DIVECHA
Primary Patent Examiner
Art Unit 2453
/KAMAL B DIVECHA/Supervisory Patent Examiner, Art Unit 2453