Prosecution Insights
Last updated: August 17, 2026
Application No. 18/418,633

Self-optimizing Networks Using Speed Test Results

Non-Final OA §103§112
Filed
Jan 22, 2024
Examiner
DU, ZONGHUA A
Art Unit
2444
Tech Center
2400 — Computer Networks
Assignee
Charter Communications Operating LLC
OA Round
2 (Non-Final)
60%
Grant Probability
Moderate
2-3
OA Rounds
0m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 60% of resolved cases
60%
Career Allowance Rate
49 granted / 82 resolved
+1.8% vs TC avg
Strong +41% interview lift
Without
With
+40.7%
Interview Lift
resolved cases with interview
Typical timeline
2y 7m
Avg Prosecution
21 currently pending
Career history
104
Total Applications
across all art units

Statute-Specific Performance

§101
2.6%
-37.4% vs TC avg
§103
64.3%
+24.3% vs TC avg
§102
8.1%
-31.9% vs TC avg
§112
21.7%
-18.3% vs TC avg
Black line = Tech Center average estimate • Based on career data from 82 resolved cases

Office Action

§103 §112
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 . This action is in response to the communication filed on 12/31/2025. Claims 1, 3-6, 8, 10-13, 15, 17-20, 22 and 24-27 are pending in this application. Examiner Note Claim 15 recites “A computing device” comprising means for performing functions. The Specification ¶ 0029 recites that the term “computing device” refers to “an electronic device equipped with at least a processor, communication systems, and memory configured to receive configuration data and implement configuration settings using the received configuration data to implement capabilities.” Therefore, the limitation “A computing device” is considered to equip with hardware structural components. Information Disclosure Statement The information disclosure statement(s) (IDS) submitted on 04/22/2026 is/are in compliance with the provisions of 37 CFR 1.97. Accordingly, the IDS(s) is/are being considered by the examiner. 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. The claims in this application are given their broadest reasonable interpretation using the plain meaning of the claim language in light of the specification as it would be understood by one of ordinary skill in the art. The broadest reasonable interpretation of a claim element (also commonly referred to as a claim limitation) is limited by the description in the specification when 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is invoked. As explained in MPEP § 2181, subsection I, claim limitations that meet the following three-prong test will be interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph: (A) the claim limitation uses the term “means” or “step” or a term used as a substitute for “means” that is a generic placeholder (also called a nonce term or a non-structural term having no specific structural meaning) for performing the claimed function; (B) the term “means” or “step” or the generic placeholder is modified by functional language, typically, but not always linked by the transition word “for” (e.g., “means for”) or another linking word or phrase, such as “configured to” or “so that”; and (C) the term “means” or “step” or the generic placeholder is not modified by sufficient structure, material, or acts for performing the claimed function. Use of the word “means” (or “step”) in a claim with functional language creates a rebuttable presumption that the claim limitation is to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites sufficient structure, material, or acts to entirely perform the recited function. Absence of the word “means” (or “step”) in a claim creates a rebuttable presumption that the claim limitation is not to be treated in accordance with 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph. The presumption that the claim limitation is not interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, is rebutted when the claim limitation recites function without reciting sufficient structure, material or acts to entirely perform the recited function. Claim limitations in this application that use the word “means” (or “step”) (i.e. claim limitations in claims 15, 17 and 19-20) are being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Conversely, claim limitations in this application that do not use the word “means” (or “step”) are not being interpreted under 35 U.S.C. 112(f) or pre-AIA 35 U.S.C. 112, sixth paragraph, except as otherwise indicated in an Office action. Response to Amendment The claim interpretation under 35 U.S.C. 112(f) to claims 15, 17 and 19-20 remains in view of the claim amendments. Applicant’s arguments with respect to claims 1, 3-6, 8, 10-13, 15, 17-20, 22 and 24-27 have been considered but are moot based on the new grounds of rejection necessitated by Applicant’s amendments. Specifically, the arguments present that Mada-Veggalam fails to provide for the amended language, where the rejection below now relies on Mada-Ramalingam to teach this subject matter. See details in the following claim rejection section. 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 3-5, 10-12, 17-19 and 24-26 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 pre-AIA the applicant regards as the invention. Claims 3, 5, 10, 12, 17, 19, 24 and 26 recite the limitation “the first classification value” in line 17, line 19, line 19, line 21, line 19, line 20, line 20, and line 21, respectively. There is insufficient antecedent basis for this limitation in the claim. For examination purpose, “the first classification value” will read as “a first classification value.” Claims 5 and 17 recite the limitation “the at least second first network condition” in line 17 and line 26, respectively. There is insufficient antecedent basis for this limitation in the claim. For examination purpose, “the at least second first network condition” will read as “the at least one second network condition.” Claim 24 recites “the at least one first network condition” in line 27. It is unclear to the examiner if the limitation should read as “the at least one second network condition” based on the recited limitations in claim 24. For examination purpose, “the at least one first network condition” in line 27 of claim 24 will read as “the at least one second network condition.” The dependent claims of the above rejected claims are rejected due to their dependencies. 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 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 set forth in Graham v. John Deere Co., 383 U.S. 1, 148 USPQ 459 (1966), that are applied 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. Claims 1, 3-6, 8, 10-13, 15, 17-20, 22 and 24-27 is/are rejected under 35 U.S.C. 103 as being unpatentable over US 20240372777 A1 (hereinafter Mada), in view of US 11375255 B1 (hereinafter Ramalingam). For Claim 1, Mada teaches a method for self-improving networks implemented by a processing system (Mada, ¶ 0002 “… This specification generally relates to a wireless communication systems, and more particularly, a method for optimizing network resources and performance using machine learning …”), comprising: setting at least two first network parameter settings for a first network hardware deployed in an operable network (Mada teaches the configuration settings (e.g. CPUs, memories) of the network computing resources, FIG. 1; ¶ 0013 “… FIG. 1 is a diagram showing an example of a system 100 for self-optimizing networks. The system 100 includes a control unit 110, that may include one or more computing resources, network computing resources in area 1 112 and area N 114 …”; ¶ 0021 “… the performance logs 116a and 116b include data indicating capacity for central processing unit (CPU) of one or more components, usage utilization, free space memory utilization, among others. The performance logs 116a and 116b can include data indicating performance of one or more computing clusters of the computing resources in area 1 112 and area N 114 … Computing clusters of computing resources can include one or more virtual machines, computer hardware processing units, cloud-based processing units, graphics processing units, among others …”; ¶ 0044 “… Features such as CPU utilization, memory utilization, or network total bytes, among others, can be indicated in one or more performance logs obtained by the control unit 110, e.g., the performance logs 116a and 116b …”); testing performance of the first network hardware having the at least two first network parameter settings under at least one first network condition (Mada teaches obtaining performance metrics information of the network computing resources under various network conditions such as a time of day, location, etc.; FIG. 1; ¶ 0020 “… In stage B, the control unit 110 obtains information indicating performance metrics of the computing resources in area 1 112 and area N 114 - e.g., performance logs 116a and 116b …”; ¶ 0021 “… the performance logs 116a and 116b include data indicating capacity for central processing unit (CPU) of one or more components, usage utilization, free space memory utilization, among others. The performance logs 116a and 116b can include data indicating performance of one or more computing clusters of the computing resources in area 1 112 and area N 114. For example, the performance logs 116a and 116b can include data indicating performance of the performance clusters 113a of the area 1 112 or the performance clusters 115a of the area N 114. The performance logs 116a and 116b can include data indicating performance of the general clusters 113b of the area 1 112 or the general clusters 115b of the area N 114. Computing clusters of computing resources can include one or more virtual machines, computer hardware processing units, cloud-based processing units, graphics processing units, among others …”; ¶ 0023 “… A snapshot engine 118 of the control unit 110 generates a snapshot 122 using the performance logs 120. The snapshot 122 can include data indicating network activity, contextual information of a time of day, location, types of users, processing power available or utilized, among others …”); … Mada does not explicitly teach, but Ramalingam teaches storing results of testing the first network hardware having the at least two first network parameter settings and the at least one first network condition of the first network hardware in association with each other (Ramalingam teaches saving the network performance data of network devices associated with the network parameters and network conditions (e.g. network type, device type and location, etc.); FIG. 1; col. 4, l. 55 – col. 5, l. 1 “… The network information sent from the computing device 110 to the network optimization system 102 may include information such as network type, device type, location of computing device, and other relevant information, in add addition to the network parameters. The network optimization system may save this information and data in events database 160 which may catalogue the information. The events database 160 may communicate and/or coordinate with performance metrics database 155, which may be a standalone component and/or database or a subcomponent of the events database 160. The performance metrics database 155 may include network parameter information relevant to the network performance of a device (e.g., buffer occupancy, ABR quality selection, and other adjustable settings) …”); training a machine learning model to classify the at least two first network parameter settings for the first network hardware by assigning a classification value (Ramalingam teaches training a classification system to assign a predicted label for network data, information and parameters corresponding to a computing device; FIG. 1, FIG. 2, FIG. 4; col. 5, ll. 17-35 “… Clustering module 112 may perform clustering using an un-supervised machine learning process to group similar networks into groups, classes and/or cohorts based on various network information, data and/or parameters (e.g., average, min/max, and/or standard deviation of network throughput and latency) …”; col. 5, ll. 36-45 “… Upon determining the network groups, classes and/or cohorts using the cluster module 112, network data, information and/or parameters from computing device 110 may be processed and/or used by classification system 120 to determine which group, class and/or cohort of networks the network data, information and/or parameters corresponding to the computing device 110 corresponds to (e.g., which network group it is most similar to) …”; col. 6, ll. 16-36 “… The output of the classification module may be predicted label 125 which may correspond to a predicted network group, class and/or cohort identified by the cluster module 112 …”; col. 10, ll. 4-12 “… At optional block 230, executable instructions stored on a memory of a device, such as a server, may be executed to update, modify and/or train the classification model, cluster model and/or treatment selection algorithm based on the network performance data corresponding to the adjusted network settings based on the treatment …”; col. 11, ll. 60-65 “… Using the performance metrics data, the performance 60 history table 412 and/or probability table 413, classification module 414 may determine a classification model and/or train the classification model to output a true label 415 to determine a label indicative of a network class, group or cohort associated with the performance history data …”), wherein the machine learning model uses, as training inputs, the stored results of the testing, the at least two first network parameter settings, and the at least one first network condition (Ramalingam teaches training the classification system using network performance metrics data, network parameters and network conditions; FIG. 1, FIG. 4; col. 4, l. 55 – col. 5, l. 1 “…The performance metrics database 155 may include network parameter information relevant to the network performance of a device (e.g., buffer occupancy, ABR quality selection, and other adjustable settings) …”; col. 11, ll. 45-59 “… Using the performance metric data specific to the computing device, the profiler module 411 may determine performance history table 412 and/or a probability table 413 for each device, for a network, for a user profile and/or any combination thereof … Other relevant information such as network type and/or location may be determined a saved by performance history table 412 …”; col. 11, ll. 60-65 “… Using the performance metrics data, the performance 60 history table 412 and/or probability table 413, classification module 414 may determine a classification model and/or train the classification model to output a true label 415 to determine a label indicative of a network class, group or cohort associated with the performance history data …”), wherein the classification value meeting or exceeding a performance threshold value indicates improved performance compared to prior classification values assigned to different network parameter settings tested under the at least one first network condition (Ramalingam teaches the classified predicted label is associated with network performance information for a network class/group, and is also associated with a quality of experience score which could be compared to a performance threshold value; FIG. 1, FIG. 7; col. 6, ll. 16-36 “… The predicted label may associate the network data of the computing device 110 with similar networks and/or devices that have been assigned the same label. Accordingly, computing devices assigned the same label may be expected to share certain network parameters, performance and/or characteristics in common. It is understood computing devices with the same label may further share certain similarities regarding location and/or device type. It is further understood that predicted label 125 may be based on network type, device type, location of computing device, and the like. …”; col. 18, ll. 25-41 “… At block 756, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine a label based on the network performance data. For example, the computing device may apply the network performance data to the cluster model and/or classification model to output a label indicative of a network group, cohort or class. At block 758, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine an appropriate treatment (e.g., targeted treatment) based on the label determined at block 756 and the library of treatments. For example, the treatments may be catalogued according to labels and may each include a corresponding quality of experience score. The computing device may determine the treatment that corresponds to the label and has the highest quality of experience score or has at quality of experience score above a threshold value …”); and storing the classification value output by the machine learning model in association with the at least two first network parameter settings, and the at least one first network condition (Ramalingam, FIG. 1; col. 6, ll. 14-35 “… The predicted label determined by the classification module 122 may be saved to the performance history table 126 in a label history …”). Ramalingam and Mada are analogous art because they are both related to training machine learning models based on the performance information of the computing networks. Before the effective filing date of the claimed invention it would have been obvious to one of ordinary skill in the art to use the classification model training techniques of Ramalingam with the system of Mada to dynamically adjust network parameters to improve performance of network devices (Ramalingam, col. 1, ll. 6-23). For Claim 3, Mada-Ramalingam teaches the method of claim 1, further comprising: setting at least two second network parameter settings for the first network hardware (Mada teaches the configuration settings (e.g. settings corresponding to the described features derived the performance logs) of the network computing resources; Examiner notes that “at least two second network parameter settings” recited in claim 3 and “at least two first network parameter settings” recited in claim 1 are considered as the configuration settings of the network computing resources/nodes since the network parameter settings are broadly claimed so that they have the same effect on the claimed machine learning model training process; FIG. 1; ¶ 0013 “… FIG. 1 is a diagram showing an example of a system 100 for self-optimizing networks. The system 100 includes a control unit 110, that may include one or more computing resources, network computing resources in area 1 112 and area N 114 …”; ¶ 0021 “… the performance logs 116a and 116b include data indicating capacity for central processing unit (CPU) of one or more components, usage utilization, free space memory utilization, among others. The performance logs 116a and 116b can include data indicating performance of one or more computing clusters of the computing resources in area 1 112 and area N 114 … Computing clusters of computing resources can include one or more virtual machines, computer hardware processing units, cloud-based processing units, graphics processing units, among others …”; ¶ 0044 “… Features such as CPU utilization, memory utilization, or network total bytes, among others, can be indicated in one or more performance logs obtained by the control unit 110, e.g., the performance logs 116a and 116b …”); testing performance of the first network hardware having the at least two second network parameter settings under at least one second network condition (Mada teaches obtaining performance metrics information of the network computing resources under various network conditions such as a time of day, location, etc.; FIG. 1; ¶ 0020 “… In stage B, the control unit 110 obtains information indicating performance metrics of the computing resources in area 1 112 and area N 114 - e.g., performance logs 116a and 116b …”; ¶ 0021 “… the performance logs 116a and 116b include data indicating capacity for central processing unit (CPU) of one or more components, usage utilization, free space memory utilization, among others. The performance logs 116a and 116b can include data indicating performance of one or more computing clusters of the computing resources in area 1 112 and area N 114. For example, the performance logs 116a and 116b can include data indicating performance of the performance clusters 113a of the area 1 112 or the performance clusters 115a of the area N 114. The performance logs 116a and 116b can include data indicating performance of the general clusters 113b of the area 1 112 or the general clusters 115b of the area N 114. Computing clusters of computing resources can include one or more virtual machines, computer hardware processing units, cloud-based processing units, graphics processing units, among others …”; ¶ 0023 “… A snapshot engine 118 of the control unit 110 generates a snapshot 122 using the performance logs 120. The snapshot 122 can include data indicating network activity, contextual information of a time of day, location, types of users, processing power available or utilized, among others …”); … Mada does not explicitly teach, but Ramalingam teaches storing results of testing the first network hardware having the at least two second network parameter settings and the at least one second network condition of the first network hardware in association with each other (Ramalingam teaches saving the network performance data of network devices associated with the network parameters and network conditions (e.g. network type, device type and location, etc.); FIG. 1; col. 4, l. 55 – col. 5, l. 1 “… The network information sent from the computing device 110 to the network optimization system 102 may include information such as network type, device type, location of computing device, and other relevant information, in add addition to the network parameters. The network optimization system may save this information and data in events database 160 which may catalogue the information. The events database 160 may communicate and/or coordinate with performance metrics database 155, which may be a standalone component and/or database or a subcomponent of the events database 160. The performance metrics database 155 may include network parameter information relevant to the network performance of a device (e.g., buffer occupancy, ABR quality selection, and other adjustable settings) …”); training the machine learning model to classify the at least two second network parameter settings for the first network hardware by assigning a second classification value (Ramalingam teaches training a classification system to assign a predicted label for network data, information and parameters corresponding to a computing device; FIG. 1, FIG. 2, FIG. 4; col. 5, ll. 17-35 “… Clustering module 112 may perform clustering using an un-supervised machine learning process to group similar networks into groups, classes and/or cohorts based on various network information, data and/or parameters (e.g., average, min/max, and/or standard deviation of network throughput and latency) …”; col. 5, ll. 36-45 “… Upon determining the network groups, classes and/or cohorts using the cluster module 112, network data, information and/or parameters from computing device 110 may be processed and/or used by classification system 120 to determine which group, class and/or cohort of networks the network data, information and/or parameters corresponding to the computing device 110 corresponds to (e.g., which network group it is most similar to) …”; col. 6, ll. 16-36 “… The output of the classification module may be predicted label 125 which may correspond to a predicted network group, class and/or cohort identified by the cluster module 112 …”; col. 10, ll. 4-12 “… At optional block 230, executable instructions stored on a memory of a device, such as a server, may be executed to update, modify and/or train the classification model, cluster model and/or treatment selection algorithm based on the network performance data corresponding to the adjusted network settings based on the treatment …”; col. 11, ll. 60-65 “… Using the performance metrics data, the performance 60 history table 412 and/or probability table 413, classification module 414 may determine a classification model and/or train the classification model to output a true label 415 to determine a label indicative of a network class, group or cohort associated with the performance history data …”), wherein the machine learning model uses, as training inputs, the stored results of the testing, the at least two second network parameter settings, and the at least one second network condition (Ramalingam teaches training the classification system using network performance metrics data, network parameters and network conditions; FIG. 1, FIG. 4; col. 4, l. 55 – col. 5, l. 1 “…The performance metrics database 155 may include network parameter information relevant to the network performance of a device (e.g., buffer occupancy, ABR quality selection, and other adjustable settings) …”; col. 11, ll. 45-59 “… Using the performance metric data specific to the computing device, the profiler module 411 may determine performance history table 412 and/or a probability table 413 for each device, for a network, for a user profile and/or any combination thereof … Other relevant information such as network type and/or location may be determined a saved by performance history table 412 …”; col. 11, ll. 60-65 “… Using the performance metrics data, the performance 60 history table 412 and/or probability table 413, classification module 414 may determine a classification model and/or train the classification model to output a true label 415 to determine a label indicative of a network class, group or cohort associated with the performance history data …”), wherein the second classification value meeting or exceeding a performance threshold value indicates improved performance compared to the first classification value (Ramalingam teaches the classified predicted label is associated with network performance information for a network class/group, and is also associated with a quality of experience score which could be compared to a performance threshold value; FIG. 1, FIG. 7; col. 6, ll. 16-36 “… The predicted label may associate the network data of the computing device 110 with similar networks and/or devices that have been assigned the same label. Accordingly, computing devices assigned the same label may be expected to share certain network parameters, performance and/or characteristics in common. It is understood computing devices with the same label may further share certain similarities regarding location and/or device type. It is further understood that predicted label 125 may be based on network type, device type, location of computing device, and the like. …”; col. 18, ll. 25-41 “… At block 756, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine a label based on the network performance data. For example, the computing device may apply the network performance data to the cluster model and/or classification model to output a label indicative of a network group, cohort or class. At block 758, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine an appropriate treatment (e.g., targeted treatment) based on the label determined at block 756 and the library of treatments. For example, the treatments may be catalogued according to labels and may each include a corresponding quality of experience score. The computing device may determine the treatment that corresponds to the label and has the highest quality of experience score or has at quality of experience score above a threshold value …”); and storing the second classification value output by the machine learning model in association with the at least two second network parameter settings, and the at least one second network condition (Ramalingam, FIG. 1; col. 6, ll. 14-35 “… The predicted label determined by the classification module 122 may be saved to the performance history table 126 in a label history …”). See motivation to combine for claim 1. For Claim 4, Mada-Ramalingam teaches the method of claim 3, wherein the at least two second network parameter settings include at least one of the at least two first network parameter settings, and the at least one second network condition includes at least one of the at least one first network condition (Mada teaches the configuration settings (e.g. settings corresponding to the described features derived the performance logs) of the network computing resources and the network conditions; Examiner notes that “the at least two second network parameter settings” and “the at least two first network parameter settings” are considered as the configuration settings of the network computing resources/nodes, “the at least one second network condition” and “the at least one first network condition” are considered as network conditions, since the network parameter settings and the network conditions are broadly claimed so that they have the same effect on the claimed machine learning model training process; FIG. 1; ¶ 0013 “… FIG. 1 is a diagram showing an example of a system 100 for self-optimizing networks. The system 100 includes a control unit 110, that may include one or more computing resources, network computing resources in area 1 112 and area N 114 …”; ¶ 0021 “… the performance logs 116a and 116b include data indicating capacity for central processing unit (CPU) of one or more components, usage utilization, free space memory utilization, among others. The performance logs 116a and 116b can include data indicating performance of one or more computing clusters of the computing resources in area 1 112 and area N 114 … Computing clusters of computing resources can include one or more virtual machines, computer hardware processing units, cloud-based processing units, graphics processing units, among others …”; ¶ 0038 “… Features of performance logs can include processing events, failures, or CPU utilization, among others indicating processing of one or more computing resources. The machine learning model 132 can be trained to predict future network behavior or future KPIs based, at least in part, on one or more features of obtained performance logs. Snapshots provided to the machine learning model 132 can include a subset of features indicating one or more values of the performance logs obtained by the control unit 110. Features can also include contextual variables such as time of day---e.g., time of day when performance logs are indicating performance or request data - weather, active users, time of year, holidays, active or scheduled high occupancy users …”; ¶ 0044 “… Features such as CPU utilization, memory utilization, or network total bytes, among others, can be indicated in one or more performance logs obtained by the control unit 110, e.g., the performance logs 116a and 116b …”). For Claim 5, Mada-Ramalingam teaches the method of claim 1, further comprising: setting at least two second network parameter settings for a second network hardware deployed in the operable network and that is different from the first network hardware (Mada teaches the configuration settings (e.g. settings corresponding to the described features derived the performance logs) of the network computing resources; Examiner notes that “at least two second network parameter settings” recited in claim 5 and “at least two first network parameter settings” recited in claim 1 are considered as the configuration settings of the network computing resources/nodes since the network parameter settings are broadly claimed so that they have the same effect on the claimed machine learning model training process; FIG. 1; ¶ 0013 “… FIG. 1 is a diagram showing an example of a system 100 for self-optimizing networks. The system 100 includes a control unit 110, that may include one or more computing resources, network computing resources in area 1 112 and area N 114 …”; ¶ 0021 “… the performance logs 116a and 116b include data indicating capacity for central processing unit (CPU) of one or more components, usage utilization, free space memory utilization, among others. The performance logs 116a and 116b can include data indicating performance of one or more computing clusters of the computing resources in area 1 112 and area N 114 … Computing clusters of computing resources can include one or more virtual machines, computer hardware processing units, cloud-based processing units, graphics processing units, among others …”; ¶ 0044 “… Features such as CPU utilization, memory utilization, or network total bytes, among others, can be indicated in one or more performance logs obtained by the control unit 110, e.g., the performance logs 116a and 116b …”); testing performance of the second network hardware having the at least two second network parameter settings under at least one second network condition (Mada teaches obtaining performance metrics information of the network computing resources under various network conditions such as a time of day, location, etc.; FIG. 1; ¶ 0020 “… In stage B, the control unit 110 obtains information indicating performance metrics of the computing resources in area 1 112 and area N 114 - e.g., performance logs 116a and 116b …”; ¶ 0021 “… the performance logs 116a and 116b include data indicating capacity for central processing unit (CPU) of one or more components, usage utilization, free space memory utilization, among others. The performance logs 116a and 116b can include data indicating performance of one or more computing clusters of the computing resources in area 1 112 and area N 114. For example, the performance logs 116a and 116b can include data indicating performance of the performance clusters 113a of the area 1 112 or the performance clusters 115a of the area N 114. The performance logs 116a and 116b can include data indicating performance of the general clusters 113b of the area 1 112 or the general clusters 115b of the area N 114. Computing clusters of computing resources can include one or more virtual machines, computer hardware processing units, cloud-based processing units, graphics processing units, among others …”; ¶ 0023 “… A snapshot engine 118 of the control unit 110 generates a snapshot 122 using the performance logs 120. The snapshot 122 can include data indicating network activity, contextual information of a time of day, location, types of users, processing power available or utilized, among others …”); … Mada does not explicitly teach, but Ramalingam teaches storing results of testing the second network hardware having the at least two second network parameter settings and the at least one second network condition of the second network hardware in association with each other (Ramalingam teaches saving the network performance data of network devices associated with the network parameters and network conditions (e.g. network type, device type and location, etc.); FIG. 1; col. 4, l. 55 – col. 5, l. 1 “… The network information sent from the computing device 110 to the network optimization system 102 may include information such as network type, device type, location of computing device, and other relevant information, in add addition to the network parameters. The network optimization system may save this information and data in events database 160 which may catalogue the information. The events database 160 may communicate and/or coordinate with performance metrics database 155, which may be a standalone component and/or database or a subcomponent of the events database 160. The performance metrics database 155 may include network parameter information relevant to the network performance of a device (e.g., buffer occupancy, ABR quality selection, and other adjustable settings) …”); training the machine learning model to classify the at least two second network parameter settings for the second network hardware by assigning a second classification value (Ramalingam teaches training a classification system to assign a predicted label for network data, information and parameters corresponding to a computing device; FIG. 1, FIG. 2, FIG. 4; col. 5, ll. 17-35 “… Clustering module 112 may perform clustering using an un-supervised machine learning process to group similar networks into groups, classes and/or cohorts based on various network information, data and/or parameters (e.g., average, min/max, and/or standard deviation of network throughput and latency) …”; col. 5, ll. 36-45 “… Upon determining the network groups, classes and/or cohorts using the cluster module 112, network data, information and/or parameters from computing device 110 may be processed and/or used by classification system 120 to determine which group, class and/or cohort of networks the network data, information and/or parameters corresponding to the computing device 110 corresponds to (e.g., which network group it is most similar to) …”; col. 6, ll. 16-36 “… The output of the classification module may be predicted label 125 which may correspond to a predicted network group, class and/or cohort identified by the cluster module 112 …”; col. 10, ll. 4-12 “… At optional block 230, executable instructions stored on a memory of a device, such as a server, may be executed to update, modify and/or train the classification model, cluster model and/or treatment selection algorithm based on the network performance data corresponding to the adjusted network settings based on the treatment …”; col. 11, ll. 60-65 “… Using the performance metrics data, the performance 60 history table 412 and/or probability table 413, classification module 414 may determine a classification model and/or train the classification model to output a true label 415 to determine a label indicative of a network class, group or cohort associated with the performance history data …”), wherein the machine learning model uses, as training inputs, the stored results of the testing, the at least two second network parameter settings, and the at least one second network condition (Ramalingam teaches training the classification system using network performance metrics data, network parameters and network conditions; FIG. 1, FIG. 4; col. 4, l. 55 – col. 5, l. 1 “…The performance metrics database 155 may include network parameter information relevant to the network performance of a device (e.g., buffer occupancy, ABR quality selection, and other adjustable settings) …”; col. 11, ll. 45-59 “… Using the performance metric data specific to the computing device, the profiler module 411 may determine performance history table 412 and/or a probability table 413 for each device, for a network, for a user profile and/or any combination thereof … Other relevant information such as network type and/or location may be determined a saved by performance history table 412 …”; col. 11, ll. 60-65 “… Using the performance metrics data, the performance 60 history table 412 and/or probability table 413, classification module 414 may determine a classification model and/or train the classification model to output a true label 415 to determine a label indicative of a network class, group or cohort associated with the performance history data …”), wherein the second classification value meeting or exceeding a performance threshold value indicates improved performance compared to the first classification value (Ramalingam teaches the classified predicted label is associated with network performance information for a network class/group, and is also associated with a quality of experience score which could be compared to a performance threshold value; FIG. 1, FIG. 7; col. 6, ll. 16-36 “… The predicted label may associate the network data of the computing device 110 with similar networks and/or devices that have been assigned the same label. Accordingly, computing devices assigned the same label may be expected to share certain network parameters, performance and/or characteristics in common. It is understood computing devices with the same label may further share certain similarities regarding location and/or device type. It is further understood that predicted label 125 may be based on network type, device type, location of computing device, and the like. …”; col. 18, ll. 25-41 “… At block 756, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine a label based on the network performance data. For example, the computing device may apply the network performance data to the cluster model and/or classification model to output a label indicative of a network group, cohort or class. At block 758, computer-executable instructions stored on a memory of a device, such as a computing device, may be executed to determine an appropriate treatment (e.g., targeted treatment) based on the label determined at block 756 and the library of treatments. For example, the treatments may be catalogued according to labels and may each include a corresponding quality of experience score. The computing device may determine the treatment that corresponds to the label and has the highest quality of experience score or has at quality of experience score above a threshold value …”); and storing the second classification value output by the machine learning model in association with the at least two second network parameter settings, and the at least one second network condition (Ramalingam, FIG. 1; col. 6, ll. 14-35 “… The predicted label determined by the classification module 122 may be saved to the performance history table 126 in a label history …”). See motivation to combine for claim 1. For Claim 6, Mada-Ramalingam teaches the method of claim 1, wherein testing the performance of the first network hardware having the at least two first network parameter settings comprises testing throughput speed of the first network hardware having the at least two first network parameter settings (Ramalingam, FIG. 7; col. 15, ll. 17-26 “… The feature extraction module 711 may determine and/or calculate features from the network performance data that is not specific to the computing device and/or performance metrics data specific to the computing device. For example, the feature extraction module 711 may extract features 712 such as average, min, max, standard deviation, and/or variance of throughput and latency …”). See motivation to combine for claim 1. For Claim 8, this claim is substantially similar to claim 1 and therefore is rejected for the same reasoning set forth above. Additionally, Mada-Ramalingam teaches a computing device, comprising a processing system coupled to the memory and configured with processing system-executable instructions to cause the processing system to perform operations (Mada, FIG. 3; ¶ 0067 “… The computing device 300 includes a processor 302, a memory 304, a storage device 306, a high-speed interface 308 connecting to the memory 304 and multiple high-speed expansion ports 310 … The processor 302 can process instructions for execution within the computing device 300, including instructions stored in the memory 304 or on the storage device 306 to display graphical information for a GUI on an external input/output device, such as a display 316 coupled to the high-speed interface 308 …”). For Claim 10, this claim is substantially similar to claim 3 and therefore is rejected for the same reasoning set forth above. For Claim 11, this claim is substantially similar to claim 4 and therefore is rejected for the same reasoning set forth above. For Claim 12, this claim is substantially similar to claim 5 and therefore is rejected for the same reasoning set forth above. For Claim 13, this claim is substantially similar to claim 6 and therefore is rejected for the same reasoning set forth above. For Claim 15, this claim is substantially similar to claim 1 and therefore is rejected for the same reasoning set forth above. Additionally, Mada-Ramalingam teaches a computing device (Mada, FIG. 3; ¶ 0067 “… The computing device 300 includes a processor 302, a memory 304, a storage device 306, a high-speed interface 308 connecting to the memory 304 and multiple high-speed expansion ports 310 …”). For Claim 17, this claim is substantially similar to claim 3 and therefore is rejected for the same reasoning set forth above. For Claim 18, this claim is substantially similar to claim 4 and therefore is rejected for the same reasoning set forth above. For Claim 19, this claim is substantially similar to claim 5 and therefore is rejected for the same reasoning set forth above. For Claim 20, this claim is substantially similar to claim 6 and therefore is rejected for the same reasoning set forth above. For Claim 22, this claim is substantially similar to claim 1 and therefore is rejected for the same reasoning set forth above. Additionally, Mada-Ramalingam teaches a non-transitory processing system-readable medium having stored thereon processing system-executable instructions configured to cause a processing system to perform operations (Mada, FIG. 3; ¶ 0069 “… The storage device 306 is capable of providing mass storage for the computing device 300. In some implementations, the storage device 306 may be or include a computer-readable medium, such as a floppy disk device, a hard disk device, an optical disk device, or a tape device, a flash memory or other similar solid-state memory device, or an array of devices, including devices in a storage area network or other configurations. Instructions can be stored in an information carrier. The instructions, when executed by one or more processing devices (for example, processor 302), perform one or more methods, such as those described above …”). For Claim 24, this claim is substantially similar to claim 3 and therefore is rejected for the same reasoning set forth above. For Claim 25, this claim is substantially similar to claim 4 and therefore is rejected for the same reasoning set forth above. For Claim 26, this claim is substantially similar to claim 5 and therefore is rejected for the same reasoning set forth above. For Claim 27, this claim is substantially similar to claim 6 and therefore is rejected for the same reasoning set forth above. Citation of Pertinent Prior Art The prior art made of record and not relied upon is considered pertinent to applicant's disclosure is listed below, thank you: i. US 20150036523 A1 (Gacanin) teaches obtaining home network measurement data of at least one home network parameter associated with a capacity of the home network, using an application layer protocol for remote management, said capacity being a measure for an amount of traffic that the home network can handle at one time; processing said home network measurement data to estimate the capacity of the home network or a parameter related thereto; based on the estimated capacity or parameter related thereto classifying said home network in a user QoS class (Abstract). ii. US 20190068443 A1 (Li) teaches configuring parameters in a wireless communications network. Parameter configurations resulting in a change to key quality indicator (KQI) and key performance indicator (KPI) measurements are determined based on collected data samples. The data samples are divided into subsets including a first subset including the data samples associated with the parameter configurations failing to result in the change to the KQI and KPI measurements, and a second subset including the data samples associated with the parameter configurations resulting in the change to the KQI and KPI measurements dependent upon satisfying conditions in the wireless communications network. The subsets of the data samples are then determined for using machine learning to optimize the parameter configurations, and subsets of the data samples are provided as an input to machine learning for the parameter configurations to optimize the wireless communications network (Abstract). Conclusion Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action. Any inquiry concerning this communication or earlier communications from the examiner should be directed to ZONGHUA DU whose telephone number is (408)918-7596. The examiner can normally be reached Monday - Friday 8 AM - 5 PM PST. 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, John Follansbee can be reached on (571) 272-3964. 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. /Z.D./Examiner, Art Unit 2444 /SCOTT B CHRISTENSEN/Primary Examiner, Art Unit 2444
Read full office action

Prosecution Timeline

Jan 22, 2024
Application Filed
Oct 01, 2025
Non-Final Rejection mailed — §103, §112
Dec 31, 2025
Response Filed
May 18, 2026
Final Rejection mailed — §103, §112
Jul 13, 2026
Response after Non-Final Action

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12695710
AUTONOMOUS OPERATION OF EDGE-BASED DEPLOYMENTS
2y 6m to grant Granted Jul 28, 2026
Patent 12689614
OPTIMIZING COMMUNICATION IN A VIRTUAL PRIVATE NETWORK DURING BLOCKING OF AN EXIT INTERNET PROTOCOL ADDRESS
3y 9m to grant Granted Jul 21, 2026
Patent 12671651
METHOD AND SYSTEM FOR FOUR-PATH PARALLEL REDUNDANCY PROTOCOL IN CONNECTED NETWORKS
2y 7m to grant Granted Jun 30, 2026
Patent 12603929
Metrics Collection And Reporting In 5G Media Streaming
3y 4m to grant Granted Apr 14, 2026
Patent 12592861
ADAPTIVE BATCH PROCESSING METHOD AND SYSTEM
2y 1m to grant Granted Mar 31, 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

2-3
Expected OA Rounds
60%
Grant Probability
99%
With Interview (+40.7%)
2y 7m (~0m remaining)
Median Time to Grant
Moderate
PTA Risk
Based on 82 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