The present disclosure relates generally to building management systems for buildings. The present disclosure relates more particularly to maintaining occupant health and safety by assessing and controlling aspects of air cleanliness and/or infection risk reduction in buildings.
Building equipment (e.g., HVAC equipment) can be operated to control various environment conditions of spaces of a building. Building equipment can move air through various spaces of a building and can be operated to control the quality or cleanliness of air in the spaces, such as by moving clean air into the space and/or moving air with potential contaminants out of the space. Additionally, building equipment operation can have an effect on the likelihood of an infectious disease spreading amongst occupants of the building.
Some embodiments relate to a method executable by a building management system for controlling air cleanliness in a building space. The method includes predicting an occupancy of the building space during a future time period, identifying an occupant predicted to occupy the building space during the future time period based on the predicted occupancy, obtaining an occupant-specific air cleanliness requirement for the identified occupant, using a predictive air cleanliness model for the building space and the occupant-specific air cleanliness requirement to generate control parameters for building equipment that operate to affect the air cleanliness in the building space, and operating the building equipment using the control parameters to affect the air cleanliness in the building space during the future time period.
In some embodiments, predicting the occupancy of the building space includes monitoring locations of occupants in one or more building spaces during a previous time period and using an occupancy prediction model to predict the occupancy of the building space during the future time period based on the locations of the occupants within the one or more building spaces during the previous time period.
In some embodiments, monitoring the locations of the occupants in the one or more building spaces during the previous time period includes tracking location history of the occupants based on at least one of electronic communications, user device data, or detected locations of the occupants in the one or more building spaces during the previous time period, generating a location pattern of the occupants based on the location history of the occupants in the one or more building spaces during the previous time period, storing the location pattern of the occupants in building space data and providing the location pattern of the occupants to the occupancy prediction model to train the occupancy prediction model.
In some embodiments, the method further includes generating a report for the locations of the occupants within the one or more building spaces based on the locations of the occupants in the one or more building spaces during the previous time period.
In some embodiments, identifying the occupant predicted to occupy the building space during the future time period includes obtaining, from the occupancy prediction model, an indication of a plurality of individual occupants predicted to occupy the building space during the future time period, selecting the occupant from the plurality of individual occupants, and determining an identity of the occupant using occupant-specific identity information associated with the occupant.
In some embodiments, the method further includes predicting that the occupant will leave the building space at an end of the future time period, identifying a second occupant predicted to occupy the building space during a second time period after the future time period, and using a second occupant-specific air cleanliness requirement for the second occupant to operate the building equipment to affect the air cleanliness in the building space during the second time period.
In some embodiments, the method further includes accessing a profile of the occupant comprising an occupant-specific value of an attribute associated with the occupant separate from the occupant-specific air cleanliness requirement, determining the occupant-specific air cleanliness requirement based on the occupant-specific value of the attribute, and storing the occupant-specific air cleanliness requirement as a new attribute in the profile of the occupant.
In some embodiments, determining the occupant-specific air cleanliness requirement includes using a stored relationship between the attribute associated with the occupant and the occupant-specific air cleanliness requirement to generate a value of the occupant-specific air cleanliness requirement based on the value of the attribute associated with the occupant.
In some embodiments, the method further includes identifying a plurality of occupants predicted to occupy the building space during the future time period based on the predicted occupancy, obtaining a plurality of occupant-specific air cleanliness requirements for the plurality of occupants, and using the predictive air cleanliness model and the plurality of occupant-specific air cleanliness requirements to generate the control parameters for the building equipment.
In some embodiments, using the predictive air cleanliness model for the building space and the occupant-specific air cleanliness requirement to generate the control parameters for the building equipment that operate to affect the air cleanliness in the building space includes determining a group air cleanliness requirement sufficient to satisfy each of the plurality of occupant-specific air cleanliness requirements and generating the control parameters for the building equipment using the group air cleanliness requirement.
Some embodiments relate to a method for controlling air cleanliness in a building space, by a building management system. The method includes determining an occupancy of the building space during a time period, identifying an occupant of the building space during the time period based on the occupancy, generating control parameters for building equipment that operate to affect the air cleanliness in the building space based on an occupant-specific air cleanliness requirement for the identified occupant, and operating the building equipment using the control parameters to affect the air cleanliness in the building space during the time period.
In some embodiments, identifying the occupant of the building space during the time period based on the occupancy includes detecting a current occupant of the building space.
In some embodiments, generating the control parameters for the building equipment that operate to affect the air cleanliness in the building space based on the occupant-specific air cleanliness requirement for the identified occupant includes identifying a plurality of occupants to occupy the building space during the time period based on the current occupancy, obtaining a plurality of occupant-specific air cleanliness requirements for the plurality of occupants, and determining a group air cleanliness requirement sufficient to satisfy each of the plurality of occupant-specific air cleanliness requirements.
In some embodiments, the method further includes monitoring sensors within building spaces of occupants during the time period, obtaining an air cleanliness measurement from the sensors within the building space during a time period, generating reports for air cleanliness for the occupants within the building space during the time period, and providing the reports to occupant data in a plurality of occupant data for the occupants of the building space during the time period.
Some embodiments relate to a building management system which includes one or more processors and one or more non-transitory computer-readable media storing instructions that, when executed by the one or more processors, cause the one or more processors to perform operations including predicting an occupancy of the building space during a future time period, identifying an occupant predicted to occupy the building space during the future time period based on the predicted occupancy, obtaining an occupant-specific air cleanliness requirement for the identified occupant, using a predictive air cleanliness model for the building space and the occupant-specific air cleanliness requirement to generate control parameters for building equipment that operate to affect the air cleanliness in the building space, and operating the building equipment using the control parameters to affect the air cleanliness in the building space during the future time period.
In some embodiments, the building management system is further configured to monitor locations of occupants in one or more building spaces during a previous time period and use an occupancy prediction model to predict the occupancy of the building space during the future time period based on the locations of the occupants within the one or more building spaces during the previous time period.
In some embodiments, the building management system is further configured to predict that the occupant will leave the building space at an end of the future time period, identify a second occupant predicted to occupy the building space during a second time period after the future time period, and use a second occupant-specific air cleanliness requirement for the second occupant to operate the building equipment to affect the air cleanliness in the building space during the second time period.
In some embodiments, the building management system is further configured to access a profile of the occupant comprising an occupant-specific value of an attribute associated with the occupant separate from the occupant-specific air cleanliness requirement, determine the occupant-specific air cleanliness requirement based on the occupant-specific value of the attribute, and store the occupant-specific air cleanliness requirement as a new attribute in the profile of the occupant.
In some embodiments, the operation to monitor locations of occupants in one or more building spaces during a previous time period includes track location history of the occupants based on at least one of electronic communications, user device data, or detected locations of the occupants in the one or more building spaces during the previous time period, generate a location pattern of the occupants based on the location history of the occupants in the one or more building spaces during the previous time period, store the location pattern of the occupants in building space data, and provide the location pattern of the occupants to the occupancy prediction model to train the occupancy prediction model.
It will be recognized that some or all of the figures are schematic representations for purposes of illustration. The figures are provided for the purpose of illustrating one or more embodiments with the explicit understanding that they will not be used to limit the scope or the meaning of the claims.
The following applications are incorporated herein by reference in their entireties: U.S. application Ser. No. 17/403,669 filed Aug. 16, 2021; U.S. application Ser. No. 16/927,759 filed Jul. 13, 2020; U.S. Provisional Patent Application No. 62/873,631 filed Jul. 12, 2019; U.S. Provisional Patent Application No. 63/044,906 filed Jun. 26, 2020; U.S. patent application Ser. No. 17/393,138 filed Aug. 3, 2021; U.S. patent application Ser. No. 16/927,766 filed Jul. 13, 2020; U.S. Provisional Application No. 63/194,771 filed May 28, 2021; and U.S. Provisional Application No. 63/220,878 filed Jul. 12, 2021.
Referring generally to the FIGURES, systems and methods for mitigating infection risk and/or improving indoor air quality of a building are provided according to various example embodiments the term air quality may be used interchangeably with the term air cleanliness according to various embodiments described herein. According to various embodiments, the systems and methods described herein can balance various factors such as minimizing the risk of infectious diseases and serious illnesses/hospitalizations while also considering energy cost, carbon usage, and other important factors. These systems and methods can control and optimize building equipment/HVAC control in order to mitigate the risk of infection and improve indoor air quality. In particular, systems and methods perform multi-objective building equipment/HVAC control, balancing the risk of serious illness/hospitalization from infectious disease and energy cost.
In some embodiments, building management systems gather data from various sources such as Building Automation Systems (BAS) and Indoor Air Quality (IAQ) sensors to monitor CO2, humidity, particulate matter, volatile organic compounds (VOCs) and other relevant parameters. This data can then use to optimize and modify building equipment/HVAC control, reducing the risk of infection and improving indoor air quality. For example, building occupancy can be estimated using IAQ and BAS/building equipment/HVAC operational data, such as ventilation, filtration, disinfection, etc. and data regarding occupant activity, such as breathing rate. The systems and method use this information to control building equipment/HVAC systems, mitigating the risk of infection and improving indoor air quality. Additionally, the systems and method can estimate time-varying ventilation and recirculation rate using IAQ data and BAS data. In particular, these systems and methods described herein employ a multi-objective optimization and control of building equipment parameters, such as HVAC setpoints, to balance multiple factors, including energy usage, infection risk, indoor air quality, carbon production, and occupant comfort. By balancing all these factors, building management systems aim to provide a safer and more comfortable indoor environment.
Referring now to
The BMS that serves building 10 may include a HVAC system 100. HVAC system 100 can include a plurality of HVAC devices (e.g., heaters, chillers, air handling units, pumps, fans, thermal energy storage, etc.) configured to provide heating, cooling, ventilation, or other services for building 10. For example, HVAC system 100 is shown to include a waterside system 120 and an airside system 130. Waterside system 120 may provide a heated or chilled fluid to an air handling unit of airside system 130. Airside system 130 may use the heated or chilled fluid to heat or cool an airflow provided to building 10. In some embodiments, waterside system 120 can be replaced with or supplemented by a central plant or central energy facility (described in greater detail with reference to
HVAC system 100 is shown to include a chiller 102, a boiler 104, and a rooftop air handling unit (AHU) 106. Waterside system 120 may use boiler 104 and chiller 102 to heat or cool a working fluid (e.g., water, glycol, etc.) and may circulate the working fluid to AHU 106. In various embodiments, the HVAC devices of waterside system 120 can be located in or around building 10 (as shown in
AHU 106 may place the working fluid in a heat exchange relationship with an airflow passing through AHU 106 (e.g., via one or more stages of cooling coils and/or heating coils). The airflow can be, for example, outside air, return air from within building 10, or a combination of both. AHU 106 may transfer heat between the airflow and the working fluid to provide heating or cooling for the airflow. For example, AHU 106 can include one or more fans or blowers configured to pass the airflow over or through a heat exchanger containing the working fluid. The working fluid may then return to chiller 102 or boiler 104 via piping 110.
Airside system 130 may deliver the airflow supplied by AHU 106 (i.e., the supply airflow) to building 10 via air supply ducts 112 and may provide return air from building 10 to AHU 106 via air return ducts 114. In some embodiments, airside system 130 includes multiple variable air volume (VAV) units 116. For example, airside system 130 is shown to include a separate VAV unit 116 on each floor or zone of building 10. VAV units 116 can include dampers or other flow control elements that can be operated to control an amount of the supply airflow provided to individual zones of building 10. In other embodiments, airside system 130 delivers the supply airflow into one or more zones of building 10 (e.g., via supply ducts 112) without using intermediate VAV units 116 or other flow control elements. AHU 106 can include various sensors (e.g., temperature sensors, pressure sensors, etc.) configured to measure attributes of the supply airflow. AHU 106 may receive input from sensors located within AHU 106 and/or within the building zone and may adjust the flow rate, temperature, or other attributes of the supply airflow through AHU 106 to achieve setpoint conditions for the building zone.
Referring now to
Airside system 200 is shown to include an economizer-type air handling unit (AHU) 202. Economizer-type AHUs vary the amount of outside air and return air used by the air handling unit for heating or cooling. For example, AHU 202 may receive return air 204 from building zone 206 via return air duct 208 and may deliver supply air 210 to building zone 206 via supply air duct 212. In some embodiments, AHU 202 is a rooftop unit located on the roof of building 10 (e.g., AHU 106 as shown in
Each of dampers 216-220 can be operated by an actuator. For example, exhaust air damper 216 can be operated by actuator 224, mixing damper 218 can be operated by actuator 226, and outside air damper 220 can be operated by actuator 228. Actuators 224-228 may communicate with an AHU controller 230 via a communications link 232. Actuators 224-228 may receive control signals from AHU controller 230 and may provide feedback signals to AHU controller 230. Feedback signals can include, for example, an indication of a current actuator or damper position, an amount of torque or force exerted by the actuator, diagnostic information (e.g., results of diagnostic tests performed by actuators 224-228), status information, commissioning information, configuration settings, calibration data, and/or other types of information or data that can be collected, stored, or used by actuators 224-228. AHU controller 230 can be an economizer controller configured to use one or more control algorithms (e.g., state-based algorithms, extremum seeking control (ESC) algorithms, proportional-integral (PI) control algorithms, proportional-integral-derivative (PID) control algorithms, model predictive control (MPC) algorithms, feedback control algorithms, etc.) to control actuators 224-228.
Still referring to
Cooling coil 234 may receive a chilled fluid from central plant 200 (e.g., from cold water loop 216) via piping 242 and may return the chilled fluid to central plant 200 via piping 244. Valve 246 can be positioned along piping 242 or piping 244 to control a flow rate of the chilled fluid through cooling coil 234. In some embodiments, cooling coil 234 includes multiple stages of cooling coils that can be independently activated and deactivated (e.g., by AHU controller 230, by BMS controller 266, etc.) to modulate an amount of cooling applied to supply air 210.
Heating coil 236 may receive a heated fluid from central plant 200 (e.g., from hot water loop 214) via piping 248 and may return the heated fluid to central plant 200 via piping 250. Valve 252 can be positioned along piping 248 or piping 250 to control a flow rate of the heated fluid through heating coil 236. In some embodiments, heating coil 236 includes multiple stages of heating coils that can be independently activated and deactivated (e.g., by AHU controller 230, by BMS controller 266, etc.) to modulate an amount of heating applied to supply air 210.
Each of valves 246 and 252 can be controlled by an actuator. For example, valve 246 can be controlled by actuator 254 and valve 252 can be controlled by actuator 256. Actuators 254-256 may communicate with AHU controller 230 via communications links 258-260. Actuators 254-256 may receive control signals from AHU controller 230 and may provide feedback signals to controller 230. In some embodiments, AHU controller 230 receives a measurement of the supply air temperature from a temperature sensor 262 positioned in supply air duct 212 (e.g., downstream of cooling coil 334 and/or heating coil 236). AHU controller 230 may also receive a measurement of the temperature of building zone 206 from a temperature sensor 264 located in building zone 206.
In some embodiments, AHU controller 230 operates valves 246 and 252 via actuators 254-256 to modulate an amount of heating or cooling provided to supply air 210 (e.g., to achieve a setpoint temperature for supply air 210 or to maintain the temperature of supply air 210 within a setpoint temperature range). The positions of valves 246 and 252 affect the amount of heating or cooling provided to supply air 210 by cooling coil 234 or heating coil 236 and may correlate with the amount of energy consumed to achieve a desired supply air temperature. AHU 230 may control the temperature of supply air 210 and/or building zone 206 by activating or deactivating coils 234-236, adjusting a speed of fan 238, or a combination of both.
Still referring to
In some embodiments, AHU controller 230 receives information from BMS controller 266 (e.g., commands, setpoints, operating boundaries, etc.) and provides information to BMS controller 266 (e.g., temperature measurements, valve or actuator positions, operating statuses, diagnostics, etc.). For example, AHU controller 230 may provide BMS controller 266 with temperature measurements from temperature sensors 262-264, equipment on/off states, equipment operating capacities, and/or any other information that can be used by BMS controller 266 to monitor or control a variable state or condition within building zone 206.
Client device 268 can include one or more human-machine interfaces or client interfaces (e.g., graphical user interfaces, reporting interfaces, text-based computer interfaces, client-facing web services, web servers that provide pages to web clients, etc.) for controlling, viewing, or otherwise interacting with HVAC system 100, its subsystems, and/or devices. Client device 268 can be a computer workstation, a client terminal, a remote or local interface, or any other type of user interface device. Client device 268 can be a stationary terminal or a mobile device. For example, client device 268 can be a desktop computer, a computer server with a user interface, a laptop computer, a tablet, a smartphone, a PDA, or any other type of mobile or non-mobile device. Client device 268 may communicate with BMS controller 266 and/or AHU controller 230 via communications link 272.
HVAC System with Building Infection Control
Referring particularly to
The HVAC system 300 can also include ultraviolet (UV) lights 306 that are configured to provide UV light to the conditioned air before it is provided to building zones 206. The UV lights 306 can provide disinfection as determined by controller 310 and/or based on user operating preferences. For example, the controller 310 can determine control signals for UV lights 306 in combination with the fraction x of outdoor air to provide a desired amount of disinfection and satisfy an infection probability constraint. Although UV lights 306 are referred to throughout the present disclosure, the systems and methods described herein can use any type of disinfection lighting using any frequency, wavelength, or luminosity of light effective for disinfection. It should be understood that UV lights 306 (and any references to UV lights 306 throughout the present disclosure) can be replaced with disinfection lighting of any type without departing from the teachings of the present disclosure.
The HVAC system 300 can also include one or more filters 308 or filtration devices (e.g., air purifiers). In some embodiments, the filters 308 are configured to filter the conditioned air or recirculated air before it is provided to building zones 206 to provide a certain amount of disinfection. In this way, controller 310 can perform an optimization in real-time or as a planning tool to determine control signals for AHU 304 (e.g., the fraction x) and control signals for UV lights 306 (e.g., on/off commands) to provide disinfection for building zones 206 and reduce a probability of infection of individuals that are occupying building zones 206. Controller 310 can also function as a design tool that is configured to determine suggestions for building managers regarding benefits of installing or using filters 308, and/or specific benefits that may arise from using or installing a particular type or size of filter. Controller 310 can thereby facilitate informed design decisions to maintain sterilization of air that is provided to building zones 206 and reduce a likelihood of infection or spreading of infectious matter.
In some embodiments, systems and methods described herein may use an infection probability constraint in various optimizations (e.g., in on-line or real-time optimizations or in off-line optimizations) to facilitate reducing infection probability among residents or occupants of spaces that the HVAC system serves. The infection probability constraint can be based on a steady-state Wells-Riley equation for a probability of airborne transmission of an infectious agent given by:
where P is a probability that an individual becomes infected (e.g., in a zone, space, room, environment, etc.), D is a number of infected individuals (e.g., in the zone, space, room, environment, etc.), S is a total number of susceptible individuals (e.g., in the zone, space, room, environment, etc.),/is a number of infectious individuals (e.g., in the zone, space, room, environment, etc.), q is a disease quanta generation rate (e.g., with units of 1/sec), p is a volumetric breath rate of one individual (e.g., in m3/sec), t is a total exposure time (e.g., in seconds), and Q is an outdoor ventilation rate (e.g., in m3/sec). For example, Q may be a volumetric flow rate of fresh outdoor air that is provided to the building zones 206 by AHU 304.
When the Wells-Riley equation is implemented by controller 310 as described herein, controller 310 may use the Wells-Riley equation (or a dynamic version of the Wells-Riley equation) to determine an actual or current probability of infection P and operate the HVAC system 200 to maintain the actual probability of infection P below (or drive the actual probability of infection below) a constraint or maximum allowable value. The constraint value (e.g., Pmax) may be a constant value, or may be adjustable by a user (e.g., a user-set value). For example, the user may set the constraint value of the probability of infection to a maximum desired probability of infection (e.g., either for on-line implementation of controller 310 to maintain the probability of infection below the maximum desired probability, or for an off-line implementation/simulation performed by controller 310 to determine various design parameters for HVAC system 200 such as filter size), or may select from various predetermined values (e.g., 3-5 different choices of the maximum desired probability of infection).
In some embodiments, the number of infectious individuals/can be determined by controller 310 based on data from the Centers for Disease and Control Prevention or a similar data source. The value of/may be typically set equal to 1 but may vary as a function of occupancy of building zones 206.
The disease quanta generation rate q may be a function of the infectious agent. For example, more infectious diseases may have a higher value of q, while less infectious diseases may have a lower value of q. For example, the value of q for COVID-19 may be 30-300 (e.g., 100).
The value of the volumetric breath rate p may be based on a type of building space 206. For example, the volumetric breath rate p may be higher if the building zone 206 is a gym as opposed to an office setting. In general, an expected level of occupant activity may determine the value of the volumetric breath rate p.
A difference between D (the number of infected individuals) and I (the number of infectious individuals) is that D is a number of individuals who are infected (e.g., infected with a disease), while I is a number of people that are infected and are actively contagious (e.g., individuals that may spread the disease to other individuals or spread infectious particles when they exhale). The disease quanta generation rate indicates a number of infectious droplets that give a 63.2% chance of infecting an individual (e.g., 1−exp(−1)). For example, if an individual inhales k infectious particles, the probability that the individual becomes infected (P) is given by
where k is the number of infectious particles that the individual has inhaled, and k0 is a quantum of particles for a particular disease (e.g., a predefined value for different diseases). The quanta generation rate q is the rate at which quanta are generated (e.g., K/k0) where K is the rate of infectious particles exhaled by an infectious individual. It should be noted that values of the disease quanta generation rate q may be back-calculated from epidemiological data or may be tabulated for well-known diseases.
The Wells-Riley equation (shown above) is derived by assuming steady-state concentrations for infectious particles in the air. Assuming a well-mixed space:
where V is a total air volume (e.g., in m3), N is a quantum concentration in the air, I is the number of infectious individuals, q is the disease quanta generation rate, and Q is the outdoor ventilation rate. The term Iq is quanta production by infectious individuals (e.g., as the individuals breathe out or exhale), and the term NQ is the quanta removal rate due to ventilation (e.g., due to operation of AHU 304).
Assuming steady-state conditions, the steady state quantum concentration in the air is expressed as:
according to some embodiments.
Therefore, if an individual inhales at an average rate of p (e.g., in m3/sec), over a period of length t the individual inhales a total volume pt or Nssptk0 infectious particles. Therefore, based on a probability model used to define the quanta, the infectious probability is given by:
where P is the probability that an individual becomes infected, k is the number of infectious particles that the individual has inhaled, and k0 is the quantum of particles for the particular disease.
While the above equations may rely on in-air infectious quanta concentration, measuring in-air infectious quanta concentration may be difficult. However, carbon dioxide (CO2) is a readily-measurable parameter that can be a proxy species, measured by zone sensors 312. In some embodiments, a concentration of CO2 in the zones 206 may be directly related to a concentration of the infectious quanta.
A quantity ϕ that defines a ratio of an infected particle concentration in the building air to the infected particle concentration in the exhaled breath of an infectious individual is defined:
where p is the volumetric breath rate for an individual, N is the quantum concentration in the air, and q is the disease quanta generation rate. Deriving the above equation with respect to time yields:
where p is the volumetric breath rate for the individual, q is disease quanta generation rate, N is the quantum concentration in the air, t is time, I is the number of infectious individuals, V is the total air volume, ϕ is the ratio, and Q is the outdoor ventilation rate. Since it can be difficult to measure the ratio ϕ of the air, CO2 can be used as a proxy species.
Humans release CO2 when exhaling, which is ultimately transferred to the ambient via ventilation of an HVAC system. Therefore, the difference between CO2 particles and infectious particles is that all individuals (and not only the infectious population) release CO2 and that the outdoor air CO2 concentration is non-zero. However, it may be assumed that the ambient CO2 concentration is constant with respect to time, which implies that a new quantity C can be defined as the net indoor CO2 concentration (e.g., the indoor concentration minus the outdoor concentration). With this assumption, the following differential equation can be derived:
where V is the total air volume (e.g., in m3), C is the net indoor CO2 concentration, t is time, S is the total number of susceptible individuals (e.g., in building zone 206, or a modeled space, or all of building zones 206, or building 10), p is the volumetric breath rate for one individual, c is the net concentration of exhaled CO2, and Q is the outdoor ventilation rate. This equation assumes that the only way to remove infectious particles is with fresh air ventilation (e.g., by operating AHU 304 to draw outdoor air and use the outdoor air with recirculated air). A new quantity ¿ can be defined that gives the ratio of net CO2 concentration in the building air to net CO2 concentration in the exhaled air:
where ψ is the ratio, C is the net indoor CO2 concentration, and c is the net concentration of exhaled CO2.
Deriving the ratio ψ with respect to time yields:
according to some embodiments.
Combining the above equation with the quantity ϕ, it can be derived that:
according to some embodiments. Assuming that the initial condition satisfies:
it can be determined that the right-hand side of the
equation becomes zero. This implies that the term
and therefore
is a constant. Therefore, ϕ/ψ is constant for all times t and not merely initial conditions when t=0.
The
relationship only holds true when fresh outdoor air is used as the only disinfection mechanism. However, in many cases HVAC system 200 may include one or more filters 308, and UV lights 306 that can be operated to provide disinfection for building zones 206. If additional infection mitigation strategies are used, the ventilation rate may instead by an effective ventilation rate for infectious quanta that is different than that of the CO2. Additionally, the only way for the initial conditions ϕ(0) and ψ(0) to be in proportion is for both to be zero. This assumption can be reasonable if HVAC system 200 operates over a prolonged time period (such as overnight, when the concentrations have sufficient time to reach equilibrium zero values). However, ventilation is often partially or completely disabled overnight and therefore the two quantities ϕ and ψ are not related. However, CO2 concentration can be measured to determine common model parameters (e.g., for the overall system volume V) without being used to estimate current infectious particle concentrations. If fresh outdoor air ventilation is the only mechanism for disinfection of zones 206, and the HVAC system 200 is run so that the concentrations reach equilibrium, CO2 concentration can be measured and used to estimate current infectious particle concentrations.
Referring still to
Therefore, assuming that the infectious quanta concentration N(t) is a time-varying quantity, for a given time period t∈[0, T], an individual breathes in:
where k[0,T] is the number of infectious particles that an individual inhales over the given time period [0, T], p is the volumetric breath rate of one individual, k0 is the quantum of particles for a particular disease, and N(t) is the time-varying quantum concentration of the infectious particle in the air.
Since
the above equation can be rearranged and substitution yields:
according to some embodiments.
Assuming an upper boundary P[0,T]max on acceptable or desirable infection probability, a constraint is defined as:
according to some embodiments. The constraint can define a fixed upper boundary on an average value of Nt over the given time interval.
Referring particularly to
Controller 310 includes a processing circuit 402 including a processor 404 and memory 406. Processing circuit 402 can be communicably connected with a communications interface of controller 310 such that processing circuit 402 and the various components thereof can send and receive data via the communications interface. Processor 404 can be implemented as a general purpose processor, an application specific integrated circuit (ASIC), one or more field programmable gate arrays (FPGAs), a group of processing components, or other suitable electronic processing components.
Memory 406 (e.g., memory, memory unit, storage device, etc.) can include one or more devices (e.g., RAM, ROM, Flash memory, hard disk storage, etc.) for storing data and/or computer code for completing or facilitating the various processes, layers and modules described in the present application. Memory 406 can be or include volatile memory or non-volatile memory. Memory 406 can include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described in the present application. According to some embodiments, memory 406 is communicably connected to processor 404 via processing circuit 402 and includes computer code for executing (e.g., by processing circuit 402 and/or processor 404) one or more processes described herein.
In some embodiments, controller 310 is implemented within a single computer (e.g., one server, one housing, etc.). In various other embodiments controller 310 can be distributed across multiple servers or computers (e.g., that can exist in distributed locations).
Memory 406 can include a constraint generator 410, a model manager 416, a sensor manager 414, an optimization manager 412, and a control signal generator 408. Sensor manager 414 can be configured to obtain zone sensor data from zone sensors 312 and/or ambient sensor data from ambient sensors 314 (e.g., environmental conditions, outdoor temperature, outdoor humidity, etc.) and distribute required sensor data to the various components of memory 406 thereof. Constraint generator 410 is configured to generate one or more constraints for an optimization problem (e.g., an infection probability constraint) and provide the constraints to optimization manager 412. Model manager 416 can be configured to generate dynamic models (e.g., individual or zone-by-zone dynamic models, aggregate models, etc.) and provide the dynamic models to optimization manager 412. Optimization manager 412 can be configured to use the constraints provided by constraint generator 410 and the dynamic models provided by model manager 416 to formulate an optimization problem. Optimization manager 412 can also define an objective function for the optimization problem, and minimize or optimize the objective function subject to the one or more constraints and the dynamic models. The objective function may be a function that indicates an amount of energy consumption, energy consumption costs, carbon footprint, or any other optimization goals over a time interval or time horizon (e.g., a future time horizon) as a function of various control decisions. Optimization manager 412 can output optimizations results to control signal generator 408. Control signal generator 408 can generate control signals based on the optimization results and provide the control signals to any of AHU 304, filter 308, and/or UV lights 306.
Referring particularly to
where fk is a volumetric flow of air into the kth zone, ρ is a mass density of air (e.g., in kg per cubic meters), c is the heat capacity of air (e.g., in kJ/kg·K), Qk(⋅) is heat load on the kth zone 206 (which may depend on the temperature Tk), Wk is the moisture gain of the kth zone 206, and Ik is the number of infectious individuals in the kth zone 206. T0 is the temperature of the air provided to the kth zone (e.g., as discharged by a VAV box of AHU 304), ω0 is the humidity of the air provided to the kth zone 206, and N0 is the infectious quanta concentration of the air provided to the kth zone 206.
The temperature T0 of air output by the AHU 304, the humidity ω0 of air output by the AHU 304, and the infectious quanta concentration No of air output by the AHU 304 is calculated using the equations:
where x is the fresh-air intake fraction of AHU 304, Ta is current ambient temperature, ωa is current ambient humidity, ΔTc is temperature reductions from the cooling coil of AHU 304, Δωc is humidity reduction from the cooling coil of AHU 304, and λ is a fractional reduction of infectious quanta due to filtration (e.g., operation of filter 308) and/or UV treatment (e.g., operation of UV lights 306) at AHU 304 (but not due to ventilation which is accounted for in the factor 1−x, according to some embodiments.
In some embodiments, the dynamic models of the individual zones are stored by and used by model manager 416. Model manager 416 can store the individual dynamic models shown above and/or aggregated models (described in greater detail below) and populate the models. The populated models can then be provided by model manager 416 to optimization manager 412 for use in performing an optimization.
In some embodiments, model manager 416 is configured to receive sensor data from sensor manager 414. Sensor manager 414 may receive sensor data from zone sensors 312 and/or ambient sensors 313 and provide appropriate or required sensor data to the various managers, modules, generators, components, etc., of memory 406. For example, sensor manager 414 can obtain values of the current ambient temperature Ta, the current ambient humidity ωa, the temperature reduction ΔTc resulting from the cooling coil of AHU 304, and/or the humidity reduction Δωc resulting from the cooling coil of AHU 304, and provide these values to model manager 416 for use in determining T0, ω0, and N0 or for populating the dynamic models of the individual zones 206.
In some embodiments, various parameters or values of the variables of the dynamic models of the individual zones 206 are predefined, predetermined, or stored values, or may be determined (e.g., using a function, an equation, a table, a look-up table, a graph, a chart, etc.) based on sensor data (e.g., current environmental conditions of the ambient or outdoor area, environmental conditions of the zones 206, etc.). For example, the mass density of air ρ may be a predetermined value or may be determined based on sensor data. In some embodiments, model manager 416 can use stored values, sensor data, etc., to fully populate the dynamic models of the individual zones 206 (except for control or adjustable variables of the dynamic models of the individual zones 206 that are determined by performing the optimization). Once the models are populated so that only the control variables remain undefined or undetermined, model manager 416 can provide the populated models to optimization manager 412.
The number of infectious individuals Ik can be populated based on sensor data (e.g., based on biometric data of occupants or individuals of the building zones 206), or can be estimated based on sensor data. In some embodiments, model manager 416 can use an expected number of occupants and various database regarding a number of infected individuals in an area. For example, model manager 416 can query an online database regarding potential infection spread in the area (e.g., number of positive tests of a particular virus or contagious illness) and estimate if it is likely that an infectious individual is in the building zone 206.
In some embodiments, it can be difficult to obtain zone-by-zone values of the number of infectious individuals Ik in the modeled space (e.g., the zones 206). In some embodiments, model manager 416 is configured to use an overall approximation of the model for Nk. Model manager 416 can store and use volume-averaged variables:
according to some embodiments. Specifically, the equations shown above aggregate the variables
The K separate ordinary differential equation models (i.e., the dynamic models of the individual zones 206) can be added for Nk to determine an aggregate quantum concentration model:
according to some embodiments, assuming that Nk≈
according to some embodiments.
Defining aggregate temperature, humidity, heat load, and moisture gain parameters:
allows the k thermal models
to be added:
according to some embodiments (assuming that Tk≈
according to some embodiments.
The moisture model
can similarly be aggregated to yield an aggregate moisture model:
to predict an evolution of volume-averaged humidity, according to some embodiments.
In some embodiments, model manager 416 stores and uses the aggregate quantum concentration model, the aggregate thermal model, and/or the aggregate moisture model described hereinabove. Model manager 416 can populate the various parameters of the aggregate models and provide the aggregate models to optimization manager 412 for use in the optimization.
Referring still to
The infectious quanta removal fraction A is defined as:
where λfilter is an infectious quanta removal fraction that results from using filter 308 (e.g., an amount or fraction of infectious quanta that is removed by filter 308), and λUV is an infectious quanta removal fraction that results from using UV lights 306 (e.g., an amount or fraction of infectious quanta that is removed by operation of UV lights 306). In some embodiments, λfilter is a design-time constant (e.g., determined based on the chosen filter 308), whereas λUV is an adjustable or controllable variable that can be determined by optimization manager 412 by performing the optimization of the optimization problem. In some embodiments, λUV is a discrete variable. In some embodiments, λUV is a continuous variable.
Instantaneous electricity or energy consumption of HVAC system 200 is modeled using the equation (e.g., an objective function that is minimized):
where L is a latent heat of water, ΔP is a duct pressure drop, ηcoil is an efficiency of the cooling coil of AHU 304, ηfan is an efficiency of a fan of AHU 304, and ηUV is an efficiency of the UV lights 306, according to some embodiments. In some embodiments, optimization manager 412 is configured to store and use the energy consumption model shown above for formulating and performing the optimization. In some embodiments, the term ηcoilρ
In some embodiments, the variables ΔTc and Δωc for the cooling coil of the AHU 304 are implicit dependent decision variables. In some embodiments, a value of a supply temperature TAHU is selected for the AHU 304 and is used to determine the variables ΔTc and Δωc based on inlet conditions to the AHU 304 (e.g., based on sensor data obtained by sensor manager 414). In such an implementation, model manager 416 or optimization manager 412 may determine that T0=TAHU and an equation for do.
Optimization manager 412 can use the models (e.g., the individual models, or the aggregated models) provided by model manager 416, and constraints provided by constraint generator 410 to construct the optimization problem. Optimization manager 412 may formulate an optimization problem to minimize energy consumption subject to constraints on the modeled parameters, w, and N and additional constraints:
The boundaries on temperature (Ttmin≤Tt≤Ttmax) and humidity (ωtmin≤ωt≤ωtmax) can be determined by optimization manager 412 based on user inputs or derived from comfort requirements. The temperature and humidity bounds may be enforced by optimization manager 412 as soft constraints. The remaining bounds (e.g., the fresh-air ventilation bound, the VAV flow bounds, and the outdoor-air damper bounds) can be applied to input quantities (e.g., decision variables) by optimization manager 412 as hard constraints for the optimization. In some embodiments, the fresh-air ventilation bound is enforced by optimization manager 412 to meet the American Society of Heating, Refrigerating, and Air-Conditioning Engineers (ASHRAE) standards. In some embodiments, the fresh-air ventilation bound is replaced with a model and corresponding bounds for CO2 concentration.
In some embodiments, the various constraints generated by constraint generator 410 or other constraints imposed on the optimization problem can be implemented as soft constraints, hard constraints, or a combination thereof. Hard constraints may impose rigid boundaries (e.g., maximum value, minimum value) on one or more variables in the optimization problem such that any feasible solution to the optimization problem must maintain the hard constrained variables within the limits defined by the hard constraints. Conversely, soft constraints may be implemented as penalties that contribute to the value of the objective function (e.g., adding to the objective function if the optimization problem seeks to minimize the objective function or subtracting from the objective function if the optimization problem seeks to maximize the objective function). Soft constraints may be violated when solving the optimization problem, but doing so will incur a penalty that affects the value of the objective function. Accordingly, soft constraints may encourage optimization manager 412 to maintain the values of the soft constrained variables within the limits defined by the soft constraints whenever possible to avoid the penalties, but may allow optimization manager 412 to violate the soft constraints when necessary or when doing so would result in a more optimal solution.
In some embodiments, constraint generator 410 may impose soft constraints on the optimization problem by defining large penalty coefficients (relative to the scale of the other terms in the objective function) so that optimization manager 412 only violates the soft constraints when absolutely necessary. However, it is contemplated that the values of the penalty coefficients can be adjusted or tuned (e.g., by a person or automatically by constraint generator 410) to provide an optimal tradeoff between maintaining the soft constrained variables within limits and the resulting cost (e.g., energy cost, monetary cost) defined by the objective function. One approach which can be used by constraint generator 410 is to use penalties proportional to amount by which the soft constraint is violated (i.e., static penalty coefficients). For example, a penalty coefficient of 0.1 $/° C.·hr for a soft constrained temperature variable would add a cost of $0.10 to the objective function for every 1° C. that the temperature variable is outside the soft constraint limit for every hour of the optimization period. Another approach which can be used by constraint generator 410 is to use variable or progressive penalty coefficients that depend on the amount by which the soft constraint is violated. For example, a variable or progressive penalty coefficient could define a penalty cost of 0.1 $/° C.·hr for the first 1° C. by which a soft constrained temperature variable is outside the defined limit, but a relatively higher penalty cost of 1.0 $/° C.·hr for any violations of the soft constrained temperature limit outside the first 1° C.
Another approach which can be used by constraint generator 410 is to provide a “constraint violation budget” for one or more of the constrained variables. The constraint violation budget may define a total (e.g., cumulative) amount by which a constrained variable is allowed to violate a defined constraint limit within a given time period. For example, a constraint violation budget for a constrained temperature variable may define 30° C.·hr (or any other value) as the cumulative amount by which the constrained temperature variable is allowed to violate the temperature limit within a given time period (e.g., a day, a week, a month, etc.). This would allow the temperature to violate the temperature constraint by 30° C. for a single hour, 1° C. for each of 30 separate hours, 0.1° C. for each of 300 separate hours, 10° C. for one hour and 1° C. for each of 20 separate hours, or any other distribution of the 30° C.·hr amount across the hours of the given time period, provided that the cumulative temperature constraint violation sums to 30° C.·hr or less. As long as the cumulative constraint violation amount is within (e.g., less than or equal to) the constraint violation budget, constraint generator 410 may not add a penalty to the objective function or subtract a penalty from the objective function. However, any further violations of the constraint that exceed the constraint violation budget may trigger a penalty. The penalty can be defined using static penalty coefficients or variable/progressive penalty coefficients as discussed above.
The infection probability constraint (described in greater detail below) is linear, according to some embodiments. In some embodiments, two sources of nonlinearity in the optimization problem are the dynamic models and a calculation of the coil humidity reduction Δωc. In some embodiments, the optimization problem can be solved using nonlinear programming techniques provided sufficient bounds are applied to the input variables.
Referring still to
For the infection probability constraint, the dynamic extension of the Wells-Riley equation implies that there should be an average constraint over a time interval during which an individual is in the building. An individual i's probability of infection Pi,[0,T] over a time interval [0,T] is given by:
according to some embodiments. Assuming that the individual's probability of infection Pi,[0,T] is a known value, an upper bound Pmax can be chosen for Pi,[0,T] and can be implemented as a linear constraint:
according to some embodiments. In some embodiments, the variable δit may be different for each individual in the building 10 but can be approximated as described herein.
The above linear constraint is an average constraint that gives optimization manager 412 (e.g., an optimizer) a maximum amount of flexibility since the average constraint may allow a higher concentration of infectious quanta during certain times of the day (e.g., when extra fresh-air ventilation is expensive due to outdoor ambient conditions) as long as the higher concentrations are balanced by lower concentrations of the infectious quanta during other times of the day. However, the δit sequence may be different for each individual in the building 10. For purposes of the example described herein it is assumed that generally each individual is present a total of 8 hours (e.g., if the building 10 is an office building). However, the estimated amount of time the individual is within the building can be adjusted or set to other values for other types of buildings. For example, when the systems and methods described herein are implemented in a restaurant or store, the amount of time the individual is assumed to be present in the building can be set to an average or estimated amount of time required to complete the corresponding activities (e.g., eating a meal, shopping, etc.). While an occupancy time of the building by each individual may be reasonably known, the times that the individual is present in the building may vary (e.g., the individual may be present from 7 AM to 3 PM, 9 AM to 5 PM, etc.). Therefore, to ensure that the constraint is satisfied for all possible δit sequences, the constraint may be required to be satisfied when summing over 8 hours of the day that have a highest concentration.
This constraint is represented using linear constraints as:
where η and μt are new auxiliary variables in the optimization problem, and M is a number of discrete timesteps corresponding to 8 hours (or any other amount of time that an individual is expected to occupy building 10 or one of building zones 206). This formulation may work since η is set to an Mth highest value of Nt and each of the μt satisfy μt=max(Nt−η, 0). Advantageously, this implementation of the infection probability constraint can be generated by constraint generator 410 and provided to optimization manager 412 for use in the optimization problem when controller 310 is implemented to perform control decisions for HVAC system 200 (e.g., when controller 310 operates in an on-line mode).
An alternative implementation of the infection probability constraint is shown below that uses a pointwise constraint:
where Nt is constrained to be less than or equal to Ntmax for a maximum infection probability value Pmax. In some embodiments, the pointwise constraint shown above is generated by constraint generator 410 for when optimization manager 412 is used in an off-line or design implementation. In some embodiments, the pointwise constraint shown above, if satisfied in all zones 206, ensures that any individual will meet the infection probability constraint. Such a constraint may sacrifice flexibility compared to the other implementation of the infection probability constraint described herein, but translates to a simple box constraint similar to the other bounds in the optimization problem, thereby facilitating a simpler optimization process.
In some embodiments, the maximum allowable or desirable infection probability Pmax is a predetermined value that is used by constraint generator 410 to generate the infection probability constraints described herein. In some embodiments, constraint generator 410 is configured to receive the maximum allowable or desirable infection probability Pmax from a user as a user input. In some embodiments, the maximum allowable or desirable infection probability Pmax is an adjustable parameter that can be set by a user or automatically generated based on the type of infection, time of year, type or use of the building, or any of a variety of other factors. For example, some buildings (e.g., hospitals) may be more sensitive to preventing disease spread than other types of buildings and may use lower values of Pmax Similarly, some types of diseases may be more serious or life-threatening than others and therefore the value of Pmax can be set to relatively lower values as the severity of the disease increases. In some embodiments, the value of Pmax can be adjusted by a user and the systems and methods described herein can run a plurality of simulations or optimizations for a variety of different values of Pmax to determine the impact on cost and disease spread. A user can select the desired value of Pmax in view of the estimated cost and impact on disease spread using the results of the simulations or optimizations.
Referring still to
In some embodiments, certain regions or areas may have variable electricity prices and/or peak demand charges. In some embodiments, the objective function (e.g., the energy consumption equation) can be augmented by optimization manager 412 to account for such cost structures. For example, the existing energy consumption Et that is minimized by optimization manager 412 may be multiplied by a corresponding electricity price Pt. A peak demand charge may require the use of an additional parameter et that represents a base electric load of building 10 (e.g., for non-HVAC purposes). Optimization manager 412 can include such cost structures and may minimize overall cost associated with electricity consumption rather than merely minimizing electrical consumption. In some embodiments, optimization manager 412 accounts for revenue which can be generated by participating in incentive based demand response (IBDR) programs, frequency regulation (FR) programs, economic load demand response (ELDR) programs, or other sources of revenue when generating the objective function. In some embodiments, optimization manager 412 accounts for the time value of money by discounting future costs or future gains to their net present value. These and other factors which can be considered by optimization manager 412 are described in detail in U.S. Pat. No. 10,359,748 granted Jul. 23, 2019, U.S. Patent Application Publication No. 2019/0347622 published Nov. 14, 2019, and U.S. Patent Application Publication No. 2018/0357577 published Dec. 13, 2018, each of which is incorporated by reference herein in its entirety.
In some embodiments, certain locations have time-varying electricity pricing, and therefore there exists a potential to significantly reduce cooling costs by using a solid mass of building 10 for thermal energy storage. In some embodiments, controller 310 can operate to pre-cool the solid mass of building 10 when electricity is cheap so that the solid mass can later provide passive cooling later in the day when electricity is less expensive. In some embodiments, optimization manager 412 and/or model manager 416 are configured to model this effect using a model augmentation by adding a new variable TI″ to represent the solid mass of the zone 206 evolving as:
with a corresponding term:
added to the air temperature model (shown above). This quantity can also be aggregated by model manager 416 to an average value
For some diseases, infectious particles may naturally become deactivated or otherwise removed from the air over time. To consider these effects, controller 310 can add a proportional decay term to the infectious quanta model (in addition to the other terms of the infectious quanta model discussed above). An example is shown in the following equation:
where β represents the natural decay rate (in s−1) of the infectious species and the ellipsis represents the other terms of the infectious quanta model as discussed above. Because the natural decay subtracts from the total amount of infectious particles, the natural decay term is subtracted from the other terms in the infectious quanta model. For example, if a given infectious agent has a half-life t1/2 of one hour (i.e., t1/2=1 hr=3600 s), then the corresponding decay rate is given by:
This extra term can ensure that infectious particle concentrations do not accumulate indefinitely over extremely long periods of time.
Referring particularly to
When controller 310 is configured for use as the design tool (shown in
Compared to the on-line optimization (described in greater detail below), the optimization problem formulated by optimization manager 412 for the off-line implementation includes an additional constraint on the infectious quanta concentration (as described in greater detail above). In some embodiments, the infectious quanta concentration can be controlled or adjusted by (a) changing the airflow into each zone 206 (e.g., adjusting fi), (b) changing the fresh-air intake fraction (e.g., adjusting x), or (c) destroying infectious particles in the AHU 304 via filtration or UV light (e.g., adjusting A).
It should be noted that the first and second control or adjustments (e.g., (a) and (b)) may also affect temperature and humidity of the zones 206 of building 10. However, the third control option (c) (e.g., adjusting the infectious quanta concentration through filtration and/or operation of UV lights) is independent of the temperature and humidity of the zones 206 of building 10 (e.g., does not affect the temperature or humidity of zones 206 of building 10). In some embodiments, optimization manager 412 may determine results that rely heavily or completely on maintaining the infectious quanta concentration below its corresponding threshold or bound through operation of filter 308 and/or UV lights 306. However, there may be sufficient flexibility in the temperature and humidity of building zone 206 so that optimization manager 412 can determine adjustments to (a), (b), and (c) simultaneously to achieve lowest or minimal operating costs (e.g., energy consumption). Additionally, since purchasing filters 308 and/or UV lights 306 may incur significant capital costs (e.g., to purchase such devices), controller 310 may perform the optimization as a simulation to determine if purchasing filters 308 and/or UV lights 306 is cost effective.
When controller 310 is configured as the design tool shown in
After performing the simulation for different equipment configuration scenarios and/or different infection probability constraints, controller 310 can perform a cost benefit analysis based on global design decisions (e.g., whether or not to install UV lights 306 and/or filters 308). The cost benefit analysis may be performed by results manager 418 and the cost benefit analysis results can be output as display data to a building manager via display device 422. These results may aid the building manager or a building designer in assessing potential options for infection control of building 10 (as shown in
Referring particularly to
In some embodiments, the off-line optimization performed by optimization manager 412 is faster or more computationally efficient than the on-line optimization performed by optimization manager 412. In some embodiments, the simulation is performed using conventional rule-based control rather than a model-predictive control scheme used for the on-line optimization. Additionally, the simulation may be performed over shorter time horizons than when the optimization is performed in the on-line mode to facilitate simulation of a wide variety of design conditions.
In some embodiments, optimization manager 412 is configured to use the aggregate dynamic models as generated, populated, and provided by model manager 416 for the off-line optimization (e.g., the design optimization). When optimization manager 412 uses the aggregate dynamic models, this implies that there are three decision variables of the optimization:
If additional variables are used, such as an auxiliary heating variable, this may increase the dimensionality of the optimization problem. However, optimization manager 412 can select a coarser grid (e.g., 5 to 10 choices) for the additional variable.
In some embodiments, optimization manager 412 is configured to solve a number of one-step optimization problems (e.g., formulate different optimization problems for different sets of the control variables and solve the optimization problem over a single timestep) in a training period, and then train a function approximator (e.g., a neural network) to recreate a mapping. This can improve an efficiency of the optimization. In some embodiments, optimization manager 412 is configured to apply a direct policy optimization to the dynamic models in order to directly learn a control law using multiple parallel optimization problems.
In some embodiments, when controller 310 functions as the design tool shown in
In some embodiments, optimization manager 412 is configured to perform a variety of simulations subject to different simulation variables for each simulation month. These simulation variables can be separated into a design decision category and a random parameter category. The design decision category includes variables whose values are chosen by system designers, according to some embodiments. The random parameters category includes variables whose values are generated by external (e.g., random) processes.
The design decision category can include a first variable of whether to activate UV lights 306. The first variable may have two values (e.g., a first value for when UV lights 306 are activated and a second value for when UV lights 306 are deactivated). The design decision category can include a second decision variable of which of a variety of high-efficiency filters to use, if any. The second variable may have any number of values that the building manager wishes to simulate (e.g., 5) and can be provided via user input device 420. The design decisions category can also include a third variable of what value should be used for the infection probability constraint (as provided by constraint generator 410 and used in the optimization problem by optimization manager 412). In some embodiments, various values of the third variable are also provided by the user input device 420. In some embodiments, various values of the third variable are predetermined or stored in simulation database 424 and provided to optimization manager 412 for use in the simulation. The third variable may have any number of values as desired by the user (e.g., 3 values).
The random parameters category can include an ambient weather and zone occupancy variable and a number of infected individuals that are present in building 10 variable. In some embodiments, the ambient weather and zone occupancy variable can have approximately 10 different values. In some embodiments, the number of infected individuals present can have approximately 5 different values.
In order to determine a lowest cost for a given month, optimization manager 412 can aggregate the variables in the random parameters category (e.g., average) and then perform an optimization to minimize the energy consumption or cost over feasible values of the variables of the design decisions category. In some embodiments, some of the design-decision scenarios are restricted by a choice of global design decisions. For example, for optimization manager 412 to calculate monthly operating costs assuming UV lights 306 are chosen to be installed but not filtration, optimization manager 412 may determine that a lowest cost scenario across all scenarios is with no filtration but with the UV lights 306 enabled or disabled. While this may be unusual (e.g., for the UV lights 306 to be disabled) even though the UV lights 306 are installed, various conditions (e.g., such as weather) may make this the most cost effective solution.
In some embodiments, simulation logic performed by optimization manager 412 may be performed in a Tensorflow (e.g., as operated by a laptop computer, or any other sufficiently computationally powerful processing device). In order to perform 1,500 simulation scenarios for each month, or 18,000 for an entire year, with a timestep of 15 minutes, this implies a total of approximately 52 million timesteps of scenarios for a given simulation year.
In some embodiments, optimization manager 412 requires various simulation data in order to perform the off-line simulation (e.g., to determine the design parameters). In some embodiments, the simulation data is stored in simulation database 424 and provided to any of constraint generator 410, model manager 416, and/or optimization manager 412 as required to perform their respective functions. The simulation data stored in simulation database 424 can include heat-transfer parameters for each zone 206, thermal and moisture loads for each zone 206, coil model parameters of the AHU 304, fan model parameters of the AHU 304, external temperature, humidity, and solar data, filtration efficiency, pressure drop, and cost versus types of the filter 308, disinfection fraction and energy consumption of the UV lights 306, installation costs for the UV lights 306 and the filter 308, typical breathing rate p, a number of infected individuals I in building zones 206, and disease quanta generation q values for various diseases. In some embodiments, the heat-transfer parameters for each zone 206 may be obtained by simulation database 424 from previous simulations or from user input device 420. In some embodiments, the thermal and moisture loads for each zone 206 are estimated based on an occupancy of the zones 206 and ASHRAE guidelines. After this simulation data is obtained in simulation database 424, controller 310 may perform the simulation (e.g., the off-line optimization) as described herein.
It should be understood that as used throughout this disclosure, the term “optimization” may signify a temporal optimization (e.g., across a time horizon) or a static optimization (e.g., at a particular moment in time, an instantaneous optimization). In some embodiments, optimization manager 412 is configured to either run multiple optimizations for different equipment selections, or is configured to treat equipment configurations as decision variables and perform a single optimization to determine optimal equipment configurations.
It should also be understood that the term “design” as used throughout this disclosure (e.g., “design data” and/or “design tool”) may include equipment recommendations (e.g., recommendations to purchase particular equipment or a particular type of equipment such as a particular filter) and/or operational recommendations for HVAC system 200. In other words, “design data” as used herein may refer to any information, metrics, operational data, guidance, suggestion, etc., for selecting equipment, an operating strategy, or any other options to improve financial metrics or other control objectives (e.g., comfort and/or infection probability).
For example, controller 310 as described in detail herein with reference to
Referring again to
In some embodiments, optimization manager 412 is configured to perform model predictive control similar to the techniques described in U.S. patent application Ser. No. 15/473,496, filed Mar. 29, 2017, the entire disclosure of which is incorporated by reference herein.
While optimization manager 412 can construct and optimize the optimization problem described in greater detail above, and shown below, using MPC techniques, a major difference is that optimization manager 412 performs the optimization with an infectious quanta concentration model as described in greater detail above.
Therefore, the resulting optimization problem has additional constraints on this new variable (the infectious quanta concentration) but also new flexibility by determined decisions for activating UV lights 306. In some embodiments, the optimization performed by optimization manager 412 can balance, in real time, a tradeoff between takin gin additional outdoor air (which generally incurs a cooling energy penalty) and activating the UV lights 306 (which requires electricity consumption). Additionally, the addition of infectious agent control can also provide additional room optimization of HVAC system 200 during a heating season (e.g., during winter). Without considering infectious quanta concentrations, solutions generally lead to a minimum outdoor airflow below a certain break-even temperature, below which heating is required throughout building 10. However, since the optimization problem formulated by optimization manager 412 can determine to increase outdoor air intake, this can provide an additional benefit of disinfection.
For purposes of real-time or on-line optimization, the HVAC system 200 can be modeled on a zone-by-zone basis due to zones 206 each having separate temperature controllers and VAV boxes. In some embodiments, zone-by-zone temperature measurements are obtained by controller 310 from zone sensors 312 (e.g., a collection of temperature, humidity, CO2, air quality, etc., sensors that are positioned at each of the multiple zones 206). In some embodiments, optimization manager 412 is configured to use zone-level temperature models but aggregate humidity and infectious quanta models for on-line optimization. Advantageously, this can reduce a necessary modeling effort and a number of decision variables in the optimization problem. In some embodiments, if the AHU 304 serves an excessive number of zones 206, the zone-level thermal modeling may be too computationally challenging so optimization manager 412 can use aggregate temperature models.
After optimization manager 412 has selected whether to use individual or aggregate models (or some combination thereof), optimization manager 412 can implement a constraint in the form:
given a horizon t, where u(t) is a decision, control, or adjustable variable, and p(t) are time-varying parameters (the values of which are forecasted ahead of time). In some embodiments, optimization manager 412 is configured to implement such a constraint by discretizing the u(t) and p(t) signals into piecewise-constant values un and pn where the discrete index n represents the time interval t∈[nΔ, (n+1)Δ] for a fixed sample time Δ. Optimization manager 412 may then transform the constraint to:
where N=T/Δ the total number of timesteps. In some embodiments, optimization manager 412 is configured to evaluate this constraint using advanced quadrature techniques. For example, optimization manager 412 may transform the constraint to:
where x(t) is discretized to xn and F(⋅) represents a numerical quadrature routine. In some embodiments, if the models provided by model manager 416 are sufficiently simple, optimization manager 412 can derive an analytical expression for F(⋅) to perform this calculation directly.
In some embodiments, optimization manager 412 uses an approximate midpoint method to derive the analytical expression:
where the ordinary differential equation f(⋅) is evaluated at a midpoint of the time interval.
In some embodiments, optimization manager 412 is configured to repeatedly solve the optimization problem at regular intervals (e.g., every hour) to revise an optimized sequence of inputs for control signal generator 408. However, since the optimization is nonlinear and nonconvex, it may be advantageous to decrease a frequency at which the optimization problem is solved to provide additional time to retry failed solutions.
In some embodiments, optimization manager 412 uses a daily advisory capacity. For example, optimization manager 412 may construct and solve the optimization problem once per day (e.g., in the morning) to determine optimal damper positions (e.g., of AHU 304), UV utilizations (e.g., operation of UV lights 306), and zone-level airflows. Using the results of this optimization, optimization manager 412 may be configured to pre-schedule time-varying upper and lower bounds on the various variables of the optimized solution, but with a range above and below so that optimization manager 412 can have sufficient flexibility to reject local disturbances. In some embodiments, regulatory control systems of HVAC system 200 are maintained but may saturate at new tighter bounds obtained from the optimization problem. However, optimization manager 412 may be configured to re-optimize during a middle of the day if ambient sensor data from ambient sensors 314 (e.g., ambient temperature, outdoor temperature, outdoor humidity, etc.) and/or weather forecasts and/or occupancy forecasts indicate that the optimization should be re-performed (e.g., if the weather forecasts are incorrect or change).
In some embodiments, optimization manager 412 is configured to reduce an amount of optimization by training a neural network based on results of multiple offline optimal solutions (e.g., determined by controller 310 when performing off-line optimizations). In some embodiments, the neural network is trained to learn a mapping between initial states and disturbance forecasts to optimal control decisions. The neural network can be used in the online implementation of controller 310 as a substitute for solving the optimization problem. One advantage of using a neural network is that the neural network evaluation is faster than performing an optimization problem, and the neural network is unlikely to suggest poor-quality local optima (provided such solutions are excluded from the training data). The neural network may, however, return nonsensical values for disturbance sequences. However, this downside may be mitigated by configuring controller 310 to use a hybrid trust-region strategy in which optimization manager 412 solves the optimization problem via direct optimization at a beginning of the day, and then for the remainder of the day, controller 310 uses neural-network suggestions if they are within a predefined trust region of the optimal solution. If a neural-network suggestion is outside of the predefined trust region, optimization manager 412 may use a previous optimal solution that is within the predefined trust region.
In some embodiments, the optimization problem is formulated by optimization manager 412 assuming the zone-level VAV flows fk are the decision variables. In some systems, however, a main interface between controller 310 and equipment of HVAC system 200 is temperature setpoints that are sent to zone-level thermostats. In some embodiments, optimization manager 412 and control signal generator 408 are configured to shift a predicted optimal temperature sequence backward by one time interval and then pass these values (e.g., results of the optimization) as the temperature setpoint. For example, if the forecasts over-estimate head loads in a particular zone 206, then a VAV damper for that zone will deliver less airflow to the zone 206, since less cooling is required to maintain a desired temperature.
When optimization manager 412 uses the constraint on infectious quanta concentration, controller 310 can now use the zone-level airflow to control two variables, while the local controllers are only aware of one. Therefore, in a hypothetical scenario, the reduced airflow may result in a violation of the constraint on infection probability. In some embodiments, optimization manager 412 and/or control signal generator 408 are configured to maintain a higher flow rate at the VAV even though the resulting temperature may be lower than predicted. To address this situation, optimization manager 412 may use the minimum and maximum bounds on the zone-level VAV dampers, specifically setting them to a narrower range so that the VAV dampers are forced to deliver (at least approximately) an optimized level of air circulation. In some embodiments, to meet the infectious quanta concentration, the relevant bound is the lower flow limit (as any higher flow will still satisfy the constraint, albeit at higher energy cost). In some embodiments, a suitable strategy is to set the VAV minimum position at the level that delivers 75% to 90% of the optimized flow. In some embodiments, a VAV controller is free to dip slightly below the optimized level when optimization manager 412 over-estimates heat loads, while also having the full flexibility to increase flow as necessary when optimization manager 412 under-estimates heat loads. In the former case, optimization manager 412 may slightly violate the infectious quanta constraint (which could potentially be mitigated via rule-based logic to activate UV lights 306 if flow drops below planned levels), while in the latter case, the optimal solution still satisfies the constraint on infectious quanta. Thus, optimization manager 412 can achieve both control goals without significant disruption to the low-level regulatory controls already in place.
Referring particularly to
Process 600 includes determining a temperature model for each of multiple zones to predict a temperature of a corresponding zone based on one or more conditions or parameters of the corresponding zone (step 602), according to some embodiments. The temperature model can be generated or determined by model manager 416 for use in an optimization problem. In some embodiments, the temperature model is:
where ρ is a mass density of air, c is a heat capacity of air, Vk is a volume of the kth zone, fk is a volumetric flow of air into the kth zone, T0 is the temperature of air output by the AHU, Tk is the temperature of the kth zone, and Qk is the heat load on the kth zone. Step 602 can be performed by model manager 416 as described in greater detail above with reference to
Process 600 includes determining a humidity model for each of the multiple zones to predict a humidity of the corresponding zone based on one or more conditions or parameters of the corresponding zone (step 604), according to some embodiments. Step 604 can be similar to step 602 but for the humidity model instead of the temperature model. In some embodiments, the humidity model is:
for a kth zone 206. In some embodiments, step 604 is performed by model manager 416 as described in greater detail above with reference to
Process 600 incudes determining an infectious quanta concentration model for each of the multiple zones to predict an infectious quanta of the corresponding zone based on one or more conditions or parameters of the corresponding zone (step 606), according to some embodiments. In some embodiments, the infectious quanta concentration model is similar to the humidity model of step 604 or the temperature model of step 602. The infectious quanta concentration model can be:
according to some embodiments. In some embodiments, step 606 is performed by model manager 416.
Process 600 includes determining an aggregated temperature model, an aggregated humidity model, an aggregated infectious quanta model, an aggregated thermal model, and an aggregated moisture model (step 608), according to some embodiments. In some embodiments, step 608 is optional. Step 608 can include generating or determining each of the aggregated models by determining a volume-average across zones 206. The aggregate infectious quanta model is:
according to some embodiments. The aggregated thermal model is:
according to some embodiments. The aggregated moisture model is:
according to some embodiments. In some embodiments, the aggregated thermal and moisture models are aggregate thermal models. Step 608 can be optional. Step 608 can be performed by model manager 416.
Process 600 includes populating any of the temperature model, the humidity model, the infectious quanta model, or the aggregated models using sensor data or stored values (step 610), according to some embodiments. In some embodiments, step 610 is performed by model manager 416. In some embodiments, step 610 is optional. Step 610 can be performed based on sensor data obtained from zone sensors 312.
Process 600 includes determining an objective function including a cost of operating an HVAC system that serves the zones (step 612), according to some embodiments. In some embodiments, step 612 is performed by optimization manager 412 using the dynamic models and/or the aggregated models provided by model manager 416. The objective function may be a summation of the energy consumption, energy cost, or other variable of interest over a given time period. The instantaneous energy consumption at a discrete time step is given by:
which can be summed or integrated over all time steps of the given time period as follows:
where Δ is the duration of a discrete time step, according to some embodiments.
Process 600 includes determining one or more constraints for the objective function including an infection probability constraint (step 614), according to some embodiments. In some embodiments, step 614 is performed by constraint generator 410. The one or more constraints can include the infection probability constraint, temperature bounds or constraints, humidity bounds or constraints, fresh-air ventilation bounds or constraints, VAV flow bounds or constraints, and/or outdoor-air damper bounds or constraints. The infection probability constraint is:
according to some embodiments.
Process 600 includes performing an optimization to determine control decisions for HVAC equipment of the HVAC system, and ultraviolet lights of the HVAC system such that the one or more constraints are met and the cost is minimized (step 616), according to some embodiments. Step 616 can be performed by optimization manager 412 by minimizing the objective function subject to the one or more constraints (e.g., the temperature, humidity, etc., bounds and the infection probability constraint). Step 616 can also include constructing the optimization problem and constructing the optimization problem based on the objective function, the dynamic models (or the aggregated dynamic models), and the one or more constraints. The control decisions can include a fresh-air fraction x for an AHU of the HVAC system (e.g., AHU 304), whether to turn on or off the UV lights, etc.
Referring particularly to
Process 700 includes steps 702-708 that can be the same as steps 602-608 of process 600. However, while step 608 may be optional in process 600 so that the optimization can be performed using a combination of individual dynamic models and aggregate dynamic models, step 708 may be non-optional in process 700. In some embodiments, using the aggregate dynamic models reduces a computational complexity of the optimization for process 700. Process 700 can be performed for a wide variety of design parameters (e.g., different equipment configurations) whereas process 600 can be performed for a single equipment configuration (e.g., the equipment configuration that process 600 is used to optimize). Therefore, it can be advantageous to use aggregate models in process 700 to reduce a complexity of the optimization problem.
Process 700 includes populating the aggregated models using simulation data (step 710). In some embodiments, step 710 is performed by model manager 416 using outputs from simulation database 424 (e.g., using values of various parameters of the aggregate models that are stored in simulation database 424). In some embodiments, step 710 is performed using known, assumed, or predetermined values to populate the aggregated models.
Process 700 includes determining an objective function including a cost of operating an HVAC system that serves the zones (step 712), and determining one or more constraints for the objective function including an infection probability constraint (step 714), according to some embodiments. In some embodiments, step 712 and step 714 are similar to or the same as steps 612 and 614 of process 600.
Process 700 includes performing a sequence of one-step optimizations for various equipment configurations to estimate an operating cost associated with that equipment configuration (step 716), according to some embodiments. In some embodiments, step 716 is performed by optimization manager 412. Optimization manager 412 can construct different optimization problems for different equipment configurations using the aggregate temperature model, the aggregated humidity model, the aggregated infectious quanta model, the one or more constraints, and the objective function. In some embodiments, optimization manager 412 is configured to solve the optimization problems for the different equipment configurations over a single time step. The results of the optimizations problems can be output to results manager 418 for displaying to a user.
Process 700 includes outputting design suggestions or optimizations results to a user (step 718), according to some embodiments. In some embodiments, step 718 includes outputting costs associated with different equipment configurations (e.g., equipment configurations that include UV lights for disinfection and/or filters for disinfection) to a user (e.g., via a display device) so that the user (e.g., a building manager) can determine if they wish to purchase additional disinfection equipment (e.g., UV lights and/or filters). For example, step 718 can include operating a display to provide graph 800 (or a similar graph) to a user.
Although process 700 is described primarily as an “off-line” process, it should be understood that process 700 is not limited to off-line implementations only. In some embodiments, process 700 can be used when controller 310 operates in an on-line mode (as described with reference to
In general, the controller 310 can use the optimization/simulation results generated when operating controller 310 in the off-line mode to generate design data including one or more recommended design parameters (e.g., whether to include or use UV lights 306 for disinfection, whether to include or use filter 308 for disinfection, whether to use fresh/outdoor air for disinfection, a recommended type or rating of UV lights 306 or filter 308, etc.) as well as operational data including one or more recommended operational parameters (e.g., the fraction of fresh/outdoor air that should exist in the supply air provided to the building zone, operating decisions for UV lights 306, an amount of airflow to send to each building zone, etc.). The design data may include a recommended equipment configuration that specifies which HVAC equipment to use in the HVAC system to optimize the energy consumption, energy cost, carbon footprint, or other variable of interest while ensuring that a desired level of disinfection is provided.
Controller 310 can perform or initiate one or more automated actions using the design data and/or the operational data. In some embodiments, the automated actions include automated control actions such as generating and providing control signals to UV lights 306, AHU 304, one or more VAV units, or other types of airside HVAC equipment that operate to provide airflow to one or more building zones. In some embodiments, the automated action include initiating a process to purchase or install the recommended set of HVAC equipment defined by the design data (e.g., providing information about the recommended set of HVAC equipment to a user, automatically scheduling equipment upgrades, etc.). In some embodiments, the automated actions include providing the design data and/or the operational data to a user interface device (e.g., display device 422) and/or obtaining user input provided via the user interface device. The user input may indicate a desired level of disinfection and/or a request to automatically update the results of the optimizations/simulations based on user-selected values that define the desired infection probability or level of disinfection. Controller 310 can be configured to provide any of a variety of user interfaces (examples of which are discussed below) to allow a user to interact with the results of the optimizations/simulations and adjust the operation or design of the HVAC system based on the results.
Referring now to
As an example, the “Building Options” portion of user interface 900 allows the user to specify desired building and climate parameters such as the square footage of the building, the city in which the building is located, etc. The user may also specify whether UV disinfection and/or advanced filtration should be considered in the simulation scenarios (e.g., by selecting or deselecting the UV and filtration options). The “Disinfection Options” portion of user interface 900 allows the user to specify the desired level of disinfection or infection probability. For example, the user can move the sliders within the Disinfection Options portion of user interface 900 to define the desired level of disinfection for each month (e.g., low, high, an intermediate level, etc.). Alternatively, user interface 900 may allow the user to define the desired level of disinfection by inputting infection probability percentages, via a drop-down menu, by selecting or deselecting checkboxes, or any other user interface element.
After specifying the desired parameters and clicking the “Run” button, optimization manager 412 may perform one or more simulations (e.g., by solving one or more optimization problems) using the specified parameters. Once the simulations have completed, results may be displayed in the “Results” portion of user interface 900. The results may indicate the energy cost, energy consumption, carbon footprint, or any other metric which optimization manager 412 seeks to optimize for each of the design scenarios selected by the user (e.g., UV+Filtration, UV Only, Filtration Only, Neither). The results may also indicate the daily infection probability for each of the design scenarios (e.g., mean infection probability, minimum infection probability, maximum infection probability). In some embodiments, an initial simulation or simulations are run using default settings for the disinfection options. In some embodiments, the results include equipment recommendations (e.g., use UV+Filtration, use UV Only, use Filtration Only, use Neither). The results of each simulation can be sorted to present the most optimal results first and the least optimal results last. For example, user interface 900 is shown presenting the simulation result with the least energy consumption first and the most energy consumption last. In other embodiments, the results can be sorted by other criteria such as infection probability or any other factor.
The user can adjust desired disinfection options on a monthly basis (e.g., by adjusting the sliders within the Disinfection Options portion of user interface 900), at which point the results may be re-calculated by averaging over the appropriate subset of simulation instances, which can be performed in real time because the simulations need not repeated. Advantageously, this allows the user to adjust the disinfection options and easily see the impact on energy cost, energy consumption, carbon footprint, etc., as well as the impact on infection probability for each of the design scenarios. Additional display options beyond what is shown in
Although a specific embodiment of user interface 900 is shown in
In some embodiments, an infection spread probability is treated by constraint generator 410 as a constraint, or as a value that is used by constraint generator 410 to determine the infection probability constraint. If a user desires to provide a higher level of disinfection (e.g., a lower level of infection spread probability) and therefore an increased energy consumption or energy consumption cost, the user may adjust the knob or slider on the user interface of user input device 420 to indicate a desired trade-off between energy consumption and infection probability. Likewise, if the user desired to provide a lower level of disinfection (e.g., a higher level of infection spread probability) and therefore a lower energy consumption or energy consumption cost, the user may adjust the knob or slider on the user interface of the user input device 420 to indicate such a desired tradeoff between energy consumption or energy consumption cost and disinfection control.
In some embodiments, user input device 420 is configured to provide analytics, data, display data, building data, operational data, diagnostics data, energy consumption data, simulation results, estimated energy consumption, or estimated energy consumption cost to the user via the user interface of user input device 420. For example, results manager 418 may operate the user input device 420 and/or the display device 422 to provide an estimated energy consumption or energy consumption cost to the user (e.g., results of the optimization of optimization manager 412 when operating in either the on-line or off-line mode/configuration). In some embodiments, user input device 420 and display device 422 are a same device (e.g., a touchscreen display device, etc.) that are configured to provide the user interface, while in other embodiments, user input device 420 and display device 422 are separate devices that are configured to each provide their own respective user interfaces.
For example, controller 310 can perform the off-line or planning or design tool functionality as described in greater detail above in real-time (e.g., as the user adjusts the knob or slider) to determine an estimated energy consumption or energy consumption cost given a particular position of the knob or slider (e.g., given a particular desired level of infection or disinfection control as indicated by the position of the knob or slider). In some embodiments, controller 310 is configured to operate the user input device 420 and/or the display device 422 to provide or display the estimated energy consumption or estimated energy consumption cost as the user adjusts the knob or slider. In this way, the user can be informed regarding an estimation of costs or energy consumption associated with a specific level of disinfection control (e.g., with a particular infection probability constraint). Advantageously, providing the estimation of costs or energy consumption associated with the specific level of disinfection control to the user in real-time or near real-time facilitates the user selecting a level of disinfection control that provides sufficient or desired disinfection control in addition to desired energy consumption or energy consumption costs.
Referring now to
To determine the points on the Pareto front 1002, controller 310 may start with a small number of infection probabilities already simulated for a given month and plot them against monthly energy cost. Then, additional candidate infection probabilities can be selected (e.g., as the points furthest from already completed simulations). After simulating instances with the new infection probabilities, these points are added to the plot, and the process repeats to the desired accuracy. Many criteria for selecting new points are possible, but one possible strategy is to choose the midpoint of successive points with the largest area (i.e., of the rectangle whose opposite corners are given by the two existing points) between them. This strategy prioritizes regions where the curve is changing rapidly and leads to efficient convergence.
As an example, consider the case in graph 1000. The goal is to obtain an approximation of the true Pareto front 1002, which is illustrated in
In some embodiments, determining the infection probability constraint (e.g., to provide an optimal level of disinfection control, or an optimal level of infection probability spread) and the resulting energy consumption or energy consumption costs required for HVAC system 200 to operate to achieve the infection probability constraint is a Pareto optimization problem. For example, at a certain point, additional disinfection control may require undesirably high energy consumption or energy consumption costs. In some embodiments, controller 310 may solve a Pareto optimization problem given various inputs for the system to determine one or more inflection points along a curve between cost (e.g., energy consumption or energy consumption cost) and a benefit (e.g., disinfection control, infection probability, disinfection, etc.) or to determine an optimal tradeoff between the cost and the benefit.
In some embodiments, controller 310 is configured to operate display device 422 and/or user input device 420 to provide an infection probability constraint associated with the optimal tradeoff between the cost and the benefit. In some embodiments, controller 310 can operate according to various modes that can be selected by the user via the user interface of user input device 420. For example, the user may opt for a first mode where controller 310 solves the Pareto optimization problem to determine the infection probability constraint associated with the optimal tradeoff point between the cost (e.g., the energy consumption or energy consumption cost) and the benefit (e.g., the disinfection control, a provided level of disinfection, an infection probability, etc.). In the first mode, the controller 310 can automatically determine the infection probability constraint based on the results of the Pareto optimization problem. In some embodiments, controller 310 still operates display device 422 to provide estimated, actual, or current energy consumption or energy consumption costs and infection probability constraints.
In a second mode, controller 310 can provide the user the ability to manually adjust the tradeoff between the cost and the benefit (e.g., by adjusting the slider or knob as described in greater detail above). In some embodiments, the user may select the desired tradeoff between infection control and energy consumption or energy consumption costs based on the provided estimations of energy consumption or energy consumption costs.
In a third mode, controller 310 can provide the user additional manual abilities to adjust the infection probability constraint directly. In this way, the user may specifically select various boundaries (e.g., linear boundaries if the infection probability constraint is implemented as a linear constraint as described in greater detail above) for the infection probability constraint. In some embodiments, the user may select between the various modes (e.g., the first mode, the second mode, and/or the third mode).
It should be understood that while the Pareto optimization as described herein is described with reference to only two variables (e.g., energy consumption or energy consumption cost and disinfection control), the Pareto optimization may also account for various comfort parameters or variables (e.g., temperature and/or humidity of zones 206, either individually or aggregated). In some embodiments, controller 310 may also operate display device 422 to provide various comfort parameters that result from a particular position of the knob or slider that is provided on the user interface of user input device 420. In some embodiments, additional knobs, sliders, input fields, etc., are also provided on the user interface of user input device 420 to receive various inputs or adjustments for desired comfort parameters (e.g., temperature and/or humidity). In some embodiments, controller 310 (e.g., results manager 418) is configured to use the dynamic models for temperature or humidity as described above to determine estimations of the various comfort parameters as the user adjusts the knobs or sliders (e.g., the knobs or sliders associated with disinfection control and/or energy consumption or energy cost consumption). Similarly, controller 310 can solve the Pareto optimization problem as a multi-variable optimization problem to determine an inflection point or a Pareto efficiency on a surface (e.g., a 3d graph or a multi-variable optimization) which provides an optimal tradeoff between cost (e.g., the energy consumption, the energy consumption cost, etc.), comfort (e.g., temperature and/or humidity), and disinfection control (e.g., the infection probability constraint).
Referring particularly to
In some embodiments, the controller 1110 is operable between an operational mode and a monitoring mode. For example, when the controller 1110 is in the operational mode, the controller 1110 may include the control signal generator 408 instead of the results manager 418 and may automatically determine control decisions and operate the AHU 304, the UV lights 306, etc., of the HVAC system 300 based on the determined control decisions. When the controller 1110 is in the monitoring mode, the controller 1110 may include the results manager 418 (as shown in
In some embodiments, the controller 1110 is configured to use a combination of domain knowledge and artificial intelligence for either the operational mode or the advisory mode. For example, the controller 1110 can use domain knowledge including physics-based models for HVAC heat and mass transfer, phenomenological models that match system behavior for regulatory control, and/or different default values of the various parameters described herein. In some embodiments, the controller 1110 uses the artificial intelligence to train key model parameters (e.g., of the physics-based models described herein) in an online mode (e.g., when the controller 1110 communicates with a remote device, processing circuitry, network, gateway, etc.) using one or more regression techniques. In some embodiments, the controller 1110 uses the artificial intelligence to predict future disturbances using recent data obtained from the HVAC system 300 and also using timeseries models.
Referring particularly to
In some embodiments, the modeling data 1218 includes psychometric data 1220 of the HVAC system 300, HVAC equipment data 1222, infection parameters 1224, and/or disturbance schedules 1226. In some embodiments, the HVAC equipment data 1222 includes different performance curves, model identifiers, model numbers, models of HVAC equipment that predict one or more operational parameters (e.g., air delivery, temperature of air delivered to a zone, etc.) as a function of one or more input variables, etc. In some embodiments, the infection parameters 1224 are values of any of the variables of the Wells-Riley equations or derivations thereof, quantum concentration models, infection probability models, CO2 concentration models, infection probability constraints, etc., as described in greater detail above with reference to
In some embodiments, the modeling data 1218 and the zone configuration data 1204 is provided to the model generator 1210 for generation of a model (e.g., any of the models or constraints described in greater detail above with reference to
The model tuner 1214 is configured to use the resampled data (e.g., the resampled weather forecast data 1208) to determine data-derived parameters and provide the data-derived parameters to the model generator 1210, according to some embodiments. In some embodiments, the model tuner 1214 is configured to generate a disturbance model using the resampled data to predict disturbances that may be introduced to HVAC system (e.g., temperature fluctuations, humidity fluctuations, etc., due to weather) and provide parameters of the disturbance model or outputs of the disturbance model to the model generator 1210 as the data-derived parameters. In some embodiments, the model tuner 1214 is configured to output the disturbance model to the input generator 1216. In some embodiments, the data-derived parameters are adjustments, calibration factors, additional correction terms, etc., for the model generator 1210 so that the model generator 1210 outputs models that accurately predict temperature, humidity, energy consumption, infection probability, etc., while accounting for different weather conditions, disturbances, occupancy, etc. In some embodiments, the data-derived parameters are generated by the model tuner 1214 using a neural network, a machine learning technique, artificial intelligence, etc. For example, the model tuner 1214 can obtain the operational data 1206 or the weather forecast 1208 for a historical or previous time period, as well as predictions of the various models for the historical or previous time period (e.g., predictions of zone temperatures, infection risks, infection probability, humidity, etc.), and actual values of the predictions of the various models for the historical or previous time period (e.g., actual zone temperatures, actual infection risks, actual infection probability, etc., or any other environmental or infection related parameter that can be sensed or determined based on sensor data), and determine adjustments for the models using the neural network, the machine learning technique, the artificial intelligence, etc., to improve accuracy of the models.
The model generator 1210 uses the data-derived parameters (e.g., disturbance parameters, adjustment parameters, correction factors, calibration factors, additional model terms, etc.), the zone configurations 1204, and the modeling data 1218 to generate one or more models and output model parameters (shown in
The input generator 1216 uses the resampled data provided by the timeseries resampler 1212 and the disturbance model provided by the model tuner 1214 to determine model timeseries inputs, according to some embodiments. In some embodiments, the input generator 1216 is configured to generate timeseries inputs for various extrinsic parameters such as ambient or outdoor temperature, ambient or outdoor humidity, price per unit of energy as provided by a utility provider, etc. The input generator 1216 may provide the model timeseries inputs to the dynamic model simulator 1232 for use in performing a simulation (e.g., either to specific model forms 1228 or to generic model simulation 1230), according to some embodiments. In some embodiments, the model timeseries inputs are predicted or estimated timeseries data for a future time period, or are historical data from a previous time period (e.g., for the advisory mode outputs 1240 and the analysis mode outputs 1234, respectively). The input generator 1216 can provide specific model parameters to the specific model forms 1228 of the dynamic model simulator 1232 so that different generic models can be simulated for a specific HVAC system, a specific building, a specific space or zone, etc. The specific model parameters can be various thermal characteristics (e.g., heat transfer or heat storage parameters), HVAC equipment model numbers, HVAC equipment operating curves, etc.
The dynamic model simulator 1232 is configured to use the specific model parameters and the model timeseries inputs to perform a simulation for a future time period, and to perform a simulation or analysis for a previous time period, according to some embodiments. In some embodiments, the dynamic model simulator 1232 includes specific model forms 1228 and generic model simulation 1230. In some embodiments, the specific model forms 1228 are determined based on predefined or generic models (e.g., generic versions of the dynamic models as described in greater detail above) with specific model parameters that are generated or adjusted based on outputs of the model tuner 1214 and real-world or actual data as provided by the data model 1202 (e.g., the zone configuration data 1204, the operational data 1206, the weather forecast data 1208, etc.).
In some embodiments, the generic model simulation 1230 is performed using the specific model forms 1228 for both a future time period (e.g., for the advisory mode outputs 1240) and for a previous time period (e.g., for the analysis mode outputs 1234). In some embodiments, the generic model simulation 1230 is performed to determine energy consumption or energy cost and associated infection risks or disinfection (e.g., a reduction in infection risks resulting from performing any of the fresh air intake operations of an AHU, UV light disinfection, or filtration). In some embodiments, the generic model simulation 1230 uses the dynamic infectious quanta model to simulate or assess infection risks for previously performed HVAC operations, or for predicted future HVAC operations.
The outputs of the generic model simulation 1230 (e.g., objective function values such as including but not limited to infection risk and energy cost) are provided to the Pareto optimizer 1236 and the analysis mode outputs 1234, according to some embodiments. In some embodiments, the outputs of the dynamic model simulator 1232 that use historical BMS data (e.g., infection risk and energy cost values associated with previous operation of the HVAC system over the previous time period) are provided as the analysis mode outputs 1234. In some embodiments, the output of the dynamic model simulator 1232 that are for the future time period (e.g., for different possible control decisions of the HVAC system or decision variables over the future time period) are provided to the Pareto optimizer 1236 for determination of the advisory mode outputs 1240 (e.g., using the Pareto optimization techniques described in greater detail below with reference to
Referring particularly to
Referring particularly to
In some embodiments, a simulation is performed to determine corresponding energy cost and infection risk for each of the different points 1306. The corresponding energy cost and infection risk are shown as points 1308 in graph 1304. In some embodiments, points 1308a-13081 of graph 1304 correspond to points 1306a-13061 of graph 1302. For example, point 1308a illustrates the corresponding energy cost and infection risk for the values of the minimum ventilation setpoint and the supply temperature of the point 1306a. Likewise, points 1308b-13081 illustrate the various corresponding energy costs and infection risks for each of the minimum ventilation setpoint and supply temperature setpoint values as represented by points 1306b-13061. In some embodiments, each of the points 1306a-13061 and the corresponding points 1308a-13081 correspond to a simulation performed by the optimization manager 412, or the dynamic model simulator 1232. For example, the dynamic model simulator 1232 may perform a simulation for each of the sets of values of the supply temperature setpoint and the minimum ventilation setpoint (e.g., the decision variables) and output values of the energy cost and infection risk for each simulation (shown as points 1308). It should be understood that while
Referring particularly to
The first group of points 1312a are points that are infeasible, unfeasible, or non-feasible. In some embodiments, the Pareto optimizer 1236 is configured to determine or identify which of the points 1308 are infeasible and group such combinations of energy cost and infection risk as infeasible solutions. In some embodiments, the Pareto optimizer 1236 is configured to use threshold energy costs or infection risks, and if some of the points 1308 are greater than a maximum allowable energy cost or infection risk, or less than a minimum allowable infection risk or energy cost, the Pareto optimizer 1236 can determine that such points are infeasible and group them accordingly as the first group of points 1312a. In some embodiments, the maximum or minimum allowable energy cost or infection risk values used by the Pareto optimizer 1236 are user inputs, values set by legal regulations, or values determined based on abilities of the HVAC system 300. In some embodiments, the second group of points 1312b and the third group of points 1312c are feasible solutions.
In some embodiments, the Pareto optimizer 1236 is configured to perform a Pareto optimization based on the points 1308 to determine which of the points 1308 are Pareto optimal. A Pareto optimal point is a point where neither the energy cost or the infection risk can be reduced without causing a corresponding increase in the infection risk or the energy cost. In the example shown in
Referring particularly to
In some embodiments, the maximum disinfection point 1318 (e.g., point 1308j), the minimum energy consumption (or energy costs) point 1322 (e.g., point 1308h), and the equal priority point 1320 (e.g., point 13081) are the Pareto optimization results. In some embodiments, the Pareto optimization results also include the energy cost, infection risk, as well as the minimum ventilation setpoint, and the supply temperature setpoint for each of the maximum disinfection point 1318, the minimum energy consumption point 1322, and the equal priority point 1320. In some embodiments, the Pareto optimization results are provided to the user via the display device 422 for selection. For example, the display device 422 can provide different recommended operating possibilities such as a maximum disinfection operating possibility, a minimum energy consumption operating possibility, and an equal energy and infection risk. In some embodiments, the user may select one of the different operating recommendations, and provide the selection to the controller 1110 for use in operating the HVAC system 300 according to the selected operating possibility.
Referring particularly to
In the example shown in
In some embodiments, the Pareto optimizer 1236 is configured to provide all of the Pareto optimal points to the user via the display device 422. In some embodiments, the Pareto optimizer 1236 or the Pareto optimizer 1112 is configured to provide the Pareto optimal points as the Pareto optimal results to the results manager 418 for use in display to the user. In some embodiments, the Pareto optimizer 1112 or the Pareto optimizer 1236 automatically selects one of the Pareto optimal points for use and provides the Pareto optimal points and its associated control decisions (e.g., the minimum ventilation and supply temperature setpoints) to the control signal generator 408.
Referring particularly to
Process 1700 includes obtaining multiple sets of values of control decision variables, each set of values including a different combination of the control decision variables (step 1702), according to some embodiments. In some embodiments, the control decision variables include a minimum ventilation setpoint and a supply temperature setpoint. In some embodiments, the control decision variables include operating parameters or control decisions of the UV lights 306 or the AHU 304 (e.g., a fresh air intake fraction x). It should be understood that the control decision variables described herein are not limited to only two variables, and may include any number of variables. In some embodiments, each set of the values of the control decision variables is a unique combination of different values of the control decision variables. For example, graph 1302 of
Process 1700 includes performing a simulation for each set of the values of the control decision variables to determine sets of values of energy cost and infection risk (step 1704), according to some embodiments. In some embodiments, the simulation is performed using the dynamic models as generated by the model manager 416, or using the techniques of the dynamic model simulator 1232 (e.g., the specific model forms 1228, the generic model simulation 1230, etc.). In some embodiments, the simulations are performed by the controller 1110, or processing circuitry 402 thereof. In some embodiments, the simulations are performed for a future time horizon to generate predicted or simulated values for the energy cost and infection risk. In some embodiments, the simulations are performed for a previous or historical time period to determined values of the energy cost and infection risk for analysis (e.g., for comparison with actual historical data of the energy cost and infection risk). In some embodiments, each of the sets of values of control decisions (e.g., as obtained in step 1702) is used for a separate simulation to determine a corresponding set of performance variables (e.g., the values of energy cost and infection risk). In some embodiments, the simulations are performed subject to one or more constraints. In some embodiments, step 1704 includes performing steps 602-616 of process 600. In some embodiments, step 1704 includes performing steps 702-716 of process 700.
Process 1700 includes determining which of the sets of values of energy cost and infection risk are infeasible and which are feasible (step 1706), according to some embodiments. In some embodiments, step 1706 is performed by the Pareto optimizer 1112 or by the Pareto optimizer 1236. In some embodiments, step 1706 is performed using one or more constraints. The one or more constraints can be minimum or maximum allowable values of either of the energy cost and infection risk, according to some embodiments. For example, if one of the sets of values of energy cost and infection risk has an energy cost or energy consumption that exceeds a maximum allowable value of energy cost (e.g., exceeds a maximum threshold), then such a set of values of energy cost and infection risk, and consequently the corresponding sets of values of the control decision variables, may be considered infeasible, according to some embodiments. In some embodiments, the constraints are set based on capabilities of an HVAC system that the process 1700 is performed to optimize, user inputs, budgetary constraints, minimum infection risk reduction constraints, etc.
Process 1700 includes determining which of the feasible sets of values of energy cost and infection risk are Pareto optimal solutions (step 1708), according to some embodiments. In some embodiments, the step 1708 is performed by the Pareto optimizer 1112 or by the Pareto optimizer 1236. In some embodiments, the step 1708 is performed to determine which of the sets of values of energy cost and infection risk are Pareto optimal from the feasible sets of values of energy cost and infection risk. In some embodiments, process 1700 includes performing steps 1702-1708 iteratively to determine sets of decision variables. For example, the decision variables can be iteratively generated based on simulation results (e.g., by generating additional points that are likely to be Pareto optimal based on the results of step 1708).
Process 1700 includes determining, based on the Pareto optimal solutions, a minimum energy cost solution, a maximum disinfection solution, and an equal priority energy cost/disinfection solution, according to some embodiments. In some embodiments, step 1710 is performed the Pareto optimizer 1112 or by the Pareto optimizer 1236. In some embodiments, the minimum energy cost solution is the set of values of the energy cost and infection risk that are Pareto optimal, feasible, and also have the lowest value of the energy cost. In some embodiments, the maximum disinfection solution is selected from the set of values of the energy cost and infection risk that are feasible and Pareto optimal, and that has the lowest value of the infection risk. In some embodiments, the equal priority energy cost/disinfection solution is selected from the set of values of the energy cost and infection risk that are feasible and Pareto optimal, and that equally prioritizes energy cost and infection risk. For example, the energy cost/disinfection solution can be a point that is proximate an inflection of a curve that is fit to the sets of values of energy cost and infection risk (e.g., including the feasible and infeasible points, only the feasible points, only the Pareto optimal points, etc.).
Process 1700 includes providing one or more of the Pareto optimal solutions to a user via a display screen (step 1712), according to some embodiments. In some embodiments, step 1712 includes operating the display device 422 to display the Pareto optimal solutions to the user as different operational modes or available operating profiles. In some embodiments, step 1712 is performed by the display device 422 and the controller 1110. In some embodiments, step 1712 includes providing the Pareto optimal solutions and historical data (e.g., historical data of actually used control decisions and the resulting energy cost and infection risks). In some embodiments, step 1712 is optional. For example, if the user has already set a mode of operation (e.g., always use minimum infection risk settings, always use minimum energy cost solution, always use equal priority energy cost/disinfection solution, etc.), then step 1712 can be optional.
Process 1700 includes automatically selecting one of the Pareto optimal solutions or receiving a user input of a selected Pareto optimal solution (step 1714), according to some embodiments. In some embodiments, a user may select a setting for the controller 1110 to either automatically select one of the Pareto optimal solutions, or that the Pareto optimal solutions should be provided to the user for selection. In some embodiments, step 1714 is performed by the controller 1110 and the display device 422. For example, step 1714 can be performed by a user providing a selection of one of the Pareto optimal solutions (and therefore the corresponding control decisions) to be used by the HVAC system for operation, according to some embodiments. In some embodiments, step 1714 is performed automatically (e.g., if a user or administrator has selected a preferred mode of operation for the HVAC system) by the Pareto optimizer 1112 to select one of the Pareto optimal solutions and therefore the corresponding control decisions for operational use of the HVAC system.
Process 1700 includes operating equipment of an HVAC system according to the control decisions of the selected Pareto optimal solution (step 1716), according to some embodiments. In some embodiments, step 1716 includes operating the HVAC system 300. More specifically, step 1716 can include operating the UV lights 307, the AHU 304, etc., of the HVAC system 300 according to the control decisions of the selected Pareto optimal solution. Advantageously, using the control decisions of the selected Pareto optimal solution can facilitate optimal control of the HVAC system 300 in terms of risk reduction, energy consumption, or an equal priority between infection risk reduction and energy consumption or energy cost.
Referring again to
Referring again to
The analysis mode outputs 1234 can be analysis data based on historical and/or current BMS data, according to some embodiments. In some embodiments, the analysis mode outputs 1234 include energy consumption, infection risks, ventilation setpoints, etc., over a previous time period. In some embodiments, the analysis mode outputs 1234 includes sensor or meter data (e.g., of the energy consumption, energy cost, etc.), and one or more calculated values (e.g., the calculated infection risk as described using the techniques herein) for the HVAC system 300 or the building 10.
In some embodiments, the advisory mode outputs 1240 are the results of the Pareto optimizer 1236 for future or predicted time periods. In some embodiments, the advisory mode outputs 1240 include various predicted infection risks and energy costs for different values of minimum ventilation setpoint and supply temperature setpoint (e.g., different Pareto optimal solutions as described in greater detail above with reference to
In some embodiments, the analysis mode outputs 1234 (e.g., analysis results over a previous or historical time period) and the advisory mode outputs 1240 (e.g., suggested operating points for the HVAC system 300 such as different Pareto optimal points), are determined (e.g., detected, sensed, read from a meter, determined based on operating parameters of equipment of the HVAC system 300, calculated, etc.) simultaneously and presented to the user simultaneously. In this way, the controller 1110 can both “look backwards” and “look forwards” to analyze or assess previous operation of the HVAC system 300 and present analysis data, and to simultaneously determine suggested or simulated setpoints for future operation that minimize energy consumption or energy cost (e.g., a Pareto optimal solution that has lowest energy consumption or energy cost), minimize infection risk (e.g., a Pareto optimal solution that has lowest infection risk or highest disinfection), or an equal priority operating point between minimizing infection risk and minimizing energy consumption or energy cost, according to some embodiments.
In some embodiments, the previous or historical time period over which data is analyzed to determine the analysis mode outputs 1234 is a different length or time duration than the future time period for the advisory mode outputs 1240. For example, the previous or historical time period and the future time period can have different periodicities or the same periodicities. In one example, the previous or historical time period may be a previous 24 hours, while the future time period is a 1 hour time horizon, a 12 hour time horizon, etc. In some embodiments, the periodicities of the historical or previous time period and the future time period is user-selectable and can be adjusted by the user providing inputs to the controller 1110 via the display device 422. In some embodiments, the analysis mode outputs 1234 are for an hourly previous time period and the advisory mode outputs 1240 are for a future 24 hour period. In some embodiments, the analysis mode outputs 1234 include calculations of clean-air delivery and infection risk (e.g., based on BMS data obtained over the previous time period) such as minimum ventilation setpoint, supply temperature setpoint, infection risk, and energy cost. In some embodiments, the analysis mode outputs 1234 are determined based on sensor data and/or setpoints or operating parameters of the HVAC system 300 or equipment thereof (e.g., the AHU 304). In some embodiments, both the analysis mode outputs 1234 and the advisory mode outputs 1240 are determined based on common models, configurations, and data streams (e.g., the same data model 1202, the same modeling data 1218, the same dynamic model simulator 1232, etc., except using historical or previous data, and predicted or future data).
Referring particularly to
Process 1800 includes obtaining one or more input parameters of one or more zones of a building served by an HVAC system (step 1802), according to some embodiments. In some embodiments, the one or more input parameters are timeseries values of the input parameters obtained (e.g., via obtaining BMS data) over a previous or historical time period. In some embodiments, step 1802 includes obtaining values of setpoints of the equipment of the HVAC system (e.g., the HVAC system 300) over the previous or historical time period. In some embodiments, the values of setpoints include values of the minimum ventilation setpoint and/or supply temperature setpoint (e.g., values of decision variables). In some embodiments, the one or more input parameters include setpoints for temperature, humidity, etc., of the building 10 or various zones thereof. In some embodiments, step 1802 is performed the model generator 1210 and/or the timeseries resampler 1212. In some embodiments, the one or more input parameters are or include values of different infection parameters such as a number of infected individuals, a number of susceptible individuals, a number of infectious individuals, a volumetric breath rate of one individual, a disease quanta generation rate, etc.
Process 1800 includes generating an infection model for the one or more zones of the building served by the HVAC system based on the one or more input parameters (step 1804), according to some embodiments. In some embodiments, the infection model predicts a probability of infection as a function of at least one of the one or more input parameters. In some embodiments, the infection model is a Wells-Riley based model. In some embodiments, step 1804 is performed by the controller 1110, or more particularly, by the model manager 416 using any of the techniques described in greater detail above with reference to the model manager 416 (see e.g.,
Process 1800 includes obtaining an occupancy profile for the one or more zones of the building (step 1806), according to some embodiments. In some embodiments, the occupancy profile includes a scheduled occupancy of each zone for the previous time period. In some embodiments, the occupancy profile is timeseries data indicating a number of occupants in each of the zones. In some embodiments, the occupancy profile is obtained from a scheduling service or from occupancy detectors (e.g., detectors at the door that read a number of occupants that enter the building 10 or that enter a specific zone). In some embodiments, step 1806 is performed by the controller 1110 or more specifically by the model manager 416. In some embodiments, the occupancy profile is generated based on zone scheduling and ASHRAE 90.1 standards.
Process 1800 includes performing a simulation of the infection model for the previous time period (step 1808), according to some embodiments. In some embodiments, the simulation is performed using the infection model generated in step 1804. In some embodiments, the simulation is performed for the previous time period using the one or more input parameters as obtained in step 1802. The simulation can be performed to determine infection risks, infection probability, disinfection magnitude, etc., resulting from the operation of the HVAC system over the previous time period, according to some embodiments. In some embodiments, step 1808 is performed by the optimization manager 412 or the dynamic model simulator 1232. In some embodiments, the simulation is performed for a 24 hour period preceding a current time in 15 minute timesteps.
Process 1800 includes determining one or more infection metrics based on outputs of the simulation (step 1810), according to some embodiments. In some embodiments, the one or more infection metrics include infection probability, infection probability reduction, disinfection amount, etc., of the zones of the building that is served by the HVAC system. In some embodiments, the infection metrics include ventilation rate of air for the zones, clean-air delivery rate to the zones, infection risk, and/or clean air score. In some embodiments, step 1810 is performed by the dynamic model simulator 1232, the analysis mode outputs 1234, or the results manager 418.
Process 1800 includes operating a display to provide the infection metrics of the previous time period to a user as analysis data (step 1812), according to some embodiments. In some embodiments, step 1812 is performed using the display device 422. In some embodiments, step 1812 includes operating the display device 422 to provide any of the ventilation rate of air for each of the zones, clean-air delivery rate to each of the zones, infection risk of each of the zones or of the overall building, and/or clean air score for each of the zones. In some embodiments, the infection metrics are for the previous time period.
Referring particularly to
Process 1900 includes obtaining one or more input parameters of one or more zones of a building served by an HVAC system (step 1902), according to some embodiments. In some embodiments, step 1902 is similar to step 1802 as described in greater detail above with reference to
Process 1900 includes performing a regression technique using operational data to determine key model parameters (step 1904), according to some embodiments. In some embodiments, step 1904 includes using artificial intelligence, machine learning, a neural network, etc., to train, adjust, calibrate, etc., different model parameters (e.g., parameters of an infection risk model). In some embodiments, step 1904 is performed using a predefined model or predefined model parameters (e.g., generic parameters) that is/are adjusted based on operational data obtained from the BMS of the HVAC system to improve an accuracy of simulations or predictions using the model.
Process 1900 includes generating an infection model for the one or more zones of the building served by the HVAC system based on the one or more input parameters (step 1906), according to some embodiments. In some embodiments, step 1906 is the same as or similar to step 1804 of process 1800. In some embodiments, step 1906 is performed using the model parameters that are updated, adjusted, calibrated, determined, etc., in step 1904 using the regression technique and operational data (e.g., actual data of the HVAC system obtained from a BMS).
Process 1900 includes obtaining an occupancy profile for the one or more zones of the building (step 1908), according to some embodiments. In some embodiments, step 1908 is the same as or similar to step 1806 of process 1800 but is performed for a future time period. In some embodiments, step 1908 includes generating the occupancy profile for the zones based on ASHRAE standards and zone scheduling.
Process 1900 includes performing a simulation of the infection model for a future time period (step 1910), according to some embodiments. In some embodiments, step 1910 is the same as or similar to step 1808 of process 1800 but performed for the future time period (e.g., a future time horizon). In some embodiments, the simulation performed in step 1910 is performed at a different periodicity (e.g., the duration of the future time period, and the time steps of the simulation performed at step 1910 are different than the duration of the previous time period and the time steps of the simulation performed at step 1808 of process 1800). In some embodiments, the simulation is performed to determine energy consumption or energy cost and corresponding infection risks for different decision variables (e.g., minimum ventilation setpoint, supply temperature setpoint, etc.).
Process 1900 includes determining one or more infection metrics based on outputs of the simulation (step 1912) and performing a Pareto optimization to determine different Pareto optimal operating points (step 1914), according to some embodiments. In some embodiments, step 1912 is the same as or similar to the step 1810 of process 1800. In some embodiments, step 1914 includes performing steps 1706-1710 of process 1700 as described in greater detail above with reference to
Process 1900 includes operating a display to provide the Pareto optimal points (or a subset thereof) to a user as advisory data (step 1916), according to some embodiments. In some embodiments, step 1916 includes providing the Pareto optimal points associated with lowest or minimal energy cost or energy consumption, lowest or minimal infection risk (e.g., maximum disinfection), and an equal priority Pareto optimal point between energy consumption or cost and infection risk. In some embodiments, the Pareto optimal points are provided as advisory or suggested operating conditions for the future time period.
Referring particularly to
Process 2000 includes performing an infection risk and energy cost analysis of an HVAC system for a previous time period to determine analysis data (step 2002) and performing an infection risk and energy cost Pareto optimization of the HVAC system for a future time period to determine advisory data (step 2004), according to some embodiments. In some embodiments, performing step 2002 includes performing process 1800. In some embodiments, performing step 2004 includes performing process 1900. In some embodiments, steps 2002 and 2004 are performed at least partially simultaneously with each other.
Process 2000 includes operating a display to provide both the analysis data and the advisory data to a user (step 2006), according to some embodiments. In some embodiments, step 2006 includes performing steps 1812 and 1916 of processes 1800 and 1900, respectively. In some embodiments, step 2006 is performed by the display device 422. Providing both the analysis data and the advisory data can facilitate a temporal bi-directional informing of the user regarding past operation of the HVAC system (e.g., the HVAC system 300) and suggested future suggestions or advisory control decisions to achieve desired energy costs and infection reduction or acceptable infection risk levels.
Process 2000 includes automatically selecting control decisions or receiving a user input of a selected control decision (step 2008) and operating equipment of an HVAC system according to the control decisions (step 2010), according to some embodiments. In some embodiments, steps 2008 and 2010 are the same as or similar to steps 1714 and 1716 of process 1700.
Referring particularly to
Referring particularly to
Referring still to
Referring still to
Referring still to
Referring to
Referring particularly to
Referring to
The sustainability metric may include any of a variety of metrics that quantify the performance of a building, campus, or organization with respect to energy sustainability or environmental sustainability. Some examples of sustainability metrics include carbon dioxide (CO2) related metrics (i.e., carbon equivalents) such as carbon emissions, carbon footprint, carbon credits, carbon offsets, and the like. Other examples of sustainability metrics include greenhouse gas emissions (e.g., methane, nitrous oxide, fluorinated gases, etc.), water usage, water pollution, waste generation, ecological footprint, resource consumption, or any other metric that can be used to quantify sustainable building operations. In some embodiments, sustainability metrics can be expressed on a per unit basis such as carbon per number of widgets produced, carbon per volume of product produced, carbon per meals served, carbon per patients treated, carbon per experiments run, carbon per sales revenue, carbon per items shipped, carbon per emails sent, carbon per unit of data processed, carbon per occupant, carbon per occupied room, carbon per normalized utilization value, etc. In some embodiments, sustainability metrics can be generated on an enterprise-wide basis (e.g., one value for the whole enterprise), on a building-by-building basis, on a campus-by-campus basis, by business unit/department, by building system or subsystem (e.g., HVAC, lighting, security, etc.), by control loop (e.g., chiller control loop, AHU control loop, waterside control loop, airside control loop, etc.), by building space (e.g., per room or floor,) or by any other division or aggregation. Sustainability metrics can be calculated or generated based on actual or historical building operations or predicted for future building operations using one or more predictive models.
The techniques described herein with reference to
It should be understood that the sustainability metric described herein provides an estimation of how sustainable or environmentally friendly a proposed solution is (e.g., in terms of carbon emissions). Therefore, “high” or “maximum” values of the sustainability metric indicate an increased amount of carbon emissions and decreased or minimal environmentally friendliness of the solution, and “low” values of the sustainability metric indicate a decreased amount of carbon emissions and increased or maximal environmentally friendliness of the solution. It should further be understood that while
Referring particularly to
The objective function and corresponding predictive models used to define the sustainability metric and the infection risk can be similar to the objective function and predictive models described above with reference to
In some embodiments, the value of the sustainability metric is calculated or predicted directly using one or more predictive models that define a relationship between the sustainability metric and building control decisions. For example, a predictive model may define the amount of carbon emissions as a function of operating decisions for building equipment (e.g., equipment on/off decisions, operating setpoints, etc.) over the duration of the optimization period. In other embodiments, the value of the sustainability metric can be calculated based on a corresponding amount of energy consumption. In this scenario, the objective function may be the same as the objective function previously described (e.g., an objective function that predicts energy cost or energy consumption as a function of the supply temperature setpoint and the minimum ventilation setpoint), and the resulting value of the objective function (e.g., energy consumption or cost) can be converted to a value of the sustainability metric (e.g., the carbon equivalence) using a conversion relationship. In some embodiments, the conversion relationship is a linear relationship that is used to map energy cost or energy consumption (e.g., for the HVAC system 200) to carbon emissions equivalence or any other sustainability metric.
Referring particularly to
Referring particularly to
Referring to
As shown in
Referring still
Referring to
Referring particularly to
Process 2800 also includes modified steps 2804, 2806, and 2808, and steps 1712-1716 of process 1700, according to some embodiments. In some embodiments, the modified step 2804 is the same as the step 1706 but is performed based on the sustainability metric instead of the energy cost. Similarly, step 2806 can be the same as or similar to the step 1708 but performed to determine Pareto optimal solutions based on the sustainability metric. Finally, step 2808 can be the same as the step 1710 of the process 1700 but performed to determined various of the Pareto optimal points (e.g., a minimum sustainability metric solution, a maximum disinfection solution, and an equal priority sustainability/disinfection solution), according to some embodiments. In some embodiments, the step 2802 is incorporated in the step 1704, or the simulation is performed to determine sets of values of the sustainability metric and the infection risk directly. In such an implementation, step 2802 can be performed to determine energy cost or energy consumption based on the determined values of the sustainability metric.
Referring particularly to
Particularly, process 2900 includes performing a simulation for each set of the values of the control decision variables to determine sets of values of energy cost, a sustainability metric, and infection risk (step 2904), according to some embodiments. In some embodiments, step 2904 is performed by the controller 1110 similarly to step 1704 but for several objective function values (e.g., optimization objectives). In some embodiments, step 2904 is performed using multiple objective functions, namely, an objective function that estimates energy cost based on the control decision variables, an objective function that estimates a sustainability metric based on the control decision variables, and an objective function that estimates or predicts infection risk based on the control decision variables. In some embodiments, the objective function used to predict the sustainability metric is the same as the objective function used to predict the energy cost but with an additional conversion factor or function to convert the energy cost to the sustainability metric.
Process 2900 includes determining which of the sets of values of energy cost, the sustainability metric, and the infection risk are infeasible and which are feasible (step 2906), according to some embodiments. In some embodiments, the sets of values of energy cost, sustainability metric, and the infection risk are used to construct a surface or 3-d plot. In some embodiments, the step 2906 includes comparing various values of the control decision variables, or values of any of the energy cost, the sustainability metric, or the infection risk to constraints (e.g., user-specified constraints, system operating constraints, etc.) to determine which of the sets of values of the energy cost, the sustainability metric, or the infection risk are feasible or infeasible.
Process 2900 includes determining which of the feasible sets of values of energy cost, the sustainability metric, and the infection risk are Pareto optimal solutions (step 2908), according to some embodiments. In some embodiments, step 2908 is performed similarly to step 1708 of process 1700 but also accounting for the sustainability metric. In some embodiments, the Pareto optimal solutions are curves that define multiple Pareto optimal solutions. Process 2900 includes determining, based on the Pareto optimal solutions, a minimum energy cost solution, a maximum disinfection solution, a minimum sustainability metric solution, and an equal priority solution (step 2910), according to some embodiments. In some embodiments, step 2910 is similar to step 1710 but also accounts for the sustainability metric. In some embodiments, the Pareto optimal solutions are curves that define multiple Pareto optimal solutions along the surface graph in terms of the minimum energy cost solution, the maximum disinfection solution, the minimum sustainability metric solution, and the equal priority solution. In some embodiments, the equal priority solution is an equal priority between the energy cost, the infection risk, and the sustainability metric.
Process 2900 includes steps 2912-2916 that are the same as or similar to steps 1712-1716 but also including display and accordingly user selection of options that take into account the sustainability metric. In some embodiments, only one of the sustainability metric or the energy cost is displayed to the user via the display screen, and the user may toggle between the sustainability metric and the energy cost for the different proposed solutions to facilitate proper selection.
Referring to
In some embodiments, a simulation is performed using one or more dynamic models to determine one or more corresponding values of Pareto optimization objectives (e.g., values of the sustainability metric and the energy cost) for each of the decision variables, represented by the points 3006. In some embodiments, the corresponding values of the Pareto optimization objectives are shown as points 3008, including points 3008a-3008l. Each of the points 3008a-3081 correspond to one of the points 3006a-306l. In some embodiments, the one or more dynamic models include models that predict energy cost and/or the sustainability metric as a function of both the first decision variable and the second decision variable. In some embodiments, the points 3008 are determined by the dynamic model simulator 1232 based on the different values of the first decision variable and the second decision variable using one or more dynamic models.
The points 3008 can be used by the Pareto optimizer 1236 or the Pareto optimizer 1112 to determine which of the points 3008 are feasible and in-feasible, and to further determine which of the feasible points 3008 are Pareto optimal points in terms of sustainability (e.g., a Pareto optimal point having a lowest value of the sustainability metric), energy cost (e.g., a Pareto optimal point having a lowest value of energy cost), or an equal priority Pareto point that optimizes both the sustainability metric and the energy cost equally, according to some embodiments. In some embodiments, the sustainability metric accounts for operational carbon emissions (e.g., if the Pareto optimization is performed in the context of an operational tool) or accounts for carbon emissions resulting from both operation of the HVAC system 300 and/or installing equipment in the HVAC system 300 (e.g., if the Pareto optimization is performed in the context of a design tool). In some embodiments, the points 3008 are used for selection or determination of the various Pareto optimal points. These Pareto optimal points may be automatically selected for use by the HVAC system 300 or may be presented to a building administrator for selection thereof. Each of the Pareto optimal points corresponds to different values of the decision variables or schedules of decision variables over a time period (e.g., setpoints over a future time period) and selection of one of the Pareto optimal points of the points 3008 results in the selection of the corresponding decision variables or schedules of the decision variables.
Once a particular Pareto optimal point of the Pareto optimal points 3008 are selected, the controller 1110 or the controller 310 generates control signals for the HVAC system 300 to operate the HVAC system 300 according to the selected Pareto optimal point (e.g., according to the corresponding combination of decision variables or the corresponding schedule of the decision variables over a time horizon such as a future time horizon).
Referring now to
Each of building subsystems 3128 can include any number of devices, controllers, and connections for completing its individual functions and control activities. HVAC subsystem 3140 can include many of the same components as HVAC system 100, as described with reference to
Still referring to
Interfaces 3107, 3109 can be or include wired or wireless communications interfaces (e.g., jacks, antennas, transmitters, receivers, transceivers, wire terminals, etc.) for conducting data communications with building subsystems 3128 or other external systems or devices. In various embodiments, communications via interfaces 3107, 3109 can be direct (e.g., local wired or wireless communications) or via a communications network 3146 (e.g., a WAN, the Internet, a cellular network, etc.). For example, interfaces 3107, 3109 can include an Ethernet card and port for sending and receiving data via an Ethernet-based communications link or network. In another example, interfaces 3107, 3109 can include a Wi-Fi transceiver for communicating via a wireless communications network. In another example, one or both of interfaces 3107, 3109 can include cellular or mobile phone communications transceivers. In one embodiment, communications interface 3107 is a power line communications interface and BAS interface 3109 is an Ethernet interface. In other embodiments, both communications interface 3107 and BAS interface 3109 are Ethernet interfaces or are the same Ethernet interface.
Still referring to
Memory 3108 (e.g., memory, memory unit, storage device, etc.) can include one or more devices (e.g., RAM, ROM, Flash memory, hard disk storage, etc.) for storing data and/or computer code for completing or facilitating the various processes, layers and modules described in the present application. Memory 3108 can be or include volatile memory or non-volatile memory. Memory 3108 can include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described in the present application. According to an exemplary embodiment, memory 3108 is communicably connected to processor 3106 via processing circuit 3104 and includes computer code for executing (e.g., by processing circuit 3104 and/or processor 3106) one or more processes described herein.
In some embodiments, BAS controller 3102 is implemented within a single computer (e.g., one server, one housing, etc.). In various other embodiments BAS controller 3102 can be distributed across multiple servers or computers (e.g., that can exist in distributed locations). Further, while
Still referring to
Enterprise integration layer 3110 can be configured to serve clients or local applications with information and services to support a variety of enterprise-level applications. For example, enterprise control applications 3126 can be configured to provide subsystem-spanning control to a graphical user interface (GUI) or to any number of enterprise-level business applications (e.g., accounting systems, user identification systems, etc.). Enterprise control applications 3126 can also or alternatively be configured to provide configuration GUIs for configuring BAS controller 3102. In yet other embodiments, enterprise control applications 3126 can work with layers 3110-3120 to optimize building performance (e.g., efficiency, energy use, comfort, or safety) based on inputs received at interface 3107 and/or BAS interface 3109 (e.g., such as HVAC equipment data 1222, infection parameters 1324, and disturbance schedules 1226).
Building subsystem integration layer 3120 can be configured to manage communications between BAS controller 3102 and building subsystems 3128. For example, building subsystem integration layer 3120 can receive sensor data and input signals from building subsystems 3128 and provide output data and control signals to building subsystems 3128. Building subsystem integration layer 3120 can also be configured to manage communications between building subsystems 3128. Building subsystem integration layer 3120 translate communications (e.g., sensor data, input signals, output signals, etc.) across multi-vendor/multi-protocol systems.
Demand response layer 3114 can be configured to optimize resource usage (e.g., electricity use, natural gas use, water use, etc.) and/or the monetary cost of such resource usage in response to satisfy the demand of building 10. The demand response layer 3114 can include similar features and functionality as data model 1202, Pareto optimizer 1236, and/or optimization manager 412). The optimization can be based on time-of-use prices, curtailment signals, energy availability, or other data received from utility providers, distributed energy generation systems 3124, from energy storage 3127, or from other sources. Demand response layer 3114 can receive inputs from other layers of BAS controller 3102 (e.g., building subsystem integration layer 3120, integrated control layer 3118, etc.). The inputs received from other layers can include environmental or sensor inputs such as temperature, carbon dioxide levels, relative humidity levels, air quality sensor outputs, occupancy sensor outputs, room schedules, and the like. The inputs can also include inputs such as electrical use (e.g., expressed in kWh), thermal load measurements, pricing information, projected pricing, smoothed pricing, curtailment signals from utilities, and the like.
According to an exemplary embodiment, demand response layer 3114 includes control logic for responding to the data and signals it receives. These responses can include communicating with the control algorithms in integrated control layer 3118, changing control strategies, changing setpoints, or activating/deactivating building equipment or subsystems in a controlled manner. Demand response layer 3114 can also include control logic configured to determine when to utilize stored energy. For example, demand response layer 3114 can determine to begin using energy from energy storage 3127 just prior to the beginning of a peak use hour.
In some embodiments, demand response layer 3114 includes a control module configured to actively initiate control actions (e.g., automatically changing setpoints) which minimize energy costs based on one or more inputs representative of or based on demand (e.g., price, a curtailment signal, a demand level, etc.). In some embodiments, demand response layer 3114 uses equipment models to determine an optimal set of control actions. The equipment models can include, for example, thermodynamic models describing the inputs, outputs, and/or functions performed by various sets of building equipment. Equipment models can represent collections of building equipment (e.g., subplants, chiller arrays, etc.) or individual devices (e.g., individual chillers, heaters, pumps, etc.).
Demand response layer 3114 can further include or draw upon one or more demand response policy definitions (e.g., databases, XML files, etc.). The policy definitions can be edited or adjusted by a user (e.g., via a graphical user interface) so that the control actions initiated in response to demand inputs can be tailored for the user's application, desired comfort level, particular building equipment, or based on other concerns. For example, the demand response policy definitions can specify which equipment can be turned on or off in response to particular demand inputs, how long a system or piece of equipment should be turned off, what setpoints can be changed, what the allowable setpoint adjustment range is, how long to hold a high demand setpoint before returning to a normally scheduled setpoint, how close to approach capacity limits, which equipment modes to utilize, the energy transfer rates (e.g., the maximum rate, an alarm rate, other rate boundary information, etc.) into and out of energy storage devices (e.g., thermal storage tanks, battery banks, etc.), and when to dispatch on-site generation of energy (e.g., via fuel cells, a motor generator set, etc.).
Integrated control layer 3118 can be configured to use the data input or output of building subsystem integration layer 3120 and/or demand response later 3114 to make control decisions. Due to the subsystem integration provided by building subsystem integration layer 3120, integrated control layer 3118 can integrate control activities of the subsystems 3128 such that the subsystems 3128 behave as a single integrated supersystem. In an exemplary embodiment, integrated control layer 3118 includes control logic that uses inputs and outputs from building subsystems to provide greater comfort and energy savings relative to the comfort and energy savings that separate subsystems could provide alone. For example, integrated control layer 3118 can be configured to use an input from a first subsystem to make an energy-saving control decision for a second subsystem. Results of these decisions can be communicated back to building subsystem integration layer 3120.
Integrated control layer 3118 is shown to be logically below demand response layer 3114. Integrated control layer 3118 can be configured to enhance the effectiveness of demand response layer 3114 by enabling building subsystems 3128 and their respective control loops to be controlled in coordination with demand response layer 3114. This configuration can reduce disruptive demand response behavior relative to conventional systems. For example, integrated control layer 3118 can be configured to assure that a demand response-driven upward adjustment to the setpoint for chilled water temperature (or another component that directly or indirectly affects temperature) does not result in an increase in fan energy (or other energy used to cool a space) that would result in greater total building energy use than was saved at the chiller.
Integrated control layer 3118 can be configured to provide feedback to demand response layer 3114 so that demand response layer 3114 checks that constraints (e.g., temperature, lighting levels, etc.) are properly maintained even while demanded load shedding is in progress. The constraints can also include setpoint or sensed boundaries relating to safety, equipment operating limits and performance, comfort, fire codes, electrical codes, energy codes, and the like. Integrated control layer 3118 is also logically below fault detection and diagnostics layer 3116 and automated measurement and validation layer 3112. Integrated control layer 3118 can be configured to provide calculated inputs (e.g., aggregations) to these higher levels based on outputs from more than one building subsystem.
Automated measurement and validation (AM&V) layer 3112 can be configured to verify that control strategies commanded by integrated control layer 3118 or demand response layer 3114 are working properly (e.g., using data aggregated by AM&V layer 3112, integrated control layer 3118, building subsystem integration layer 3120, FDD layer 3116, or otherwise). The calculations made by AM&V layer 3112 can be based on building system energy models and/or equipment models for individual BAS devices or subsystems. For example, AM&V layer 3112 can compare a model-predicted output with an actual output from building subsystems 3128 to determine an accuracy of the model.
Fault detection and diagnostics (FDD) layer 3116 can be configured to provide on-going fault detection for building subsystems 3128, building subsystem devices (i.e., building equipment), and control algorithms used by demand response layer 3114 and integrated control layer 3118. FDD layer 3116 can receive data inputs from integrated control layer 3118, directly from one or more building subsystems or devices, or from another data source. FDD layer 3116 can automatically diagnose and respond to detected faults. The responses to detected or diagnosed faults can include providing an alarm message to a user, a maintenance scheduling system, or a control algorithm configured to attempt to repair the fault or to work-around the fault.
FDD layer 3116 can be configured to output a specific identification of the faulty component or cause of the fault (e.g., loose damper linkage) using detailed subsystem inputs available at building subsystem integration layer 3120. In other exemplary embodiments, FDD layer 3116 is configured to provide “fault” events to integrated control layer 3118 which executes control strategies and policies in response to the received fault events. According to an exemplary embodiment, FDD layer 3116 (or a policy executed by an integrated control engine or business rules engine) can shut-down systems or direct control activities around faulty devices or systems to reduce energy waste, extend equipment life, or assure proper control response.
FDD layer 3116 can be configured to store or access a variety of different system data stores (or data points for live data). FDD layer 3116 can use some content of the data stores to identify faults at the equipment level (e.g., specific chiller, specific AHU, specific terminal unit, etc.) and other content to identify faults at component or subsystem levels. For example, building subsystems 3128 can generate temporal (i.e., time-series) data indicating the performance of BAS 3100 and the various components thereof. The data generated by building subsystems 3128 can include measured or calculated values that exhibit statistical characteristics and provide information about how the corresponding system or process (e.g., a temperature control process, a flow control process, etc.) is performing in terms of error from its setpoint. These processes can be examined by FDD layer 3116 to expose when the system begins to degrade in performance and alarm a user to repair the fault before it becomes more severe.
Referring now to
The building data 3202A may include information about the number of occupants located within spaces of the building. For example, in an office building, occupants may need a badge to enter the building. As employees use their badge to enter the office a counter in the building data 3202A may increment to track the number of occupants entering the office building. The office building may contain rooms where occupants attend meetings, and the rooms may be reserved though a reservation system. The building data 3202A may include the reservation and the attendees of the meeting to update where the occupants are located at a given time. Furthermore, the building data 3202A may track the logins of occupants on user devices within the spaces of the building. The user devices may include electronic computing device that executes hardware (e.g., processor, non-transitory storage medium). Non-limiting examples of the user devices includes, a desktop computer, a laptop, a personal digital assistant (PDA), a smartphone, a tablet computer, and the like. The building data 3202A can be applied to various types of buildings and are not limited to office buildings as described by the example. The building data 3202A may include materialistic information regarding objects, appliances, entities, and natural methods to improve ventilation. The materialistic information may include which spaces in the building have one or more windows, doors, exhaust fans, ceiling fans, air purifiers, updated HVAC systems, seal leaks, plant, dust, among others.
Furthermore, information describing physical characteristics of the building and various spaces of the building can be provided to the analysis system 3204 via the building data 3202A. The information can be manually collected site data, photos of the building, equipment information of the building, schematic diagrams of the building, user information, desired metrics, desired building performance, floor plans of the spaces assessed via the IAQ data 3202B, AHU zone maps indicating each AHU and the spaces the AHUs serve, an AHU list/schedule indicating lists of AHUs with sizes and service information, etc.
The IAQ data 3202B may receive air cleanliness measurements from sensors installed throughout the spaces of the building to determine the air cleanliness within the spaces. A technician can install the sensors in the spaces of the building such as in walls, ceilings, windows, air conditioning units, heating units, within vents, etc. The sensors can be spread out through various spaces of the building to record air cleanliness measurements of each space of the building. Each sensor of the air quality sensors (including similar features and functionality of zone sensors 312 and ambient sensors 314) can measure one or multiple air cleanliness metrics, e.g., can include one sensor or a set of sensors. For example, the sensors can measure ventilation for a space, occupancy for a space, CO2 for a space, particulate matter PM10 for a space, particulate matter PM2.5 for a space, volatile organic compounds (VOC) for the space, total volatile organic compound (TVOC) for the space, thermal measurements for the space, temperature for the space, relative humidity for the space, dew point for the space, ozone for the space, carbon monoxide (CO) for the space, formaldehyde for the space, etc. The measurements from the sensors are stored in the IAQ data 3202B.
The user data 3202C may include any information or data that is collected, generated, or associated with the occupant of the spaces in the building. The user data 3202C may be organized into user profiles to represent an identified occupant stored in a plurality of occupant information. For example, the user profiles may include an occupant's name, address, phone number, email address, gender, zone location in the building, room location in the building, health conditions, allergies, medical history, COVID test results, health deficiencies, prescription history, GPS coordinates, location history, Wi-Fi access points, identification card, among others. The user data 3202C is not limited to including the information of the user profile listed above. Furthermore, the user data 3202C may include preferences for air cleanliness for identified occupants within the spaces in the building. For example, the identified occupant may prefer to remain in a well-ventilated environment, regardless of information included within the identified occupant's user profile stored in the plurality of user data 3202C.
The building data 3202A, the IAQ data 3202B, and user data 3202C (space data 3202) can be communicated to a cloud platform that can perform an analysis on the space data 3202 of the various spaces of the building. For example, the space data 3202 can be transmitted across a network 3214 which may include local networks within the building and/or external networks. For example, various routers, switches, servers, cellular towers, LAN networks, WAN, networks, Wi-Fi networks, etc. can be included within the network 3214 and can communicate the space data 3202 to the analysis system 3204.
The analysis system 3204 can be a cloud-based system, a remote system, a local on-premises system with the building, etc. The analysis system 3204 can include one or more processors 3206 and/or one or more memory devices 3208. Processors 3206 can be implemented as a general-purpose processor, an application specific integrated circuit (ASIC), one or more field programmable gate arrays (FPGAs), a group of processing components, or other suitable electronic processing components.
Memory devices 3208 (e.g., memory, memory unit, storage device, etc.) can include one or more devices (e.g., RAM, ROM, Flash memory, hard disk storage, etc.) for storing data and/or computer code for completing or facilitating the various processes, layers and modules described in the present application. Memory devices 3208 can be or include volatile memory or non-volatile memory. Memory devices 3208 can include database components, object code components, script components, or any other type of information structure for supporting the various activities and information structures described in the present application. According to an exemplary embodiment, memory devices 3208 is communicably connected to processors 3206 via the processors 3206 and includes computer code for executing (e.g., by the processors 3206) one or more processes described herein.
The analysis system 3204 includes an analyzer 3211, a parameter generator 3207, and a report generator 3210. The analyzer 3211 can record information of the various space data 3202 (e.g., building data 3202A, IAQ data 3202B, user data 3202C) and create air cleanliness profiles of the various spaces of the building. For example, the analyzer 3211 can record air cleanliness for the spaces and generate a trend over time (e.g., timeseries data or other time correlated data) in which the sensors are installed. The trends created by the analyzer 3211 can be provided to the parameter generator 3207 and the report generator 3210.
In some embodiments, the analyzer 3211 can generate space hierarchy air cleanliness and occupancy information. For example, rooms, hallways, and closets may be basic units of space in the building. However, a hierarchy of spaces can be built from the basic space unit. For example, a group of rooms could form a zone of a floor. A group of zones could form a floor of a building. A group of floors could form a building of a campus. The analyzer 3211 can generate higher level space air cleanliness metrics for a particular space based on the basic space units that make up the particular space. Furthermore, the analyzer 3211 can generate occupancy metrics for a particular space based on the basic units that make up the space described herein. For example, a CO2 metric for a floor could be generated by averaging the CO2 metrics for all rooms that make up the floor. Similarly, the CO2 metrics for a building could be made based on averaging CO2 metrics for all the floors of the building. In some embodiments, the metrics may be used to generate space health scores for the spaces (e.g., the rooms themselves, floors/buildings/campuses that include the rooms, etc.). In some embodiments, the space health scores may be specific to air cleanliness. In some embodiments, the metrics may be used in combination with other metrics to generate an overall space health score. In some embodiments, the air cleanliness metrics may be used in combination to generate a combined air cleanliness health score, and that score may in turn be used as a component score to generate an overall space/building health score that includes air cleanliness as a component. Example of such features that can be used in conjunction with the features of the present disclosure can be found in U.S. patent application Ser. No. 17/354,583, filed Jun. 22, 2021, and Ser. No. 17/354,565, filed Jun. 22, 2021, both of which are incorporated herein by reference in their entireties.
The analyzer 3211 may provide the report generator 3210 with recommendations for where occupants are most comfortable in the building space. Using the building data 3202A, the analyzer may detect trends of the number of occupants located within one or more building spaces during a given time period. The analyzer 3211 may generate a building space occupant history based on the trends detected. From the building space occupant history, the analyzer 3211 may generate recommendations for the parameters of the building equipment in the one or more building spaces.
The report generator 3210 can generate reports that summarize the air cleanliness trends and occupancy location of the spaces of the building. For example, the charts and tables of shown herein can be generated by the report generator 3210 and included within a report generated by the report generator 3210. The report generated by the report generator can provide the report to the BAS controller 3212. The report can further indicate areas of the building, IAQ data 3202B trends, location patterns regarding the occupants in the building, etc. In some embodiments, the report is data including air cleanliness data, temperature data, lighting data, occupant data, etc.
The report generator 3210 can generate a report including space data 3202 indicating actionable data that can be implemented by the system 3204 and/or a BMS system of the building (e.g., the BMS system described in
The report generated by the report generator 3210 can include a detailed building data 3202A summary report that indicates building size and use, recent renovation, special use areas, number of AHU's, filtration type and schedule, air supply system type, and specific areas of concern. The report can indicate a technician's visual inspection of representative AHU's, fan coil units, induction units, filter type/installation/condition, air supply diffusers, exhaust systems, and/or return air grilles. The report can indicate whether air systems of the building are under proper control, sequence of operations is being followed, and all controls are operating per the desired setpoint and schedule.
The report can include air cleanliness tests received from the IAQ data 3202B, e.g., CO2, CO, PM2.5, temperature, relative humidity, NO2, SO2, O3, VOC's, airflow vectors, air pressure differentials, etc. The report can indicate a ventilation assessment indicating the results of testing that ensures outside air intake, supply air fan, and/or ventilation system is supplying minimum outdoor air ventilation rate detailed by ASHRAE 62.1. Ventilation needs based on space type, square footage, and occupancy. The report can indicate an infection risk assessment indicating DNA-tagged bioaerosols tracers safely simulate respiratory emissions to identify potential infection hotspots, verify ventilation and filtration system performance for mitigating airborne exposures, and optimize enhancements.
The report can include trends for one or more specific spaces in the building space that occupants prefer. The building data 3202A may include frequency of meetings or gatherings, the number of occupants present during the given time period, utilization data, attributes, among others, of the one or more specific spaces in the building space. For ease of description, the attributes may include characteristics (e.g., air supply equipment, plants, dimensions, windows) of the one or more specific spaces. The report may include comparisons between utilization data and attribute data. For example, if two specific spaces have the same attributes, but significantly different utilization data, a group of technicians may investigate the specific spaces with lower utilization.
The control parameters generated by the parameter generator 3207 and included within the report generated by the report generator 3210 can further include control parameters to adjust ventilation rates of rooms of the building with CO2 levels above a particular level (e.g., 1100 ppm). The control parameters can indicate a current ventilation rate of a space along with comparisons to other ventilation rates of other spaces. If all the ventilation rates are similar, the parameters may change a ventilation policy for the entire building.
The control parameters in some embodiments, can include parameter signals to improve ventilation, e.g., diluting dirty air with clean air as available from outside the building. These adjustments can ensure the delivery of ASHRAE required ventilation rates. The parameters can improve filtration for spaces. Filtration may mechanically remove particles from the air of the space. The parameters can increase particle collection with portable filters (for example the Envirco ISO Clean 400) or permanently installed filters (for example the MAC-10 fan filter units)
The parameters may improve disinfection for a space, e.g., deactivating bacteria and/or viruses in the space. The parameters may send signals to operate disinfectant systems such as disinfectant light systems (e.g., ultraviolet-C (UVC), etc.). The parameters may send signals to implement isolation of certain spaces of the building. For example, cause one space to be an isolated space that contains particles and prevents the particles going elsewhere in the building. This can be implemented through creating a negative-pressure isolation environment. The parameters may send a signal for performing monitoring and maintenance of equipment, e.g., to inspect equipment at a particular frequently and/or track results for maintenance and monitoring to maintain clean air.
In some embodiments, the CO2 measurements from the IAQ data 3202B can be used by the parameter generator 3207 to determine how well a space is being ventilated. If the CO2 levels are higher than particular amounts, a parameter to increase ventilation can be generated and/or implemented. The TVOC measurements can indicate how safe a space is for human beings and/or animals. If TVOC is above a particular level, an alert can be generated to evacuate the space and/or address the high TVOC level. The PM2.5 levels can indicate how well filtering equipment is operating. If PM2.5 is greater than a particular amount, this may indicate that the space is not being properly filtered and that a filter of equipment serving the space needs to be replaced and/or changed to a higher quality filter. Furthermore, the IAQ data 3202B may be used to compare the PM2.5 levels inside the building space to PM2.5 levels outside of the building space to determine the necessary amount of filtering.
In some embodiments, the parameter generator 3207 can provide design guidance and recommend new equipment to be installed. For example, the generator 3207 could analyze that the building spaces with low PM2.5 use unit ventilators while spaces with high PM2.5 use VAVs. This improvement in performance of the unit ventilators vs. the VAVs can be used in a parameter for the parameter generator 3207 to recommend that unit ventilators replace the VAVS in the building.
Referring now to
Process 3300 is shown to include predicting an occupancy of the building space during a future time period. In step 3302, the analysis system 3204 may use the space data 3202, transmitted to the analyzer 3211, to monitor the locations of occupants in one or more building spaces during a previous time period. The locations of occupants may be established by tracking location history of the occupants based on at least one of electronic communications, user device data, or detected locations of the occupants in the one or more building spaces during the previous time period. A location pattern of the occupants based on the location history of the occupants in the one or more building spaces during the previous time period. The location pattern may be stored in the building data 3202A and the building data 3202A may provide the location pattern of the occupants to an occupancy prediction model to train the occupancy predicting model. A report may be generated for the locations of the occupants within the one or more building spaces based on the locations of the occupants in the one or more building spaces during the previous time period. Step 3302 may include using an occupancy prediction model to predict the occupancy of the building space during the future time period based on the locations of the occupants within the one or more building spaces during the previous time period. Furthermore, step 3302 may include using an occupancy prediction model to predict the occupancy of the building space during the future time period based on the locations of the occupants within the one or more building spaces during the previous time period.
Process 3300 is shown to include identifying an occupant predicted to occupy the building space during the future time period based on the predicted occupancy. In step 3304, the analysis system 3204 may obtain from the occupancy prediction model, an indication of a plurality of individual occupants predicted to occupy the building space during the future time period. The occupancy prediction model may further predict that the occupant will leave the building space at an end of the future time period allowing the analysis system 3204 to identify a second occupant predicted to occupy the building space during a second time period after the future time period. Using a second occupant-specific air cleanliness requirement for the second occupant to operate the building equipment to affect the air cleanliness in the building space during the second time period, the analysis system 3204 may provide the second occupant specific air cleanliness requirement to the occupancy prediction model to train the occupancy prediction model. The analysis system 3204 may select the occupant from the plurality of individual occupants and determine an identity of the occupant using occupant-specific identity information associated with the occupant.
Process 3300 is shown to include obtaining an occupant-specific air cleanliness requirement for the identified occupant. In step 3306, the analysis system 3204 may obtain the occupant specific air cleanliness requirement for the identified occupant from the user data 3202C or the building data 3202A. The analysis system 3204 may access a profile of the occupant comprising an occupant-specific value of an attribute associated with the occupant separate from the occupant-specific air cleanliness requirement where the profile may be stored in the user data 3202C. The analysis system 3204 may determine the occupant-specific air cleanliness requirement based on the occupant-specific value of the attribute. Step 3306 may include using a stored relationship between the attribute associated with the occupant and the occupant-specific air cleanliness requirement to generate a value of the occupant-specific air cleanliness requirement based on the value of the attribute associated with the occupant. Furthermore, the analysis system 3204 may store the occupant-specific air cleanliness requirement as a new attribute in the profile of the occupant.
Process 3300 is shown to include using a predictive air cleanliness model for the building space and the occupant-specific air cleanliness requirement to generate control parameters for building equipment that operate to affect the air cleanliness in the building space. In step 3308, the analysis system 3204 may provide the predictive air cleanliness model with the occupant specific air cleanliness requirement. The predictive air model may determine a group air cleanliness requirement sufficient to satisfy each of the plurality of occupant-specific air cleanliness requirements if the building spaces include one or more occupants, each with different air cleanliness requirements. Furthermore, the parameter generator 3207 may generate the control parameters for the building equipment using the group air cleanliness requirement, provided by the predictive air cleanliness model.
Process 3300 is shown to include operating the building equipment using the control parameters to affect the air cleanliness in the building space during the future time period. In step 3310, the parameter generator 2107 may provide the BAS controller 3212 with the control parameters received from the predictive air cleanliness requirement. The BAS controller 3212 can begin operating with operating settings and/or control algorithms based on the control parameters generated by the analysis system 3204 via the parameter generator 3207.
Referring now to
Process 3320 is shown to include determining an occupancy of the building space during a time period. In step 3322, the analysis system 3204 may receive the occupancy of the building space from the building data 3202A. Furthermore, the report generator 3210 may generate reports of the occupancy during the time period. The reports may be generated from the information in the building data 3202A, the air cleanliness data in the IAQ data 3202B, and the profiles in the user data 3202C.
Process 3320 is shown to include identifying an occupant of the building space during the time period based on the occupancy. In step 3324, the occupancy may include zero or more occupants in the building space during the time period. Step 3324 may detect a current occupant of the building space. The analysis system 3204 may use the building data 3202A to determine the number of occupants in the building space, of those occupants in the building space (e.g., badge swipes), the user data 3202 may determine occupants in the building space using location history (e.g., GPS, Wi-Fi), electronic communications (e.g., electronic mail, calendar invites, meeting information). The occupant identified may be provided to the parameter generator 3207.
Process 3320 is shown to include generating control parameters for building equipment that operate to affect the air cleanliness in the building space based on an occupant-specific air cleanliness requirement for the identified occupant. In step 3326, the parameter generator 3207 may generate the necessary parameters to provide to the BAS controller 3212. The analysis system 3204 may identify a plurality of occupants to occupy the building space during the time period based on the current occupancy, using the building data 3202A and the user data 3202C, of the building space. The user data 3202C may specify an occupant specific air cleanliness requirement based on the health conditions, allergies, medical history, COVID test results, and health deficiencies of the occupant. The analysis system 3204 may further obtain a plurality of occupant-specific air cleanliness requirements for the plurality of occupants and determine a group air cleanliness requirement sufficient to satisfy each of the plurality of occupant-specific air cleanliness requirements.
Process 3320 is shown to include operating the building equipment using the control parameters to affect the air cleanliness in the building space during the time period. In step 3328, the parameter generator 2107 may provide the BAS controller 3212 with the control parameters received from the analysis system 3204. The BAS controller 3212 can begin operating with operating settings and/or control algorithms based on the control parameters generated by the analysis system 3204 via the parameter generator 3207.
Referring now to
Process 3330 is shown to include determining a time period during which an identified occupant will be located in a building space. In step 3332, the analysis system 3204 may use the user data 3202C (e.g., location history (e.g., GPS, Wi-Fi), electronic communications (e.g., electronic mail, calendar invites, meeting information) to determine a time period in which an occupant is identified to be location in the building space.
Process 3330 is shown to include obtaining an occupant-specific air cleanliness requirement for the identified occupant. The user data 3202C may specify an occupant specific air cleanliness requirement based on the health conditions, allergies, medical history, COVID test results, and health deficiencies of the occupant. The analysis system 3204 may further obtain a plurality of occupant-specific air cleanliness requirements for a plurality of occupants and determine a group air cleanliness requirement sufficient to satisfy each of the plurality of occupant-specific air cleanliness requirements.
Process 3320 is shown to include generating operating parameters for building equipment that operate to affect the air cleanliness in the building space based on the occupant-specific air cleanliness requirement. In step 3336, the parameter generator 3207 may generate the necessary parameters to provide to the BAS controller 3212. The analysis system 3204 may identify a plurality of occupants to occupy the building space during the time period based on the current occupancy.
Process 3320 is shown to include operating the building equipment using the operating parameters to affect the air cleanliness in the building space during the time period. In step 3338, the parameter generator 2107 may provide the BAS controller 3212 with the control parameters received from the analysis system 3204. The BAS controller 3212 can begin operating with operating settings and/or control algorithms based on the control parameters generated by the analysis system 3204 via the parameter generator 3207.
Referring to
The unknown values of occupancy, ventilation, and recirculation can be estimated using parameter-estimation algorithms, as they are influenced by occupancy and airflow. When either occupancy or airflow is constant, both values can be reliably estimated. However, if both values are varying, it becomes difficult to determine from a single IAQ measurement whether the changes are due to occupancy or airflow. In some embodiments, to address these challenges, he systems and methods of
Referring again to
In some embodiments, the controller 310 could automatically run the Pareto optimization each day, choose the best solution given the user's chosen profile, and then automatically dispatch setpoints to the BMS with no manual intervention required, in some embodiments. In some embodiments, the controller 310 could also evaluate the design decisions on a slower frequency (e.g., weekly, monthly) and then make specific recommendations for design decisions (e.g., “add a 1000 CFM air-cleaner to Zone 2”) that could be accompanied by estimates of infection risk (e.g., incorporating hospitalization risk) and energy cost benefits should a recommendation be implemented. Furthermore, if the user's specified infection-risk goals consistently cannot be met, the application could generate an alarm that infection risk is too high and that occupancy reductions should be considered.
In some embodiments, a priority based version of the Wells-Riley equation can be expressed as:
where R is in-building per-infector daily transmission rate or reproductive number (calculated from a clean-air optimization model including Equation 7, assuming one infectious occupant with all other occupants susceptible, with reference to
Referring again to
Although the figures show a specific order of method steps, the order of the steps may differ from what is depicted. Also, two or more steps can be performed concurrently or with partial concurrence. Such variation will depend on the software and hardware systems chosen and on designer choice. All such variations are within the scope of the disclosure. Likewise, software implementations could be accomplished with standard programming techniques with rule based logic and other logic to accomplish the various connection steps, calculation steps, processing steps, comparison steps, and decision steps.
The construction and arrangement of the systems and methods as shown in the various exemplary embodiments are illustrative only. Although only a few embodiments have been described in detail in this disclosure, many modifications are possible (e.g., variations in sizes, dimensions, structures, shapes and proportions of the various elements, values of parameters, mounting arrangements, use of materials, colors, orientations, etc.). For example, the position of elements can be reversed or otherwise varied and the nature or number of discrete elements or positions can be altered or varied. Accordingly, all such modifications are intended to be included within the scope of the present disclosure. The order or sequence of any process or method steps can be varied or re-sequenced according to alternative embodiments. Other substitutions, modifications, changes, and omissions can be made in the design, operating conditions and arrangement of the exemplary embodiments without departing from the scope of the present disclosure.
As used herein, the term “circuit” may include hardware structured to execute the functions described herein. In some embodiments, each respective “circuit” may include machine-readable media for configuring the hardware to execute the functions described herein. The circuit may be embodied as one or more circuitry components including, but not limited to, processing circuitry, network interfaces, peripheral devices, input devices, output devices, sensors, etc. In some embodiments, a circuit may take the form of one or more analog circuits, electronic circuits (e.g., integrated circuits (IC), discrete circuits, system on a chip (SOCs) circuits, etc.), telecommunication circuits, hybrid circuits, and any other type of “circuit.” In this regard, the “circuit” may include any type of component for accomplishing or facilitating achievement of the operations described herein. For example, a circuit as described herein may include one or more transistors, logic gates (e.g., NAND, AND, NOR, OR, XOR, NOT, XNOR, etc.), resistors, multiplexers, registers, capacitors, inductors, diodes, wiring, and so on).
The “circuit” may also include one or more processors communicably coupled to one or more memory or memory devices. In this regard, the one or more processors may execute instructions stored in the memory or may execute instructions otherwise accessible to the one or more processors. In some embodiments, the one or more processors may be embodied in various ways. The one or more processors may be constructed in a manner sufficient to perform at least the operations described herein. In some embodiments, the one or more processors may be shared by multiple circuits (e.g., circuit A and circuit B may include or otherwise share the same processor which, in some example embodiments, may execute instructions stored, or otherwise accessed, via different areas of memory). Alternatively, or additionally, the one or more processors may be structured to perform or otherwise execute certain operations independent of one or more co-processors. In other example embodiments, two or more processors may be coupled via a bus to enable independent, parallel, pipelined, or multi-threaded instruction execution. Each processor may be implemented as one or more general-purpose processors, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), digital signal processors (DSPs), or other suitable electronic data processing components structured to execute instructions provided by memory. The one or more processors may take the form of a single core processor, multi-core processor (e.g., a dual core processor, triple core processor, quad core processor, etc.), microprocessor, etc. In some embodiments, the one or more processors may be external to the apparatus, for example the one or more processors may be a remote processor (e.g., a cloud based processor). Alternatively, or additionally, the one or more processors may be internal and/or local to the apparatus. In this regard, a given circuit or components thereof may be disposed locally (e.g., as part of a local server, a local computing system, etc.) or remotely (e.g., as part of a remote server such as a cloud based server). To that end, a “circuit” as described herein may include components that are distributed across one or more locations.
The present disclosure contemplates methods, systems and program products on any machine-readable media for accomplishing various operations. The embodiments of the present disclosure can be implemented using existing computer processors, or by a special purpose computer processor for an appropriate system, incorporated for this or another purpose, or by a hardwired system. Embodiments within the scope of the present disclosure include program products including machine-readable media for carrying or having machine-executable instructions or data structures stored thereon. Such machine-readable media can be any available media that can be accessed by a general purpose or special purpose computer or other machine with a processor. By way of example, such machine-readable media can include RAM, ROM, EPROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to carry or store desired program code in the form of machine-executable instructions or data structures and which can be accessed by a general purpose or special purpose computer or other machine with a processor. Combinations of the above are also included within the scope of machine-readable media. Machine-executable instructions include, for example, instructions and data which cause a general purpose computer, special purpose computer, or special purpose processing machines to perform a certain function or group of functions.