Patent Publication Number: US-2022236751-A1

Title: Home and building automation system

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation application of U.S. application Ser. No. 16/805,943, which is a continuation application of U.S. application Ser. No. 15/948,098, filed Apr. 9, 2018, which is a continuation application of U.S. application Ser. No. 14/296,561 filed Jun. 5, 2014, which is hereby incorporated in its entirety by reference. 
    
    
     FIELD OF THE INVENTION 
     The present invention relates to home, office and building automation systems generally and to a self-learning home, office and building automation control system in particular. 
     BACKGROUND OF THE INVENTION 
     Home automation generally refers to the automation of the home and of activities associated with the home. It may include automatic control of lighting and blinds, HVAC (heating, ventilation and air conditioning), electrical appliances and electronic devices, security systems including alarms and door locks, health care, sprinkler system, pet feeding, houseplants, pool systems, among other systems which may be found in a home. The control may be at the level of simple remote control of appliances to complex computer/micro-controller based networks with varying degrees of intelligence and automation. 
     Some of these home activities may be simple activities such as turning on a light in a room at the same time every day, while others may be much more complex such as sensing the presence of a person in a room and adjusting lighting, temperature and music volume in the room taking into consideration factors such as the day of the week and the time of day. Home automation systems may additionally provide increased quality of life for elderly and disabled persons who might otherwise require caregivers for assistance in carrying out home activities, or in some cases even require institutional care. 
     The elements of a home automation system may include sensors, such as temperature sensors, light sensors, humidity sensors, CO 2  sensors, motion detectors, smoke detectors and others; actuators which may include electronic valves, switches, relays, and motors; and a controller which may be a centralized controller and/or multiple intelligent devices installed around the home. 
     The controller(s) may be preprogrammed to control the actuators responsive to information received from the sensors or may learn to control the actuators by associating real-time human interactions with the system with information received from the sensors. One or more human-machine interface devices may be required so that the residents of the home may interact with the system for monitoring and control. The interface devices may include a specialized terminal or may be a computerized device having display capabilities such as a personal computer or a laptop computer, or may include an application running on a smart phone or tablet computer. Communication between the different elements of the home automation system may be over dedicated wiring, a wired network, a wireless network, or a combination of any of the former. 
     A home automation system including multiple intelligent devices distributed around the home is described in U.S. Pat. No. 6,865,428 B2, “METHOD AND APPARATUS FOR PROVIDING DISTRIBUTED CONTROL OF A HOME AUTOMATION SYSTEM” to Gonzales et al. Described therein is “a method and apparatus for providing distributed control of a home automation system is provided. Each device participating in a home automation system is equipped with control logic for providing distributed control. Through the control logic, each device maintains scene definitions describing the state of the device for each scene in which it participates. When any device in the system receives a request to launch a scene, such as a button press on one of the devices, the device broadcasts a scene state change message to all devices within the home automation system. The scene state change message identifies to each device a particular scene that should be launched. Each device in the system receives the message and determines whether the device is a participant in the scene. If the device is a participant in the scene, the device adjusts its state according to a scene definition stored in the device associated with the scene. The device may adjust a controlled electrical load, such as a light, according to the scene definition by turning the load on, off, or setting the load to some intermediate value”. 
     Home automation systems may be self-learning and may include a controller which, based on environmental changes may autonomously make decisions regarding monitoring and controlling conditions in one or more rooms within a home. Such a home automation system is described in US Patent Application Publication No. US 2012/0310415 A1, “CONTROL PANEL FOR CONTROL SYSTEM AND A CONTROL SYSTEM”, to Raestik et al. Described therein is “a control panel and controlling system for adjusting environmental conditions of at least one location, wherein the location has desired environmental conditions. The system comprises equipments controlled by controlling means for changing and/or maintaining the environmental condition of the locations. The controlling means is adapted to provide controlling parameters to equipments for adjusting the environmental condition of said location. The system includes a control panel including at least one sensor, whereby the environmental condition is controlled on the basis of the signal received from the sensor”. 
     SUMMARY OF THE PRESENT INVENTION 
     There is therefore provided, in accordance with a preferred embodiment of the present invention, a premises automation unit for a premises. The automation unit includes a movement sensor, an acoustic sensor, an image sensor, a light sensor and a presence resolver. The movement sensor detects movement in at least one room of the premises. The acoustic sensor senses sound in the at least one room and has a model of mammal sounds. The image sensor images at least the at least one room and has at least one image model of a human. The light sensor senses lights and has at least one light model, and the presence resolver receives the output of the sensors and the models to determine a presence or absence of a mammal at least in the room. The presence resolver includes a neural network. 
     Further, in accordance with a preferred embodiment of the present invention, the light sensor senses illumination in the at least one room and the neural network also includes weights associated with the illumination to indicate that the room is dark. 
     Still further, in accordance with a preferred embodiment of the present invention, the presence resolver includes a cognitive unit to learn from at least its sensor data and to modify parameters of operation of the presence resolver. 
     Moreover, in accordance with a preferred embodiment of the present invention, the premises automation unit also includes an event resolver to control at least one piece of equipment in response to an output of the presence resolver. 
     Further, in accordance with a preferred embodiment of the present invention, the event resolver includes a self-learning model to learn from events produced by the presence resolver and to generate a new or a change of state for the at least one piece of equipment and/or to modify a scenario for the at least one piece of equipment based on event data from the presence resolver, and/or to proactively generate a scenario for the at least one piece of equipment based on the event data from the presence resolver. 
     Still further, in accordance with a preferred embodiment of the present invention, the premises automation unit also includes an alarm resolver to protect the premises. 
     Moreover, in accordance with a preferred embodiment of the present invention, the premises automation unit also includes a voice resolver operative on the acoustic sensor to generate a voice instruction. 
     Additionally, in accordance with a preferred embodiment of the present invention, the premises automation unit also includes a CO2 sensor for indicating a CO2 level, a thermometer for sensing an ambient temperature in the at least one room, or a humidity sensor for sensing a humidity level in the at least one room. 
     Further, in accordance with a preferred embodiment of the present invention, the premises automation unit also includes a climate resolver including a neural network to receive an output at least from one of the CO2 sensor, the thermometer and the humidity sensor and to maintain a climate at least in the room with minimal energy expenditure and in response to output of the presence resolver and the processed output of the at least one the sensor, and an event resolver to control pieces of equipment affecting the climate in response to output of the climate and presence resolvers. 
     Moreover, in accordance with a preferred embodiment of the present invention, the premises is a building, a home, or an office. 
     There is also provided, in accordance with a preferred embodiment of the present invention, a security and automation unit operating on a premises. The security and automation unit includes multiple sensors, a presence resolver and an alarm resolver. The sensors are an acoustic sensor to sense sound at least in a space of the premises and has at least one acoustic model of an unusual sound as defined by its duration, amplitude and frequencies, a movement sensor to detect movement in the space and has at least one movement model, an image sensor for imaging at least the space and has at least one image model of a human, a CO2 sensor for indicating CO2 level, and a light sensor for sensing lights and has at least one light model. The presence resolver receives the output of the sensors and the models to determine a presence or absence of a mammal in the space, wherein the presence resolver includes a neural network. The alarm resolver receives the output of the sensors and the models to determine if the space has been invalidly entered and to activate an alarm and/or a piece of equipment when the determination is positive. The alarm resolver includes a neural network. 
     Moreover, in accordance with a preferred embodiment of the present invention, the neural network includes one set of weights for when an alarm system is aimed and a second set of weights for when the alarm system is not armed. 
     Further, in accordance with a preferred embodiment of the present invention, the alarm resolver includes a cognitive unit to learn from at least its sensor data and to modify parameters of operation of the alarm resolver. 
     Still further, in accordance with a preferred embodiment of the present invention, the security and automation unit also includes a voice resolver operative on output of the acoustic sensor to generate a voice instruction. 
     Moreover, the security and automation unit also includes an event resolver to analyze recorded changes in CO2 levels to generate a change in at least one piece of equipment. 
     Further, in accordance with a preferred embodiment of the present invention, the security and automation unit also includes an event resolver to control at least one piece of equipment in response to an output of the presence resolver and/or the alarm resolver. 
     Still further, in accordance with a preferred embodiment of the present invention, the event resolver includes a self-learning model to learn from events produced by the presence resolver and/or the alarm resolver to generate a new or a change of state for the at least one piece of equipment and/or to modify a scenario for the at least one piece of equipment based on event data from the presence resolver, and/or to proactively generate a scenario for the at least one piece of equipment based on the event data. 
     Further, in accordance with a preferred embodiment of the present invention, the premises is a building, a home, or an office. 
     There is also provided, in accordance with a preferred embodiment of the present invention, a premises automation unit for controlling and/or monitoring one or more pieces of equipment in at least one room in a premises. The premises automation unit includes at least one resolver and an event resolver. The at least one resolver includes a neural network to activate the pieces of equipment in response to at least one sensor. The event resolver controls the pieces of equipment at least in response to events. The event resolver includes a data base, a self-learning module, and a cognitive module or a proactive module. The data base stores at least recorded events per controlled equipment with at least its time of occurrence and an indication of whether or not one of the events was a scenario-generated event from a pre-determined scenario defining which piece or pieces of equipment to operate. The self-learning module finds clusters of activation of the equipment at recorded events. The cognitive module analyzes the clusters and modifies an associated scenario for at least one piece of equipment, and the proactive module analyzes the clusters and creates at least one new scenario for at least one piece of equipment. 
     Further, in accordance with a preferred embodiment of the present invention, the premises automation unit also includes a communication unit to communicate with the premises automation unit or other automation unit in the premises for controlling and/or monitoring the at least one piece of equipment. 
     Still further, in accordance with a preferred embodiment of the present invention, the at least one resolver is an alarm resolver, a presence resolver, a climate resolver or a voice resolver. 
     Moreover, in accordance with a preferred embodiment of the present invention, the at least one sensor is one or more of: a movement sensor for detecting movement of a mammal in the at least one room, an acoustic sensor for sensing sound in the at least one room, a thermometer for sensing an ambient temperature in the at least one room, a light sensor for sensing a level of illumination in the at least one room, a humidity sensor for sensing a humidity level in the at least one room, a CO2 sensor for sensing a CO2 level in the at least one room, and an image sensor for imaging the at least one room. 
     Finally, in accordance with a preferred embodiment of the present invention, the premises is a building, a home, or an office. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The subject matter regarded as the invention is particularly pointed out and distinctly claimed in the concluding portion of the specification. The invention, however, both as to organization and method of operation, together with objects, features, and advantages thereof, may best be understood by reference to the following detailed description when read with the accompanying drawings in which: 
         FIG. 1  is a schematic illustration of an automation unit, constructed and operative in accordance with a preferred embodiment of the present invention; 
         FIGS. 2A, 2B, 2C and 2D  are schematic illustrations of resolvers forming part of the automation unit of  FIG. 1 ; 
         FIG. 3  is a schematic illustration of an event resolver forming part of the automation unit of  FIG. 1 ; 
         FIG. 4  is a timing diagram, useful in understanding the operation of the event resolver of  FIG. 3 ; 
         FIGS. 5A, 5B, 5C and 5D  are illustrations of a default screen of the automation unit of  FIG. 1 ; 
         FIG. 6  is a state diagram of a cognitive process implemented by the automation unit of  FIG. 1 ; 
         FIG. 7  is a schematic illustration of a premises with multiple automation units therein; and 
         FIG. 8  is an illustration of a database forming part of the automation unit of  FIG. 1 . 
     
    
    
     It will be appreciated that for simplicity and clarity of illustration, elements shown in the figures have not necessarily been drawn to scale. For example, the dimensions of some of the elements may be exaggerated relative to other elements for clarity. Further, where considered appropriate, reference numerals may be repeated among the figures to indicate corresponding or analogous elements. 
     DETAILED DESCRIPTION OF THE PRESENT INVENTION 
     In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the invention. However, it will be understood by those skilled in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, and components have not been described in detail so as not to obscure the present invention. 
     Applicant has realized that the many building automation systems do not handle the entirety of activities which occur within a room or a given space. Many automation systems handle environmental activities (like climate and lighting) while others handle security, yet none of them handle the entire range of activities that a person may want to do within a room of a house or a building. 
     Moreover, Applicant has realized that, with only a few sensors and a few resolvers, the entire range of activities of a room may be handled, where the activities may include changes to the climate and/or lighting of the room, and/or activation of entertainment systems (stereo, TV, computer, games, etc.) and/or other appliances (coffee machine, refrigerator, etc.), and/or detecting of an intrusion. 
     Applicant has further realized that the quality of detection for many of the activities of a room may be improved if at least one of the sensors is an acoustic sensor or an image sensor. For example, both types of sensors may provide differentiation between types of mammals in a room (humans vs. pets) and may improve intrusion detection. 
     Still further, Applicant has realized that home automation systems may carry out relatively complex home activities if, instead of a controller directly associating a sensor with one or more particular actuators, the controller processes the data received from a plurality of different sensors and responsively operates one or more actuators which may or may not be directly associated with the sensors. 
     Reference is now made to  FIG. 1 , which illustrates a room automation unit  10  which may handle the range of activities of the room. Unit  10  may comprise a plurality of sensors  20 - 32 , a smart home or premises controller  36  and may operate equipment  50 - 56 . Smart home controller  36  may comprise a multiplicity of resolvers  40 - 48 , each of which may resolve input from a subset of said plurality of sensors  20 - 32  and, as a result of the processing, may provide instructions to equipment  50 - 56 , via a wired or wireless connection. In addition, smart home controller  36  may comprise a user input module  49  and a clock module  75 , such as a time of day clock or an astronomic clock. 
     In accordance with a first preferred embodiment of the present invention, the elements of unit  10  may be housed together in a single unit, with sensors  20 - 32  arranged on the outer surface of the unit or inside of it, thereby to sense the room. In an alternative embodiment, some or all of sensors  20 - 32  may be external sensors, communicating via a wired or wireless connection. 
     Sensors  20 - 32  may comprise a movement detector  20 , an acoustic sensor  22 , a thermometer  24 , a light sensor  26 , a humidity sensor  28 , a CO 2  sensor  30  and an image sensor  32 . While it is believed that this is a sufficient list of sensors, it is possible that the present invention may be implemented with fewer or more sensors. 
     Equipment  50 - 56  may comprise an alarm system  50 , appliances and electrical devices  52 , entertainment equipment  54  and HVAC elements  56 . Alarm system  50  may be any suitable alarm system, such as an alarm device that gives an audible, visual or other form of alarm signal about a problem or condition and which is equipped with a communication module. Appliances and electrical devices  52  may be any suitable devices which may or may not be in the room and/or may affect the room, such as window blinds, curtains, lights, coffee machines, refrigerators, etc. Entertainment system  54  may be any entertainment device, such as a radio, a computing device, a home entertainment system, a projector, a mobile device, an electronic game device, etc. HVAC elements  56  may be any climate control device, such as an air conditioner, heater, humidifier, cooler, etc. 
     Smart home controller  36  may comprise an alarm resolver  40 , a presence resolver  42 , a climate resolver  44 , a voice resolver  46  and an event resolver  48 . 
     Alarm resolver  40  may receive input indicating a break-in and/or the presence of a person in the room, which person is either a stranger or is in the room at an abnormal time. For this purpose, alarm resolver  40  may receive input from movement detector  20 , from acoustic sensor  22  (such as for detection of a loud noise caused by the intrusion and for the sounds of a stranger in the room), from light sensor  26 , from CO 2  sensor  30  and from image sensor  32 . Each of these sensors may be utilized to provide a different aspect of the intrusion or intruder to alarm resolver  40 . When an intrusion is determined, alarm resolver  40  may indicate to alarm system  50  to activate an alarm, and may also indicate to event resolver  48  to actuate other equipment in the building. 
     Presence resolver  42  may determine the presence of a human and/or a pet in the room and, in accordance with a preferred embodiment of the present invention, may receive input from movement detector  20 , acoustic sensor  22 , light sensor  26 , CO 2  sensor  30  and image sensor  32 . While any of these sensors may be utilized by itself to indicate the presence of a body in the room, their combination, wholly or in part, may raise the possibility that the indication will be accurate, since each sensor, on its own, has its own sources of error. A movement detector may detect all movement, including that of a small mammal running across the floor. A CO 2  sensor may similarly provide inaccurate information. Yet their combination, together with acoustic sensor  22  (which may be processed for human sounds) and/or image sensor  32  (whose output may be processed to find a human shape) may greatly increase the accuracy of the presence detection. 
     Presence resolver  42  may store therein instructions of which appliances and electrical devices  52  to activate or to change their state upon detecting the presence of a human in the room. Presence resolver  42  may also provide its instructions and events, or lack thereof, to event resolver  48  and to climate resolver  44  so that they may incorporate presence information into their decision processes. 
     Climate resolver  44  may determine the current climate of the room and may provide instructions to appliances and electrical devices  52  and/or to HVAC  56  to change the climate to that requested by the user. To this end, climate resolver  44  may receive sensed input from thermometer  24 , humidity sensor  28  and CO 2  sensor  30  and presence information from the presence resolver  42 . Once again, the input from multiple types of sensors may provide a more accurate picture of the climate allowing finer control of the climate of the room, either by actuating the HVAC  56  elements and/or by instructing other appliances and electrical devices  52 , such as window blinds or other climate affecting actuators. 
     Climate resolver  44  may also include the presence information from presence resolver  42  to determine the climate to be achieved. For example, climate resolver  44  may attempt to achieve a more desired climate only when presence resolver  42  may indicate the presence of a human in the room. Climate resolver  44  may also provide its instructions and events to event resolver  48 . 
     Voice resolver  46  may include a voice recognition engine and may receive input from acoustic sensor  22 . Voice resolver  46  may, after recognizing the spoken words, provide instructions to any of appliances and electrical devices  52 , entertainment devices  54 , alarm system  50 , HVAC elements  56  and/or others. Voice resolver  46  may also provide its instructions and events to event resolver  48 . 
     Event resolver  48  may receive instructions from the user via user input module  49 , which may operate with any type of an input element or input interface, such as a touch screen display, a keyboard, a remote controller, a mobile device or other, which may define when and/or under what conditions the various equipment  50 - 56  are to be operated. Event resolver  48  may receive instructions through user input module  49  or may receive instructions from resolvers  40 - 46 . Event resolver  48  may then operate the appropriate equipment, with or without a schedule. One such activation may be to arm alarm resolver  40  to look for intrusions. 
     As can be seen, each sensor may provide input to more than one resolver and each resolver may receive input from more than one sensor. Thus, with a relatively small set of sensors, the present invention may be able to carry out relatively complex home activities. 
     In accordance with a preferred embodiment of the present invention and as shown in  FIGS. 2A, 2B and 2C , to which reference is now made, presence resolver  42 , alarm resolver  40  and climate resolver  44  may comprise a sensor processor and scorer  60 , a models module  62 , a multifunctional processor  70 , a resolver analyzer  68 , a database  69  and an event definer  72 . As shown in  FIG. 2D , to which reference is also made, voice resolver  46  may comprise a voice sensor processor and scorer  60 D, a recognition analyzer  71 , acoustics models module  62 D, a voice recognition engine  64  and a voice event definer  72 D. 
     Each sensor processor and scorer  60  may be implemented using decision methods, such as fuzzy logic, fuzzy sets and neural network methods. For example, fuzzy logic and fuzzy sets deal with reasoning that is approximate rather than exact. Fuzzy logic and fuzzy sets use the concept of partial truth, in which an object or a variable is not necessarily either true or false (i.e. an object or variable may be true, but only to some degree). The implementation may be viewed as combining a number of inputs in order to make a decision, by utilizing possibility or probability scores rather than hard thresholds to determine if a particular state (such as the presence of an intruder) has occurred. 
     Fuzzy logic, fuzzy sets and their techniques are described in FUZZY SETS AND FUZZY LOGIC Theory and Applications by George J. Klir and Bo Yuan, Prentice Hall P T R (1995). 
     Each sensor processor and scorer  60  may sample its sensors, process its inputs, compare the processed inputs to the relevant models of its models module  62  and provide a set of scores, one or more per model. Thus, presence resolver  42  may comprise a presence sensor processor and scorer  60 A, alarm resolver  40  may comprise an alarm sensor processor and scorer  60 B, climate resolver  44  may comprise a climate sensor processor and scorer  60 C and voice resolver  46  may comprise voice sensor processor and scorer  60 D. 
     For example, presence resolver  42  ( FIG. 2A ) may divide the field of view of the movement detector  20  into three sections, corresponding to three levels of heights, and the data from movement detector  20  may be the signal intensity in each of the upper, middle, and lower sections. The model for the presence of a human may be that the intensity in all three sections be “high”. A model for pet movement may be that there be a medium level of signal intensity only in the lower section. 
     It will be appreciated that there may be a variety of detection intensity and scores. Presence sensor processor and scorer  60 A may score the output of movement detector  20  against each model. 
     Similarly, presence resolver  42  may have models for human sounds and pet sounds for the output of acoustic sensor  22 . An exemplary model for human sound may utilize the voice activity detection of a voice recognition engine, known in the art. The voice activity detector may produce one type of signal when a human voice is detected and other types of signals when other types of sounds are detected, such as a pet sound or continuous noise such as a HVAC fan. 
     Presence resolver  42  may comprise an environmental noise detection and cancellation module  65 A, such as those known in the art. Module  65 A may operate on the output of acoustic sensor  22 , to improve the quality and definition of the sounds that may be received. Module  65 A may determine and cancel continuous noises from the output of acoustic sensor  22 . Such continuous noises may be characterized with constant amplitudes and frequencies (such as a computer fan, etc.). 
     Presence resolver  42  may include an acoustic and audio analyzer  63 A to generate an analysis of the spectrum, pitch and tempo in the acoustic signal. Presence resolver  42  may have a model for music detection which may define a spectral range, and a range of pitches and tempos. Moreover, the model may include a time element, such that the score may degrade after a predefined length of time. 
     Presence resolver  42  may have models for types of lighting for light sensor  26  (generally whether or not artificial light is on or off), and models for the ranges of CO 2  levels (e.g. above 600 ppm), for CO 2  sensor  30 . Finally, presence resolver  42  may have models of human and pet shapes for image sensor  32 . 
     For image sensor  32 , presence sensor processor and scorer  60 A may utilize various image processing methods, known in the art, to understand each received image frame. As is known in image compression, elements of the images which don&#39;t change (i.e. the fixed items in the room) can easily be determined. Image processing can include the determination of body parts, and of faces. Image processing can additionally include dividing the field of view into sections, such as upper, middle and lower, where movement detection in all sections may indicate human movement, while detection of movement in the lower section may indicate pet movement. 
     The output of each section may be provided to a different model in presence sensor processor and scorer  60 A whose score may indicate the presence or absence of a mammal. It will be appreciated that movement detection based on image sensor  32  may be more accurate in the presence of light than movement detection based on movement sensor  20 . However, movement detection based on movement sensor  20 , which utilizes IR (heat), has advantages when the room is dark. 
     The set of parameters may then be provided to be compared to each of the models that presence sensor processor and scorer  60 A may have which indicate the presence of a mammal in the room. 
     Presence resolver  42  may score the output of each of its models and may provide them to its multifunctional processor  70 A, described in more detail herein below. 
     Alarm resolver  40  ( FIG. 2B ) may have a different set of models for the output of each of movement detector  20 , acoustic sensor  22 , light sensor  26 , CO 2  sensor  30  and image sensor  32 . Since alarm resolver  40  may look for indications of intrusion, its models module  62 B may comprise a model of unusual noise for the output of acoustic sensor  22 . The model may define an unusual noise as a signal of a very short time duration with a high amplitude for certain frequencies. The model may define a glass breaking sound as a signal having a very short time duration (about one second) with an amplitude more than 20 dB above environment noise and having a combination of several high frequencies (e.g. frequencies over 1 KHz). If desired, the output of acoustic sensor  22  may be processed by environmental noise detection and cancellation module  65 B when being processed by sensor processor and scorer  60 B to find the unusual noise. Alarm resolver  40  may additionally have a model of the turning on of light sensor  26  which may indicate the movement of an intruder into the room. 
     Climate resolver  44  ( FIG. 2C ) may have a models module  62 C which may comprise a model for the output of thermometer  24  as a range of temperatures that a person may find comfortable or a range of temperatures around a desired temperature that the user of the room may have set. Climate sensor models module  62 C may have a model for humidity sensor  28  as a desired range of humidity, and a model for CO 2  sensor  30  as a desired range of CO 2 , for example less than 700-800 ppm, which may make a room comfortable to a human. The CO 2  model for climate will typically be different than the CO 2  model for indicating the presence of a human. 
     Voice resolver  46  ( FIG. 2D ) may have a voice sensor processor and scorer  60 D which may have a model for human voice, similar to that of presence resolver  42 . Voice resolver  46  may also have models for different types of background ‘noise’, such as radio, music, noise from electrical equipment, etc. Similar to the other sound processors, voice sensor processor and scorer  60 D may include an environmental noise detection and cancellation module  65 D to improve the quality and definition of the sounds prior to their scoring, such as by removing a detected noise signal. 
     When scorer  60 D generates a score which indicates voice, scorer  60 D may provide the improved acoustic signal to a voice recognition engine  64  which may recognize voice commands to change the state of the relevant appliances and electrical devices  52 , alarm system  50 , entertainment systems  54 , HVAC elements  56  etc. 
     It will be appreciated that, while the various resolvers  40 - 46  may receive input from the same sensors, they each compare the data to different models, based on the type of information they need in order to determine if their type of event has happened and, of course, to respond accordingly. For example, the acoustic model for alarm resolver  40  is significantly different than the acoustic model for presence resolver  42  and the CO 2  model for presence resolver  42  may be significantly different than the CO 2  model for climate resolver  44 . This enables the present invention to utilize the same sensors for multiple purposes. 
     The processor and scorers  60  may operate to define each sensor output as a vector. Some sensor outputs may be one-dimensional, such as the output of light sensor  26  or thermometer  24 , while others may be N-dimensional, such as the output of acoustic sensor  22 , movement sensor  20  or image sensor  32 . 
     Similarly, each model may be defined as an N-dimensional vector, and processor and scorers  60  may determine the distance between the sensor output vector and the model vector. The distance may be utilized as the score for that model, where a close distance may provide a high score while a far distance may provide a low score. One such distance calculation may be: 
         D=Σ   i=1   N   |Mi−Si|   Equation 1
 
     Where D is the overall calculated distance and |Mi−Si| is the distance for the ith vector element. 
     Multifunctional processors  70 A,  70 B and  70 C respectively, may combine information (as scores) from different disciplines into a decision process, producing an overall score. Since the information comes from different disciplines, the scores are normalized to enable the combination. 
     Each processor  70  may combine multiple scores and statuses, weighted either by default weights or learned weights, generally according to their importance to the operation of the resolver, to generate an overall score P(P), which may be a weighted sum of the multiple scores. 
     The weights define how the various types of models combine together to indicate the goal of each resolver. For example, for presence resolver  42 , there may be more weight given to the image score (as a function of the current light conditions) than to any of the other scores or all scores may be weighted evenly. Alarm resolver  40  may have different weights for the scores of acoustic sensor  22  and light sensor  26  than presence resolver  42 . Moreover, alarm resolver  40  may also include a status indicating that alarm system  50  is armed. This status may be used with a corresponding weight or may operate a different set of weights if the alarm was armed or not. Similarly, climate resolver  44  may receive a status indicating that HVAC element  56  has been activated and may include an additional status for the output of presence resolver  42 , so as to include in its calculations the fact that there is or isn&#39;t a person in the room. 
     Multifunctional processors  70  may determine the overall score, such as in the following equation: 
         P ( P )=Σ i=1   N   W   Pi   *P ( pi )  Equation 2
 
     Where P(pi) is the ith score or status from another resolver or a piece of equipment and Wpi is the weight for the ith score or status. 
     Each event definer  72  may have one or more instructions for each value of its P(P). For example, presence event definer  72 A may instruct an automatic light to turn on if its value of P(P) is above a certain threshold, indicating the presence of a human in the room and that there isn&#39;t enough light in the room. Alarm event definer  72 B may determine that an alarm situation has been detected for a given value of overall score P(P) and may activate alarm system  50  at that point. 
     Climate event definer  72 C may turn on an air conditioning appliance if its overall score is above a certain value of P(P) and may instruct the relevant HVAC element  56  to work at a lower temperature if there is high humidity in the room. Furthermore, certain values of P(P) may be associated with applying ventilation due to a high level of CO 2 . Other values of P(P) may turn on a condensing appliance, add ventilation if humidity increases, etc. Furthermore, certain values of P(P) may indicate no presence in the room. When these are received, event definer  72 C may indicate to HVAC elements  56  to change to “economic operation” or to shut down. By this operation, unit  10  may reduce energy consumption of HVAC elements  56  while maintaining the comfort of the user. 
     Thus, each resolver may have different instructions based on a range of values of its overall score P(P). 
     It will be appreciated that the weights Wp i  may be initialized with default values and may be adaptive as the unit is utilized. Default values may be fixed or may vary according to specific hardware configurations. For example, there may be multiple types of movement detector  20 , each with a different size lens. In this example, the initial weighting may be different depending on the structure and size of the lens. 
     Resolver analyzers  68  may adapt the weights for their respective resolver. To do so, each sensor processor and scorer  60  may store the sensor data, model parameters and score results in their associated database  69 . If desired, each sensor processor and scorer  60  may review the data and store it when there is a predefined change in the sensor data (i.e. the immediate change is large enough or there is a significant change over a predetermined period of time). In addition, resolver analyzers  68  may store the weights Wpi and the overall scores P(P) from the multifunctional processors  70 . All parameters and recorded data may have an associated time stamp. The resolver may also save all data and parameters periodically. 
     Resolver analyzers  68  may perform various statistical analyses on the data in databases  69  and may search for changes in the sensor outputs and in the scores, for example to determine its relevancy and effectiveness. For example, resolver analyzers  68  may determine a variance value Vpi for each type of data and may update the weight associated with the data by the variance. Specifically, all Wpi may be updated by: 
         Wpi=Wpi   0   *Vpi   Equation 3
 
     Where Wpi is the updated weight, Wpi 0  is the previous value of the weight and Vpi is the variance normalized to the range 0 to 1, where 0 indicates no change and 1 indicates the maximal possible change in the associated signal. 
     Resolver analyzers  68  may then normalize their set of weights, for example, by requiring that the sum of the weights be 1: 
       Σ i=1   N   Wpi= 1  Equation 4
 
     For example, as described hereinabove, the field of view of image and movement sensors  32  and  20 , respectively, was divided into 3 sections. In one room, for example, the lower section may be blocked by permanent furniture, so its output will be constant for a period of time. 
     For this embodiment, the output of each section may be stored in the database  69  and each section may have its own weight in the overall score for the resolver. 
     In this example, the data over a period of time, for example several days, may show that lower section value may be constant while other sections may have changes in their values. When resolver analyzer  68  may identify this situation (for example, by noticing that there was no change recorded for the lower sensor section), analyzer  68  may reduce or eliminate the influence of the lower sensor section by reducing the weight Wpi associated with the relevant section. At the same time, analyzer  68  may increase the weights associated with the other two sections (i.e. the middle and high field of view sections of the sensor) or may change all of the weights Wpi that appears at the related equation. 
     For other types of data, other types of changes may be important. For example, for CO 2 , a continuous change of 5 ppm per hour that may happen over several hours will be considered and recorded as an important change. 
     Recognition analyzer  71  may store the parameters of the voice acoustic model and the noise acoustic models  62 D and any parameters utilized by voice recognition engine  64  in database  69 D. It may also save the resultant instructions. For example, recognition analyzer  71  may store the instructions produced by voice recognition engine  64  when the user may provide a correction to the instructions, such as when recognition engine  64  misunderstood the user&#39;s speech. When this happens, recognition analyzer  71  may request that the user retrain engine  64  and recognition analyzer  71  may store the retrained signal in database  69 . 
     Recognition analyzer  71  may also analyze the quality of the recognition, as a function of the scores of the various background ‘noises’. The scores determine what type of background noises there may currently be in the room. With this information, recognition analyzer  71  may determine for which type of noise(s), noise detection and cancellation module  65 D should be activated or deactivated. The process may require a few iterations where in each iteration, recognition analyzer  71  may activate the cancellation of one or more noise type(s) and may determine its effect on the quality of the recognition of voice recognition engine  64 . 
     As mentioned hereinabove, each event definer  72  may provide its event information, defined by type and time of occurrence as well as other parameters, to event resolver  48 . In turn, event resolver  48  may analyze the events and may update the activations and/or the schedules of activation. Exemplary events may be a change in the temperature setting of an air conditioner, a change in state of a piece of equipment, an alarm event or an activation of the alarm, a change in the level of CO 2 , etc. 
     There may be multiple types of events. For example, there may be a user created event which may happen when the user changes the state of equipment  50 - 56  through user input module  49 . This is an event which may be provided directly to event resolver  48 . 
     A second type of event may be a resolver instruction defined by when one of resolvers  40 - 46  may provide instructions to change the state of its associated device(s). 
     A third type of event may be a resolver event defined by when the output of one of scorers  60  may be above a predefined level for one of its associated sensors, even if this doesn&#39;t cause the event definer  72  and the corresponding resolver to change the state of its associated equipment. 
     It will be appreciated that the resolver events may be particularly reliable since resolver events only occur if the preponderance of measurements measured by a resolver indicates that an event has occurred. Recall that most of the resolvers have more than one sensor and that the models of the sensor data for each resolver are defined to match the purpose of each resolver. Thus, a resolver event on the one hand is unlikely to provide a false activation and on the other hand will have a very high level of detection. 
     Each event definer  72  may generate instructions to equipment  50 - 56  and events, both of which are provided to event resolver  48 . 
     As shown in  FIG. 3 , to which reference is now made, event resolver  48  may comprise an event receiver  74 , a database  76 , an event activator  78  and a self-learning module  80 . 
     Event receiver  74  may receive input from the user, either to change the current state of a piece of equipment, or to provide a schedule of operations for the equipment in the room. In addition, event receiver  74  may receive events from resolvers  40 - 46 , as they operate and generate events. Event receiver  74  may store all of the events in database  76 , and may list, as described hereinbelow, the type of event, the time of the event and any relevant parameters of the event. Event database  76  may also store data that relates to events, instructions and scenarios, as described hereinbelow. A scenario may be a change of state (such as turning it on or off, raising or lowering it, changing its set point, etc.) of a piece of equipment with a specific schedule or changing the states of multiple pieces of equipment (with or without schedule). 
     Event receiver  74  may provide all immediate events and/or scenarios to activator  78  to change the state of one or more pieces of equipment. Event activator  78  may comprise a scheduler  79  which may utilize clock module  75 . Scheduler  79  may receive a schedule of events and may instruct activator  78  to activate the relevant equipment according to the schedule and the time of day produced by clock module  75 . 
     Some of the functionality within event receiver  74  and event activator  78  may be included in each resolver, operating resolver corresponding data and record it in the database. 
     Self-learning module  80  may comprise an event statistical analyzer  82 , an event parameter updater  84  and a pro-active event synthesizer  86  and may adapt the operation of room automation unit  10  as the user uses the room. Using the data of database  76 , analyzer  82  may analyze the statistics of the different types of events, using standard statistical tools. For example, analyzer  82  may cluster events, may use a sliding window technique, may determine any frequencies of occurrence, may generate histograms of the events to discover patterns, and may determine a mean and standard deviation for the occurrence of the event, typically on the timing of the event. Clustering may provide a range of times that events happened while tools as the mean and standard deviation may provide an event parameter update suggestion, based on the statistics, of a change to the timing of an event as part of the cognitive cycle. 
     Event parameter updater  84  and pro-active event synthesizer  86  may update database  76  with updated or new activations/changes of state and scenarios for activated equipment and if required, associated schedules. Event parameter updater  84  may suggest parameters updates such as schedule updates. Pro-active event synthesizer  86  may provide suggestions to activate equipment. These suggestions may operate with or without approval by the user. Where new equipment activations and/or changes in schedule are determined, pro-active event synthesizer  86  or event parameter updater  84  may update database  76  with the new schedules or the new changes of state and may update the event activator  78  and/or update scheduler  79  accordingly. 
     In addition, event parameter updater  84  may schedule multiple pieces of equipment within a scenario. For example, the following scenario may happen: light A off, light B off, and close blind A. Alternatively, a scenario may happen over a period of time, such as open light A and blind A by 8:00 followed by activate the HVAC by 8:18. Other scenarios may occur over a longer period of time, such as a 24 hour cycle or more. 
     Since resolver events may be very reliable due to the multiple sensor inputs and the operations of the resolvers  40 - 46 , event statistical analyzer  82  may weight resolver events more highly than sensor events and may weight user events higher than resolver events. Given the general reliability of the events, the suggestions generated by updater  84  may be well matched to the operation of the room. 
     Reference is now made to  FIG. 4 , which may show exemplary data for a light A being turned on and off over a week. As can be seen, during several days/weeks, analyzing the specific intervals in the same timeframe for several days, light A was turned on at 6:45, 6:48, 6:51, 6:55 and 7:15, some of them multiple times. 
       FIG. 4  shows a sliding window for specific time intervals, such as 20 minute periods  90 . The 20 minute period labeled  90 A, from 6:45 to 7:05, has 4 events, some of which may have occurred multiple times, while the 20 minute period labeled  90 B has only 1 event. Event statistical analyzer  82  may analyze the event data and may produce, for example, a mean and standard deviation of the activation time for all 20 minute periods with X or more events, where X may be 4. 
     Given the data from event statistical analyzer  82 , pro-active event synthesizer  86  may suggest a new activation of light A. In such a suggestion, the mean value of the activation time for the 20 minute period may be the suggested time to automatically turn on light A. This suggestion may be for specific day(s) or other periods. Optionally, by user approval, statistical analyzer  82  may add the event of turning on light A on specific time and days to the data base  76  as a new event. Analyzer  82  may also add the equipment operation and time to the event activator  78  and scheduler  79 . 
     Analyzer  82  may analyze each piece of equipment separately and may analyze their data over periods of any appropriate length, which may be preset as desired. Moreover, database  76  may not be infinite. Therefore, data on daily events may be stored in the data base for a given period of time, such as three months, and data on weekly events may be stored for different period of time, such as one year period. 
     It will be appreciated that event statistical analyzer  82  may analyze the recorded data in order to find patterns of activities that may be the basis to form a new scenario, which may involve one or more different pieces of equipment. 
     Once a new event or a new scenario is established, event statistical analyzer  82  may analyze further user activations regarding the event or the scenario and may update the operation accordingly. 
     Reference is now made to  FIGS. 5A, 5B, 5C and 5D , which illustrate multiple versions of screen of touch screen display unit  10 .  FIG. 5A  illustrates a default screen which may initially provide “buttons” for all the different types of pieces of equipment that are operated by the unit. The example in  FIG. 5A  is of a unit that controls 4 types of equipment: lights, blinds, appliances and HVAC. If the user would like to turn on a specific light, s/he needs to push/slide the “Lights button” that will direct him/her to the Light screen of  FIG. 5B , where the required lamp/light will be activated. Over the time, event database  76  will record all changes of state of the different pieces of equipment. Event analyzer  82  may review the data and pro-active event synthesizer  86  may take a pro-active step and suggest a new default screen, such as the display of  FIG. 5C  that has a user&#39;s most frequently used equipment, such as a combination of specific lights and specific blinds. It will be appreciated that this may reduce the number of button pushes/slides the user may have to do which may increase the convenience of unit  10 . The analysis will be based on similar statistical methods as described hereinabove, to compare the largest number of changes of state of each piece of equipment within a pre-defined time frame, such as within a week. 
     In an alternative embodiment, event analyzer  82  may further adapt the display for short-sighted people or for older people where it may provide only 4 devices but using larger icons, as shown in the display of  FIG. 5D . As the database is updated, the suggested devices may change over time. 
     It will be appreciated that the present invention may be a cognitive automation unit and may follow a cognitive cycle, as shown in  FIG. 6  to which reference is now briefly made. Unit  10  may include elements which observe (sensors  20 - 32 ) both in the room and externally, elements which provide input from the user (from user input module  49 , from the main display and other user input devices), elements which learn, plan and decide (self-learning module  80  and database  76  in event resolver  48 ) and elements which act (event activator  78  and scheduler  79 ). Moreover, event resolver  48  may be an orienting element which may determine the priority of the response, among normal, immediate and urgent responses. Event resolver  48  may also allocate resources among the equipment  50 - 56  which may be connected to it and may initiate multiple equipment changes of state and schedules which may affect the room and its functioning. Moreover, the cognitive cycle may also be implemented in resolvers  40 - 46 , which may include elements which observe (sensors  20 - 32 ) both in the room and externally, elements which learn, plan and decide on the changes (resolver analyzer  68  and/or recognition analyzer  71 ), elements which are updated (at least the processor and scorers  60  and multifunctional processor  70 ), and elements that act (event definers  72 ). 
     It will be appreciated that the present invention is a proactive automation unit capable of suggesting new changes of state of pieces of equipment or new scenarios, all with or without schedules. 
     It will be appreciated that unit  10  may be an energy controller, able to reduce energy consumption, particularly via climate resolver  44 . Climate resolver  44  may receive climate information (for example, via thermometer  24 , humidity sensor  28  and CO 2  sensor  30  and external sensors) and may compare the received information from the desired climate provided by the user. Climate resolver  44  may determine changes in the climate, such as may occur when a window or blind is opened, and may generate instructions accordingly, such as to suggest that the window or blind be closed, or that the HVAC system stop operating, in order to achieve the desired climate and save energy. In this way, unit  10  may be able to achieve a desired climate with a minimum of energy expended. Furthermore, the indications from presence resolver  42  with respect to the lack of a human in the room may be generally reliable and thus, when climate resolver  44  may instruct the HVAC system to operate in economy mode or to shut it down, these instructions are unlikely to be countered by a human in the room. This holds true for other instructions as well event resolver  48  may shut down lights or other unnecessary equipment when no presence is indicated, thereby further reducing energy consumption. 
     Reference is now made to  FIG. 7 , which illustrates a building, such as a home or an office, having multiple automation units  11 , where automation units  11  may be similar to automation units  10 . For example, there may be one automation unit  11  per room, where a room may be any room in a building, such as a bedroom, kitchen, living room, dining room, public area, conference room, etc. In addition, there may be a remote or mobile unit  11 R. Each automation unit  11  may have a controller, such as smart premises controller  36  or any other appropriate controller to control pieces of equipment, a communication module  100  which may operate with a wired and/or wireless communication network, such as X-10, Wi-Fi, ZigBee, Z-Wave, proprietary protocol etc., with which it may communicate with the other automation units  11  in the building, with pieces of equipment, and/or with any external sensors. As shown in  FIG. 7 , each automation unit  11  may have a clock module  75 , a recovery module  102  and a global database  105 , storing at least a local database  104  for its unit  11 . The local database  104  may store all databases  69  and  76 . 
     In accordance with a preferred embodiment of the present invention and as shown in  FIG. 8  to which reference is now briefly made, automation units  11  may share their databases  104  with each other, such that each automation unit  11  may have a copy of the databases  104  of all the other units in the building sharing the network. This redundancy may enable any automation unit  11  to take over when another unit  11  fails to operate for some reason. 
     Recovery modules  102  may use different methods to implement this redundancy. For example, they may have a lookup table indicating which unit  11  is to take over for which non-functional unit. 
     Each automation unit  11  may periodically provide a ‘Keep alive and Status’ signal to the recovery modules of the other units  11 , which may provide an indication that it is alive and may provide a functionality status for one or more of its modules. For example, one status may be the status of the touch screen. If it ceases to function, the recovery module  102  of the assigned unit may “activate” its copy of the database  104  of the non-functional unit, such that the user may use the touch screen of the assigned unit. If only the touch screen isn&#39;t functional, then the assigned unit may receive sensor data from the poorly functioning unit and may determine the events in the room. 
     If, on the other hand, a unit does not generate its ‘Keep alive and status’ signal at all, then the assigned unit may take control over the actuation of equipment and scenarios but without any sensor data from the non-functional unit to resolve. 
     It will be appreciated that each unit  11  may control its own room and any equipment in the building. Together, the set of automation units  11  throughout the building form a distributed control system, each controller is capable of operating by itself and there is no requirement for a central controller that will control or/and coordinate all units and activities. It will be appreciated that each unit  11  may manage and/or determine schedules of changes of state with the support of its own clock module  75 . With communication modules  100 , shared databases  104  and recovery modules  102 , the set of automation units  11  throughout the building also have redundancy and thus can recover from failures of any unit  11 . 
     In a further embodiment of the present invention, units  10  or  11  may utilize external sensors, such as a thermometer in a corridor between rooms and/or a rain detector outside of the house. The external sensors may comprise communication modules to transmit their sensor data and each resolver in each room unit  10  or  11  may have the appropriate sensor models for this data. 
     Similarly, units  10  or  11  may also control external appliances, where appropriate, even when there is no failure of a unit. For example, a user may instruct its unit  10  or  11  to turn on a coffee machine in the kitchen when the user begins to move around in his bedroom in the morning. 
     It will be appreciated that the present invention may provide an automation system for a premises which may be robust yet simple to use. The system may be a distributed automation system for a premises with cognitive abilities as well as pro-active abilities. Thus, the unit may learn from its operation and its environment and may generate or provide suggestions for improvements or for new changes of state or scenarios. 
     Unless specifically stated otherwise, as apparent from the preceding discussions, it is appreciated that, throughout the specification, discussions utilizing terms such as “processing”, “computing”, “calculating”, “determining”, “resolving” or the like, refer to the action and/or processes of a computer, computing system, micro-controller, processor, digital signal processor, FPGA or similar electronic computing device that manipulates and/or transforms data represented as physical, such as electronic, quantities within the computing system&#39;s registers and/or memories into other data similarly represented as physical quantities within the computing system&#39;s memories, registers or other such information storage, transmission or display devices. 
     Embodiments of the present invention may include apparatus for performing the operations herein. This apparatus may be specially constructed for the desired purposes, or it may comprise a general-purpose computer, processor, micro-controller selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but not limited to, any type of storage device, including floppy disks, optical disks, magnetic-optical disks, read-only memories (ROMs), compact disc read-only memories (CD-ROMs), random access memories (RAMs), electrically programmable read-only memories (EPROMs), electrically erasable and programmable read only memories (EEPROMs), magnetic or optical cards, Flash memory, disk on key, or any other type of media suitable for storing electronic instructions and capable of being coupled to a computer system bus. 
     The processes and displays presented herein are not inherently related to any particular computer or other apparatus. Various general-purpose systems may be used with programs in accordance with the teachings herein, or it may prove convenient to construct a more specialized apparatus to perform the desired method. The desired structure for a variety of these systems will appear from the description above. In addition, embodiments of the present invention are not described with reference to any particular programming language. It will be appreciated that a variety of programming languages and operating systems may be used to implement the teachings of the invention as described herein. 
     While certain features of the invention have been illustrated and described herein, many modifications, substitutions, changes, and equivalents will now occur to those of ordinary skill in the art. It is, therefore, to be understood that the appended claims are intended to cover all such modifications and changes as fall within the true spirit of the invention.