DETAILED ACTION
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Claims 1-30 were cancelled prior to a first office action. Claims 31-50 are still pending in this Application.
Priority
This application is a continuation of U.S. application Ser. No. 17 /033,002, filed Sep. 25, 2020, which is a continuation of U.S. application Ser. No. 16/259,950, filed on Jan. 28, 2019, now U.S. Pat. No. 10,788,798, the entire disclosures of which are hereby incorporated by reference herein.
Double Patenting
The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP § 2159. See MPEP § 2146 et seq. for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The filing of a terminal disclaimer by itself is not a complete reply to a nonstatutory double patenting (NSDP) rejection. A complete reply requires that the terminal disclaimer be accompanied by a reply requesting reconsideration of the prior Office action. Even where the NSDP rejection is provisional the reply must be complete. See MPEP § 804, subsection I.B.1. For a reply to a non-final Office action, see 37 CFR 1.111(a). For a reply to final Office action, see 37 CFR 1.113(c). A request for reconsideration while not provided for in 37 CFR 1.113(c) may be filed after final for consideration. See MPEP §§ 706.07(e) and 714.13.
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The actual filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/apply/applying-online/eterminal-disclaimer.
Patent 10788798
Current Application 18244778
1. A method of controlling equipment of a building, comprising:
receiving, by a first edge controller, data relating to a first space, the first edge controller configured to control operation of a first edge device affecting a characteristic of the first space, the first edge device associated with a first building equipment domain of a plurality of building equipment domains;
analyzing, by the first edge controller, the data to determine whether the data satisfies a condition;
in response to determining the data satisfies the condition, controlling, by the first edge controller, operation of the first edge device using the data;
in response to determining the data does not satisfy the condition:
transmitting, by the first edge controller, a request to a cloud controller to analyze the data, the cloud controller configured to analyze the data based on information obtained by the cloud controller regarding at least one of a second space or a second building equipment domain;
receiving, at the first edge controller from the cloud controller, a response to the request including an edge control adaptation command;
modifying, by the first edge controller based on the edge control adaptation command, a local control scheme of the first edge controller to utilize additional data provided by a second edge controller of a second edge device, wherein the edge control adaptation command is configured to cause the first edge controller to retrieve the additional data directly from the second edge controller without the additional data passing through the cloud controller; and
controlling, by the first edge controller, operation of the first edge device according to the modified local control scheme.
Claim 1… modifying, by the first edge controller based on the edge control adaptation command, a local control scheme of the first edge controller to utilize additional data provided …”
Claim 1 , “…to utilize additional data provided by a second edge controller of a second edge device, wherein the edge control adaptation command is configured to cause the first edge controller to retrieve the additional data directly from the second edge controller without the additional data passing through the cloud controller;
Claim 1 “…analyzing, by the first edge controller, the data to determine whether the data satisfies a condition;
…in response to determining the data does not satisfy the condition:
transmitting, by the first edge controller, a request to a cloud controller to analyze the data, the cloud controller configured to analyze the data based on information obtained by the cloud controller regarding at least one of a second space or a second building equipment domain;
9. The method of claim 1, wherein analyzing, by the first edge controller, the data to determine whether the data satisfies the condition includes comparing the data against a plurality of recognized patterns, and wherein determining that the data does not satisfy the condition includes determining that the data does not match at least one of the recognized patterns.
10. The method of claim 1, wherein analyzing, by the first edge controller, the data to determine whether the data satisfies the condition includes determining a level of processing resources required to process the data, and wherein determining that the data does not satisfy the condition includes determining that that the level of processing resources required to process the data is greater than a threshold level.
1 and 11 (thus, claim 11). A method of controlling equipment of a building, comprising:
receiving, by a first edge controller, data relating to a first space, the first edge controller configured to control operation of a first edge device affecting a characteristic of the first space, …
analyzing, by the first edge controller, the data to determine whether the data satisfies a condition;
claim 11, the data to determine whether the data satisfies the condition includes determining whether a response of the first edge controller to the data would violate a policy of the first edge controller, and wherein determining that the data does not satisfy the condition includes determining that the response of the first edge controller to the data would violate the policy of the first edge controller.
…
in response to determining the data does not satisfy the condition:
transmitting, by the first edge controller, a request to a cloud controller to analyze the data, the cloud controller configured to analyze the data based on information obtained by the cloud controller regarding at least one of a second space or a second building equipment domain;
receiving, at the first edge controller from the cloud controller, a response to the request including an edge control adaptation command;
modifying, by the first edge controller based on the edge control adaptation command, a local control scheme of the first edge controller to utilize additional data provided by a second edge controller of a second edge device, wherein the edge control adaptation command is configured to cause the first edge controller to retrieve the additional data directly from the second edge controller without the additional data passing through the cloud controller; and
controlling, by the first edge controller, operation of the first edge device according to the modified local control scheme.
Claim 1 … in response to determining the data satisfies the condition, controlling, by the first edge controller, operation of the first edge device using the data;
modifying, by the first edge controller based on the edge control adaptation command, a local control scheme of the first edge controller to utilize additional data provided by a second edge controller of a second edge device,
Claim 1 first edge controller and a second edge controller of a second edge device
2. The method of claim 1, wherein the first edge controller is a software agent implemented within at least one server separate from the first edge device.
17. A method of controlling equipment of a building, comprising:
receiving, at a cloud controller, a request to analyze data relating to a first space from a first edge controller, the first edge controller configured to control operation of a first edge device affecting a characteristic of the first space, the first edge device associated with a first building equipment domain of a plurality of building equipment domains;
analyzing, by the cloud controller, the data based on information obtained by the cloud controller regarding at least one of a second space or a second building equipment domain;
generating, by the cloud controller based on the analysis of the data, an edge control adaptation command configured to cause the first edge controller to modify a local control scheme of the first edge controller to utilize additional data provided by a second edge controller of a second edge device, wherein the edge control adaptation command is configured to cause the first edge controller to retrieve the additional data directly from the second edge controller without the additional data passing through the cloud controller; and
transmitting, by the cloud controller, the edge control adaptation command to the first edge controller.
17 “…the first edge controller configured to control operation of a first edge device affecting a characteristic of the first space, the first edge device associated with a first building equipment domain of a plurality of building equipment domains;
21. The method of claim 17, wherein analyzing, by the cloud controller, the data based on the information obtained by the cloud controller regarding at least one of the second space or the second building equipment domain includes determining whether the data satisfies a condition, wherein the edge control adaptation command is generated in response to determining that the data satisfies the condition, and wherein the edge control adaptation command is configured to cause the first edge controller to modify the local control scheme such that the first edge controller: determines locally whether subsequent data satisfies the condition; and in response to determining that the subsequent data satisfies the condition, controls the first edge device without requesting for the cloud controller to analyze the subsequent data.
22. The method of claim 21, wherein determining whether the data satisfies the condition includes comparing the data against a plurality of recognized patterns, and wherein the data satisfies the condition when the data matches one of the recognized patterns.
17. A method of controlling equipment of a building, comprising:
receiving, at a cloud controller, a request to analyze data relating to a first space from a first edge controller, the first edge controller configured to control operation of a first edge device affecting a characteristic of the first space, the first edge device associated with a first building equipment domain of a plurality of building equipment domains;
25. A method of controlling equipment of a building, comprising:
determining, by a cloud controller, whether data relating to a first space satisfies a condition, the first space having a characteristic affected by an edge device, the edge device associated with a first building equipment domain of a plurality of building equipment domains;
in response to determining the data does not satisfy the condition, , wherein determining that the data does not satisfy the condition includes at least one of
(a) determining that the data includes information relating to operation of a second edge device that was not previously in communication with the cloud controller (thus the controller determines that a device had stopped/was not in communication with the cloud controller) or
(b) determining that the data does not include information relating to operation of a third edge device that was previously in communication with the cloud controller:
analyzing, by the cloud controller, the data based on information obtained by the cloud controller regarding at least one of a second space or a second building equipment domain;
generating, by the cloud controller based on the analysis of the data, an edge control adaptation command configured to cause an edge controller to modify a local control scheme of the edge controller, the edge controller configured to control operation of the edge device according to the modified local control scheme; and
transmitting, by the cloud controller, the edge control adaptation command to the edge controller.
25…the edge controller configured to control operation of the edge device according to the modified local control scheme…”
26. The method of claim 25, …wherein determining that the data does not satisfy the condition includes at least one of
(a) determining that the data includes the information relating to the operation of the second edge device that was not previously in communication with the cloud controller or (b) determining that the data does not include the information relating to operation of the third edge device that was previously in communication with the cloud controller and further includes determining that the data does not match at least one of a plurality of recognized patterns….
25. … in response to determining the data does not satisfy the condition, , wherein determining that the data does not satisfy the condition includes at least one of
(a) determining that the data includes information relating to operation of a second edge device that was not previously in communication with the cloud controller (thus the controller determines that a device had stopped/was not in communication with the cloud controller) or….
31. A method of controlling equipment of a building, comprising:
receiving, by an edge controller, data relating to a space, the edge controller being configured to control operation of an edge device affecting a characteristic of the space;
transmitting, by the edge controller, a request to a cloud controller to analyze the data;
receiving, at the edge controller from the cloud controller, a response to the request including an edge control adaptation command;
modifying, by the edge controller based on the edge control adaptation command, a local control scheme of the edge controller; and
controlling, by the edge controller, operation of the edge device according to the local control scheme.
32. The method of Claim 31, wherein modifying, by the edge controller based on the edge control adaptation command, the local control scheme of the edge controller includes modifying, by the edge controller based on the edge control adaptation command, the local control scheme of the edge controller to utilize additional data.
33. The method of Claim 32, wherein the additional data is provided by a data source outside of the edge controller.
34. The method of Claim 33, wherein the edge control adaptation command is configured to cause the edge controller to retrieve the additional data directly from the data source without the additional data passing through the cloud controller.
35. The method of Claim 31, further comprising: analyzing, by the edge controller, the data to determine whether the data satisfies a condition, wherein transmitting, by the edge controller, the request to the cloud controller to analyze the data includes transmitting, by the edge controller, the request to the cloud controller to analyze the data in response to determining that the data does not satisfy the condition.
36. The method of Claim 35, wherein analyzing, by the edge controller, the data to determine whether the data satisfies the condition includes comparing the data against a plurality of recognized patterns, and wherein determining that the data does not satisfy the condition includes determining that the data does not match at least one of the recognized patterns.
37. (New) The method of Claim 35, wherein analyzing, by the edge controller, the data to determine whether the data satisfies the condition includes determining a level of processing resources required to process the data, and wherein determining that the data does not satisfy the condition includes determining that that the level of processing resources required to process the data is greater than a threshold level.
38. (New) A method of controlling equipment of a building, comprising:
receiving data by an edge controller, the edge controller being configured to control operation of an edge device according to a policy that limits operation of the edge device;
analyzing, by the edge controller, the data to determine whether a response of the edge controller to the data would violate the policy; and
in response to determining that the response of the edge controller to the data would violate the policy:
transmitting, by the edge controller, a request to a cloud controller to analyze the data;
receiving, at the edge controller from the cloud controller, a response to the request, the response including at least one of:
an indication that the policy should be modified; or an indication that the edge controller can control the edge device without modifying a local control scheme of the edge controller; and
controlling, by the edge controller, operation of the edge device based on the response from the cloud controller.
39. (New) The method of Claim 38, further comprising in response to determining that the response of the edge controller to the data would not violate the policy, controlling, by the edge controller, operation of the edge device using the data.
40. (New) The method of Claim 38, wherein the response includes the indication that the policy should be modified.
41. (New) The method of Claim 38, wherein the response includes the indication that the edge controller can control the edge device without modifying the local control scheme of the edge controller.
42. (New) The method of Claim 38, wherein the policy at least one of (a) requires the edge device to perform a predetermined action or (b) prevents the edge device from performing the predetermined action.
43. (New) The method of Claim 38, wherein the policy limits an operating parameter of the edge device to an operating range.
44. (New) The method of Claim 38, wherein the edge device is a first edge device and the edge controller is a first edge controller, and wherein a second edge controller is configured to control operation of a second edge device according to the policy.
45. (New) The method of Claim 38, wherein the edge controller is a software agent implemented within at least one server separate from the edge device.
46. (New) A method of controlling equipment of a building, comprising:
in response to a determination by a cloud controller that a device has at least one of (a) initiated communication with the cloud controller (received request) or (b) stopped communication with the cloud controller:
generating, by the cloud controller, an edge control adaptation command configured to cause an edge controller to modify a local control scheme of the edge controller; and
transmitting, by the cloud controller, the edge control adaptation command to the edge controller.
47. (New) The method of Claim 46, wherein the edge controller is configured to control one or more edge devices according to the modified local control scheme.
48. The method of Claim 46, wherein the cloud controller generates the edge control adaptation command and transmits the edge control adaptation command in response to a determination by the cloud controller that both:
the device has at least one of
(a) initiated communication with the cloud controller or (b) stopped communication with the cloud controller; and
data relating to operation of the device does not match at least one of a plurality of recognized patterns.
49. The method of Claim 46, wherein the determination by the cloud controller is a determination that the device has initiated communication with the cloud controller.
50. The method of Claim 46, wherein the determination by the cloud controller is a determination that the device has stopped communication with the cloud controller.
46. (New) A method of controlling equipment of a building, comprising:
in response to a determination by a cloud controller that a device has at least one of
(a) initiated communication with the cloud controller (received request) or (b) stopped communication with the cloud controller (see patent claim 25 a) ):
generating, by the cloud controller, an edge control adaptation command configured to cause an edge controller to modify a local control scheme of the edge controller; and
transmitting, by the cloud controller, the edge control adaptation command to the edge controller.
47. (New) The method of Claim 46, wherein the edge controller is configured to control one or more edge devices according to the modified local control scheme.
48. The method of Claim 46, wherein the cloud controller generates the edge control adaptation command and transmits the edge control adaptation command in response to a determination by the cloud controller that both:
the device has at least one of
(a) initiated communication with the cloud controller or (b) stopped communication with the cloud controller; and
data relating to operation of the device does not match at least one of a plurality of recognized patterns.
49. The method of Claim 46, wherein the determination by the cloud controller is a determination that the device has initiated communication with the cloud controller.
50. The method of Claim 46, wherein the determination by the cloud controller is a determination that the device has stopped communication with the cloud controller.
Claims 31-40, and 44-50 are rejected on the ground of nonstatutory obviousness-type double patenting as being unpatentable over claims 1, 2, 9-11, 17, 21-22 of U.S. Patent No. 10788798. Although the conflicting claims are not identical, they are not patentably distinct from each other because claim 1 of the patent encompasses claims 31 and 38 of the current application. For instance, Claim 1 of the patent recites all the elements of the current application claims 31 and 38 and further includes other limitations that make the claim narrower. Also, Claim 17 of the patent recites all the elements of the current application claim 46 and further includes other limitations that make the claim narrower. Claims 25-26 of the patent encompasses/recites all the limitations of claims 46-48 and 50 of the instant Application. Moreover, Claims 32-37, 39, 44-45, 47-49 of the current application are encompassed by claims 1, 9-11, 17, 21-22 of the patent as outlined in the table above. Thus, It has been held in court that the generic patented invention has been anticipated by the species. See In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993). The claimed subject matter of Claims 31-39, and 44-49 are recited in claims 1, 2, 9-11, 17, 21-22 of the patent application.
Claims 42-43 are rejected on the ground of non-statutory double patenting as being unpatentable over claim 11 of U.S. Patent No. 10788798 in view of Borrelli et al (US 2015/0178421, cited in IDS).
As per claim 42, U.S. Patent No. 10788798 teaches the method of claim 38, but it does not explicitly teaches the limitations of claims 42.
However, Borrelli teaches a system comprising controlling an edge device according to a policy, wherein the policy at least one of (a) requires the edge device to perform a predetermined action or (b) prevents the edge device from performing the predetermined action (see [0044] “Each of the agents 210A, 215A, and 220A exercises the HVAC components in the buildings 210, 215, and 220..”; also, see [0037] “Under operation of the control platform 120, the thermal environment in a selected zone (e.g., zone 1) is driven to predetermined set points ( e.g., temperature=65° F., air flow rate=l0 m3/min) using a corresponding HVAC (e.g., HVAC1), and the thermal environment is measured using the sensor in the selected zone (e.g., sensor 1)”, thus, the edge devices/HVAC components are controlled to achieve a limit/policy/setpoint”; thus, the edge devices are controlled to target limits or setpoints),
Therefore, it would have been obvious to one of ordinary skilled in the art before effective filing date of the claimed invention to which said subject matter pertains to have modified the U.S. Patent No. 10788798 to include controlling edge device according to a policy, wherein the policy at least one of (a) requires the edge device to perform a predetermined action or (b) prevents the edge device from performing the predetermined action as taught by Borrelli in order to control devices with desired policies/limits to avoid damage to the components (the policy serve as a safeguard to the components and also as desired target points for a user. Controlling the HVAC components to desired setpoints of variables (flow rate, temperature, humidity) avoids having the devices always ON for any value of these variables).
As per claim 43, U.S. Patent No. 10788798 teaches the method of claim 38, but it does not explicitly teaches the limitations of claims 43.
However, Borrelli teaches a system comprising controlling an edge device according to a policy, wherein the policy wherein the policy limits an operating parameter of the edge device to an operating range (see [0044] “Each of the agents 210A, 215A, and 220A exercises the HVAC components in the buildings 210, 215, and 220..”; also, see [0037] “Under operation of the control platform 120, the thermal environment in a selected zone (e.g., zone 1) is driven to predetermined set points ( e.g., temperature=65° F., air flow rate=l0 m3/min) using a corresponding HVAC (e.g., HVAC1), and the thermal environment is measured using the sensor in the selected zone (e.g., sensor 1)”, thus, the edge devices/HVAC components are controlled to achieve a limit/policy/setpoint, which represent a range”; thus, the edge devices are controlled to target limits or setpoints),
Therefore, it would have been obvious to one of ordinary skilled in the art before effective filing date of the claimed invention to which said subject matter pertains to have modified the U.S. Patent No. 10788798 to include controlling and edge device according to a policy, wherein the policy wherein the policy limits an operating parameter of the edge device to an operating range as taught by Borrelli in order to control devices with desired policies/limits to avoid damage to the components (the policy serve as a safeguard to the components and also as desired target points for a user. Controlling the HVAC components to desired setpoints of variables (flow rate, temperature, humidity) avoids having the devices always ON for any value of these variables).
Patent 11762343
Current Application 18/244778
A method of controlling equipment of a building, comprising:
receiving, by a first edge controller, data relating to a first space, the first edge controller configured to control operation of a first edge device affecting a characteristic of the first space;
analyzing, by the first edge controller, the data to determine whether the data satisfies a condition;
in response to determining the data does not satisfy the condition:
transmitting, by the first edge controller, a request to a cloud controller to analyze the data;
receiving, at the first edge controller from the cloud controller, a response to the request including an edge control adaptation command;
modifying, by the first edge controller based on the edge control adaptation command, a local control scheme of the first edge controller to utilize additional data provided by a second edge controller of a second edge device; and
controlling, by the first edge controller, operation of the first edge device according to the local control scheme.
1.-- modifying, by the first edge controller based on the edge control adaptation command, a local control scheme of the first edge controller to utilize additional data provided by a second edge controller of a second edge device;
1.-- modifying, by the first edge controller based on the edge control adaptation command, a local control scheme of the first edge controller to utilize additional data provided by a second edge controller of a second edge device; and
The method of claim 1, wherein the edge control adaptation command is configured to cause the first edge controller to retrieve the additional data directly from the second edge controller without the additional data passing through the cloud controller.
1.--…analyzing, by the first edge controller, the data to determine whether the data satisfies a condition;
in response to determining the data does not satisfy the condition:
transmitting, by the first edge controller, a request to a cloud controller to analyze the data;
3. The method of claim 1, wherein analyzing, by the first edge controller, the data to determine whether the data satisfies the condition includes comparing the data against a plurality of recognized patterns, and wherein determining that the data does not satisfy the condition includes determining that the data does not match at least one of the recognized patterns.
4. The method of claim 1, wherein analyzing, by the first edge controller, the data to determine whether the data satisfies the condition includes determining a level of processing resources required to process the data, and wherein determining that the data does not satisfy the condition includes determining that that the level of processing resources required to process the data is greater than a threshold level.
A method of controlling equipment of a building, comprising:
receiving, by an edge controller, data relating to a space, the edge controller being configured to control operation of an edge device according to a policy that limits operation of the edge device, and the edge device affecting a characteristic of the space;
analyzing, by the edge controller, the data to determine whether a response of the edge controller to the data would violate the policy;
in response to determining that the response of the edge controller to the data would not violate the policy, controlling, by the edge controller, operation of the edge device using the data;
in response to determining that the response of the edge controller to the data would violate the policy:
transmitting, by the edge controller, a request to a cloud controller to analyze the data;
receiving, at the edge controller from the cloud controller, a response to the request, the response including an indication that the policy should be modified and an indication that the edge controller can control the edge device without modifying a local control scheme of the edge controller; and
controlling, by the edge controller, operation of the edge device using the response from the cloud controller.
…in response to determining that the response of the edge controller to the data would not violate the policy, controlling, by the edge controller, operation of the edge device using the data;…
…receiving, at the edge controller from the cloud controller, a response to the request, the response including an indication that the policy should be modified and an indication that the edge controller can control the edge device without modifying a local control scheme of the edge controller;
7. The method of claim 5, wherein the policy requires the edge device to perform a predetermined action.
8. The method of claim 5, wherein the policy prevents the edge device from performing a predetermined action.
9. The method of claim 5, wherein the policy limits an operating parameter of the edge device to an operating range, and wherein determining that the response of the edge controller to the data would violate the policy includes determining that the response of the edge controller to the data would cause the operating parameter of the edge controller to be outside the operating range.
10. The method of claim 5, wherein the edge device is a first edge device and the controller is a first edge controller, and wherein a second edge controller is configured to control operation of a second edge device according to the policy.
11. The method of claim 5, wherein the edge controller is a software agent implemented within at least one server separate from the edge device.
A method of controlling equipment of a building, comprising:
… in response to determining the data does not satisfy the condition:
transmitting, by the first edge controller, a request to a cloud controller to analyze the data;
receiving, at the first edge controller from the cloud controller, a response to the request including an edge control adaptation command (thus, this suggests generation and transmitting the adaptation command) ;
modifying, by the first edge controller based on the edge control adaptation command, a local control scheme of the first edge controller to utilize additional data provided by a second edge controller of a second edge device; and
controlling, by the first edge controller, operation of the first edge device according to the local control scheme.
1… controlling, by the first edge controller, operation of the first edge device according to the local control scheme.
1…transmitting, by the first edge controller, a request to a cloud controller to analyze the data;
14. A method of controlling equipment of a building, comprising:
determining, by a cloud controller, whether data relating to a first space satisfies a condition, the first space having a characteristic affected by an edge device;
in response to determining the data does not satisfy the condition:
wherein determining that the data does not satisfy the condition includes at least one of
(a) determining that the data includes information relating to operation of a second edge device that was not previously in communication with the cloud controller (thus the cloud controller determines that a controller had lost or stopped communication with the cloud controller) or
(b) determining that the data does not include information relating to operation of a third edge device that was previously in communication with the cloud controller.
generating, by the cloud controller, an edge control adaptation command configured to cause an edge controller to modify a local control scheme of the edge controller, the edge controller configured to control operation of the edge device according to the modified local control scheme; and
transmitting, by the cloud controller, the edge control adaptation command to the edge controller,
Claim 14 “….edge control adaptation command configured to cause an edge controller to modify a local control scheme of the edge controller, the edge controller configured to control operation of the edge device according to the modified local control scheme;
15. The method of claim 14, wherein determining that the data does not satisfy the condition includes at least one of
(a) determining that the data includes the information relating to the operation of the second edge device that was not previously in communication with the cloud controller or
(b) determining that the data does not include the information relating to operation of the third edge device that was previously in communication with the cloud controller and further includes determining that the data does not match at least one of a plurality of recognized patterns.
16. The method of claim 14, wherein determining that the data does not satisfy the condition includes determining that the data includes the information relating to operation of the second edge device that was not previously in communication with the cloud controller.
31. A method of controlling equipment of a building, comprising:
receiving, by an edge controller, data relating to a space, the edge controller being configured to control operation of an edge device affecting a characteristic of the space;
transmitting, by the edge controller, a request to a cloud controller to analyze the data;
receiving, at the edge controller from the cloud controller, a response to the request including an edge control adaptation command;
modifying, by the edge controller based on the edge control adaptation command, a local control scheme of the edge controller; and
controlling, by the edge controller, operation of the edge device according to the local control scheme.
32. The method of Claim 31, wherein modifying, by the edge controller based on the edge control adaptation command, the local control scheme of the edge controller includes modifying, by the edge controller based on the edge control adaptation command, the local control scheme of the edge controller to utilize additional data.
33. The method of Claim 32, wherein the additional data is provided by a data source outside of the edge controller.
34. The method of Claim 33, wherein the edge control adaptation command is configured to cause the edge controller to retrieve the additional data directly from the data source without the additional data passing through the cloud controller.
35. The method of Claim 31, further comprising:
analyzing, by the edge controller, the data to determine whether the data satisfies a condition,
wherein transmitting, by the edge controller, the request to the cloud controller to analyze the data includes transmitting, by the edge controller, the request to the cloud controller to analyze the data in response to determining that the data does not satisfy the condition.
36. The method of Claim 35, wherein analyzing, by the edge controller, the data to determine whether the data satisfies the condition includes comparing the data against a plurality of recognized patterns, and wherein determining that the data does not satisfy the condition includes determining that the data does not match at least one of the recognized patterns.
37. The method of Claim 35, wherein analyzing, by the edge controller, the data to determine whether the data satisfies the condition includes determining a level of processing resources required to process the data, and wherein determining that the data does not satisfy the condition includes determining that that the level of processing resources required to process the data is greater than a threshold level.
38. A method of controlling equipment of a building, comprising:
receiving data by an edge controller, the edge controller being configured to control operation of an edge device according to a policy that limits operation of the edge device;
analyzing, by the edge controller, the data to determine whether a response of the edge controller to the data would violate the policy; and
in response to determining that the response of the edge controller to the data would violate the policy:
transmitting, by the edge controller, a request to a cloud controller to analyze the data;
receiving, at the edge controller from the cloud controller, a response to the request, the response including at least one of:
an indication that the policy should be modified; or an indication that the edge controller can control the edge device without modifying a local control scheme of the edge controller; and
controlling, by the edge controller, operation of the edge device based on the response from the cloud controller.
39. The method of Claim 38, further comprising in response to determining that the response of the edge controller to the data would not violate the policy, controlling, by the edge controller, operation of the edge device using the data.
40. The method of Claim 38, wherein the response includes the indication that the policy should be modified.
41. The method of Claim 38, wherein the response includes the indication that the edge controller can control the edge device without modifying the local control scheme of the edge controller.
42. The method of Claim 38, wherein the policy at least one of (a) requires the edge device to perform a predetermined action or (b) prevents the edge device from performing the predetermined action.
43. The method of Claim 38, wherein the policy limits an operating parameter of the edge device to an operating range.
44. The method of Claim 38, wherein the edge device is a first edge device and the edge controller is a first edge controller, and wherein a second edge controller is configured to control operation of a second edge device according to the policy.
45. (New) The method of Claim 38, wherein the edge controller is a software agent implemented within at least one server separate from the edge device.
46. (New) A method of controlling equipment of a building, comprising:
in response to a determination by a cloud controller that a device has at least one of (a) initiated communication with the cloud controller (received request) or (b) stopped communication with the cloud controller:
generating, by the cloud controller, an edge control adaptation command configured to cause an edge controller to modify a local control scheme of the edge controller; and
transmitting, by the cloud controller, the edge control adaptation command to the edge controller.
47. (New) The method of Claim 46, wherein the edge controller is configured to control one or more edge devices according to the modified local control scheme.
48. The method of Claim 46, wherein the cloud controller generates the edge control adaptation command and transmits the edge control adaptation command in response to a determination by the cloud controller that both:
the device has at least one of
(a) initiated communication with the cloud controller or (b) stopped communication with the cloud controller; and
data relating to operation of the device does not match at least one of a plurality of recognized patterns.
49. The method of Claim 46, wherein the determination by the cloud controller is a determination that the device has initiated communication with the cloud controller.
50. The method of Claim 46, wherein the determination by the cloud controller is a determination that the device has stopped communication with the cloud controller.
As per claim 46, a method of controlling equipment of a building, comprising:
in response to a determination by a cloud controller that a device has at least one of
(a) initiated communication with the cloud controller or
(b) stopped communication with the cloud controller (see patent claim 14 “a)”):
generating, by the cloud controller, an edge control adaptation command configured to cause an edge controller to modify a local control scheme of the edge controller (see ); and
transmitting, by the cloud controller, the edge control adaptation command to the edge controller (see ).
47. (New) The method of Claim 46, wherein the edge controller is configured to control one or more edge devices according to the modified local control scheme.
48. The method of Claim 46, wherein the cloud controller generates the edge control adaptation command and transmits the edge control adaptation command in response to a determination by the cloud controller that both:
the device has at least one of
(a) initiated communication with the cloud controller or (b) stopped communication with the cloud controller (see step a)); and
data relating to operation of the device does not match at least one of a plurality of recognized patterns.
49. The method of Claim 46, wherein the determination by the cloud controller is a determination that the device has initiated communication with the cloud controller.
50. The method of Claim 46, wherein the determination by the cloud controller is a determination that the device has stopped communication with the cloud controller.
Claims 31-50 are rejected on the ground of nonstatutory obviousness-type double patenting as being unpatentable over claims 1-5, 7-11, and 14-16 U.S. Patent No. 11762343. Although the conflicting claims are not identical, they are not patentably distinct from each other because claim 1 of the patent encompasses claims 31 and 46 of the current application. For instance, Claim 1 of the patent recites all the elements of the current application claims 31 and 46 and further includes other limitations that make the claim narrower. Claim 5 of the patent recites all the elements of the current application claim 38 and further includes other limitations that make the claim narrower. Also, claims 14-16 recites all of the limitations of claims 46-49 and 50. Moreover, Also, Claims 32-37, 39-45, 47 and 49 of the current application are encompassed by claims 1-5 and 7-11 of the patent as outlined in table above. Thus, It has been held in court that the generic patented invention has been anticipated by the species. See In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993). Thus, the claimed subject matter of Claims 31-50 are recited in claims 1-5, 7-11 and 14-16 of the patent application as pointed/correlated out above in the table.
Claim Rejections - 35 USC § 112
The following is a quotation of the first paragraph of 35 U.S.C. 112(a):
(a) IN GENERAL.—The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor or joint inventor of carrying out the invention.
The following is a quotation of the first paragraph of pre-AIA 35 U.S.C. 112:
The specification shall contain a written description of the invention, and of the manner and process of making and using it, in such full, clear, concise, and exact terms as to enable any person skilled in the art to which it pertains, or with which it is most nearly connected, to make and use the same, and shall set forth the best mode contemplated by the inventor of carrying out his invention.
Claims 46-50 are rejected under 35 U.S.C. 112(a) or 35 U.S.C. 112 (pre-AIA ), first paragraph, as failing to comply with the written description requirement. The claim(s) contains subject matter which was not described in the specification in such a way as to reasonably convey to one skilled in the relevant art that the inventor or a joint inventor, or for applications subject to pre-AIA 35 U.S.C. 112, the inventor(s), at the time the application was filed, had possession of the claimed invention.
Claim 46 recites “in response to a determination by a cloud controller that a device has at least one of
….(b) stopped communication with the cloud controller:
generating …adaptation command
transmitting…adaptation command”. These limitations do not have support in the disclosure as originally filed.
The originally disclosure does not have support for a cloud controller to perform the determination that a device (edge device) lost communication with the cloud controller and based on that determination starts generating an adaptation command and transmitting the adaption command.
For instance, [0214] “In some embodiments, the cloud controller 602 is configured to determine if one or more edge devices 700 that have recently been enabled or disabled may be affecting the input data. Cloud controller 602 may detect that an edge device 700 has been enabled when information relating to the operation of the edge device (e.g. , sensor data, operational data, etc.) begins to be received by cloud controller 602. Cloud controller 602 may detect that an edge device 700 has been disabled when information relating to operation of the edge device 700 stops being received. Enablement of an edge device 700 may indicate that the edge device 700 has recently been added to a space or turned on. Similarly, disablement of an edge device 700 may indicate that the edge device 700 has recently been removed from a space or turned off. [0215] In some embodiments, cloud controller 602 is configured to compare the input data with any disablement or enablement events to determine if the disablement or enablement of an edge device 700 may be effecting the input data… Cloud controller 602 may additionally or alternatively receive information relating to the quantity and/or type (e.g., printers, user devices, security cameras, etc.) of edge devices that have been enabled or disabled within a space. Cloud controller 602 may analyze the locations of any enablement or disablement events to determine if any enablement or disablement events occurred in the space associated with the edge controller 702 that provided the processing request. Additionally or alternatively, cloud controller 602 may compare the time at which the enablement event occurred against a time related to the input data (e.g., against a time at which the input data was received, against a time at which the input data was recorded, against a time at which input data did not match a recognized pattern, etc.) to determine if the enablement or disablement event may have affected the input data. Upon determining that the enablement or disablement event has affected the input data, cloud controller 602 may generate an edge control adaptation command configured to adjust local control scheme 730 to reflect the enablement or disablement of the corresponding edge device 700”.
Also, the disclosure [0228] recites “Referring to FIG. 7, memory 724 of each edge device 700 may include multiple local control schemes 730. By way of example, local control schemes 730 may include a working control scheme and a factory default control scheme. The working control scheme may be the local control scheme 730 that is normally in use by edge controller 702. The working control scheme may be modified whenever command generator 732 receives an edge control adaptation command. Because the working control scheme edge device 700 may continue to operate based on the working control scheme, even when edge device 700 is not in communication with cloud device 600. In the event that edge device 700 loses communication with cloud device 600, edge device 700 may default to operation according to the working control scheme. When the connection is reestablished, cloud controller 602 may then continue to modify the working control scheme through edge control adaptation commands”.
The claim as recited requires the cloud controller to generate and transmits a command adaptation to an edge device when the edge device stopped communication. However, if the edge stopped communication stopped communicating with the cloud controller, the edge devices cannot receive data or new adaptations commands or models. Thus, the generation and transmission of the adaption command is not in response to detecting that the edge device stopped communicating with the cloud controller.
As to claim 47-50, these claim depend on claim 46 and inherit the same error as their parent claim, Thus, they are rejected for the same reasons mutatis mutandis.
Claim Rejections - 35 USC § 102
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.
Claim(s) 31 are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Borrelli et al (US 20150178421, cited in the IDS).
As per claim 31, Borreli teaches A method of controlling equipment of a building (see Fig. Fig. 1 and 2 controlling HVAC equipment one or more buildings; also, see [0036]), comprising:
receiving, by an edge controller, data relating to a space ([0096] the agent software/edge controller downloaded to the HVAC controller for controlling an HVAC component; also, see Fig. 2 the first edge controller 210A, 215A, and 220A is the software in each HVAC controller located in each building to control HVAC equipment; see [0044] “Each of the agents 210A, 215A, and 220A exercises the HVAC components in the buildings 210, 215, and 220…respectively, gathering thermal data”; also, see [0046] “current environmental data recently received from the agents 210A, 215A, and 220A, and historical data; also, see [0103] “transmits measured data to a remote platform”; also, se [0036-0037]), the edge controller being configured to control operation of an edge device affecting a characteristic of the space (see [0044] “…Each of the agents 210A, 215A, and 220A exercises the HVAC components in the buildings 210, 215, and 220…” and see [0103] “As one example, a heating component on a packaging unit is tested during an auto-commissioning test or during adaptive management of an HVAC model. The heating component is set at 65° F. before the agent begins the auto commissioning process. When the agent begins the auto commissioning process, such as at night, it first saves the current temperature setting (the overridden value) and begins the heartbeat monitor. The agent then initializes the temperature to 90° F., increasing it to particular set points during the auto-commissioning process, and transmits measured data to a remote platform. If, during auto-commissioning, the agent determines that communication between it and the remote platform has terminated, the agent resets (rolls back) the temperature of the heating component to its overridden value (65° F.), stops the auto-commissioning process, and returns control of the thermal component to its normal operating code”);
transmitting, by the edge controller, a request to a cloud controller to analyze the data (see Fig. 2 the control platform is a cloud controller/processor because it is connected through a cloud 230, see [0044] and [0071]; also, see Fig. 9 and [0074-0080] the cloud controller is a an optimization software that receives data from the agents in each building to be analyzed and simulated. The cloud controller optimizes changes and/or adjust the scheme or models in the edge controllers when the results of the analysis diverge by a predetermined amount; also, see Fig. 10; the received data is the request to start an optimization);
receiving, at the edge controller from the cloud controller, a response to the request including an edge control adaptation command (see [0018] and see [0074-0080] Borrelli teaches an optimization HVAC system comprising a remote server to analyzed data from edge controllers, and the remote server optimizes the models when the analysis of the data detects that the analysis diverges by an amount, and the remote server send new commands or software to the underlying systems such as the edge controllers; also, see [0078] “The outputs of the optimization module 930 are periodic and control adjustments to the underlying control system”; also, see [0080] The alert module 940 alters operators and remodels, or re-optimizes, the underlying system when the results of the simulation diverge by a pre-determined amount from expected results”; also, see [0081-0082]);
modifying, by the edge controller based on the edge control adaptation command, a local control scheme of the edge controller (see [0018] “a method adaptively updates a performance model for a heating, ventilation, and air-conditioning (HVAC) unit. The method includes determining a model characterizing performance of an HVAC unit; automatically, periodically driving the HVAC unit with inputs and measuring associated outputs from the HVAC unit; and using the inputs and associated outputs to update the performance model. Preferably, determining the model characterizing the performance of the HVAC unit is based on historical performance data for the HVAC unit” and see [0074-0080] Borrelli teaches an optimization HVAC system comprising a remote server to analyzed data from edge controllers, and the remote server optimizes the models when the analysis of the data detects that the analysis diverges by an amount, and the remote server send new commands or software to the underlying systems such as the edge controllers; also, see [0078] “The outputs of the optimization module 930 are periodic and control adjustments to the underlying control system”; also, see [0080] The alert module 940 alters operators and remodels, or re-optimizes, the underlying system when the results of the simulation diverge by a pre-determined amount from expected results”; also, see [0081-0082]); and
controlling, by the edge controller, operation of the edge device according to the local control scheme (see [0010] “the electro-mechanical component is one of multiple electro-mechanical components within the multiple zones in the building. The method also includes, while varying the input to the electro-mechanical component, maintaining outputs of remaining ones of the multiple electro-mechanical components at a preselected condition. In one embodiment, the associated outputs correspond to air flows, air temperatures, rates of increase of air temperature, rates of increase of air flow, or any combination thereof”; the edge controller is the software to control the edge device/HVAC controller and the data collected such as temperature and humidity is used to control the edge device to preselected conditions; see [0036] “Each of the zones 1-5 has one or more heating, ventilation, and air-conditioning (HVAC1_5 ) components for controlling the temperature, humidity, air flow, air flow rate, rate, or other environmental state within the corresponding zone 1-5”, the second data is data that identifies that the temperature measured is maintained within acceptable ranges or preselected conditions; also, see [0078] “The outputs of the optimization module 930 are periodic and control adjustments to the underlying control system (the HVAC controllers/edge controller; also, see [0080] “The alert module 940 alters operators and remodels, or re-optimizes, the underlying system when the results of the simulation diverge by a pre-determined amount from expected results. In some cases, the descriptive model is able to be changed, such as when new equipment is added to the underlying system or when low-level executable software is added to the underlying system”; also, see [0087]; see [0022] “an electro-mechanical component controls an environment within a zone in a building. The component includes a thermal element for controlling a thermal environment in the zone…The controller includes a processor and a computer readable medium”, the electromechanically component is the same as the HVAC controller and which comprises a processor”; Thus, an edge controller and edge device are optimized and adjusted by the response of the control platform/cloud controller and its operation is based on the response received).
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.
Claim(s) 35 is rejected under 35 U.S.C. 103 as being unpatentable over Borrelli et al (US 2015/0178421, cited in the IDS) in view of Speight et al (US 20180167445, cited in the IDS).
As per claim 35, Borrelli teaches the method of Claim 31, further comprising:
Borreli further teaches analyzing, by the edge controller, the data to determine whether the data satisfies a condition (see [0010] “maintaining outputs of remaining ones of the multiple electro-mechanical components at a preselected condition; also, see [0022] “In a fifth aspect of the invention, an electro-mechanical component controls an environment within a zone in a building”), in response to determining the data satisfies the condition (see 0036 “Each of the zones 1-5 has one or more heating, ventilation, and air-conditioning (HVAC1_5 ) components for controlling the temperature, humidity, air flow, air flow rate, rate, or other environmental state within the corresponding zone 1-5”),
wherein transmitting, by the edge controller, the request to the cloud controller to analyze the data includes transmitting, by the edge controller, the request to the cloud controller to analyze the data(see Fig. 2 the control platform is a cloud controller/processor because it is connected through a cloud 230, see [0044] and [0071]; also, see Fig. 9 and [0074-0080] the cloud controller is a an optimization software that receives data from the agents in each building to be analyzed and simulated. The cloud controller optimizes changes and/or adjust the scheme or models in the edge controllers when the results of the analysis diverge by a predetermined amount; also, see Fig. 10; the received data is the request to start an optimization).
Borrelli does not explicitly teach the transmitting of the request to the cloud controller is in response to determining that the data does not satisfy the condition.
However, Speight teaches a cloud computer system comprising an edge controller in an edge device (see Fig. 2 edge processing function 260 is an edge controller/software in a device, see [0030] “[0030] Edge processing function 260 may, for example, be implemented in an edge server, or another module provided with a processor, such as a digital signal processor (DSP)”), analyzing, by the edge controller, the data to determine whether the data satisfies a condition and in response to determining the data does not satisfy the condition: transmitting the request to the cloud controller to analyzed the data (see [0008]-[0009] “In a simple example, based on FIG. 1B, the edge processing function 130 stores the last hour's worth of data from first sensor device 140, second sensor device 144 and third sensor device 148, each of which might publish a temperature reading every minute. Only when any individual temperature reading exceeds a given threshold would all of the last hour's data from all of first sensor device 140, second sensor device 144 and third sensor device 148 be uploaded to the cloud computing system 112 and backend server 110 for processing”; also, see [0046]).
Therefore, it would have been obvious to one of ordinary skilled in the art before effective filing date of the claimed invention to which said subject matter pertains to have modified Borrelli’s invention to include analyzing, by the edge controller, the data to determine whether the data satisfies a condition and in response to determining the data does not satisfy the condition: transmitting the request to the cloud controller to analyzed the data as taught by Speight in order to reduce the workload at the edge device when a high amount of data needs to be processed and when data that does not satisfy a condition is detected (see [0047] “With the invention, without reliance on the assumptions of known systems, then, for example, the processing at the edge may need to be less intensive. In the example discussed above, with the invention, raw measurements for the highest readings from 10 sensors plus the mean and standard deviation may then be provided to the cloud processor in the available time”).
Claim 36 is rejected under 35 U.S.C. 103 as being unpatentable over Borrelli et al (US 2015/0178421, cited in the IDS) in view of Speight et al (US 20180167445, cited in the IDS) as applied to claim 35 above, and further in view of Thomas et al (US 20130317659, cited in the IDS).
As per claim 36, Borrelli-Speight teaches the method of Claim 35, but it does not explicitly teach wherein analyzing, by the edge controller, the data to determine whether the data satisfies the condition includes comparing the data against a plurality of recognized patterns, and wherein determining that the data does not satisfy the condition includes determining that the data does not match at least one of the recognized patterns.
However, Thomas teaches a system and method comprising determining, by a controller (see Fig. 1 cloud server 110 or Fig. 4 cloud server 402), whether data satisfies a condition that includes comparing the data against a plurality of recognized patterns, and wherein determining that the data does not satisfy the condition includes determining that the data does not match at least one of the recognized patterns (see [0064-0066] “At the cloud server 402, data from each of the remote units in the system is received, decompressed, stored in a database 406, processed, and analyzed by programs executed on the server or other machines connected to the server…. the sampled data is transformed into the frequency domain to identify distinctive patterns. These patterns are compared to a pre-stored library of patterns, and a determination is made whether the measured pattern matches a stored pattern. Convolution may be used to compare these patterns and once the data is in the frequency domain, convolution is performed with a simple multiply”).
Therefore, it would have been obvious to one of ordinary skilled in the art before effective filing date of the claimed invention to which said subject matter pertains to have modified Borrelli-Speight’s combination as taught above to include determining, by the edge controller, whether the data satisfies the condition includes comparing the data against a plurality of recognized patterns, and wherein determining that the data does not satisfy the condition includes determining that the data does not match at least one of the recognized patterns as taught by Thomas in order to identify anomalies and report potential problems and allow quick responses by the controller (see [0066]) and based on the analyzed data to update parameter in the remote units (see [0068]).
Claim 37 is rejected under 35 U.S.C. 103 as being unpatentable over Borrelli et al (US 2015/0178421, cited in the IDS) in view of Speight et al (US 20180167445, cited in the IDS) as applied to claim 1 above, and further in view of Bartfai-Walcott et al (US 20190182333, cited in the IDS).
As per claim 37, Borrelli-Speight teaches the method of Claim 35, wherein analyzing, by the edge controller, the data to determine whether the data satisfies the condition includes determining a level of processing resources required to process the data, and wherein determining that the data does not satisfy the condition includes determining that that the level of processing resources required to process the data is greater than a threshold level.
However, Bartfai-Walcott teaches a system comprising an edge controller (see Fig. 2 edge device and edge controller 120), wherein analyzing, by an edge controller, the data to determine whether the data satisfies the condition includes determining a level of processing resources required to process the data, and wherein determining that the data does not satisfy the condition includes determining that that the level of processing resources required to process the data is greater than a threshold level (see 0027 “edge devices 120 may be implemented with cognitive edge processing capabilities to facilitate intelligent network management decisions. Cognitive edge devices 120 may leverage context information, for example, to decide where data should be processed and/or stored (e.g., the cloud or the edge). .. These cognitive decisions could be based, for example, on contextual information about the data that needs to be processed (e.g., the type, volume, and/or age of the data), the desired response time, For example, if the contextual information for an edge device 120 indicates that its resources are insufficient, the edge device may be interconnected with one or more additional edge devices, such that the edge device 120 then comprises multiple interconnected edge devices”; also, see [0028] “context-aware edge processing capabilities may also be leveraged, in some embodiments, by resource orchestration brokers 160. Resource broker 160 may be implemented as a standalone edge device, as functionality in an existing edge device…”; also, see [0047]; also, see Fig. 5-7 brokers are used to determine if a cognitive edge device has sufficient resources to process all the data or workload received, and when the resources are not sufficient then (which means the level of resources required , the broker of the edge device sends some or all of the workload to another edge device and/or cloud device, see [0023]; also, see [0077] “Each cluster's broker 660 can offload workloads to other clusters' brokers 660 if the offloading broker 660 lacks the requisite resources in its own cluster and another cluster's broker 660 has resources available”).
Therefore, it would have been obvious to one of ordinary skilled in the art before effective filing date of the claimed invention to which said subject matter pertains to have modified Borrelli-Speight’s combination as taught above to include an edge controller analyzing data for determining that the data does not satisfy the condition includes determining that that the level of processing resources required to process the data is greater than a threshold level as taught by Bartfai-Walcott in order to allow workload distribution to maximize performance in the system (see [0027] “For example, if the contextual information for an edge device 120 indicates that its resources are insufficient, the edge device may be interconnected with one or more additional edge devices”; also, see [0028] “for example, a resource broker 160 may provide resource orchestration and workload distribution services for edge devices 120 that are managed by the broker 160. Resource broker 160 may use context information from cognitive edge devices 120 to make intelligent workload distribution decisions that maximize performance and guarantee service delivery”; well-known benefits of distributed computing comprises fast processing since two or more computer are used, and greater flexibility and reliability is accomplished when one of the computers is down the other computer server can take the workload and the system does not stop processing data).
Claims 46-47 and 49-50 are rejected under 35 U.S.C. 103 as being unpatentable over Borrelli et al (US 2015/0178421, cited in the IDS) in view of Micali et al (US 9172623).
As per claim 46, Borreli teaches a method of controlling equipment of a building (see Fig. Fig. 1 and 2 controlling HVAC equipment one or more buildings; also, see [0036]), comprising:
generating, by the cloud controller, an edge control adaptation command configured to cause an edge controller to modify a local control scheme of the edge controller (see Fig. 2 the control platform 50 is a cloud controller/processor because it is connected through a cloud 230, see [0018] and [0044] “…Each of the agents 210A, 215A, and 220A exercises the HVAC components in the buildings 210, 215, and 220…” and see [0103] “As one example, a heating component on a packaging unit is tested during an auto-commissioning test or during adaptive management of an HVAC model. The heating component is set at 65° F. before the agent begins the auto commissioning process…”; also, see [0071]; also, see [0007] “…adaptively updating the models”; a also, see Fig. 9 and [0074-0080] “…These changes can result from system wear, new parameters for local control of the system, or replacement of the lower-level control programs or equipment…” the cloud controller is a an optimization software that receives data from the agents in each building to be analyzed and simulated. The cloud controller optimizes changes and/or adjust the scheme or models in the edge controllers when the results of the analysis diverge by a predetermined amount; also, see Fig. 10; the received data is the request to start an optimization; also, see also, see Fig. 2 the first edge controller 210A, 215A, and 220A is the software in each HVAC controller located in each building to control HVAC equipment; also, see [0080] “… In some cases, the descriptive model is able to be changed, such as when new equipment is added to the underlying system or when low-level executable software is added to the underlying system.”); and
transmitting, by the cloud controller, the edge control adaptation command to the edge controller (see [0010], [0022], [0036], [0087 and [0074-0080] Borrelli teaches an optimization HVAC system comprising a remote server to analyzed data from edge controllers, and the remote server optimizes the models when the analysis of the data detects that the analysis diverges by an amount, and the remote server send new commands or software to the underlying systems such as the edge controllers; also, see [0078] “The outputs of the optimization module 930 are periodic and control adjustments to the underlying control system”; also, see [0080] The alert module 940 alters operators and remodels, or re-optimizes, the underlying system when the results of the simulation diverge by a pre-determined amount from expected results”).
While Borrelli teaches the cloud controller has the capability of detecting communication between the cloud controller and the edge device, Borrelli does not explicitly teach in response to a determination by a cloud controller that a device has at least one of (a) initiated communication with the cloud controller or (b) stopped communication with the cloud controller: generating and transmitting the adaptation command.
However, Micali teaches a system comprising a cloud controller (see Fig. 1 Server 140; also, see Col 47 lines 35-45 and Col 48 lines 6-15) and an edge controller (see Fig. 1 power monitor 120), including a function of discovering, wherein in response to a determination by a cloud controller that a device has at least one of (a) initiated communication with the cloud controller (see Col 21 lines 10-19 and 57-65; also, see Col 26 lines 36-54, discovery of an apparatus indicates that a device initiated communication, see Fig. 11 and Fig. 13) or (b) stopped communication with the cloud controller (see Col 26 lines 36-54 “Model updaters 820-860 may do model updates on a periodic basis. Shortly after a user obtains a power monitor 120, model updaters 820-860 may operate more frequently, e.g., once a day, …. As time goes on, models may be updated less frequently, or when an indication is received that a user may have a new device in the house. Collecting data over long periods of time may generally allow for the improvement of both house-independent and house-specific models, and periodically providing these models to users may improve performance”; Thus, this suggests that a connection between edge controller and server stopped, also, see Fig. 6 and connection C2 between server and edge controller 120, also, see Col 15 lines 62-67 “Other connections, such as connections C2-C4 may not be continuous connections, and these connections may be opened when a device needs to transmit information and closed upon the completion of the transmission (or shortly afterwards, upon expiration of a time out, or some other criterion).; also, see Col 16 lines 5-12 “ Other connections, such as connections C2-C4 may not be continuous connections, and these connections may be opened when a device needs to transmit information and closed upon the completion of the transmission (or shortly afterwards, upon expiration of a time out, or some other criterion)”): generating an adaptation command to cause an edge controller to modify a local control scheme of the edge controller and transmitting by the cloud controller the adaptation command to the edge controller (see Col 21 lines 10-19 and 57-65 “server 140 may include device discovery component 810 for discovering information about devices in a home. For example, when power monitor 120 is first installed in a home, it may not have any information about devices in the home or it may only have information about classes of devices that are (or may be) in the home but not have information about specific devices. Device discovery component 810 can receive information about electrical signals in a home, determine information about devices in the home, and then send updated models to the home for use by power monitor 120”; also, see Col 26 lines 36-54).
Therefore, it would have been obvious to one of ordinary skilled in the art before effective filing date of the claimed invention to which said subject matter pertains to have modified Borelli’s invention to include a step of including a function of discovering, wherein in response to a determination by a cloud controller that a device has at least one of (a) initiated communication with the cloud controller or (b) stopped communication with the cloud controller: generating an adaptation command to cause an edge controller to modify a local control scheme of the edge controller and transmitting by the cloud controller the adaptation command to the edge controller as taught by Micali in order to transmit new software or local schema to be used by an edge controller to control or monitor an edge device (see Col 29 lines 29-30 “…In some implementations, power monitor 120 may be able to interact with and/or control other devices in the house. Where these connected devices have an API, and power monitor 120 can connect to them, power monitor 120 can control them for increased energy savings. For example, using expert systems, energy saving strategies may be determined, and power monitor 120 can control a thermostat, lights, or other devices to directly implement these energy saving strategies”) and update the models in the edge controller to account for variances in the edge devices such as wear or when new edge devices are installed (see Col 25 lines 31-50).
As per claim 47, Borrelli-Micali teaches the method of Claim 46, Borrelli further teaches wherein the edge controller is configured to control one or more edge devices according to the modified local control scheme (see [0010], [0036], [0078] “The outputs of the optimization module 930 are periodic and control adjustments to the underlying control system (the HVAC controllers/edge controller; also, see [0080] “The alert module 940 alters operators and remodels, or re-optimizes, the underlying system when the results of the simulation diverge by a pre-determined amount from expected results. In some cases, the descriptive model is able to be changed, such as when new equipment is added to the underlying system or when low-level executable software is added to the underlying system”; also, see [0087]; see [0022] “an electro-mechanical component controls an environment within a zone in a building. The component includes a thermal element for controlling a thermal environment in the zone…The controller includes a processor and a computer readable medium”, the electromechanically component is the same as the HVAC controller and which comprises a processor”; Thus, an edge controller and edge device are optimized and adjusted by the response of the control platform/cloud controller and its operation is based on the response received)). Micali also teaches wherein the edge controller is configured to control one or more edge devices according to the modified local control scheme (see Col 21 lines 22-46, Col 25 lines 30-50 and Col 29 lines 29-30, power monitor uses software/models to monitor and control devices, these software/models updated when a new device is discovered or periodically).
As per claim 49, Borrelli-Micali teaches the method of Claim 46, Micali further teaches wherein the determination by the cloud controller is a determination that the device has initiated communication with the cloud controller (see claim 46 above, and see Col 21 lines 10-19 and 57-65; also, see Col 26 lines 36-54, discovery of an apparatus indicates that a device initiated communication, see Fig. 11 and Fig. 13).
As per claim 50, Borrelli-Micali teaches The method of Claim 46, Micali further teaches wherein the determination by the cloud controller is a determination that the device has stopped communication with the cloud controller (see claim 46, and see Col 26 lines 36-54, see Fig. 6 and connection C2 between server and edge controller 120, also, see Col 15 lines 62-67 , also, see Col 16 lines 5-12).
Claim 48 is rejected under 35 U.S.C. 103 as being unpatentable over Borrelli et al (US 2015/0178421, cited in the IDS) in view of Micali et al (US 9172623) as applied to claim 46 above, and further in view of Thomas et al (US 20130317659, cited in the IDS).
As per claim 48, Borrelli-Micali the method of Claim 46, Borrelli-Micali teaches wherein the cloud controller generates the edge control adaptation command and transmits the edge control adaptation command in response to a determination by the cloud controller that both:
the device has at least one of (a) initiated communication with the cloud controller or (b) stopped communication with the cloud controller (see claim 46 above);
While Borreli teaches that the models/adaptive command are updated and optimized dynamically based on comparing their outputs with a predicted output (see Abstract “The models are adaptively maintained by periodically ensuring that their measured output matches the predicted output. When the two do not match, the model parameters are updated; also, see [0021]), Borreli-Micali does not explicitly teach transmitting edge control adaptation command in response to a determination by the cloud controller that the data relating to operation of the device does not match at least one of a plurality of recognized patterns.
However, However, Thomas teaches a system and method comprising determining, by a cloud controller (see Fig. 1 cloud server 110 or Fig. 4 cloud server 402), whether data satisfies a condition that includes comparing the data against a plurality of recognized patterns, and wherein determining that the data does not satisfy the condition includes determining that the data does not match at least one of the recognized patterns (see [0064-0066] “At the cloud server 402, data from each of the remote units in the system is received, decompressed, stored in a database 406, processed, and analyzed by programs executed on the server or other machines connected to the server…. the sampled data is transformed into the frequency domain to identify distinctive patterns. These patterns are compared to a pre-stored library of patterns, and a determination is made whether the measured pattern matches a stored pattern. Convolution may be used to compare these patterns and once the data is in the frequency domain, convolution is performed with a simple multiply”).
Therefore, it would have been obvious to one of ordinary skilled in the art before effective filing date of the claimed invention to which said subject matter pertains to have modified Borrelli-Micali’s combination as taught above to include determining, by the cloud controller, whether data satisfies a condition that includes comparing the data against a plurality of recognized patterns, and wherein determining that the data does not satisfy the condition includes determining that the data does not match at least one of the recognized patterns as taught by Thomas in order to identify anomalies and report potential problems and allow quick responses by the cloud controller (see [0066]) and based on the analyzed data to update parameter in the remote units (see [0057] and [0068]) and in response to this determination and in addition to the device has at least one of (a) initiated communication with the cloud controller or (b) stopped communication with the cloud controller as taught by Borreli-Micali perform the generation and transmission of the edge control adaptive command to update the edge controller as taught by Borreli-Micali (see claim 46 above).
Indication of Allowable Subject Matter
No prior art rejection has been provided for claims 32-34, and 38-45.
Claims 38-45 would be allowable if the double patenting rejection is overcome, either via a Terminal disclaimer or by amending the claims such that the subject matter of the patent described above and the instant claims are not coextensive in scope (see MPEP 804.02 I and II). Claims 32-34 would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims and if the double patenting rejection is overcome, either via a Terminal disclaimer or by amending the claims such that the subject matter of the patent described above and the instant claims are not coextensive in scope (see MPEP 804.02 I and II).
Claim 32 recites “wherein modifying, by the edge controller based on the edge control adaptation command, the local control scheme of the edge controller includes modifying, by the edge controller based on the edge control adaptation command, the local control scheme of the edge controller to utilize additional data”
Claim 35 recites “receiving data by an edge controller, the edge controller being configured to control operation of an edge device according to a policy that limits operation of the edge device;
analyzing, by the edge controller, the data to determine whether a response of the edge controller to the data would violate the policy;
and in response to determining that the response of the edge controller to the data would violate the policy:
transmitting, by the edge controller, a request to a cloud controller to analyze the data;
receiving, at the edge controller from the cloud controller, a response to the request, the response including at least one of:
an indication that the policy should be modified;
or an indication that the edge controller can control the edge device without modifying a local control scheme of the edge controller; and
controlling, by the edge controller, operation of the edge device based on the response from the cloud controller”.
The prior art of record alone or in combination does not explicitly teach or suggest the limitations of claims 32 in combination with the other claims elements of claim 31 as a whole. Also, the prior art of record alone or in combination does not explicitly teach or suggest the limitations of claim 38 in combination with the other claims elements of claim 38 as a whole.
Conclusion
The prior art made of record and not relied upon, as cited in PTO form 892, is considered pertinent to applicant's disclosure.
Atchison et al (US 20180267794) teaches a system comprising a cloud controller generating and transmitting an update to an edge controller in response to a determination by a cloud controller that a device has at least one of (a) initiated communication with the cloud controller (see Fig. 6).
Nagarju et al (US 20180032915) teaches a cloud device to send an update to an edge controller in response to a determination by a cloud controller that a device has at least one of (a) initiated communication with the cloud controller or disconnected/stopped communication (see [0138 and see Fig. 12 step 1012).
Laidlaw et al (US 20150334079) in response to a determination by a cloud controller that a device has at least one of (a) initiated communication with the cloud controller or (b) stopped communication with the cloud controller:
generating, by the cloud controller, an edge control adaptation command configured to cause an edge controller to modify a local control scheme of the edge controller (see cloud controller 420 and edge devices 410; [0073] the adaptation is done when the device is connected); and
transmitting, by the cloud controller, the edge control adaptation command to the edge controller (0073 the transmission happens after being disconnected and then the device is connected).
Examiner respectfully requests, in response to this Office action, support be shown for language added to any original claims on amendment and any new claims. That is, indicate support for newly added claim language by specifically pointing to page(s) and line number(s) in the specification and/or drawing figure(s). This will assist Examiner in prosecuting the application.
When responding to this Office Action, Applicant is advised to clearly point out the patentable novelty which he or she thinks the claims present, in view of the state of the art disclosed by the references cited or the objections made. Applicant must also show how the amendments avoid or differentiate from such references or objections. See 37 CFR 1.111 (c).
Any inquiry concerning this communication or earlier communications from the examiner should be directed to OLVIN LOPEZ ALVAREZ whose telephone number is (571) 270-7686 and fax (571) 270-8686. The examiner can normally be reached Monday thru Friday from 9:00 A.M. to 6:00 P.M.
If attempts to reach the examiner by telephone are unsuccessful, the examiner's supervisor, Robert Fennema, can be reached at (571) 272-2748. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from Patent Center. Status information for published applications may be obtained from Patent Center. Status information for unpublished applications is available through Patent Center for authorized users only. Should you have questions about access to Patent Center, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
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) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form.
/O. L./
Examiner, Art Unit 2117
/ROBERT E FENNEMA/Supervisory Patent Examiner, Art Unit 2117