DETAILED ACTION
Claims 1-20 are presented for examination. This office action is response to the submission on 9/26/2024.
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 filed on 9/26/2024 are acceptable for examination proceedings.
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 to an abstract idea without significantly more.
Independent Claims 1 and 8:
Claim 1 is drawn to a method and claim 8 is drawn to an apparatus. Therefore claims 1 and 8 fall under one of the four categories of statutory subject matter (process/method, machines/products/apparatus, manufactures, and compositions of matter).
Step 2A: Is the claim directed to a law of nature, a natural phenomenon (product of nature), or an abstract idea?
It is an abstract idea.
Step 2A-Prong 1: Does the claim recite an abstract idea, law of nature, or natural phenomenon?
Yes.
MPEP 2106.04(a) - “Mental processes – concepts performed in the human mind (including an observation, evaluation, judgment, opinion).”
Claims 1 and 8 are directed to a judicially recognized exception of an abstract idea without significantly more. Each of claims 1 and 8 recite functions below that under the limitation’s broadest reasonable interpretation, enumerates mental concepts. Other than reciting generic computer elements “computer-readable storage media;” (as recited in claim 8), “processing device” (as recited in claim 8), nothing in the claims preclude the functions from the mental concept.
The mere nominal recitation of a generic processor to perform the mental concept does not take the claim limitations out of the abstract idea (See MPEP 2106.04(a)(2)(III)).
“determining a first fan control setting with which to control a fan in the data storage environment based on the first set of test states;” A human can determine a fan control setting based on test states (Judgment).
“evaluating a change in the temperatures of the storage devices based on the first fan control setting;” A human can evaluate a change in temperature based on a fan control setting (Judgment).
“iteratively determining a subsequent fan control setting based on the change in the temperatures until the change in the temperatures exceeds a threshold amount;” A human can determine fan control settings until the temperature exceeds a threshold (Evaluation).
“and in response to determining that the change in the temperatures exceeds the threshold amount, correlating the determined subsequent fan control setting to the first set of test states.” A human can correlate a fan setting to a test state based on a change in temperature exceeding a threshold (judgment).
Step 2A-Prong 2: Does the claim recite additional element that integrate the judicial exception into a practical application?
No.
2106.05(f) Mere Instructions To Apply An Exception
“As explained by the Supreme Court, in order to make a claim directed to a judicial exception patent-eligible, the additional element or combination of elements must do "‘more than simply stat[e] the [judicial exception] while adding the words ‘apply it’". Alice Corp. v. CLS Bank, 573 U.S. 208, 221, 110 USPQ2d 1976, 1982-83 (2014) (quoting Mayo Collaborative Servs. V. Prometheus Labs., Inc., 566 U.S. 66, 72, 101 USPQ2d 1961, 1965). Thus, for example, claims that amount to nothing more than an instruction to apply the abstract idea using a generic computer do not render an abstract idea eligible. Alice Corp., 573 U.S. at 223, 110 USPQ2d at 1983. See also 573 U.S. at 224, 110 USPQ2d at 1984 (warning against a § 101 analysis that turns on "the draftsman’s art").”
The following is using generic computer elements:
“computer-readable storage media;” (as recited in claim 8), “processing device” (as recited in claim 8).
2106.05(g) Insignificant Extra-Solution Activity
The term "extra-solution activity" can be understood as activities incidental to the primary process or product that are merely a nominal or tangential addition to the claim. Extra-solution activity includes both pre-solution and post-solution activity. An example of pre-solution activity is a step of gathering data for use in a claimed process, e.g., a step of obtaining information about credit card transactions, which is recited as part of a claimed process of analyzing and manipulating the gathered information by a series of steps in order to detect whether the transactions were fraudulent. An example of post-solution activity is an element that is not integrated into the claim as a whole, e.g., a printer that is used to output a report of fraudulent transactions, which is recited in a claim to a computer programmed to analyze and manipulate information about credit card transactions in order to detect whether the transactions were fraudulent.
The following is pre-solution activity (mere data gathering):
“determining a first set of test states comprising temperatures of storage devices in a data storage environment;” (as recited in claim 1)
MPEP 2106.05(h) – Field of Use
MPEP 2106.05(h) states: “Another consideration when determining whether a claim integrates the judicial exception into a practical application in Step 2A Prong Two or recites significantly more than a judicial exception in Step 2B is whether the additional elements amount to more than generally linking the use of a judicial exception to a particular technological environment or field of use. As explained by the Supreme Court, a claim directed to a judicial exception cannot be made eligible "simply by having the applicant acquiesce to limiting the reach of the patent for the formula to a particular technological use." Diamond v. Diehr, 450 U.S. 175, 192 n.14, 209 USPQ 1, 10 n. 14 (1981). Thus, limitations that amount to merely indicating a field of use or technological environment in which to apply a judicial exception do not amount to significantly more than the exception itself, and cannot integrate a judicial exception into a practical application.”
“a first fan control setting with which to control a fan in the data storage” is merely describing that the fan control setting may be used to control a fan.
Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception?
Well-Understood, Routine, and Conventional Activity (2106.05(d)):
As Berkheimer evidence that the claim elements “determining a first set of test states comprising temperatures of storage devices in a data storage environment;” are well understood, routine, and conventional, Yang (US9846444B1) provides support that the above claim element is conventional as Yang teaches monitoring a temperature of a CPU in Yang [Column 3 lines 30-38] "In an embodiment, the electronic apparatus further includes a temperature sensing unit, and the temperature sensing unit is close to or directly connected to the CPU, for sensing temperature of the CPU. In an embodiment, temperature of the CPU may be equal to temperature of the CPU surface. After step S12, the electronic apparatus continuously senses temperature of the CPU through the temperature sensing unit, and determines whether the temperature of the CPU reaches the set-point (step S14)."; Yang teaches multiple temperature sensing units of different elements including hard drives or memories in Yang [Column 6 lines 31-37] "It needs to be noted that, the electronic apparatus may include multiple temperature sensing units to respectively sense temperatures of different electronic elements, such as CPU, hard drive, memory, etc. Different electronic elements have different set points. In an embodiment, the PID controller adjusts an electronic element having the smallest error to generate the PWM value for controlling the fan."
Additional support that these elements are well understood, routine, and conventional are provided in the pertinent art section in the conclusion.
The additional elements amount to well-understood, routine, and conventional components, implementing a generic processor and memory to mental processes and insignificant pre-solution activity that are directed towards a field of use. “Courts have held computer‐implemented processes not to be significantly more than an abstract idea (and thus ineligible) where the claim as a whole amounts to nothing more than generic computer functions merely used to implement an abstract idea, such as an idea that could be done by a human analog (i.e., by hand or by merely thinking). On the other hand, courts have held computer-implemented processes to be significantly more than an abstract idea (and thus eligible), where generic computer components are able in combination to perform functions that are not merely generic.” DDR Holdings, LLC v. Hotels.com, L.P., 773 F.3d 1245, 1257-59, 113 USPQ2d 1097, 1105-07 (Fed. Cir. 2014). ”Selecting information, based on types of information and availability of information in a power-grid environment, for collection, analysis and display” Electric Power Group, LLC v. Alstom S.A., 830 F.3d 1350, 1354-55, 119 USPQ2d 1739, 1742 (Fed. Cir. 2016).
Examiner recommends actively reciting the control of the fan using the determined fan control setting rather than merely determining the fan control setting.
As such, claims 1 and 8 are not patent eligible.
Independent Claim 15:
Claim 15 is drawn to a method. Therefore claim 15 falls under one of the four categories of statutory subject matter (process/method, machines/products/apparatus, manufactures, and compositions of matter).
Step 2A: Is the claim directed to a law of nature, a natural phenomenon (product of nature), or an abstract idea?
It is an abstract idea.
Step 2A-Prong 1: Does the claim recite an abstract idea, law of nature, or natural phenomenon?
Yes.
MPEP 2106.04(a) - “Mental processes – concepts performed in the human mind (including an observation, evaluation, judgment, opinion).”
Claim 15 is directed to a judicially recognized exception of an abstract idea without significantly more. Claim 15 recites functions below that under the limitation’s broadest reasonable interpretation, enumerates mental concepts. Other than reciting generic computer elements “machine learning model”, nothing in the claims preclude the functions from the mental concept.
The mere nominal recitation of a generic processor to perform the mental concept does not take the claim limitations out of the abstract idea (See MPEP 2106.04(a)(2)(III)).
“generating training data with which to train the machine learning model, wherein the training data comprises temperature states” A human can generate training data (observation).
“generating feature embeddings for the training data;” A human can generate feature embeddings for the training data (judgment).
“providing the feature embeddings as input to the machine learning model to obtain a fan control setting” A human can provide the feature embeddings as input to the model (Judgment).
“and validating the fan control setting.” A human can validate a fan control setting (Judgment).
Step 2A-Prong 2: Does the claim recite additional element that integrate the judicial exception into a practical application?
No.
2106.05(f) Mere Instructions To Apply An Exception
“As explained by the Supreme Court, in order to make a claim directed to a judicial exception patent-eligible, the additional element or combination of elements must do "‘more than simply stat[e] the [judicial exception] while adding the words ‘apply it’". Alice Corp. v. CLS Bank, 573 U.S. 208, 221, 110 USPQ2d 1976, 1982-83 (2014) (quoting Mayo Collaborative Servs. V. Prometheus Labs., Inc., 566 U.S. 66, 72, 101 USPQ2d 1961, 1965). Thus, for example, claims that amount to nothing more than an instruction to apply the abstract idea using a generic computer do not render an abstract idea eligible. Alice Corp., 573 U.S. at 223, 110 USPQ2d at 1983. See also 573 U.S. at 224, 110 USPQ2d at 1984 (warning against a § 101 analysis that turns on "the draftsman’s art").”
The following is using generic computer elements:
“machine learning model”
MPEP 2106.05(h) – Field of Use
MPEP 2106.05(h) states: “Another consideration when determining whether a claim integrates the judicial exception into a practical application in Step 2A Prong Two or recites significantly more than a judicial exception in Step 2B is whether the additional elements amount to more than generally linking the use of a judicial exception to a particular technological environment or field of use. As explained by the Supreme Court, a claim directed to a judicial exception cannot be made eligible "simply by having the applicant acquiesce to limiting the reach of the patent for the formula to a particular technological use." Diamond v. Diehr, 450 U.S. 175, 192 n.14, 209 USPQ 1, 10 n. 14 (1981). Thus, limitations that amount to merely indicating a field of use or technological environment in which to apply a judicial exception do not amount to significantly more than the exception itself, and cannot integrate a judicial exception into a practical application.”
“wherein the training data comprises temperature states associated with storage devices in a data storage environment and corresponding fan control settings associated with fans in the data storage environment;” is merely describing that the training data comprises temperature states which are associated with storage devices and fan control settings which are associated with fans in the environment.
“obtain a fan control setting with which to control a fan in the data storage environment;” is merely describing that the fan control setting may be used to control a fan.
Step 2B: Does the claim recite additional elements that amount to significantly more than the judicial exception?
No. Examiner recommends actively reciting the control of the fan using the determined fan control setting rather than merely determining the fan control setting.
The additional elements amount to implementing a generic machine learning model to perform mental processes which are directed towards a field of use. “Courts have held computer‐implemented processes not to be significantly more than an abstract idea (and thus ineligible) where the claim as a whole amounts to nothing more than generic computer functions merely used to implement an abstract idea, such as an idea that could be done by a human analog (i.e., by hand or by merely thinking). On the other hand, courts have held computer-implemented processes to be significantly more than an abstract idea (and thus eligible), where generic computer components are able in combination to perform functions that are not merely generic.” DDR Holdings, LLC v. Hotels.com, L.P., 773 F.3d 1245, 1257-59, 113 USPQ2d 1097, 1105-07 (Fed. Cir. 2014). ”Selecting information, based on types of information and availability of information in a power-grid environment, for collection, analysis and display” Electric Power Group, LLC v. Alstom S.A., 830 F.3d 1350, 1354-55, 119 USPQ2d 1739, 1742 (Fed. Cir. 2016).
As such, claim 15 is not patent eligible.
Dependent Claims 2-7 and 9-14:
Step 1:
Claims 2-7 are drawn to a method, claims 9-14 are drawn to an apparatus, therefore each of claims 2-7 and 9-14 fall under one of four categories of statutory subject matter (process/method, machines/products/apparatus, manufactures, and compositions of matter). Nonetheless, dependent claims 2-7 and 9-14 are also ineligible for the same reasons given with respect to claims 1 and 8.
Steps 2A-2B:
Claims 2-7 and 9-14 recite further details of the mental abstract concepts of the test states comprising processing loads, the test states comprising ambient temperatures, iteratively determining fan control settings based on power savings, iteratively determining fan control settings based on a risk threshold, iteratively determining a fan setting by decrementing a fan control setting, and recites further details about the fan control setting comprising a PWM duty cycle. (See MPEP 2106.04(a)(2)(III)).
Dependent Claims 16-20:
Step 1:
Claims 16-20 are drawn to a method, therefore each of claims 16-20 fall under one of four categories of statutory subject matter (process/method, machines/products/apparatus, manufactures, and compositions of matter). Nonetheless, dependent claims 16-20 are also ineligible for the same reasons given with respect to claims 15.
Steps 2A-2B:
Claims 16-20 recite further details of the mental abstract concepts of the training data comprising processing loads, the training data comprising ambient temperatures, validating the fan control setting comprising comparing the fan control setting to a pre-determined setting, validating the fan control setting comprising determining a loss function based on the comparison, and validating the fan control setting comprising decrementing the setting based on the loss function until the function falls below a threshold. (See MPEP 2106.04(a)(2)(III)).
As such, claims 2-7, 9-14, and 16-20 are not patent eligible.
Claim Rejections - 35 USC § 102
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention.
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1-2, 4, 6-9, 11 and 13-14 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Yang (US9846444B1).
Claim 1:
Yang teaches “A method of generating training data with which to train a machine learning model, the method comprising: determining a first set of test states comprising temperatures of storage devices in a data storage environment;” (Yang teaches monitoring a temperature of a CPU e.g. of a data storage device in Yang [Column 3 lines 30-38] "In an embodiment, the electronic apparatus further includes a temperature sensing unit, and the temperature sensing unit is close to or directly connected to the CPU, for sensing temperature of the CPU. In an embodiment, temperature of the CPU may be equal to temperature of the CPU surface. After step S12, the electronic apparatus continuously senses temperature of the CPU through the temperature sensing unit, and determines whether the temperature of the CPU reaches the set-point (step S14)."; Yang teaches multiple temperature sensing units of different elements including hard drives or memories in Yang [Column 6 lines 31-37] "It needs to be noted that, the electronic apparatus may include multiple temperature sensing units to respectively sense temperatures of different electronic elements, such as CPU, hard drive, memory, etc. Different electronic elements have different set points. In an embodiment, the PID controller adjusts an electronic element having the smallest error to generate the PWM value for controlling the fan."),
“determining a first fan control setting with which to control a fan in the data storage environment based on the first set of test states;” (Yang teaches controlling a fan in Yang [Column 3 lines 10-19] "Please refer to FIG. 1, which shows a flowchart of controlling according to a first embodiment of the present invention. In the present invention, a user, management staff, or controller starts up the electronic apparatus (step S10). After the electronic apparatus is started, the electronic apparatus controls the fan therein to start operation (step S12). Specifically, temperature of the electronic apparatus is low when being initially started so that the electronic apparatus may control the fan rotating in a default rotating speed."),
“evaluating a change in the temperatures of the storage devices based on the first fan control setting;” (Yang teaches a temperature sensor that monitors the CPU temperature continuously in Yang [Column 3 lines 30-38] "In an embodiment, the electronic apparatus further includes a temperature sensing unit, and the temperature sensing unit is close to or directly connected to the CPU, for sensing temperature of the CPU. In an embodiment, temperature of the CPU may be equal to temperature of the CPU surface. After step S12, the electronic apparatus continuously senses temperature of the CPU through the temperature sensing unit, and determines whether the temperature of the CPU reaches the set-point (step S14)."),
“iteratively determining a subsequent fan control setting based on the change in the temperatures until the change in the temperatures exceeds a threshold amount;” (Yang teaches adjusting the PWM value of the fan iteratively in Yang [Column 8 lines 5-28] "As shown in FIG. 2, after step S18 in FIG. 1, the electronic apparatus obtains a current temperature value of the CPU by the temperature sensing unit (step S200). Next, the current temperature value (that is, same as the CPU temperature T1 in FIG. 4) is compared with the set-point (step S202). After comparison, the electronic apparatus may obtain at least the following three results.After comparison, if it is determined that the current temperature value is lower than the set-point, then the electronic apparatus decreases the PWM value obtained in step S18 to generate the adjusted PWM value (step S204).After comparison, if it is determined that the current temperature value equals the set-point, then the electronic apparatus does not adjust the PWM value obtained in step S18, but directly uses the PWM value to be the adjusted PWM value (step S206).After comparison, if it is determined that the current temperature value is higher than the set-point, then the electronic apparatus increases the PWM value obtained in step S18 to generate the adjusted PWM value (step S208).Finally, the electronic apparatus executes step S22 according to the adjusted PWM value generated in step S204, S206 or S208 to control the operation of the fan."; Yang teaches that step S18 will only execute if the temperature reaches a setpoint i.e. threshold amount in Yang [Column 4 lines 5-7] "If the temperature of the CPU reaches the set-point, the electronic apparatus may further obtain a current operating watt value of the CPU (step S16)." and in Yang Fig. 1), and
“and in response to determining that the change in the temperatures exceeds the threshold amount, correlating the determined subsequent fan control setting to the first set of test states.” (Yang teaches that if the temperature equals the set point, it correlates the adjusted PWM value to the learning table in Yang [Column 6 lines 55-62] "If temperature of the CPU (that is, CPU temperature T1 shown in FIG. 4) equals the set-point, the electronic apparatus stores the current operating watt value of the CPU and the adjusted PWM value to the learning table, makes the adjusted PWM value relate to the operating watt value, and uses the adjusted PWM value to be a confirmed PWM value corresponding to the operating watt value (step S26).").
Claim 2:
Yang teaches “The method of claim 1, wherein the first set of test states further comprise processing loads of processing devices in the data storage environment.” (Yang teaches monitoring a watt value of a CPU i.e. the processing load would influence the power usage in Yang [Column 4 lines 5-11] "If the temperature of the CPU reaches the set-point, the electronic apparatus may further obtain a current operating watt value of the CPU (step S16). Specifically, the electronic apparatus may further include a watt value measuring unit, and the watt value measuring unit is electrically connected to the CPU for measuring the operating watt value (Watt) of the operating CPU.").
Claim 4:
Yang teaches “The method of claim 1, further comprising iteratively determining the subsequent fan control setting based on an amount of power savings in the data storage environment achieved by applying the subsequent fan control setting.” (Yang teaches that the CPU is operated to maintain the temperature within 1 deg C of the set point i.e. the fan will operate at the most optimal PWM setting, saving power compared to a previous PWM setting that had the temperature below the set point in Yang [Column 6 lines 24-30] "After step S22, the electronic apparatus controls operation of the fan according to the adjusted PWM value to lower the temperature of the CPU by the fan so that the temperature of the CPU is lower than the maximum withstand temperature and varied within a particular range of the set-point (that is, as shown in FIG. 4, the CPU temperature T1 is kept within plus or minus 1 degree Celsius of the set-point).").
Claim 6:
Yang teaches “The method of claim 1, wherein iteratively determining the subsequent fan control setting comprises sequentially decrementing a given fan control setting from an initial value to a subsequent value in a descending order.” (Yang teaches adjusting the PWM value of the fan iteratively i.e. if the temperature is too low, it decreases the PWM in Yang [Column 8 lines 5-28] "As shown in FIG. 2, after step S18 in FIG. 1, the electronic apparatus obtains a current temperature value of the CPU by the temperature sensing unit (step S200). Next, the current temperature value (that is, same as the CPU temperature T1 in FIG. 4) is compared with the set-point (step S202). After comparison, the electronic apparatus may obtain at least the following three results.After comparison, if it is determined that the current temperature value is lower than the set-point, then the electronic apparatus decreases the PWM value obtained in step S18 to generate the adjusted PWM value (step S204).After comparison, if it is determined that the current temperature value equals the set-point, then the electronic apparatus does not adjust the PWM value obtained in step S18, but directly uses the PWM value to be the adjusted PWM value (step S206).After comparison, if it is determined that the current temperature value is higher than the set-point, then the electronic apparatus increases the PWM value obtained in step S18 to generate the adjusted PWM value (step S208).Finally, the electronic apparatus executes step S22 according to the adjusted PWM value generated in step S204, S206 or S208 to control the operation of the fan." ).
Claim 7:
Yang teaches “The method of claim 6, wherein the values of the fan control settings comprise pulse-width modulation (PWM) duty cycle values corresponding to a speed of the fan.” (Yang teaches controlling the fan according to the PWM value in Yang [Column 5 lines 3-16] "After step S18, the electronic apparatus further adjusts the obtained PWM value by the PID controller to generate an adjusted PWM value (step S20). Afterward, the operation of the fan is controlled according to the adjusted PWM value (step S22). In other words, before the temperature of the CPU reaches the set-point and the operating watt value varies largely, the electronic apparatus controls the fan to operate with a default rotating speed. After the temperature of the CPU reaches the set-point for the first time or the operating watt value of the CPU largely varies, the electronic apparatus continues to generate the adjusted PWM value to control the fan to operate with the adjusted PWM value.").
Claim 8:
Yang teaches “A computing apparatus comprising: one or more computer-readable storage media; and program instructions stored on the one or more computer-readable storage media executable by a processing device that, based on being read and executed by the processing device, direct the processing device to: determine a first set of test states comprising temperatures of storage devices in a data storage environment;” (Yang teaches a method of controlling fans i.e. using program instructions stored oncomputer readable storage media in Yang [Column 2 lines 50-62] "The present invention discloses a method of controlling and adjusting fans of the electronic apparatus (hereafter referred to as the “method”), and the method is mainly applied to the electronic apparatus with heavy load of calculation and requiring effective cooling, such as a supercomputer, a server system, etc.Specifically, the aforementioned electronic apparatus mainly has a central processing unit (CPU), a fan, and multiple electronic elements (such as memory, hard drive, network module, power supply module, output/input module, etc.). In the present invention, the method is mainly used for controlling operation of the fan to adjust rotating speed of the fan, and cooling the CPU."; Yang teaches monitoring a temperature of a CPU e.g. of a data storage device in Yang [Column 3 lines 30-38] "In an embodiment, the electronic apparatus further includes a temperature sensing unit, and the temperature sensing unit is close to or directly connected to the CPU, for sensing temperature of the CPU. In an embodiment, temperature of the CPU may be equal to temperature of the CPU surface. After step S12, the electronic apparatus continuously senses temperature of the CPU through the temperature sensing unit, and determines whether the temperature of the CPU reaches the set-point (step S14)."; Yang teaches multiple temperature sensing units of different elements including hard drives or memories in Yang [Column 6 lines 31-37] "It needs to be noted that, the electronic apparatus may include multiple temperature sensing units to respectively sense temperatures of different electronic elements, such as CPU, hard drive, memory, etc. Different electronic elements have different set points. In an embodiment, the PID controller adjusts an electronic element having the smallest error to generate the PWM value for controlling the fan."),
“determine a first fan control setting with which to control a fan in the data storage environment based on the first set of test states;” (Yang teaches controlling a fan in Yang [Column 3 lines 10-19] "Please refer to FIG. 1, which shows a flowchart of controlling according to a first embodiment of the present invention. In the present invention, a user, management staff, or controller starts up the electronic apparatus (step S10). After the electronic apparatus is started, the electronic apparatus controls the fan therein to start operation (step S12). Specifically, temperature of the electronic apparatus is low when being initially started so that the electronic apparatus may control the fan rotating in a default rotating speed."),
“evaluate a change in the temperatures of the storage devices based on the first fan control setting;” (Yang teaches a temperature sensor that monitors the CPU temperature continuously in Yang [Column 3 lines 30-38] "In an embodiment, the electronic apparatus further includes a temperature sensing unit, and the temperature sensing unit is close to or directly connected to the CPU, for sensing temperature of the CPU. In an embodiment, temperature of the CPU may be equal to temperature of the CPU surface. After step S12, the electronic apparatus continuously senses temperature of the CPU through the temperature sensing unit, and determines whether the temperature of the CPU reaches the set-point (step S14)."),
“iteratively determine a subsequent fan control setting based on the change in the temperatures until the change in the temperatures exceeds a threshold amount;” (Yang teaches adjusting the PWM value of the fan iteratively in Yang [Column 8 lines 5-28] "As shown in FIG. 2, after step S18 in FIG. 1, the electronic apparatus obtains a current temperature value of the CPU by the temperature sensing unit (step S200). Next, the current temperature value (that is, same as the CPU temperature T1 in FIG. 4) is compared with the set-point (step S202). After comparison, the electronic apparatus may obtain at least the following three results.After comparison, if it is determined that the current temperature value is lower than the set-point, then the electronic apparatus decreases the PWM value obtained in step S18 to generate the adjusted PWM value (step S204).After comparison, if it is determined that the current temperature value equals the set-point, then the electronic apparatus does not adjust the PWM value obtained in step S18, but directly uses the PWM value to be the adjusted PWM value (step S206).After comparison, if it is determined that the current temperature value is higher than the set-point, then the electronic apparatus increases the PWM value obtained in step S18 to generate the adjusted PWM value (step S208).Finally, the electronic apparatus executes step S22 according to the adjusted PWM value generated in step S204, S206 or S208 to control the operation of the fan."; Yang teaches that step S18 will only execute if the temperature reaches a setpoint i.e. threshold amount in Yang [Column 4 lines 5-7] "If the temperature of the CPU reaches the set-point, the electronic apparatus may further obtain a current operating watt value of the CPU (step S16)." and in Yang Fig. 1), and
“and in response to determining that the change in the temperatures exceeds the threshold amount, correlate the determined subsequent fan control setting to the first set of test states.” (Yang teaches that if the temperature equals the set point, it correlates the adjusted PWM value to the learning table in Yang [Column 6 lines 55-62] "If temperature of the CPU (that is, CPU temperature T1 shown in FIG. 4) equals the set-point, the electronic apparatus stores the current operating watt value of the CPU and the adjusted PWM value to the learning table, makes the adjusted PWM value relate to the operating watt value, and uses the adjusted PWM value to be a confirmed PWM value corresponding to the operating watt value (step S26).").
Claims 9, 11 and 13-14:
The limitations of claims 9, 11 and 13-14 are substantially the same as claims 2, 4 and 6-7 respectively and they are rejected for the same reasons.
Claims 15-17 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Lee et al. (US20230403816A1).
Claim 15:
Lee teaches “A method of training a machine learning model, the method comprising: generating training data with which to train the machine learning model, wherein the training data comprises temperature states associated with storage devices in a data storage environment and corresponding fan control settings associated with fans in the data storage environment;” (Lee teaches a neural network with an input being the temperature of the processor X4-X5 i.e. a stoarge device and a speed of fans in Lee [0020-0029] "The following characteristic variables X1 to X9 can be input to the neural network to perform machine learning:X1: a power load of system 100;X2: a speed of the fan zone Zone1, where the fan zone Zone1 can include fans 111 and 112;X3: a speed of the fan zone Zone2, where the fan zone Zone2 can include fans 113 and 114;X4: a temperature of the processor 121;X5: a temperature of the processor 122;X6: a temperature of the bus card 131;X7: a temperature of the bus card 132;X8: a temperature of bus card 133; andX9: an inlet temperature of system 100."; Lee teaches generating adjusted variables X2 and X3 for fan speeds in Lee [0035-0040] "As shown in FIG. 1 to FIG. 4 , the fan control method 300 can include the following steps. Step 310: collect M first sets of characteristic variables X1 to X9 of a first period T1; Step 320: input the M first sets of characteristic variables X1 to X9 to a neural network of the controller 240 to generate N third sets of characteristic variables X6 to X8 of a second period T2 corresponding to a second set of characteristic variables X2 and X3; Step 330: adjust the second set of characteristic variables X2 and X3 to generate P adjusted second sets of characteristic variables X2 and X3 to accordingly generate Q adjusted third sets of characteristic variables X6 to X8; Step 340: generate an optimized second set of characteristic variables X2 and X3 according to the N third sets of characteristic variables X6 to X8 and the Q adjusted third sets of characteristic variables X6 to X8; Step 350: generate a set of weights according to the optimized second set of characteristic variables X2 and X3; and Step 360: control the set of fans (e.g. the fans 111 to 114) according to the set of weights."),
“generating feature embeddings for the training data; providing the feature embeddings as input to the machine learning model to obtain a fan control setting with which to control a fan in the data storage environment;” (Lee teaches generating adjusted variables X2 and X3 for fan speeds i.e. the model outputs the fan control setting based on M characteristic variables X1 to X9 i.e. feature embeddings in Lee [0035-0040] "As shown in FIG. 1 to FIG. 4 , the fan control method 300 can include the following steps. Step 310: collect M first sets of characteristic variables X1 to X9 of a first period T1; Step 320: input the M first sets of characteristic variables X1 to X9 to a neural network of the controller 240 to generate N third sets of characteristic variables X6 to X8 of a second period T2 corresponding to a second set of characteristic variables X2 and X3; Step 330: adjust the second set of characteristic variables X2 and X3 to generate P adjusted second sets of characteristic variables X2 and X3 to accordingly generate Q adjusted third sets of characteristic variables X6 to X8; Step 340: generate an optimized second set of characteristic variables X2 and X3 according to the N third sets of characteristic variables X6 to X8 and the Q adjusted third sets of characteristic variables X6 to X8; Step 350: generate a set of weights according to the optimized second set of characteristic variables X2 and X3; and Step 360: control the set of fans (e.g. the fans 111 to 114) according to the set of weights." and in Lee [0030] "The characteristic variables X1 to X9 can be input into a neural network to predict the characteristic variables X6 to X8 (i.e. the temperatures of the bus card 131 to 133) so as to obtain better characteristic variables X2 and X3 (i.e. the fan speeds). A better two-dimensional matrix can be generated accordingly to improve the control of the fans."), and
“and validating the fan control setting.” (Lee teaches a 2 stage greedy explore flow in order to generate optimized variables X2 and X3 for fan speed i.e. it validates the fan control setting in Lee [0058-0063] "For reducing the amount of calculation, 2-stage greedy explore flow can be used, as shown in FIG. 7 . FIG. 7 illustrates a flowchart for generating the optimized second set of characteristic variables X2 and X3 in Steps 330 and 340 of FIG. 3 . In FIG. 7 , the following steps can be performed. Step 710 can be related to Step 330, and Step 720 to 750 can be related to Step 340. Step 710: adjust the second set of characteristic variables X2 and X3 to generate the P adjusted second sets of characteristic variables X2 and X3 according to a non-minimum adjustment value of the second set of characteristic variables X2 and X3, so as to accordingly generate the Q adjusted third sets of characteristic variables X6 to X8; Step 720: generate a set of sums of absolute values according to differences of a predetermined value PV and each of the N third sets of characteristic variables X6 to X8 and the Q adjusted third sets of characteristic variables X6 to X8; Step 730: select a plurality of sets of third set of characteristic variables from the N third sets of characteristic variables X6 to X8 and the Q adjusted third sets of characteristic variables X6 to X8, where the plurality of sets of third set of characteristic variables X6 to X8 can be corresponding to lowest x % of the set of sums of absolute values, and 0<x<100; Step 740: select a plurality of second sets of characteristic variables X2 and X3 corresponding to the plurality of sets of third set of characteristic variables X6 to X8, where the plurality of second sets of characteristic variables X2 and X3 can be of a subset of the second set of characteristic variables X2 and X3 and the P adjusted second sets of characteristic variables X2 and X3; and Step 750: generate the optimized second set of characteristic variables X2 and X3 according to the plurality of second sets of characteristic variables X2 and X3 and a minimum adjustment value of the second set of characteristic variables X2 and X3.").
Claim 16:
Lee teaches “The method of claim 15, wherein the training data further comprises processing loads of processing devices in the data storage environment.” (Lee teaches a neural network with an input being the power load of the system i.e. the power load be influenced by processing load in Lee [0020-0029] "The following characteristic variables X1 to X9 can be input to the neural network to perform machine learning:X1: a power load of system 100;X2: a speed of the fan zone Zone1, where the fan zone Zone1 can include fans 111 and 112;X3: a speed of the fan zone Zone2, where the fan zone Zone2 can include fans 113 and 114;X4: a temperature of the processor 121;X5: a temperature of the processor 122;X6: a temperature of the bus card 131;X7: a temperature of the bus card 132;X8: a temperature of bus card 133; andX9: an inlet temperature of system 100.").
Claim 17:
Lee teaches “The method of claim 15, wherein the training data further comprises one or more ambient temperatures in the data storage environment.” (Lee teaches a neural network with an input being the inlet temperature of the system i.e. an ambient temperature and outputs a speed of fans in Lee [0020-0029] "The following characteristic variables X1 to X9 can be input to the neural network to perform machine learning:X1: a power load of system 100;X2: a speed of the fan zone Zone1, where the fan zone Zone1 can include fans 111 and 112;X3: a speed of the fan zone Zone2, where the fan zone Zone2 can include fans 113 and 114;X4: a temperature of the processor 121;X5: a temperature of the processor 122;X6: a temperature of the bus card 131;X7: a temperature of the bus card 132;X8: a temperature of bus card 133; andX9: an inlet temperature of system 100.").
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 3 and 10 are rejected under 35 U.S.C. 103 as being unpatentable over Yang (US9846444B1) in view of Lee et al. (US20230403816A1).
Claim 3:
Yang teaches “The method of claim 2,” as described above. Yang does not appear to explicitly teach “wherein the first set of test states further comprise ambient temperatures in the data storage environment.” However, Lee does teach this claim limitation (Lee teaches a neural network with an input being the inlet temperature of the system i.e. an ambient temperature and outputs a speed of fans in Lee [0020-0029] "The following characteristic variables X1 to X9 can be input to the neural network to perform machine learning:X1: a power load of system 100;X2: a speed of the fan zone Zone1, where the fan zone Zone1 can include fans 111 and 112;X3: a speed of the fan zone Zone2, where the fan zone Zone2 can include fans 113 and 114;X4: a temperature of the processor 121;X5: a temperature of the processor 122;X6: a temperature of the bus card 131;X7: a temperature of the bus card 132;X8: a temperature of bus card 133; andX9: an inlet temperature of system 100."; Lee teaches generating adjusted variables X2 and X3 for fan speeds in Lee [0035-0040] "As shown in FIG. 1 to FIG. 4 , the fan control method 300 can include the following steps. Step 310: collect M first sets of characteristic variables X1 to X9 of a first period T1; Step 320: input the M first sets of characteristic variables X1 to X9 to a neural network of the controller 240 to generate N third sets of characteristic variables X6 to X8 of a second period T2 corresponding to a second set of characteristic variables X2 and X3; Step 330: adjust the second set of characteristic variables X2 and X3 to generate P adjusted second sets of characteristic variables X2 and X3 to accordingly generate Q adjusted third sets of characteristic variables X6 to X8; Step 340: generate an optimized second set of characteristic variables X2 and X3 according to the N third sets of characteristic variables X6 to X8 and the Q adjusted third sets of characteristic variables X6 to X8; Step 350: generate a set of weights according to the optimized second set of characteristic variables X2 and X3; and Step 360: control the set of fans (e.g. the fans 111 to 114) according to the set of weights.").
Yang and Lee are analogous art because they are from the same field of endeavor of controlling fans. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention, having teachings of Yang and Lee before him/her, to modify the teachings of a Method for controlling and adjusting fans of electronic apparatus of Yang to include the adjustment of a fan speed based on ambient temperature of Lee because adding the Fan control method and fan control device for controlling fans using a neural network to process characteristic variables of Lee would allow for head dissipation performance of the fan to be improved as described in Lee [0072] "In summary, by using the fan control system 200 and the fan control method 300 provided by embodiments, the heat dissipation performance of the fan can be improved, and the excessive power consumption of the fan can also be reduced. The fan control system 200 and the fan control method 300 can also help applications such as artificial intelligence, 5G communications, 6G communications, edge computing, machine learning, internet of vehicles, internet of things, and cloud services."
Claim 10:
The limitations of claim 10 are substantially the same as claim 3 and it is rejected for the same reasons.
Claims 5 and 12 are rejected under 35 U.S.C. 103 as being unpatentable over Yang (US9846444B1) in view of An et al. (US20240160261A1).
Claim 5:
Yang teaches “The method of claim 1,” as described above. Yang does not appear to explicitly teach “further comprising iteratively determining the subsequent fan control setting based on a risk threshold value corresponding to a duration associated with a further change in the temperatures of the storage devices based on the subsequent fan control setting.” However, An does teach this claim limitation (An teaches predicting a future temperature of a CPU and adjusting a fan speed based on the prediction i.e. it determines a subsequent fan setting based on a risk of the temperature changing in An [0045-0047] "Hereinafter, a method for the smart fan algorithm engine 140 to calculate rotation speeds of the cooling fans F based on a current CPU power and a future CPU temperature will be described in detail with reference to FIG. 3 . FIG. 3 is a flowchart provided to explain a cooling fan rotation speed calculation method. As shown in FIG. 3 , the smart fan algorithm engine 140 may calculate current CPU power data from monitoring data collected by the computing module monitoring engine 110, and may acquire future CPU temperature data from the on-device AI prediction module 120. When the future CPU temperature [Tcpu(K+1)] exceeds a set maximum temperature (Tmax) (S220—Yes), the smart fan algorithm engine 140 may give an optimal rotation speed that is obtained when future CPU temperature [Tcpu (K+1)] is the maximum temperature (Tmax) as rotation speeds of the cooling fans F (S230)." and in An Fig. 3.).
Yang and An are analogous art because they are from the same field of endeavor of controlling fans. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention, having teachings of Yang and An before him/her, to modify the teachings of a Method for controlling and adjusting fans of electronic apparatus of Yang to include the prediction of a future temperature and adjustment of fan speed based on the prediction of An because adding the Smart power management method for power consumption reduction based on intelligent bmc of An would reduce power consumption as described in An [0027] "Embodiments of the disclosure propose an intelligent BMC which reduces power consumption of a server by interworking with on-device AI and a smart cooling fan control algorithm.”
Claim 12:
The limitations of claim 12 are substantially the same as claim 5 and it is rejected for the same reasons.
Claims 18-20 are rejected under 35 U.S.C. 103 as being unpatentable over Lee et al. (US20230403816A1) in view of Kim et al. (KR102687214B1) (citations to examiner provided translation).
Claim 18:
Lee teaches “The method of claim 15,” as described above. Lee does not appear to explicitly teach “wherein validating the fan control setting comprises performing a comparison between the fan control setting to a pre-determined fan control setting corresponding to the training data.” However, Kim does teach this claim limitation (Kim teaches training a fan control model where the input is current environment information and the output is fan control information in Kim [0045] "Specifically, the computing device (100) can train a fan control model based on a control pattern that has previously controlled each of the multiple fans in a space equipped with multiple fans for temperature control.Additionally, when the learning of the fan control model is completed, the computing device (100) can obtain fan control information by inputting the current environment information of the space into the fan control model. And, the computing device (100) can control each of the multiple fans based on fan control information."; Kim teaches training the model using supervised learning i.e. it performs a comparison between the fan control setting and a pre-determined control setting in Kim [0147] "Neural networks can be trained in at least one of supervised learning, unsupervised learning, and semi-supervised learning. The purpose of training a neural network is to minimize the error in the output. In neural network training, this is a process of repeatedly inputting training data into the network, calculating the error between the network's output and the target for the training data, and updating the weights of each node by backpropagating the network's error from the output layer to the input layer in a direction that reduces the error. In the case of supervised learning, training data is used where the correct answer is labeled for each training data point (i.e., labeled training data), whereas in the case of unsupervised learning, the correct answer may not be labeled for each training data point. In other words, for example, in the case of supervised learning regarding data classification, the training data can be data in which each training data item is labeled with a category. Labeled training data is input into a neural network, and the error can be calculated by comparing the output (category) of the neural network with the labels of the training data.").
Lee and Kim are analogous art because they are from the same field of endeavor of controlling fans. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention, having teachings of Lee and Kim before him/her, to modify the teachings of a Method for controlling and adjusting fans of electronic apparatus of Lee to include the training of a model using supervised learning of Kim because adding the Method for controlling fans using control pattern analysis based on artificial intelligence of Kim would increase energy efficiency as described in Kim [0127] "In this case, the fan control model can output fan control information suitable for various environmental conditions and space types. In addition, the computing device (100) can improve the user experience and increase energy efficiency by utilizing a fan control model.”
Claim 19:
Lee in view of Kim teaches “The method of claim 18, wherein validating the fan control setting further comprises determining a loss function based on the comparison.” (Kim teaches training a fan control model where the input is current environment information and the output is fan control information in Kim [0045] "Specifically, the computing device (100) can train a fan control model based on a control pattern that has previously controlled each of the multiple fans in a space equipped with multiple fans for temperature control. Additionally, when the learning of the fan control model is completed, the computing device (100) can obtain fan control information by inputting the current environment information of the space into the fan control model. And, the computing device (100) can control each of the multiple fans based on fan control information."; Kim teaches training the model using supervised learning i.e. in order to determine the weights which determine the fan control setting, it uses a loss function in Kim [0147] "Neural networks can be trained in at least one of supervised learning, unsupervised learning, and semi-supervised learning. The purpose of training a neural network is to minimize the error in the output. In neural network training, this is a process of repeatedly inputting training data into the network, calculating the error between the network's output and the target for the training data, and updating the weights of each node by backpropagating the network's error from the output layer to the input layer in a direction that reduces the error. In the case of supervised learning, training data is used where the correct answer is labeled for each training data point (i.e., labeled training data), whereas in the case of unsupervised learning, the correct answer may not be labeled for each training data point. In other words, for example, in the case of supervised learning regarding data classification, the training data can be data in which each training data item is labeled with a category. Labeled training data is input into a neural network, and the error can be calculated by comparing the output (category) of the neural network with the labels of the training data.").
Claim 20:
Lee in view of Yang teaches “The method of claim 19, wherein validating the fan control setting further comprises sequentially decrementing the fan control setting from an initial value to a subsequent value in a descending order based on the loss function until the loss function falls below a loss threshold value.” (Kim teaches training a fan control model where the input is current environment information and the output is fan control information in Kim [0045] "Specifically, the computing device (100) can train a fan control model based on a control pattern that has previously controlled each of the multiple fans in a space equipped with multiple fans for temperature control. Additionally, when the learning of the fan control model is completed, the computing device (100) can obtain fan control information by inputting the current environment information of the space into the fan control model. And, the computing device (100) can control each of the multiple fans based on fan control information."; Kim teaches training the model using supervised learning i.e. if the initial output is above the desired known fan output setting, the next iteration of weights will cause the fan setting to be lower in Kim [0147] "Neural networks can be trained in at least one of supervised learning, unsupervised learning, and semi-supervised learning. The purpose of training a neural network is to minimize the error in the output. In neural network training, this is a process of repeatedly inputting training data into the network, calculating the error between the network's output and the target for the training data, and updating the weights of each node by backpropagating the network's error from the output layer to the input layer in a direction that reduces the error. In the case of supervised learning, training data is used where the correct answer is labeled for each training data point (i.e., labeled training data), whereas in the case of unsupervised learning, the correct answer may not be labeled for each training data point. In other words, for example, in the case of supervised learning regarding data classification, the training data can be data in which each training data item is labeled with a category. Labeled training data is input into a neural network, and the error can be calculated by comparing the output (category) of the neural network with the labels of the training data.").
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Xie et al. (CN115525512A) teaches a fan control model trained with supervised training with data including speed and temperature in Xie [0063] and Xie [0013].
Ma et al. (CN116560475A) teaches performing backpropagation in order to update coefficients of a neural network using a loss function including sensor state, power consumption, and noise in Ma [0041].
Zhao et al. (US20230124258A1) teaches a method of determining embedding dimensions for feature inputs in Zhao [0052-0053].
Devulapalli et al. (US20190042979A1) teaches using CPU utilization info to determine a fan RPM using a neural network in Devulapalli [0025].
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Zachary A Cain whose telephone number is (571)272-4503. The examiner can normally be reached Mon-Fri 7:00-3:30 CST.
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, Kenneth M Lo can be reached at (571) 272-9774. 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.C./ Examiner, Art Unit 2116 /KENNETH M LO/Supervisory Patent Examiner, Art Unit 2116