DETAILED ACTION
This action is responsive to the Application filed on 10/19/2023. Claims 1-20 are pending in the case. Claims 1 and 11 are independent claims.
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Drawings
The drawings are objected to because:
In figure 7, client robots (704) should be provided with more specific labels given that they are understood to be different robots in each environment. E.g. robots 704a, 704b, and 704c as seen with the labeling of the clients and environments. The disclosure in paragraph [0092] should be adjusted in accordance with this change.
In figure 9, given the description in the specification, the “transmit” step (906) should point to the “server” block to illustrate the transmission of the parameters and data to the server
In figure 9, given the description in the specification, the “aggregate metrics” step (908), provided that the correction above was made, should be pointed to by the “server” block, not the “transmit” block, in order to illustrate that the server is doing the step
In figure 9, given the description in the specification, the “return E values” step (914) should point to the “client(s)” block to illustrate that the values are returned to the clients. This removes the need for step (916) as it can be assumed that the values are received, otherwise step (916) should point to the “client(s)” block and be modified in the specification to follow such description
In figure 10, append a “(s)” to the processor block (1006) to indicate that computing device (1000) could have more than one processor
Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. The figure or figure number of an amended drawing should not be labeled as “amended.” If a drawing figure is to be canceled, the appropriate figure must be removed from the replacement sheet, and where necessary, the remaining figures must be renumbered and appropriate changes made to the brief description of the several views of the drawings for consistency. Additional replacement sheets may be necessary to show the renumbering of the remaining figures. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance.
Specification
The disclosure is objected to because of the following informalities:
The field of the invention paragraph should be a subsection under the background section. A section providing a summary of the invention should be included, in the background section.
In paragraph [0034], line 5, remove the single quotes around M. They make it unclear if you forgot quotes or not when M’ is introduced later. You refer to M later without quotes, so just remain consistent and don’t use them.
In paragraph [0040], line 2, “The RL problem may be formalized as an agent, such as may operate at a client” should read “The RL problem may be formalized as an agent, such as one that may operate at”
In paragraph [0041], line 2, “RL component for taking decisions” should read “RL component for making decisions”
In paragraph [0041], line 3, Ref No. 303 should come after “the state” as it refers to the state of the environment not the perceiving of the state
In paragraph [0044], line 1, “algorithms that may be used to RL problems” should read “algorithms that may be used in RL problems”
In paragraph [0052], line 1, “figure 500” should read “figure 5”
In paragraph [0059], line 3-4, “it may not be enough if the diversity among devices/environments is too wide, cases where other added approaches may be needed…” should potentially read “it may not be enough if the diversity among devices/environments is too wide, in such cases added approaches may be needed…”
In paragraph [0093], line 2, add a space between environment and 706a
In paragraph [00106], starting at line 6m every Ref. No. should be preceded with an “at” to indicate the actual step clearer
In paragraph [00106], lines 5-6, Ref. No. 904 should be after “parameters and metrics” not “agent” as it is meant to indicate the parameters and metrics and not the agent collecting them
In paragraph [00107], line 4, “ma” should read “may”
In paragraph [00108], line 1, Ref. No. 916 should go after “e values” and read “after receipt of the e values at 916” to more clearly indicate the actual step
Appropriate correction is required.
The disclosure is objected to because it contains an embedded hyperlink and/or other form of browser-executable code. Applicant is required to delete the embedded hyperlink and/or other form of browser-executable code; references to websites should be limited to the top-level domain name without any prefix such as http:// or other browser-executable code. See MPEP § 608.01. See paragraph [0043].
Claim Objections
Claims 1 objected to because of the following informalities:
In claims 1 and 11, lines 6 and 7, respectively, recite “and when the convergence criterion is determined not to have been met…” This is a certainty, implying that the convergence criterion will never be met and, if left as is, makes the limitations in claims 3 and 5 impossible. The examiner suggests that the lines should be re-written in conditional wording such as “and if the convergence criterion is determined not to have been met…”
In claims 1 and 11, lines 8-9 and 9-10, respectively, recite “transmitting, by a server to the clients, the respective E values, and the E values respectively indicate, to the clients, an extent to which the client should perform” and should potentially read “transmitting, by the server to each client, a respective E value, that indicates an extent to which the client should perform…” to make the claim clearer and more concise
In claims 1 and 11, in lines 2 and 3, respectively, add a comma after “by a server”
In claims 1 and 11, in lines 5 and 6, respectively, add a comma after “by a server”
In claims 5 and 15, lines 2-4, recite “from perspectives of individuals of the clients involved in training the model, and from a perspective of a global environment in which the clients are deployed” and should potentially read “from the perspective of the individual clients in the group of clients used in training the model and from the perspective of the global environment in which the clients are deployed” to make the claim clearer and more precise
Claims 2-10 and 12-20 inherit the objections from the claims upon which they depend
Appropriate correction is required.
Claim Rejections - 35 USC § 112
The following is a quotation of 35 U.S.C. 112(b):
(b) CONCLUSION.—The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the inventor or a joint inventor regards as the invention.
The following is a quotation of 35 U.S.C. 112 (pre-AIA ), second paragraph:
The specification shall conclude with one or more claims particularly pointing out and distinctly claiming the subject matter which the applicant regards as his invention.
Claims 1-20 rejected under 35 U.S.C. 112(b) or 35 U.S.C. 112 (pre-AIA ), second paragraph, as being indefinite for failing to particularly point out and distinctly claim the subject matter which the inventor or a joint inventor (or for applications subject to pre-AIA 35 U.S.C. 112, the applicant), regards as the invention.
Claims 1 and 11 recite the limitation “receiving, by a server, from each client in a group of clients, metrics and parameters of local models relating to training of a model by the client.” It is unclear whether “the client” is each individual client in the group of clients or meant to represent a server-side client. Additionally, it is unclear whether the training of a model is in reference to training of a local model at each client or a global model by the group of clients. Under the most reasonable interpretation, given the specification, the examiner comes to understand this limitation as follows: “receiving, by a server, from each client in a group of clients, metrics and parameters of local models relating to training of a global model by the clients.” Note that clients is pluralized to indicate that all the clients in the group of clients are the ones participating in training. Additionally, note that model is further specified to be a “global” model to indicate that it is shared in the “global” environment by the system containing the group of clients. Corrections to this limitation of the claims are required to more accurately represent the interpretation above. If the interpretation above is inaccurate corrections to this limitation of the claims are required to more clearly define the scope of the claims. Claims 2-10 and 12-20 depend on claims 1 and 11 and inherit this rejection.
Claims 1 and 11 further recite the limitation “aggregating, by the server, the model parameters.” It is unclear whether “the model parameters” is in reference to the local model parameters received by each client or the parameters of the “global” model as interpreted above. Under the most reasonable interpretation, given the specification, the examiner comes to understand this limitation as follows: “aggregating, by the server, the local model parameters.” Note that the inclusion of the word “local” further specifies that those parameters are being aggregated. Corrections to this limitation of the claims are required to more accurately represent the interpretation above. If the interpretation above is inaccurate corrections to this limitation of the claims are required to more clearly define the scope of the claims. Claims 2-10 and 12-20 depend on claims 1 and 11 and inherit this rejection.
Claims 1 and 11 further recite the limitation “determining, by the server using the metrics that have been sent, if a convergence criterion for the model has been met.” As above, it is unclear if “the model” is in reference to the “global” model as interpreted above or a local model for each client. Under the most reasonable interpretation, given the specification, the examiner comes to understand this limitation as follows: “determining, by the server using the metrics that have been sent, if a convergence criterion for the global model has been met.” Note that the word “global” is added to the limitation to specify which model is being checked for a convergence criterion. Corrections to this limitation of the claims are required to more accurately represent the interpretation above. If the interpretation above is inaccurate corrections to this limitation of the claims are required to more clearly define the scope of the claims. Claims 2-10 and 12-20 depend on claims 1 and 11 and inherit this rejection.
Claims 1 and 11 further recite the limitation “transmitting, by a server to the clients, the respective ε values, and the ε values respectively indicate…in a next training round for the model.” As above, it is unclear if “the model” is in reference to the “global” model as interpreted above or a local model for each client. Under the most reasonable interpretation, given the specification, the examiner comes to understand this limitation as follows: “transmitting, by a server to the clients, the respective ε values, and the ε values respectively indicate…in a next training round for the global model.” Note that the word “global” is added to the limitation to specify which model the next round of training is in reference to. Corrections to this limitation of the claims are required to more accurately represent the interpretation above. If the interpretation above is inaccurate corrections to this limitation of the claims are required to more clearly define the scope of the claims. Claims 2-10 and 12-20 depend on claims 1 and 11 and inherit this rejection.
Claims 5 and 15 recite the limitation “wherein when the convergence criterion is determined to have been met, the model is deemed optimal.” As above, it is unclear if “the model” is in reference to the “global” model as interpreted above or a local model for each client. Under the most reasonable interpretation, given the specification, the examiner comes to understand this limitation as follows: “wherein when the convergence criterion is determined to have been met, the global model is deemed optimal.” Note that the word “global” is added to the limitation to specify which model is deemed optimal. Additionally, note that the term “optimal” given no explicit definition is extremely broad and indefinite; something could be deemed optimal from any perspective one chooses. Corrections to this limitation of the claims are required to more accurately represent the interpretation above. If the interpretation above is inaccurate corrections to this limitation of the claims are required to more clearly define the scope of the claims.
Claims 6 and 16 recite the limitation “wherein the server uses the metrics to update the model, and the server sends the model to the clients after the model has been updated.” As above, it is unclear if “the model” is in reference to the “global” model as interpreted above or a local model for each client. Under the most reasonable interpretation, given the specification, the examiner comes to clearly understand this limitation as follows: “wherein the server uses the metrics to update the global model, and the server sends the global model to the clients after the global model has been updated.” Note that the word “global” is added to the limitation to specify which model is updated and sent back to the clients. Additionally, it is unclear when this step of updating the model and sending it back to the clients occurs; given the specification, it is meant to potentially be the aggregation step in claims 1 and 11 and therefore said limitation should be incorporated into claims 6 and 16, e.g. “The method as recited in claim 1, wherein the aggregation comprises…” Corrections to these limitations of the claims are required to more accurately represent the interpretations above. If the interpretations above are inaccurate corrections to these limitations of the claims are required to more clearly define the scope of the claims.
Claims 9 and 19 recite the limitation “wherein the server increases the ε value for one of the clients whose performance in the training is lower than a global performance in training the model, and the server decreases the ε value for one of the clients whose performance in the training is greater than a global performance in training the model.” As above, it is unclear if “the model” is in reference to the “global” model as interpreted above or a local model for each client. Under the most reasonable interpretation, given the specification, the examiner comes to understand this limitation as follows: “wherein the server increases the ε value for one of the clients whose performance in the training is lower than a global performance in training the global model, and the server decreases the ε value for one of the clients whose performance in the training is greater than a global performance in training the global model.” Note that the word “global” is added to the limitation to specify which model is updated and sent back to the clients. Additionally, it is unclear when this step of increasing or decreasing the ε values occurs; given the specification, it is meant to be the calculation step in claims 1 and 11 and therefore said limitation should be incorporated into claims 9 and 19, e.g. “The method as recited in claim 1, wherein the calculating comprises…” Corrections to these limitations of the claims are required to more accurately represent the interpretations above. If the interpretations above are inaccurate, corrections to these limitations of the claims are required to more clearly define the scope of the claims.
Claims 9 and 19 further recite the limitation "…performance in the training… is lower than a global performance in training the model…performance in the training is greater than a global performance in training the model." There is insufficient antecedent basis for this limitation in the claim. The examiner notes that claims 1 and 11 introduce “methods and parameters of local models relating to training” but do not properly introduce “a” training to be known as “the” training. If the training introduced in this line is meant to be “the” training then the limitation should read, “receiving, by a server from each client in a group of clients, metrics and parameters of local models relating to a training of a model by the client.” If the steps following this limitation are meant to be “the” training then a limitation similar to “wherein a training of the model comprises...” should be added to the claims. For continued examination, the examiner comes to interpret “the” training as the one that the metrics and parameters relate to and as the one in which its steps comprise everything following the receiving limitation in claims 1 and 11.
The following is a quotation of 35 U.S.C. 112(d):
(d) REFERENCE IN DEPENDENT FORMS.—Subject to subsection (e), a claim in dependent form shall contain a reference to a claim previously set forth and then specify a further limitation of the subject matter claimed. A claim in dependent form shall be construed to incorporate by reference all the limitations of the claim to which it refers.
The following is a quotation of pre-AIA 35 U.S.C. 112, fourth paragraph:
Subject to the following paragraph [i.e., the fifth paragraph of pre-AIA 35 U.S.C. 112], a claim in dependent form shall contain a reference to a claim previously set forth and then specify a further limitation of the subject matter claimed. A claim in dependent form shall be construed to incorporate by reference all the limitations of the claim to which it refers.
Claims 4 and 14 are rejected under 35 U.S.C. 112(d) or pre-AIA 35 U.S.C. 112, 4th paragraph, as being of improper dependent form for failing to further limit the subject matter of the claim upon which they depend, or for failing to include all the limitations of the claim upon which they depend. Both claims 4 and 14 recite the limitation “wherein each of the ε values is client-specific.” Given that there is no clear definition for client-specific in the disclosure, under the broadest reasonable interpretation, client-specific ε values include any ε values that are specific to, given to, or calculated with respect to a certain client. Claims 1 and 11 recite the limitation “calculating, by a server, a respective ε value for each of the clients” which falls under this broadest reasonable interpretation of client-specific. Thereby, claims 4 and 14 do not provide a further limitation for the subject matter of the claims upon which they depend, claims 1 and 11.
Applicant may cancel the claim(s), amend the claim(s) to place the claim(s) in proper dependent form, rewrite the claim(s) in independent form, or present a sufficient showing that the dependent claim(s) complies with the statutory requirements.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed towards an abstract idea without significantly more.
Step 1: Claims 1-10 are directed towards a method and claims 11-20 are directed towards an article of manufacture. Therefore, claims 1-20 are directed towards one of the 4 statutory categories; process, machine, manufacture, or composition of matter
With respect to claim 1:
Step 2A Prong 1: The claim is directed to a judicial exception.
Aggregating… the model parameters (Mental Process: One could aggregate or cluster parameters, mentally or using pen and paper)
Determining… using the metrics that have been sent, if a convergence criterion for the model has been met, and when the convergence criterion is determined not to have been met, calculating, by the server, a respective ε value for each of the clients (Mental Process: One could determine, mentally or using pen and paper, if a convergence criterion has been met for a model and then calculate a respective ε value for each client when the convergence criterion has not been met)
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
receiving, by a server from each client in a group of clients, metrics and parameters of local models relating to training of a model by the client (Amounts to necessary data gathering. Insignificant extra-solution activity, as discussed in MPEP § 2106.05(g))
transmitting, by the server to the clients, the respective ε values… (Amounts to necessary data output. Insignificant extra-solution activity, as discussed in MPEP § 2106.05(g))
…the ε values respectively indicate, to the clients, an extent to which the client should perform exploration, and/or exploitation, in a next training round for the model (Describes the information that the abstract idea operates on rather than an additional element to integrate the exception into a practical application, see MPEP § 2106.05(e), which discusses other meaningful limitations)
aggregating, by the server… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
determining, by the server… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Re-evaluation of Insignificant Extra-Solution Activities:
receiving, by a server from each client in a group of clients, metrics and parameters of local models relating to training of a model by the client (“Receiving or transmitting data over a network” is a well-understood, routine, conventional activity when claimed in a merely generic manner (as it is in the present claim), as discussed in MPEP § 2106.05(d)(II))
transmitting, by the server to the clients, the respective ε values… (“Receiving or transmitting data over a network” is a well-understood, routine, conventional activity when claimed in a merely generic manner (as it is in the present claim), as discussed in MPEP § 2106.05(d)(II))
Additional Elements:
…the ε values respectively indicate, to the clients, an extent to which the client should perform exploration, and/or exploitation, in a next training round for the model (Describes the information that the abstract idea operates on rather than an additional element to integrate the exception into a practical application, see MPEP § 2106.05(e), which discusses other meaningful limitations)
aggregating, by the server… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
determining, by the server… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
With respect to claim 2:
Step 2A Prong 1: The claim is directed to a judicial exception, including those inherited from claim 1 via dependency.
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
The method as recited in claim 1… (See above)
wherein the clients in the group of clients are heterogeneous (Applying the method in an environment with heterogenous clients merely indicates the technological environment in which to apply a judicial exception, as discussed in MPEP § 2106.05(h))
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Additional Elements:
The method as recited in claim 1… (See above)
wherein the clients in the group of clients are heterogeneous (Applying the method in an environment with heterogenous clients merely indicates the technological environment in which to apply a judicial exception, as discussed in MPEP § 2106.05(h))
With respect to claim 3:
Step 2A Prong 1: The claim is directed to a judicial exception, including those inherited form claim 1 via dependency.
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
The method as recited in claim 1… (See above)
wherein when the convergence criterion is determined to have been met, no further training rounds are performed (Ending training by a server when a stopping condition has been met does not integrate the exception into a practical application. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Additional Elements:
The method as recited in claim 1… (See above)
wherein when the convergence criterion is determined to have been met, no further training rounds are performed (Ending training by a server when a stopping condition has been met does not integrate the exception into a practical application. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
With respect to claim 4:
Step 2A Prong 1: The claim is directed to a judicial exception, including those inherited from claim 1 via dependency.
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
The method as recited in claim 1… (See above)
wherein each of the ε values is client-specific (Describes the information that the abstract idea operates on rather than an additional element to integrate the exception into a practical application, see MPEP § 2106.05(e), which discusses other meaningful limitations)
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Additional Elements:
The method as recited in claim 1… (See above)
wherein each of the ε values is client-specific (Describes the information that the abstract idea operates on rather than an additional element to integrate the exception into a practical application, see MPEP § 2106.05(e), which discusses other meaningful limitations)
With respect to claim 5:
Step 2A Prong 1: The claim is directed to a judicial exception, including those inherited from claim 1 via dependency.
wherein when the convergence criterion is determined to have been met, the model is deemed optimal from perspectives of individuals of the clients involved in training the model, and from a perspective of a global environment in which the clients are deployed (Mental Process: One could deem a model optimal from any perspective or multiple perspectives, mentally or using pen and paper)
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
The method as recited in claim 1… (See above)
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Additional Elements:
The method as recited in claim 1… (See above)
With respect to claim 6:
Step 2A Prong 1: The claim is directed to a judicial exception, including those inherited from claim 1 via dependency.
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
The method as recited in claim 1… (See above)
wherein the server uses the metrics to update the model (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
the server sends the model to the clients after the model has been updated (Amounts to necessary data output. Insignificant extra-solution activity, as discussed in MPEP § 2106.05(g))
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Re-evaluation of Insignificant Extra Solution Activities:
the server sends the model to the clients after the model has been updated (“Receiving or transmitting data over a network” is a well-understood, routine, conventional activity when claimed in a merely generic manner (as it is in the present claim), as discussed in MPEP § 2106.05(d)(II))
Additional Elements:
The method as recited in claim 1… (See above)
wherein the server uses the metrics to update the model (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
With respect to claim 7:
Step 2A Prong 1: The claim is directed to a judicial exception, including those inherited from claim 1 via dependency.
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
The method as recited in claim 1… (See above)
wherein the group of clients is a subset of all clients in an environment that includes the group of clients and the server (Applying the method in an environment that includes the clients and the server merely indicates the technological environment in which to apply a judicial exception, as discussed in MPEP § 2106.05(h))
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Additional Elements:
The method as recited in claim 1… (See above)
wherein the group of clients is a subset of all clients in an environment that includes the group of clients and the server (Applying the method in an environment that includes the clients and the server merely indicates the technological environment in which to apply a judicial exception, as discussed in MPEP § 2106.05(h))
With respect to claim 8:
Step 2A Prong 1: The claim is directed to a judicial exception, including those inherited from claim 1 via dependency.
randomly generates initial respective ε values for the clients (Mental Process: One could randomly generate initial respective ε values for the clients, mentally or using pen and paper)
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
The method as recited in claim 1… (See above)
wherein, prior to any training, the server randomly generates… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Additional Elements:
The method as recited in claim 1… (See above)
wherein, prior to any training, the server randomly generates… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
With respect to claim 9:
Step 2A Prong 1: The claim is directed to a judicial exception, including those inherited from claim 1 via dependency.
increases the ε value for one of the clients whose performance in the training is lower than a global performance in training the model… decreases the ε value for one of the clients whose performance in the training is greater than a global performance in training the model (Mental Process: One could increase or decrease the ε values of a client when comparing its performance to the global performance, mentally or using pen and paper)
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
The method as recited in claim 1… (See above)
wherein the server increases… wherein the server decreases… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Additional Elements:
The method as recited in claim 1… (See above)
wherein the server increases… wherein the server decreases… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
With respect to claim 10:
Step 2A Prong 1: The claim is directed to a judicial exception, including those inherited from claim 1 via dependency.
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
The method as recited in claim 1… (See above)
wherein the convergence criterion is a k value (Describes the information that the abstract idea operates on rather than an additional element to integrate the exception into a practical application, see MPEP § 2106.05(e), which discusses other meaningful limitations)
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Additional Elements:
The method as recited in claim 1… (See above)
wherein the convergence criterion is a k value (Describes the information that the abstract idea operates on rather than an additional element to integrate the exception into a practical application, see MPEP § 2106.05(e), which discusses other meaningful limitations)
With respect to claim 11:
Step 2A Prong 1: The claim is directed to a judicial exception.
Aggregating… the model parameters (Mental Process: One could aggregate or cluster parameters, mentally or using pen and paper)
Determining… using the metrics that have been sent, if a convergence criterion for the model has been met, and when the convergence criterion is determined not to have been met, calculating, by the server, a respective ε value for each of the clients (Mental Process: One could determine, mentally or using pen and paper, if a convergence criterion has been met for a model and then calculate a respective ε value for each client when the convergence criterion has not been met)
Step 2A Prong 2: The judicial exceptions as a whole are not integrated into a practical
application.
Additional Elements:
A non-transitory storage medium having stored therein instructions that are executable by one or more hardware processors to perform operations comprising… (Non-transitory computer-readable media are generic computer components that all store information including potentially, instructions. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
receiving, by a server from each client in a group of clients, metrics and parameters of local models relating to training of a model by the client (Amounts to necessary data gathering. Insignificant extra-solution activity, as discussed in MPEP § 2106.05(g))
transmitting, by the server to the clients, the respective ε values… (Amounts to necessary data output. Insignificant extra-solution activity, as discussed in MPEP § 2106.05(g))
…the ε values respectively indicate, to the clients, an extent to which the client should perform exploration, and/or exploitation, in a next training round for the model (Describes the information that the abstract idea operates on rather than an additional element to integrate the exception into a practical application, see MPEP § 2106.05(e), which discusses other meaningful limitations)
aggregating, by the server… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
determining, by the server… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
Step 2B: The claim does not include additional elements that amount to significantly more than the judicial exception.
Re-evaluation of Insignificant Extra-Solution Activities:
receiving, by a server from each client in a group of clients, metrics and parameters of local models relating to training of a model by the client (“Receiving or transmitting data over a network” is a well-understood, routine, conventional activity when claimed in a merely generic manner (as it is in the present claim), as discussed in MPEP § 2106.05(d)(II))
transmitting, by the server to the clients, the respective ε values… (“Receiving or transmitting data over a network” is a well-understood, routine, conventional activity when claimed in a merely generic manner (as it is in the present claim), as discussed in MPEP § 2106.05(d)(II))
Additional Elements:
A non-transitory storage medium having stored therein instructions that are executable by one or more hardware processors to perform operations comprising… (Non-transitory computer-readable media are generic computer components that all store information including potentially, instructions. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
…the ε values respectively indicate, to the clients, an extent to which the client should perform exploration, and/or exploitation, in a next training round for the model (Describes the information that the abstract idea operates on rather than an additional element to integrate the exception into a practical application, see MPEP § 2106.05(e), which discusses other meaningful limitations)
aggregating, by the server… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
determining, by the server… (Adding generic computer components to perform the method is not sufficient. Adding the words "apply it" (or an equivalent) with the judicial exception, or mere instructions to implement an abstract idea on a computer, or merely using a computer as a tool to perform an abstract idea, as discussed in MPEP § 2106.05(f))
With respect to claims 12-20:
See the rejections for claims 2-10 above. Note that the only difference between claims 12-20 and claims 2-10 is that claims 12-20 are directed towards the article of manufacture that contains instructions to do the method whereas claims 2-10 are directed towards the method, i.e. covering the instructions for the method. Further, note that the additional element of a non-transitory storage medium introduced in claim 11 is addressed in the rejection for claim 11 above, this element and analysis thereof carry down for claims 12-20.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
Claims 1-8, 10-18, and 20 rejected under 35 U.S.C. 103 as being unpatentable over Verwey (US 20230281277 A1) in view of Espeholt et. al. (US 20220343164 A1).
Regarding claim 1, Verwey teaches a method (Fig. 7) comprising:
receiving, by a server (Paragraph [0051], “Method 700 can be implemented on many different types of devices, e.g., by one or more cloud servers, by a client device such as a laptop, tablet, or smartphone, or by combinations of one or more servers, client devices, etc.” Note that this means every limitation of the claim can be performed by a server.)
from each client in a group of clients, metrics and parameters… (Paragraph [0053], “experiences are obtained from the agents.” Note that given the specification, with no explicit definition, metrics and parameters are understood to include any metric useful for reinforcement learning such as, average time to complete an episode and accumulated rewards and any parameter that can describe the context of the local model/environment, including, weights, learning rates, gradients, exploration rates, state space, rewards functions and more)
…of local models relating to training of a model by the client (Paragraph [0044], “Each experience can identify the action that was taken, the context in which the action was taken, and/or the reward value calculated for the selected action.” Given this definition of experiences, the examiner comes to understand that the obtainment of experiences from agents is equivalent to the receiving of metrics and parameters from clients relating to training of a model. In such understanding, metrics and parameters are equivalent to reward values and action contexts of experiences and the agents are hosted on agent devices (See Paragraph [0050]) that are equivalent to the clients, i.e. carrying out the same agent training step of receiving this data. Note that all steps in Fig. 7/Method 700 relate to training of a model/policy)
aggregating, by the server, the model parameters; (With no explicit definition, aggregation of the model parameters is understood to mean taking the local model parameters received from each client and combining them or collecting their contributions into a unified set, that could potentially be used for something. See paragraph [0054], “Method 700 continues at block 706, where the policy is updated based on the experiences. For instance, as noted previously, internal parameters of the policy can be adjusted.” Note that in the above citation, updating the policy or model requires that all the experiences were aggregated which include the parameters, as explained above. Note that Verwey uses ‘policy’ and ‘model’ interchangeably to reference the global model, see paragraph [0043])
determining, by the server using the metrics that have been sent, if a convergence criterion for the model has been met, and when the convergence criterion is determined not have been met (Paragraph [0056], “Method 700 continues at decision block 710, where a determination is made whether a stopping condition has been reached.” Note that stopping condition and convergence criterion are understood to be equivalent, in which they determine when training ends based on the metrics/experiences, see the citation in claim 3 below)
Verwey does not distinctly disclose that when a convergence criterion is determined to have not been met a respective ε values is calculated for each client or transmitting of those respective ε to each client for use in the next round of training.
However, Espeholt et. al. teaches calculating, by the server, a respective ε value for each of the clients (Paragraph [0090], “The system processes a respective policy input for each environment through the policy model to obtain a respective policy output for the actor that defines a control policy for performing a task in the environment (step 404).” Note that in Espeholt, a control policy is defined to potentially include an exploration policy or ε value, see Paragraph [0044], “the control policy used by the system allows for exploration of the environment by the agent. For example, the system can apply an exploration policy to the policy output, such as an epsilon greedy exploration policy.” Thereby, in obtaining a respective policy output for each actor a control policy is determined which can include an e-greedy exploration policy that must have an ε value for each respective actor. Further, note that in the application and references, ‘actor’, ‘client’, and ‘agent’ are all understood to be of the same systems in which these components are a part of or are the devices that contribute to the federated learning system, i.e. equivalent in carrying out the described method)
and transmitting, by the server to the clients, the respective ε values (Fig. 4, Ref No. 406), and the ε values respectively indicate, to the clients, an extent to which the client should perform exploration, and/or exploitation, in a next training round for the model (Paragraph [0091], “The system provides, to the respective actor for each of the environments, a respective action determined from the control policy defined by the respective policy output for the environment (step 406).” Note that as explained above, the control policy can include an e-greedy exploration policy which must have an ε value that is provided to each actor in the above citation. Further, note that as is known in the art an e-greedy exploration policy always includes an ε value which indicates an extent to which a client should perform exploration or exploitation in a next round of training)
Before the effective filing date of the claimed invention, it would have been obvious to one or ordinary skill in the art to combine the method of Verwey (Including: receiving metrics and parameters from each client in a group of clients, aggregating the model parameters, and determining when a convergence criterion has not been met) with the techniques of Espeholt et. al. to calculate a respective ε value for each client and transmit that respective ε value to each client in order to reduce the network traffic between clients and servers by preventing clients from having to synchronize their model parameters during training (Espeholt, Paragraph [0009-0010], “Because the policy model is centralized at the learner engine, the learner engine does not have to synchronize model parameter values and other values for the policy model across each actor interconnected to the learner engine. Instead, network traffic, i.e., data transferring, between actors and the learner engine is reduced to only inference calls by the actors to the learner engine, and actions generated by the learner engine in response to the inference calls.”) This also reduces computation time and requires less computational resources.
Regarding claim 2, Verwey as modified by Espeholt teaches all of the limitations of the method in claim 1 as cited above and Verwey further teaches the limitation:
wherein the clients in the group of clients are heterogeneous (Fig. 6; Given the specification, heterogeneity is understood to come in the form of devices with different respective characteristics such as computational capacities, data distributions, network connectivity, reliability, among others; therefore, heterogeneity is non-limiting to those characteristics. Nonetheless, see paragraph [0048], “Generally, the devices 610, 620, 630, and/or 640 may have respective processing resources 601 and storage resources 602” which amounts to the same as different computational capacities, see paragraph [0094].” Note that as above, ‘client’ and ‘agent devices’ are understood to be equivalent components.)
Regarding claim 3, Verwey as modified by Espeholt teaches all of the limitations of the method of claim 1 as cited above and Verwey further teaches the limitation:
wherein when the convergence criterion is determined to have been met (Fig. 7, Ref. No. 710), no further training rounds are performed (Paragraph [0043], “After several iterations, the most recent updated model can be designated as a final model. For instance, training can end when one or more stopping conditions are reached, such as a fixed number of iterations have been performed or a convergence condition is reached.” Note that stopping condition, convergence criterion, and convergence condition are all understood to be interchangeable)
Regarding claim 4, Verwey as modified by Espeholt teaches all of the limitations of the method in claim 1 as cited above and Espeholt further teaches the limitation:
wherein each of the ε values is client-specific (Given no explicit definition of client-specific, this limitation is understood be represented by any group of ε values where each ε value is directed to a certain client. Paragraph [0006], “a method comprising receiving respective observations generated by respective actors for each environment of a plurality of environments; processing, for each environment, a respective policy input that includes the respective observation for the environment through a policy model to obtain a respective policy output for the actor.” Note that given the environment is specific to the actor, the control policy, as defined by the respective policy, is also specific to the actor. Therefore, since the control policy, can be in the form of an e-greedy exploration policy, as cited above, each of the ε values in the respective control policies must be client or actor specific)
Regarding claim 5, Verwey as modified by Espeholt teaches all of the limitations of the method in claim 1 as cited above and Verwey further teaches the limitation:
wherein when the convergence criterion is determined to have been met, the model is deemed optimal (Fig. 7, Ref. Nos. 710 & 712) from perspectives of individuals of the clients involved in training the model, and from a perspective of a global environment in which the clients are deployed (Given no explicit definition of optimal, based on common understanding of federated learning, optimal is understood to be a given for any model that has converged based on a set convergence criterion. Additionally, convergence in the case of federated learning is commonly understood to mean that the current global model is optimal from the perspectives of the global environment and individual client environments. See the citation in claim 3 above, which deems the model final and therefore optimal once a convergence criterion has been reached)
Regarding claim 6, Verwey as modified by Espeholt teaches all of the limitations of the method in claim 1 as cited above and Verwey further teaches the limitation:
wherein the server uses the metrics to update the model (Paragraph [0043], “obtaining a batch 502 of experiences from experience data store 306 that is populated with the experiences. Then, parameter adjustment 504 can be employed to update internal parameters of a policy to obtain an updated policy 506, which can be published to the policy data store”), and the server sends the model to the clients after the model has been updated (Paragraph [0043], “Once the parameters are updated, the updated model is published to policy data store 304, which is accessible to the agent(s) that implement the policy.” Note that as above, metrics are understood to be included in the experiences given their inclusion of reward values. Further, note that instead of sending the updated model directly to the clients, the server sends the updated model to a data store common among all the clients and then the clients receive the updated model from the data store. As above, ‘policy’ and ‘model’ are used interchangeably to represent the global model in Verwey)
Regarding claim 7, Verwey as modified by Espeholt teaches all of the limitations of the method in claim 1 as cited above and Verwey further teaches the limitation:
wherein the group of clients is a subset of all clients in an environment that includes the group of clients and the server (Fig. 6; Paragraph [0046], “system 600 includes an agent device 610, an agent device 620, an agent device 630, and a training server 640, connected by one or more network(s) 650.” Note that as above, the agent devices and clients are interchangeable. Additionally, see paragraph [0100], “the devices described herein can function in a stand-alone or cooperative manner to implement the described techniques. For example, the methods and functionality described herein can be performed on a single computing device and/or distributed across multiple computing devices that communicate over network(s) 650” which explains how the agent devices or clients used during training are always a subset of those in the environment with all the clients and the server. Further, given the specification, a client-server environment can include implementations via a network)
Regarding claim 8, Verwey as modified by Espeholt teaches all of the limitations of the method in claim 1 as cited above and Verwey further teaches the limitation: wherein, prior to any training, the server randomly generates initial respective ε values for the clients (Paragraph [0052], “Method 700 begins at block 702, where a policy is initialized by a training process and distributed to one or more remote agent processes. For instance, the policy can be initialized using random initial internal parameters, or the agents can be instructed to take random actions for a period of time to gather experiences for initial training.” Note random actions for the agents is interpreted to be the same this as random ε values for the clients)
Regarding claim 10, Verwey as modified by Espeholt teaches all of the limitations of the method in claim 1 as cited above and Verwey further teaches the limitation:
wherein the convergence criterion is a k value (Given the specification, with no explicit definition, a K value can be understood to be any convergence criterion variable that can indicate when a model has reached convergence. This includes, potentially, when a certain number of training rounds have been done, when a threshold performance over multiple agent environments is reached, when the reward rate of clients compared to completion time per episode reaches a certain value, and so on. See paragraph [0056], “The stopping condition can define a specified quantity of computational resources to be used (e.g., a budget in GPU-days), a specified performance criteria (e.g., a threshold accuracy), a specified duration of time, a specified number of training iterations, etc.” Note that as cited in claim 3, stopping condition, convergence condition, or convergence criterion are all understood to be the same thing, and potentially k values)
Regarding claim 11, see the rejection for claim 1 above. Note that the only difference between claim 1 and claim 11 is that claim 11 is directed towards an article of manufacture (a non-transitory storage medium holding instructions for the method) whereas claim 1 is directed towards the method. Further, see Verwey, Paragraph [0121], “Another example can include a system comprising a training computing device comprising a processor, and a storage medium storing instructions which, when executed by the processor, cause the training computing device to execute a training process configured to…,” which covers claimed invention being stored as instructions in a non-transitory storage medium.
Regarding claim 12, see the rejection for claim 2 above. Note that the only difference between claim 12 and claim 2 is that claim 12 is directed towards the article of manufacture whereas claim 2 is directed towards the method held as instructions in the article of manufacture. See the rejection for claim 11 above, which addresses the additional limitation.
Regarding claim 13, see the rejection for claim 3 above. Note that the only difference between claim 13 and claim 3 is that claim 13 is directed towards the article of manufacture whereas claim 3 is directed towards the method held as instructions in the article of manufacture. See the rejection for claim 11 above, which addresses the additional limitation.
Regarding claim 14, see the rejection for claim 4 above. Note that the only difference between claim 14 and claim 4 is that claim 14 is directed towards the article of manufacture whereas claim 4 is directed towards the method held as instructions in the article of manufacture. See the rejection for claim 11 above, which addresses the additional limitation.
Regarding claim 15, see the rejection for claim 5 above. Note that the only difference between claim 15 and claim 5 is that claim 15 is directed towards the article of manufacture whereas claim 5 is directed towards the method held as instructions in the article of manufacture. See the rejection for claim 11 above, which addresses the additional limitation.
Regarding claim 16, see the rejection for claim 6 above. Note that the only difference between claim 16 and claim 6 is that claim 16 is directed towards the article of manufacture whereas claim 6 is directed towards the method held as instructions in the article of manufacture. See the rejection for claim 11 above, which addresses the additional limitation.
Regarding claim 17, see the rejection for claim 7 above. Note that the only difference between claim 17 and claim 7 is that claim 17 is directed towards the article of manufacture whereas claim 7 is directed towards the method held as instructions in the article of manufacture. See the rejection for claim 11 above, which addresses the additional limitation.
Regarding claim 18, see the rejection for claim 8 above. Note that the only difference between claim 18 and claim 8 is that claim 18 is directed towards the article of manufacture whereas claim 8 is directed towards the method held as instructions in the article of manufacture. See the rejection for claim 11 above, which addresses the additional limitation.
Regarding claim 20, see the rejection for claim 10 above. Note that the only difference between claim 20 and claim 10 is that claim 20 is directed towards the article of manufacture whereas claim 10 is directed towards the method held as instructions in the article of manufacture. See the rejection for claim 11 above, which addresses the additional limitation.
Claims 9 and 19 are rejected under 35 U.S.C. 103 as being unpatentable over Verwey (US 20230281277 A1) in view of Espeholt et. al. (US 20220343164 A1), further in view of Jeong et. al. (US 20220271999 A1).
Regarding claim 9, Verwey as modified by Espeholt teaches all of the limitations of the method in claim 1 as cited above, but does not distinctly disclose the limitation:
wherein the server increases or decrease the ε values for each client depending on their performance in training compared to global performance
However, Jeong teaches:
(Paragraph [0071], “adjust a value of an exploration rate associated with training of the reinforcement learning agent, based on a performance indicator associated with the managed process.”) wherein the server increases the ε value for one of the clients whose performance in the training is lower than a global performance in training the model… (Paragraph [0065], “In some embodiments, the node may be configured to increase the value of the exploration rate when the performance as indicated by the performance indicator decreases below a second threshold, the second threshold being lower than the first threshold. The second threshold may be indicative, for example of poor or low performance.” Note that the value of the exploration rate is understood to be the same variable as the ε value and could be increased respective to each client as described by the citations for Espeholt in claim 1 above. Further, note that one could set the 2nd threshold as the global performance, and thereby increase the ε values when the clients performance falls below the 2nd threshold or global performance),
…and the server decreases the ε value for one of the clients whose performance in the training is greater than a global performance in training the model (Paragraph [0067], “In some embodiments, the node may be configured to decrease the value of the exploration rate when the performance as indicated by the performance indicator is between the first and second thresholds.” Note that as above, one could set the 2nd threshold to be the global performance and further set the 1st threshold to be higher than the global performance, thereby if the performance falls between the first and second thresholds, the client performance is greater than global performance and the exploration rate is decreased. As above the value of the exploration rate and ε are understood to be the same variable.)
Regarding claim 19, see the rejection for claim 9 above. Note that the only difference between claim 19 and claim 9 is that claim 19 is directed towards the article of manufacture whereas claim 9 is directed towards the method held as instructions in the article of manufacture. See the rejection for claim 11 above, which addresses the additional limitation.
Citation of Pertinent Prior Art
The prior art made of record and not relied upon is considered pertinent to applicant's
disclosure. Kusari et. al. (US 20200062262 A1) discusses a reinforcement learning algorithm that uses an epsilon-greedy approach and randomly initializes the policy values for the exploration strategy. It additionally discloses a reward function that is used for determining actions in client environments. Woehlke (US 20220197227 A1) teaches a reinforcement learning strategy that uses a performance measure to determine actions during training based on the performance measure. Nazari (US 20190102676 A1) teaches a reinforcement learning approach that relies on online and offline training, applying concurrent learning across multiple environments in real time, and allowing learner agents to self-adjust their exploration policies depending on the consequences of the actions they took.
Conclusion
The prior art made of record and not relied upon is considered pertinent to Applicant's
disclosure. Applicant is required under 37 C.F.R. § 1.111(c) to consider these references fully when responding to this action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Zane Rawlings whose telephone number is (571)270-3372. The examiner can normally be reached M-F, 8am to 5pm ET.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Alexey Shmatov can be reached at (571) 270-3428. 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.A.R./Examiner, Art Unit 2123
/ALEXEY SHMATOV/Supervisory Patent Examiner, Art Unit 2123