Prosecution Insights
Last updated: August 15, 2026
Application No. 18/505,229

INFORMATION PROCESSING SYSTEM

Non-Final OA §103
Filed
Nov 09, 2023
Priority
Nov 11, 2022 — JP 2022-180798
Examiner
HEADLY, MELISSA A
Art Unit
2126
Tech Center
2100 — Computer Architecture & Software
Assignee
Preferred Networks Inc.
OA Round
1 (Non-Final)
75%
Grant Probability
Favorable
1-2
OA Rounds
8m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 75% — above average
75%
Career Allowance Rate
310 granted / 413 resolved
+20.1% vs TC avg
Strong +40% interview lift
Without
With
+40.1%
Interview Lift
resolved cases with interview
Typical timeline
3y 5m
Avg Prosecution
23 currently pending
Career history
442
Total Applications
across all art units

Statute-Specific Performance

§101
11.8%
-28.2% vs TC avg
§103
60.9%
+20.9% vs TC avg
§102
5.2%
-34.8% vs TC avg
§112
14.1%
-25.9% vs TC avg
Black line = Tech Center average estimate • Based on career data from 413 resolved cases

Office Action

§103
DETAILED ACTION The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Examiner Notes Examiner cites particular columns and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner. The examiner encourages Applicant to submit an authorization to communicate with the examiner via the Internet by making the following statement (from MPEP 502.03): “Recognizing that Internet communications are not secure, I hereby authorize the USPTO to communicate with the undersigned and practitioners in accordance with 37 CFR 1.33 and 37 CFR 1.34 concerning any subject matter of this application by video conferencing, instant messaging, or electronic mail. I understand that a copy of these communications will be made of record in the application file.” Please note that the above statement can only be submitted via Central Fax, Regular postal mail, or EFS Web (PTO/SB/439). Claim Rejections - 35 USC § 103 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. 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 11-12, 17, and 38 are rejected under 35 U.S.C. 103 as being unpatentable over Balog et al. (Balog et al., Fast Training of Sparse Graph Neural Networks on Dense Hardware, June 27, 2019, arXiv preprint arXiv:1906.11786) in view of Bequet et al. (US 20220253335 A1). As per claim 11, Balog teaches the invention substantially as claimed including an information processing system comprising: at least one memory (Pg. 11, fitting supergraphs with more nodes N into memory); and at least one processor (Pg. 2, After applying bandwidth reduction and implementing GNN message propagation for low bandwidth graphs, we achieve performance on TPUv2 hardware that is competitive with a highly optimized sparse GPU implementation; Examiner Note: TPU refers to processors: Pg. 1, New “AI accelerators” such as Google’s Tensor Processing Units (TPU); and Pg. 6, Our GNNpropagation method for low-bandwidth graphs allows fast processing of training data (Section 5.2). A single TPUv2 device achieves similar speed as a state-of-the-art sparse implementation on sparse hardware, and the speed scales almost linearly with more cores) configured to: receive a plurality of requests from a user (Pg. 2, A GGNN encoder takes as input a graph on N nodes; and Pg. 3, multiple training graphs can be packed into a single supergraph of fixed maximum size, until no more graphs fit); and control, based on information related to structure, a request amount for which processing using a neural network is to be executed, out of the plurality of requests (Pg. 3, a one-time preprocessing step that “compiles” each training point by finding an efficient computation schedule for it. In our case this amounts to finding a permutation of nodes in each training graph such that the resulting adjacency matrix has low bandwidth; Pg. 3, When training on multiple cores, each core receives its own supergraph). Balog fails to specifically teach, store the plurality of requests in the at least one memory; and requests stored in the at least one memory. However, Bequet teaches, store the plurality of requests in the at least one memory ([0011], store, within a task queue, multiple task routine execution request messages); and requests stored in the at least one memory ([0263], Network-attached data stores 110 are used to store data to be processed by the computing environment 114 as well as any intermediate or final data generated by the computing system in non-volatile memory). Balog and Bequet are analogous because they are each related to resource and request management in a neural network environment. Balog teaches a graph neural network for efficient resource management using neighborhood information to service requests: Pg. 1, graph neural networks (GNNs) [Scarselli et al., 2009, Li et al., 2016] can be appealing because they operate on graph structured inputs. Each node can have data (e.g., an image) associated with it, and edges can encode different kinds of relationships between nodes. The forward pass of a GNN model can be interpreted as nodes exchanging messages with each other along edges of a graph [Gilmer et al., 2017], combining the local per-node information with information about the surrounding context in a flexible manner; Pg. 2, AGGNN encoder takes as input a graph on N nodes with initial node embeddings E(0) ∈ RN×H, and after a fixed number T of timesteps produces final node embeddings E(T) ∈ RN×H that combine local and neighborhood information; and Pg. 3, a one-time preprocessing step that “compiles” each training point by finding an efficient computation schedule for it. In our case this amounts to finding a permutation of nodes in each training graph such that the resulting adjacency matrix has low bandwidth; and Pg. 3, When training on multiple cores, each core receives its own supergraph. Bequet teaches using a neural network to allocate resources to service requests including storing requests for servicing: [0011], execute instructions of a performance routine to cause the at least one processor to, in response to the storage of the job performance request message within the job queue, perform operations including: based on the data dependencies among the set of tasks specified in the job flow definition, derive an order of performance of the set of tasks that specifies a subset of tasks of the set of tasks that are able to be performed in parallel, and derive a quantity of task containers within the set of task containers that enables parallel execution of a corresponding subset of task routines to cause the parallel performance of the subset of tasks; based on at least the derived quantity of task containers within the set of task containers, derive a quantity of at least one other VM that, in combination with the at least one VM, provides resources to enable instantiation of the derived quantity of task containers to enable the parallel execution of the subset of task routines. It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention that based on the combination, that the graph neural network of Balog would be modified with the request storage mechanism taught by Bequet resulting in a system that services stored requests by allocating resources. Therefore, it would have been obvious to combine the teachings of Balog and Bequet. As per claim 12, Balog teaches, wherein the information related to structure includes at least one of information related to the number of atoms or information related to the number of neighbors of atoms (Pg. 4, A GGNN encoder takes as input a graph on N nodes with initial node embeddings E(0) ∈ RN×H, and after a fixed number T of timesteps produces final node embeddings E(T) ∈ RN×H that combine local and neighborhood information). As per claim 17, Balog teaches, wherein the neural network is a graph neural network (Abstract, In this work, we question this assumption by scaling up sparse graph neural networks using a platform targeted at dense computation on fixed-size data). As per claim 38, this is the “method clam” corresponding to claim 11 and is rejected for the same reasons. The same motivation used in the rejection of claim 11 is applicable to the instant claim. Claims 13-16 are rejected under 35 U.S.C. 103 as being unpatentable over the combination of Balog-Bequet as applied to claim 11 and in further view of Bang et al. (US 11252149 B1). As per claim 13, the combination of Balog-Bequet fails to specifically teach, wherein the at least one processor controls the request amount using at least one of a first token amount added to the user in a predetermined time, a second token amount the user is permitted to possess, or a third token amount the user is permitted to consume in a predetermined time. However, Bang teaches, wherein the at least one processor controls the request amount using at least one of a first token amount added to the user in a predetermined time (Column 28, Lines 65-67, A function to be used to decide the maximum token population based on such user-specific or client-specific metrics may be included in the throttling parameter set 1115), a second token amount the user is permitted to possess (Column 28, Lines 65-67, A function to be used to decide the maximum token population based on such user-specific or client-specific metrics may be included in the throttling parameter set 1115), or a third token amount the user is permitted to consume in a predetermined time (Column 26, Lines 36-39, a time interval between successive token deduction iterations may also be determined based at least in part on the first set of connection throttling parameters). The combination of Balog-Bequet and Bang are analogous because they are each related to resource and request management in a neural network environment. Balog teaches a graph neural network for efficient resource management using neighborhood information to service requests. Bequet teaches using a neural network to allocate resources to service requests including storing requests for servicing. Bang teaches a method of resource allocation including determining whether to accept requests by using throttling parameters in a neural network environment: Abstract, A resource of a dialog-driven management service is allocated for a first set of requests based on determining that a population of capacity indicators in a throttling data structure exceeds a threshold. One or more capacity indicator deduction iterations associated with the resource are conducted during a time interval for which the resource remains allocated for the first set of requests. In a given iteration, a number of capacity indicators is deducted from the throttling data structure based on a resource throttling setting. A second set of requests is rejected based on the population of the throttling data structure; Column 28, Lines 52-57, the types of requests which are submitted on behalf of the clients or end users for whom a given bucket is used may be monitored, and some parameters (such as the maximum count of tokens in the bucket) may be selected based on the analysis of the request types; and Column 28, Lines 65-67, A function to be used to decide the maximum token population based on such user-specific or client-specific metrics may be included in the throttling parameter set 1115). It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention that based on the combination, the graph neural network of the combination of Balog-Bequet would be modified with the throttling parameters and request acceptance control mechanisms taught by Bang resulting in a system that services requests by allocating resources in accordance with policies related to acceptance criteria. Therefore, it would have been obvious to combine the teachings of the combination of Balog-Bequet and Bang. As per claim 14, Bang teaches, wherein the first token amount is a value based on the information related to structure (Column 6, Lines 17-21, application owners may specify custom resource throttling parameters to be used for their applications, e.g., so that for example some subset of end users does not end up consuming the majority of resources at the DAMS servers; and Column 27, Lines 3-9, The set of connection throttling parameters may also include other parameters, such as a rate at which a token bucket is to be refilled, the maximum number of tokens permitted in a bucket, whether token populations are to be allowed to fall below zero, the token population thresholds to be used to accept new connection requests, and so on. In some embodiments), wherein the second token amount is a value based on the information related to structure (Column 6, Lines 17-21, application owners may specify custom resource throttling parameters to be used for their applications, e.g., so that for example some subset of end users does not end up consuming the majority of resources at the DAMS servers; and Column 27, Lines 3-9, The set of connection throttling parameters may also include other parameters, such as a rate at which a token bucket is to be refilled, the maximum number of tokens permitted in a bucket, whether token populations are to be allowed to fall below zero, the token population thresholds to be used to accept new connection requests, and so on. In some embodiments), and wherein the third token amount is a value based on the information related to structure (Column 6, Lines 17-21, application owners may specify custom resource throttling parameters to be used for their applications, e.g., so that for example some subset of end users does not end up consuming the majority of resources at the DAMS servers; Column 26, Lines 41-47, If, at the time that a new connection establishment request which happens to be mapped to the particular bucket (e.g., because it is from the same client, because it is directed to the same application, etc.), the bucket population is below the minimum acceptable threshold, the new connection establishment request may be rejected in at least some embodiments; and Column 27, Lines 3-12, The set of connection throttling parameters may also include other parameters, such as a rate at which a token bucket is to be refilled, the maximum number of tokens permitted in a bucket, whether token populations are to be allowed to fall below zero, the token population thresholds to be used to accept new connection requests, and so on. In some embodiments, the parameters may indicate that the number of tokens to be deducted during a given deduction iteration may change over time—e.g., if a connection lasts longer than N1 seconds). As per claim 15, Balog teaches, wherein the information related to structure includes at least one of information related to the number of atoms or information related to the number of neighbors of atoms (Pg. 3, a one-time preprocessing step that “compiles” each training point by finding an efficient computation schedule for it. In our case this amounts to finding a permutation of nodes in each training graph such that the resulting adjacency matrix has low bandwidth; Pg. 3, When training on multiple cores, each core receives its own supergraph). As per claim 16, Bang teaches, wherein the first token amount set for the user is equal to or more than a first token amount set for another user subscribing to a service using the neural network with a plan lower in price than a plan of the user (Column 27, Lines 3-6, The set of connection throttling parameters may also include other parameters, such as ...the maximum number of tokens permitted in a bucket; Column 27, Lines 20-29, client-specific or user-specific metrics may be collected and used to determine the maximum number of tokens to be allowed in a bucket associated with a user's requests. For example, respective counts of application requests (e.g., APIs) of one or more types which were submitted by a user may be collected over some time period, and used to determine the maximum token count for a bucket used for that user. The buckets used for requests of different users may thus differ in their maximum permitted token populations in such embodiments; and Column 28, Lines 60-67, the maximum number of tokens permitted in a bucket for clients who tend to submit more API-A requests than API-B requests may be set to a different value (e.g., higher) than the maximum number of tokens permitted in a bucket for clients who tend to submit more API-B requests than API-A requests. A function to be used to decide the maximum token population based on such user-specific or client-specific metrics may be included in the throttling parameter set 1115), wherein the second token amount set for the user is equal to or more than a second token amount set for the another user (Column 27, Lines 3-6, The set of connection throttling parameters may also include other parameters, such as ...the maximum number of tokens permitted in a bucket; and Column 27, Lines 20-29, client-specific or user-specific metrics may be collected and used to determine the maximum number of tokens to be allowed in a bucket associated with a user's requests. For example, respective counts of application requests (e.g., APIs) of one or more types which were submitted by a user may be collected over some time period, and used to determine the maximum token count for a bucket used for that user. The buckets used for requests of different users may thus differ in their maximum permitted token populations in such embodiments), and wherein the third token amount set for the user is equal to or more than a third token amount set for the another user (Column 27, Lines 3-6, The set of connection throttling parameters may also include other parameters, such as ...the maximum number of tokens permitted in a bucket; and Column 27, Lines 20-29, client-specific or user-specific metrics may be collected and used to determine the maximum number of tokens to be allowed in a bucket associated with a user's requests. For example, respective counts of application requests (e.g., APIs) of one or more types which were submitted by a user may be collected over some time period, and used to determine the maximum token count for a bucket used for that user. The buckets used for requests of different users may thus differ in their maximum permitted token populations in such embodiments). Claim 21 is rejected under 35 U.S.C. 103 as being unpatentable over the combination of Balog-Bequet as applied to claim 11 and in further view of Zhang et al. (Zhang et al, Embedded Atom Neural Network Potentials: Efficient and Accurate Machine Learning with a Physically Inspired Representation, J. Phys. Chem. Lett. 2019, Pgs. 4962-4967). As per claim 21, the combination of Balog-Bequet fails to specifically teach wherein the neural network is a model of Neural Network Potential (NNP). However, Zhang teaches, wherein the neural network is a model of Neural Network Potential (NNP) (Abstract, simple, but efficient and accurate, machine learning (ML) model for developing a high-dimensional potential energy surface...EANN potentials can vastly accelerate molecular dynamics and spectroscopic simulations in complex systems at ab initio level). The combination of Balog-Bequet and Zhang are analogous because they are each related to resource and request management in a neural network environment. Balog teaches a graph neural network for efficient resource management using neighborhood information to service requests. Bequet teaches using a neural network to allocate resources to service requests including storing requests for servicing. Zhang teaches a method of efficiently constructing a potential energy surface that considers neighborhood information. (Abstract, simple, but efficient and accurate, machine learning (ML) model for developing a high-dimensional potential energy surface; and Pg. 4963, counts the number of neighboring atoms close to the embedding atom within a sphere with a cutoff radius(rc). A frequently used cosine type cutoff function is also multiplied to each orbital here to decay the interaction to zero smoothly approaching rc.). It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention that based on the combination, the graph neural network of the combination of Balog-Bequet would be modified with the NNP mechanism taught by Zhang resulting in a system that services stored requests by allocating resources in accordance with an NPP model. Therefore, it would have been obvious to combine the teachings of the combination of Balog-Bequet and Zhang. Claims 22-27 rejected as unpatentable over the combination of Balog-Bequet-Zhang as applied to dependent claim 21 and in and in further view of Bang et al. (US 11252149 B1). As per claim 22, the combination of Balog-Bequet-Zhang fails to specifically teach, wherein the at least one processor determines whether to permit processing of the request based on a term of use of the user, and execute the processing using the neural network based on the request whose processing is determined as being permitted, and wherein the term of use includes a condition related to a structure of a processing target of the neural network. However, Bang teaches, wherein the at least one processor determines whether to permit processing of the request based on a term of use of the user (Column 30, Lines 60-61, based on the throttling parameters, new admission control decisions may be made on a per-API basis; and Column 31, Lines 9-21, the connection establishment requests for which acceptance/rejection decisions are to be made using a given token bucket may not all be sent to the same server 1354. For example, workload distributors of the DAMS 1302 may select a particular server 1354 for a given connection request based on a variety of factors, or even using random selection, and as a result many different servers may have to handle connection requests which map to the same bucket identifier or bucket key. In order to handle such a distribution of connection requests among servers, the servers 1354 may transmit representations of updates 1365 (e.g., 1365A-1365M) which have been applied to their local throttling data structures 1356 to each other; Examiner Note: The claimed “term of use of the user” is mapped to Bang’s throttling parameters: Column 6, Lines 17-21, application owners may specify custom resource throttling parameters to be used for their applications, e.g., so that for example some subset of end users does not end up consuming the majority of resources at the DAMS servers; Column 17, Lines 3-8, The set of connection throttling parameters may also include other parameters, such as a rate at which a token bucket is to be refilled, the maximum number of tokens permitted in a bucket, whether token populations are to be allowed to fall below zero, the token population thresholds to be used to accept new connection requests, and so on ), and execute the processing using the neural network based on the request whose processing is determined as being permitted (Column 30, Lines 13-23, When the API request 1261 is received, an admission control decision is made by the throttling agent thread 1215 in the depicted embodiment. Based on attributes of the API request 1261, a particular bucket is selected, and the token population of the bucket is checked to determine whether there are enough tokens present in the bucket to accept the API request and establish the connection with the client-side component. In the example scenario shown in FIG. 12, the API request is approved, the connection is established, and the requested operations of the API are started at the activity thread 1220), and wherein the term of use includes a condition related to a structure of a processing target of the neural network (Column 38, Lines 11-15, one or more workload distributors 1947 may select a particular server 1922 to process the connection establishment request (e.g., using token-based techniques similar to those discussed earlier)). The combination of Balog-Bequet-Zang and Bang are analogous because they are each related to resource and request management in a neural network environment. Balog teaches a graph neural network for efficient resource management using neighborhood information to service requests. Bequet teaches using a neural network to allocate resources to service requests including storing requests for servicing. Zhang teaches a method of efficiently constructing a potential energy surface that considers neighborhood information. Bang teaches a method of resource allocation including determining whether to accept requests by using throttling parameters in a neural network environment: Abstract, A resource of a dialog-driven management service is allocated for a first set of requests based on determining that a population of capacity indicators in a throttling data structure exceeds a threshold. One or more capacity indicator deduction iterations associated with the resource are conducted during a time interval for which the resource remains allocated for the first set of requests. In a given iteration, a number of capacity indicators is deducted from the throttling data structure based on a resource throttling setting. A second set of requests is rejected based on the population of the throttling data structure; Column 28, Lines 52-57, the types of requests which are submitted on behalf of the clients or end users for whom a given bucket is used may be monitored, and some parameters (such as the maximum count of tokens in the bucket) may be selected based on the analysis of the request types; and Column 28, Lines 65-67, A function to be used to decide the maximum token population based on such user-specific or client-specific metrics may be included in the throttling parameter set 1115). It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention that based on the combination, the graph neural network of the combination of Balog-Bequet-Zhang would be modified with the throttling parameters and request acceptance control mechanisms taught by Bang resulting in a system that services requests by allocating resources in accordance with policies related to acceptance criteria. Therefore, it would have been obvious to combine the teachings of the combination of Balog-Bequet-Zhang and Bang. As per claim 23, Balog teaches, wherein the term of use includes at least one of a condition related to the number of atoms of the processing target (Pg. 3, a one-time preprocessing step that “compiles” each training point by finding an efficient computation schedule for it. In our case this amounts to finding a permutation of nodes in each training graph such that the resulting adjacency matrix has low bandwidth) or a condition related to the number of neighbors of atoms of the processing target. As per claim 24, Balog teaches, wherein the condition related to the number of atoms includes a maximum number of atoms that the user is permitted to input into the neural network (Pg. 3, Instances in a training set of (program) graphs have differing node counts, so the question of efficient batching arises. With sparse adjacency representations of graphs an elegant batching scheme is possible: multiple training graphs can be packed into a single supergraph of fixed maximum size). Balog fails to specifically teach, the condition related to the number of neighbors includes a maximum number of neighbors that the user is permitted to input into the neural network. However, Bang teaches, the condition related to the number of neighbors includes a maximum number of neighbors that the user is permitted to input into the neural network the condition related to the number of neighbors of atoms includes a maximum number of neighbors of atoms that the user is permitted to input into the neural network (Column 27, Lines 3-6, The set of connection throttling parameters may also include other parameters, such as ...the maximum number of tokens permitted in a bucket; and Column 27, Lines 20-29, client-specific or user-specific metrics may be collected and used to determine the maximum number of tokens to be allowed in a bucket associated with a user's requests.... The buckets used for requests of different users may thus differ in their maximum permitted token populations in such embodiments). The same motivation used in the rejection of claim 22 is applicable to the instant claim. As per claim 25, Bang teaches, wherein the number of atoms in the term of use of the user is equal to or more than the number of atoms in a term of use of another user subscribing to a service using the neural network with a plan lower in price than a plan of the user (Column 27, Lines 3-6, The set of connection throttling parameters may also include other parameters, such as ...the maximum number of tokens permitted in a bucket; Column 27, Lines 20-29, client-specific or user-specific metrics may be collected and used to determine the maximum number of tokens to be allowed in a bucket associated with a user's requests. For example, respective counts of application requests (e.g., APIs) of one or more types which were submitted by a user may be collected over some time period, and used to determine the maximum token count for a bucket used for that user. The buckets used for requests of different users may thus differ in their maximum permitted token populations in such embodiments; and Column 28, Lines 60-67, the maximum number of tokens permitted in a bucket for clients who tend to submit more API-A requests than API-B requests may be set to a different value (e.g., higher) than the maximum number of tokens permitted in a bucket for clients who tend to submit more API-B requests than API-A requests. A function to be used to decide the maximum token population based on such user-specific or client-specific metrics may be included in the throttling parameter set 1115), and the number of neighbors of atoms in the term of use of the user is equal to or more than the number of neighbors of atoms in the term of use of the another user (Column 27, Lines 3-6, The set of connection throttling parameters may also include other parameters, such as ...the maximum number of tokens permitted in a bucket; and Column 27, Lines 20-29, client-specific or user-specific metrics may be collected and used to determine the maximum number of tokens to be allowed in a bucket associated with a user's requests.... The buckets used for requests of different users may thus differ in their maximum permitted token populations in such embodiments). As per claim 26, Balog teaches, wherein the at least one processor is configured to: construct information that is to be input to the neural network, based on the request (Pg. 3, multiple training graphs can be packed into a single supergraph of fixed maximum size). Balog fails to specifically teach, determine whether to permit the processing of the request, based on the constructed information and the term of use. However, Bang teaches, determine whether to permit the processing of the request, based on the constructed information and the term of use (Column 6, Lines 17-21, application owners may specify custom resource throttling parameters to be used for their applications, e.g., so that for example some subset of end users does not end up consuming the majority of resources at the DAMS servers; and Column 27, Lines 3-9, The set of connection throttling parameters may also include other parameters, such as a rate at which a token bucket is to be refilled, the maximum number of tokens permitted in a bucket, whether token populations are to be allowed to fall below zero, the token population thresholds to be used to accept new connection requests, and so on. In some embodiments). The same motivation used in the rejection of claim 22 is applicable to the instant claim. As per claim 27, Balog teaches, wherein the constructed information is a graph (Pg. 3, multiple training graphs can be packed into a single supergraph of fixed maximum size). Claim 28 is rejected as unpatentable over the combination of Balog-Bequet-Zhang-Bang as applied to dependent claim 22 and in and in further view of Chen et al (US 2021/0182077). As per claim 28, the combination of Balog-Bequet-Bang fails to specifically teach wherein the term of use of the user is set based on a type of the neural network. However, Chen teaches, wherein the term of use of the user is set based on a type of the neural network ([0573], according to a type and a parameter of a neural network model of the data of the neural network operation, determining, by the logic control kernel in the heterogeneous kernel, whether the special-purpose kernel and/or the general-purpose kernel execute(s) the neural network operation and/or the neural network layer operation). The combination of Balog-Bequet-Zang-Bang and Chen are analogous because they are each related to resource and request management in a neural network environment. Balog teaches a graph neural network for efficient resource management using neighborhood information to service requests. Bequet teaches using a neural network to allocate resources to service requests including storing requests for servicing. Zhang teaches a method of efficiently constructing a potential energy surface that considers neighborhood information. Bang teaches a method of resource allocation including determining whether to accept requests by using throttling parameters in a neural network environment. Chen teaches a method of servicing requests in consideration of various parameters including a type of neural network. ([2872], determining, by the logical control kernel 131 in the heterogeneous kernel 13, whether there is a dedicated kernel that meets a condition according to a type and parameters of a neural network model in the data, where the meeting condition refers to that the dedicated kernel supports the neural network operation). It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention that based on the combination, the graph neural network of the combination of Balog-Bequet-Zhang-Bang would be modified with parameters taught by Chen resulting in a system that processes requests based on a type of neural network. Therefore, it would have been obvious to combine the teachings of the combination of Balog-Bequet-Zhang and Bang. Claims 29-37 and 39 are rejected under 35 U.S.C. 103 as being unpatentable over Balog et al. (Balog et al., Fast Training of Sparse Graph Neural Networks on Dense Hardware, June 27, 2019, arXiv preprint arXiv:1906.11786) in view of Bang et al. (US 11252149 B1). As per claim 29, Balog teaches the invention substantially as claimed including an information processing system comprising: at least one memory (Pg. 11, fitting supergraphs with more nodes N into memory); and at least one processor (Pg. 2, After applying bandwidth reduction and implementing GNN message propagation for low bandwidth graphs, we achieve performance on TPUv2 hardware that is competitive with a highly optimized sparse GPU implementation; Examiner Note: TPU refers to processors: Pg. 1, New “AI accelerators” such as Google’s Tensor Processing Units (TPU); and Pg. 6, Our GNNpropagation method for low-bandwidth graphs allows fast processing of training data (Section 5.2). A single TPUv2 device achieves similar speed as a state-of-the-art sparse implementation on sparse hardware, and the speed scales almost linearly with more cores) configured to: receive a request of a user (Pg. 2, A GGNN encoder takes as input a graph on N nodes; and Pg. 3, multiple training graphs can be packed into a single supergraph of fixed maximum size, until no more graphs fit). Balog fails to specifically teach, determine whether to permit processing of the request based on a term of use of the user; and execute the processing using a neural network based on the request whose processing is determined as being permitted, and wherein the term of use includes a condition related to a structure of a processing target of the neural network. However, Bang teaches, determine whether to permit processing of the request based on a term of use of the user (Column 30, Lines 60-61, based on the throttling parameters, new admission control decisions may be made on a per-API basis; and Column 31, Lines 9-21, the connection establishment requests for which acceptance/rejection decisions are to be made using a given token bucket may not all be sent to the same server 1354. For example, workload distributors of the DAMS 1302 may select a particular server 1354 for a given connection request based on a variety of factors, or even using random selection, and as a result many different servers may have to handle connection requests which map to the same bucket identifier or bucket key. In order to handle such a distribution of connection requests among servers, the servers 1354 may transmit representations of updates 1365 (e.g., 1365A-1365M) which have been applied to their local throttling data structures 1356 to each other; Examiner Note: The claimed “term of use of the user” is mapped to Bang’s throttling parameters: Column 6, Lines 17-21, application owners may specify custom resource throttling parameters to be used for their applications, e.g., so that for example some subset of end users does not end up consuming the majority of resources at the DAMS servers; Column 17, Lines 3-8, The set of connection throttling parameters may also include other parameters, such as a rate at which a token bucket is to be refilled, the maximum number of tokens permitted in a bucket, whether token populations are to be allowed to fall below zero, the token population thresholds to be used to accept new connection requests, and so on); and execute the processing using a neural network based on the request whose processing is determined as being permitted (Column 30, Lines 13-23, When the API request 1261 is received, an admission control decision is made by the throttling agent thread 1215 in the depicted embodiment. Based on attributes of the API request 1261, a particular bucket is selected, and the token population of the bucket is checked to determine whether there are enough tokens present in the bucket to accept the API request and establish the connection with the client-side component. In the example scenario shown in FIG. 12, the API request is approved, the connection is established, and the requested operations of the API are started at the activity thread 1220), and wherein the term of use includes a condition related to a structure of a processing target of the neural network (Column 38, Lines 11-15, one or more workload distributors 1947 may select a particular server 1922 to process the connection establishment request (e.g., using token-based techniques similar to those discussed earlier). Balog and Bang are analogous because they are each related to resource and request management in a neural network environment. Balog teaches a graph neural network for efficient resource management using neighborhood information to service requests: Pg. 1, graph neural networks (GNNs) [Scarselli et al., 2009, Li et al., 2016] can be appealing because they operate on graph structured inputs. Each node can have data (e.g., an image) associated with it, and edges can encode different kinds of relationships between nodes. The forward pass of a GNN model can be interpreted as nodes exchanging messages with each other along edges of a graph [Gilmer et al., 2017], combining the local per-node information with information about the surrounding context in a flexible manner; Pg. 2, AGGNN encoder takes as input a graph on N nodes with initial node embeddings E(0) ∈ RN×H, and after a fixed number T of timesteps produces final node embeddings E(T) ∈ RN×H that combine local and neighborhood information; and Pg. 3, a one-time preprocessing step that “compiles” each training point by finding an efficient computation schedule for it. In our case this amounts to finding a permutation of nodes in each training graph such that the resulting adjacency matrix has low bandwidth; and Pg. 3, When training on multiple cores, each core receives its own supergraph. Bang teaches a method of resource allocation including determining whether to accept requests by using throttling parameters in a neural network environment. Abstract, A resource of a dialog-driven management service is allocated for a first set of requests based on determining that a population of capacity indicators in a throttling data structure exceeds a threshold. One or more capacity indicator deduction iterations associated with the resource are conducted during a time interval for which the resource remains allocated for the first set of requests. In a given iteration, a number of capacity indicators is deducted from the throttling data structure based on a resource throttling setting. A second set of requests is rejected based on the population of the throttling data structure; Column 28, Lines 52-57, the types of requests which are submitted on behalf of the clients or end users for whom a given bucket is used may be monitored, and some parameters (such as the maximum count of tokens in the bucket) may be selected based on the analysis of the request types; and Column 28, Lines 65-67, A function to be used to decide the maximum token population based on such user-specific or client-specific metrics may be included in the throttling parameter set 1115. It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention that based on the combination, the graph neural network of Balog would be modified with the throttling parameters and request acceptance control mechanisms taught by Bang resulting in a system that services requests by allocating resources in accordance with policies related to acceptance criteria. Therefore, it would have been obvious to combine the teachings of Balog and Bang. As per claim 30, Bang teaches, wherein the term of use includes at least one of a condition related to the number of atoms of the processing target (Pg. 3, a one-time preprocessing step that “compiles” each training point by finding an efficient computation schedule for it. In our case this amounts to finding a permutation of nodes in each training graph such that the resulting adjacency matrix has low bandwidth) or a condition related to the number of neighbors of atoms of the processing target. As per claim 31, Balog teaches wherein the condition related to the number of atoms includes a maximum number of atoms that the user is permitted to input into the neural network (Pg. 3, Instances in a training set of (program) graphs have differing node counts, so the question of efficient batching arises. With sparse adjacency representations of graphs an elegant batching scheme is possible: multiple training graphs can be packed into a single supergraph of fixed maximum size). Balog fails to specifically teach, the condition related to the number of neighbors includes a maximum number of neighbors that the user is permitted to input into the neural network. However, Bang teaches, the condition related to the number of neighbors includes a maximum number of neighbors that the user is permitted to input into the neural network (Column 27, Lines 3-6, The set of connection throttling parameters may also include other parameters, such as ...the maximum number of tokens permitted in a bucket; and Column 27, Lines 20-29, client-specific or user-specific metrics may be collected and used to determine the maximum number of tokens to be allowed in a bucket associated with a user's requests.... The buckets used for requests of different users may thus differ in their maximum permitted token populations in such embodiments. The same motivation used in the rejection of claim 29 is applicable to the instant claim. As per claim 32, Balog wherein the number of atoms in the term of use of the user is equal to or more than the number of atoms in a term of use of another user subscribing to a service using the neural network with a plan lower in price than a plan of the user (Column 27, Lines 3-6, The set of connection throttling parameters may also include other parameters, such as ...the maximum number of tokens permitted in a bucket; Column 27, Lines 20-29, client-specific or user-specific metrics may be collected and used to determine the maximum number of tokens to be allowed in a bucket associated with a user's requests. For example, respective counts of application requests (e.g., APIs) of one or more types which were submitted by a user may be collected over some time period, and used to determine the maximum token count for a bucket used for that user. The buckets used for requests of different users may thus differ in their maximum permitted token populations in such embodiments; and Column 28, Lines 60-67, the maximum number of tokens permitted in a bucket for clients who tend to submit more API-A requests than API-B requests may be set to a different value (e.g., higher) than the maximum number of tokens permitted in a bucket for clients who tend to submit more API-B requests than API-A requests. A function to be used to decide the maximum token population based on such user-specific or client-specific metrics may be included in the throttling parameter set 1115), and wherein the number of neighbors of atoms in the term of use of the user is equal to or more than the number of neighbors of atoms in the term of use of the another user (Column 27, Lines 3-6, The set of connection throttling parameters may also include other parameters, such as ...the maximum number of tokens permitted in a bucket; and Column 27, Lines 20-29, client-specific or user-specific metrics may be collected and used to determine the maximum number of tokens to be allowed in a bucket associated with a user's requests.... The buckets used for requests of different users may thus differ in their maximum permitted token populations in such embodiments). As per claim 33, Balog teaches, wherein the at least one processor is configured to: construct information that is to be input to the neural network, based on the request (Pg. 3, multiple training graphs can be packed into a single supergraph of fixed maximum size). Balog fails to specifically teach, determine whether to permit the processing of the request, based on the constructed information and the term of use. However, Bang teaches, determine whether to permit the processing of the request, based on the constructed information and the term of use (Column 6, Lines 17-21, application owners may specify custom resource throttling parameters to be used for their applications, e.g., so that for example some subset of end users does not end up consuming the majority of resources at the DAMS servers; and Column 27, Lines 3-9, The set of connection throttling parameters may also include other parameters, such as a rate at which a token bucket is to be refilled, the maximum number of tokens permitted in a bucket, whether token populations are to be allowed to fall below zero, the token population thresholds to be used to accept new connection requests, and so on. In some embodiments). The same motivation used in the rejection of claim 29 is applicable to the instant claim. As per claim 34, Balog teaches, wherein the constructed information is a graph (Pg. 3, multiple training graphs can be packed into a single supergraph of fixed maximum size). As per claim 35, wherein the neural network is a graph neural network (Abstract, In this work, we question this assumption by scaling up sparse graph neural networks using a platform targeted at dense computation on fixed-size data). As per claim 37, this claim is similar to claim 27 and is rejected for the same reasons. As per claim 39, this is the “method clam” corresponding to claim 29 and is rejected for the same reasons. The same motivation used in the rejection of claim 11 is applicable to the instant claim. Claim 36 is unpatentable over the combination of Balog-Bang as applied to claim 29 and in further view of Zhang et al. (Zhang et al, Embedded Atom Neural Network Potentials: Efficient and Accurate Machine Learning with a Physically Inspired Representation, J. Phys. Chem. Lett. 2019, Pgs. 4962-4967). As per claim 36, the combination of Balog-Bang fails to specifically teach, wherein the neural network is a model of NNP. However, Zhang teaches, wherein the neural network is a model of NNP (Abstract, simple, but efficient and accurate, machine learning (ML) model for developing a high-dimensional potential energy surface...EANN potentials can vastly accelerate molecular dynamics and spectroscopic simulations in complex systems at ab initio level). The combination of Balog-Bang and Zhang are analogous because they are each related to resource and request management in a neural network environment. Balog teaches a graph neural network for efficient resource management using neighborhood information to service requests. Bang teaches a method of resource allocation including determining whether to accept requests by using throttling parameters in a neural network environment. Zhang teaches a method of efficiently constructing a potential energy surface that considers neighborhood information. (Abstract, simple, but efficient and accurate, machine learning (ML) model for developing a high-dimensional potential energy surface; and Pg. 4963, counts the number of neighboring atoms close to the embedding atom within a sphere with a cutoff radius(rc). A frequently used cosine type cutoff function is also multiplied to each orbital here to decay the interaction to zero smoothly approaching rc.). It would have been obvious to one having ordinary skill in the art before the effective filing date of the claimed invention that based on the combination, the graph neural network of the combination of Balog-Bang would be modified with the NNP mechanism taught by Zhang resulting in a system that services stored requests by allocating resources in accordance with an NPP model. Therefore, it would have been obvious to combine the teachings of the combination of Balog-Bang and Zhang. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure and is as follows: Wang et al. (Wang et al., Learning Decentralized Wireless Resource Allocations with Graph Neural Networks, March 2022, in IEEE Transactions on Signal Processing, vol. 70, pp. 1850-1863, 2022)-Teaches resource allocation in a neural network: Abstract, of decentralized optimal resource allocation problems in wireless networks, which can be formulated as a constrained statistical learning problems with a localized information structure. We develop the use of Aggregation Graph Neural Networks (Agg-GNNs), which process a sequence of delayed and potentially asynchronous graph aggregated state information obtained locally at each transmitter from multi-hop neighbors Any inquiry concerning this communication or earlier communications from the examiner should be directed to MELISSA A HEADLY whose telephone number is (571)272-1972. The examiner can normally be reached Monday- Friday 9-5:30pm. 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, Bradley Teets can be reached at 571-272-3338. 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. /MELISSA A HEADLY/Examiner, Art Unit 2197
Read full office action

Prosecution Timeline

Nov 09, 2023
Application Filed
Jul 23, 2026
Non-Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12664011
Hybrid Cloud Based Protection for Applications and Virtual Machines
3y 9m to grant Granted Jun 23, 2026
Patent 12650862
Sharing Virtual Environment Data
4y 9m to grant Granted Jun 09, 2026
Patent 12639091
PROBE DEPLOYMENT
4y 4m to grant Granted May 26, 2026
Patent 12632290
METHOD AND APPARATUS FOR DYNAMICALLY ADJUSTING PIPELINE DEPTH TO IMPROVE EXECUTION LATENCY
4y 4m to grant Granted May 19, 2026
Patent 12619453
COMMUNICATION PROCESSING DEVICE, PROGRAM AND COMMUNICATION PROCESSING METHOD
5y 1m to grant Granted May 05, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

1-2
Expected OA Rounds
75%
Grant Probability
99%
With Interview (+40.1%)
3y 5m (~8m remaining)
Median Time to Grant
Low
PTA Risk
Based on 413 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month