Behavior-based automated control systems and methods for electronic devices

By automatically comparing sensor data arrays with reference data arrays and compressing the data arrays, the problems of manual control and privacy violations in home automation systems are solved, achieving flexibility and efficiency in the control of automated equipment.

CN114450689BActive Publication Date: 2026-03-06NANOGRID LTD (HK)
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202080054150.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2019-07-31
Filing Date
2020-07-31
Publication Date
2026-03-06
Estimated Expiration
2040-07-31

AI Technical Summary

Technical Problem

In existing home automation systems, the control of electronic devices mainly relies on manual operation. Automated control is not convenient enough and may infringe on privacy. Furthermore, existing systems are difficult to adapt to minor deviations and changes in individual behavior.

Method used

By automatically comparing sensor data arrays with reference data arrays, individual behavior patterns are learned. Controller hubs coordinate multiple sensors and electronic devices to achieve automated control. Computational resources are optimized by compressing data arrays to adapt to the flexibility and accuracy of individual behaviors.

Benefits of technology

It enables automatic adjustment of device operation without manual input, adapts to minor changes in individual behavior, protects privacy, improves system flexibility and efficiency, and reduces computing resource requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114450689B_ABST
    Figure CN114450689B_ABST
Patent Text Reader

Abstract

The improved system is designed for electronic devices that work in conjunction with control mechanisms and various sensors. A learning protocol is established to provide a technical solution that utilizes sensor signals from various sensors to implement an incremental approach using sensed information. The electronic device can be a lamp, and the control mechanism can be a lighting control mechanism. For example, sensing can include sensed information from at least one remote sensing device and at least one local sensing device to control operational changes of one or more connected electronic devices.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross-reference to related applications

[0002] This application is a non-provisional application and claims all benefits including priority to U.S. Application No. 62 / 881084, filed July 31, 2019, entitled "System and Method for Automated Lighting Control," the entirety of which is incorporated herein by reference. Technical Field

[0003] The embodiments described herein relate to the field of home or other facility automation, and in particular to methods for automating lighting or other smart devices based on detected stimuli and behaviors. Background Technology

[0004] In many cases, automated lighting and other devices are desirable for home use.

[0005] One challenge with existing systems operating devices such as lighting, electric home appliances, and indoor climate control is that control is primarily manual, requiring users to manually switch switches or dials. Even for systems with automation, the automation is often inconvenient, the automated controls are often simplistic, and some systems rely on data input that compromises human privacy. Without automation, manually activating electronic devices can be cumbersome. Summary of the Invention

[0006] A technical method is described in various embodiments suitable for providing automated control operation of one or more electronic devices. In some embodiments, the one or more electronic devices may be lighting devices, but are not necessarily limited thereto. For example, the one or more electronic devices may include a smart thermostat, a door lock, automatic curtains, a coffee machine, etc. Automated operation is performed in conjunction with one or more complementary sensors, the sensor signals of which are represented in the form of a sensor data array that can be updated periodically or continuously upon receiving new sensing information. Specific methods for controlling automated operation are described in the various embodiments herein, and various examples are described to illustrate possible potential implementation variations.

[0007] The sensor data array is used to automatically compare (e.g., evaluate) with a reference data array to determine whether one or more conditions have been triggered. If one or more conditions have been triggered, the operation of the electronic device is modified.

[0008] In a non-limiting example, the sensor may include a motion sensor, and the electronics are controllable lighting. The sensors and electronics operate in locations such as offices, rooms in a house, etc. As described herein, a person's movement is tracked by various sensors as they move from one room to another or to different locations within a room. Regarding the sensors, there may be different degrees of actuation; for example, a sensor may be configured to track "strong" actuation, where the sensor significantly tracks the person (e.g., above a certain threshold or within a certain distance), or "weak" actuation, where the sensor only tracks the person in a passing manner (e.g., above a first threshold but below a second threshold, or at a greater distance).

[0009] A controller hub or controller device may include or be coupled to one or more computer processors and may be coupled to sensors and electronic devices via various network interfaces and communication paths. In one embodiment, multiple electronic devices are connected via a first communication network, while multiple sensors are connected via a second communication network, and the controller hub is coupled to both for communication. In another embodiment, multiple electronic devices and multiple sensors are connected via the same communication network, and the controller hub is connected in a similar manner.

[0010] A controller hub or controller device may actually include or be coupled to a computer processor and can be coupled to sensors and electronic devices via various network interfaces and communication paths. In one embodiment, multiple electronic devices are connected via a first communication network, while multiple sensors are connected via a second communication network, and the controller hub is coupled to both for communication. In another embodiment, multiple electronic devices and multiple sensors are connected via the same communication network, and the controller hub is connected in a similar manner.

[0011] A controller hub or controller device can actually be implemented as a separate device coupled to electronic devices and sensors, or, in a variant embodiment, the controller hub resides within or is integrated with one or more electronic devices and sensors. In another embodiment, a dormant controller hub or controller device resides within multiple (or all) electronic devices and sensors and can be activated to control one or more electronic devices. In yet another embodiment, if multiple controller hubs or controller devices are present, motherboard processing, memory, and control resources can be shared among the controller hubs or controller devices.

[0012] For example, a reference data array can be established by tracking patterns of an individual's voluntary control behaviors in relation to electronic device control. For instance, an individual might utilize a motion application, provide voice commands, or control the activation of various physical or virtual switches. When these voluntary activations occur, they can be tracked as a reference data array and correlated with the activation of tracked sensors that are temporally close to the time of the voluntary action.

[0013] In the context of a non-limiting lighting example, these tracked patterns can include various lighting activations (e.g., dimming, brightening, turning off, turning on), and can be tracked as sensed motion in the form of an array of sensor data. For example, a reference template can be established when a controller hub or controller device is tracking a learning pattern or state.

[0014] During non-learning mode or learning state (e.g., automatic operation state), lighting can be automatically triggered and controlled, where sensors track similar (not necessarily identical) patterns of sensed information, thereby automatically activating various types of lighting. Similar variations are possible in non-lighting environments, such as environmental or climate control, and the sensors are not limited to motion sensors. For example, there may be sensors that track specific times or the amount of ambient light from outdoors.

[0015] Therefore, the proposed method helps address some technical shortcomings of manual methods, namely, that despite routines, individuals still must manually control electronic devices individually. The proposed method is suitable for allowing for a certain degree of deviation, because despite routines, individuals may differ in the specific activities they perform (e.g., individuals do not need to take the same precise path or trigger sensors in exactly the same way every time). Overly rigid systems will be unusable, and similarly, overly flexible systems will activate when they should not.

[0016] In some embodiments, a particular technical solution is described that is adapted to identify and learn activation streams associated with sensing information, and then deploy these activation streams to provide a technically automated solution for controlling electronic devices in similar scenarios, thereby enabling a person to train the system according to human preferences without repeated manual activation.

[0017] In the lighting example, the system can be adapted to associate activity with activated movements associated with morning routines after learning through automatic observation of electronic device activation (e.g., after system training, an individual wakes up around 6-8 am, weakly triggering a sensor in the bedroom, strongly triggering a sensor in the hallway at a specific speed while crossing a hallway, and automatically triggering a wall-mounted wardrobe light so that the individual can better choose their clothes for the day; strong activation of a door sensor triggers the wall-mounted wardrobe light to turn off when the individual leaves for the office).

[0018] Activation of electronic devices (in this case, lighting elements) can include higher-level object-oriented commands, such as command messages transmitted according to protocols via an application programming interface (API), or lower-level command messages, such as controlling the voltage / current values ​​supplied to various devices (e.g., directly causing dimming or brightening effects). More complex examples are possible.

[0019] The automatic control of electronic devices according to various embodiments herein aims to solve specific technical problems associated with device automation, and describes an unconventional technical solution aimed at the practical implementation of automatic control systems and corresponding methods.

[0020] Specific data structures are maintained and constructed to track sensor inputs during learning and automatic control states. In some embodiments, a predicted future sensor array is generated to produce an operational data array suitable for controlling the activation or modification of characteristics of various electronic devices.

[0021] It is important to note that patterns and movements are not always consistent. Therefore, the system needs to be flexible enough to handle minute deviations. The reference data array acquired during the learning phase in automated control is suitable for the system to evaluate partial sequences to utilize local comparisons between tracked sensory data when establishing a similarity level with respect to the reference data array. Evaluating partial sequences and local comparisons helps establish similarity (e.g., similarity ratio) for matching queries (e.g., 1:n) with the reference data array, even if the sensor can only observe partial data. A technical trade-off can be made between flexibility and accuracy.

[0022] To help reduce computational complexity and overall usage of computing resources, further embodiments using compressed data arrays are described, which is useful when the system has limited computing resources (e.g., due to power constraints, memory constraints, processor constraints) or limited network resources (e.g., maximum bandwidth / throughput, potential signal interference, spectral characteristics / noise characteristics). These variant embodiments are particularly useful when the number of sensors and / or electronic devices is large and / or uncertain (e.g., systems suited for scalability). Therefore, using compressed data arrays allows for increased flexibility, potentially faster search times, and lower memory requirements compared to methods without compression.

[0023] Scalability is an important consideration because it helps to validate a particular computing solution in the future once it is established. Home automation systems are likely to continue to grow as new electronic devices and sensors are added, and having a system that can be adapted accordingly is commercially valuable, even though computing and / or network capacity is limited.

[0024] In a further variant embodiment, the system is adapted to track multiple individuals as they move based on multiple sensor devices. In this variant, the tracked sensor data array can be configured to track relatively strong or weak activation by, for example, the number of individuals near the sensor, or by, for example, average velocity, average distance (e.g., based on radial distance), activation angle (e.g., based on polar angle), or average activation level.

[0025] In another variant embodiment, aspects relate to a portable remote sensing device, which may be, for example, a handheld or other type of device housing sensors and / or electronic equipment. The portable remote sensor described herein includes central controller circuitry adapted to work in conjunction with the sensors and to send signals to sequentially activate various electronic devices (e.g., lighting devices). The sensors of the remote portable remote sensing device track the detected activations, which can then be used for the automatic configuration of control logic by generating and / or maintaining associations between the portable remote sensor and the corresponding electronic equipment. This approach facilitates the automatic generation of associations without requiring tedious manual input from individuals such as users. Attached Figure Description

[0026] The accompanying drawings illustrate embodiments by way of example. It should be clearly understood that the descriptions and drawings are for illustrative and understanding purposes only.

[0027] Embodiments will now be described by way of example only with reference to the accompanying drawings, in which:

[0028] Figure 1 This is a flowchart illustrating actions taken by a system suitable for automated control of electronic equipment, which includes multiple components, data arrays, and logic commands adapted to translate sensory data arrays representing behavior into changes in the operating characteristics of the electronic equipment in the environment. This system can be a sensor-actuator system.

[0029] Figure 2 (a)-2(c) illustrate illustrative embodiments of a composite data array comparison from sensor signals to two reference data arrays, wherein in Figure 2 In (a), the similarity is relative to the entire composite data array and the entire reference data array, where in Figure 2 In (b), the similarity is about the local comparison portion of the composite data array and the reference data array, where in Figure 2 In (c), the similarity is a compressed version of the composite data array and the reference data array.

[0030] Figure 3 (a)-(c) show a person from Figure 3 (a) Walk to the top left corner of the room Figure 3 (b) The lower left corner of the room, then walk forward... Figure 3 (c) An exemplary embodiment in which the lighting and locked doors in the lower right corner of the room change as the walking path changes.

[0031] Figure 4 (a)-(c) are shown Figure 4 (a) In a room in which some of the innovative systems described herein are installed, a person moves along a path from a first corner to a second corner. Figure 4 (b) is an example composite data array generated by this motion, which in Figure 4 (c) is a data representation in which the calculation is converted into inferences about the path of a person and their future according to the first method.

[0032] Figure 5 (a)-(d) represent multiple example data arrays consisting of character sequences corresponding to time-ordered sensor signals.

[0033] Figure 6 (a)-(c) are shown Figure 6 (a) A room in which a sliding switch control system is installed, and a person moves along a path from a first corner to a second corner. Figure 6 (b) is a composite data array obtained from the sensed motion, used to establish a data structure based on the first method. Figure 6 The updated data structure in (c) represents the path of the person and its subsequent inferences.

[0034] Figure 7 (a)-(c) are shown Figure 7 (a) A room in which some of the innovative systems of the embodiments are installed, and a person moves along a path from one corner to another. Figure 7 (b) is a composite data array obtained from sensing. Figure 7 (c) Inferences about human paths and their futures, represented in an updated data structure based on the second method.

[0035] Figure 8 This is a schematic diagram of the desired brightness as a function of time during several on / off events. If strong motion is detected, the lighting will turn on and enter a "locked" state. If no motion is detected within the timeout period, the "locked" state is deactivated and the indicator light turns off.

[0036] Figure 9 This is a diagram illustrating the current brightness as a function of time for a given periodically varying desired brightness input, according to some embodiments.

[0037] Figure 10 (a)-(b) are illustrative scenarios showing three lights, in which the lighting control activity specifically for light 3 is examined. Figure 10 (a) gives the relevant variables and the initial state. Figure 10 (b) is an illustration of a user moving weakly through a house in light 1 and triggering the motion sensor strongly in light 2. This information is transmitted, and the controller determines that light 3 should be adjusted to a higher value to meet its desired brightness. This adjustment is made before the user reaches the space illuminated by light 3.

[0038] Figure 11 (a)-(c) are shown Figure 11 (a) An illustration of a room in which some of the innovative systems of the embodiments are installed, and a person moves along multiple paths over a period of time. Figure 11 (b) Wherein the sensor signal is stored as a composite data array in the first instant, and Figure 11 (c) wherein the sensor signal is compared with a stored composite data array, which is conditionally modified in a second time.

[0039] Figure 12 (a)-(c) illustrate the scenario with three lights, where a learning activity specifically for light 3 is examined. The required variables stored in light 3 are as follows: Figure 12 As shown in (a). Figure 12 (b) illustrates a scenario where lamp 3 learns that a weak motion in lamp 1 may subsequently be followed by a localized strong motion. Therefore, lamp 3 should immediately turn on whenever a weak motion in lamp 1 is observed and communication is established. Furthermore, lamp 3 learns that a weak motion in its own sensor may subsequently be followed by a localized strong motion. Therefore, lamp 3 should immediately turn on whenever a localized weak motion is observed. Figure 12 (c) illustrates that lamp 3 learns that strong motion in lamp 2 may not follow localized strong motion. Therefore, lamp 3 is unlikely to turn on when strong motion in lamp 2 is subsequently observed and communication is established. Furthermore, lamp 3 learns that weak motion in its own sensor may not accompany localized strong motion. Therefore, lamp 3 is unlikely to turn on when localized weak motion is subsequently observed.

[0040] Figure 13 The diagram illustrates components of a smart lighting device according to some embodiments, which is capable of automatically turning itself on or off based on motion sensor signals from onboard sensors and communication motion data from neighbors.

[0041] Figure 14 This is an example photograph of multiple hexagonal flat panel lights connected side-by-side. The lights include light-emitting components, sensors, data storage, and a processor, enabling sensing, light-driven operations, and inferences about behavior in the vicinity of the flat panel lights. The sensors may include touch sensors that interact with a hand at or near the lights.

[0042] Figure 15 This is a schematic diagram of a hexagonal planar lighting fixture with dimensions. Not all embodiments are intended to be limited to this shape, and the illustrative lighting fixture is shown as an example of a controllable electronic device.

[0043] Figure 16 It is an illustration of a room with walls and fixed electronic devices and sensors, where the sensors can detect perceived objects near the activated electronic devices.

[0044] Figure 17 It is an illustration of a room with walls and fixed electronic devices and a portable remote sensor, wherein at least one sensor can detect a sensed object near the actuated electronic device, and at least one other sensor can detect input from a person operating the portable remote sensor.

[0045] Figure 18 This is an illustration of a room with walls and fixed electronic equipment and a portable remote sensor, wherein at least one sensor can detect a sensing object near the electronic equipment, and at least one other sensor can detect input from a person operating the portable remote sensor. The portable remote sensor can also create an array of operational data and transmit it to the electronic equipment, and set its operational status.

[0046] Figure 19 The diagram illustrates a room with walls and fixed electronic devices and a portable remote sensor, wherein at least one sensor can detect a sensing object near the driving electronic device, and at least one other sensor can detect input from a person operating the portable remote sensor. Each fixed electronic device may have a second type of electronic device nearby, such that the proximity of the portable remote sensor to a particular fixed electronic device means that it is also close to a particular second type of electronic device.

[0047] Figure 20 This is a photograph of an illustrative embodiment of a portable remote sensor consisting of a button and a light sensor. Detailed Implementation

[0048] As described in the embodiments herein, improved lighting systems, control methods / processes, and non-transitory computer-readable media (storing a set of machine-interpretable instructions for execution on one or more processors) are provided. In particular, these improved systems are for electronic devices (e.g., lighting devices and / or consumer electronics, such as locks, climate controllers) that operate in conjunction with control mechanisms (e.g., controller hubs, control circuitry) and various sensors (e.g., but not limited to motion sensors). In some embodiments, a learning protocol is established to provide a technical solution in which an incremental approach is implemented using sensor signals from various sensors to control changes in characteristics (e.g., lighting output) of one or more connected electronic devices (e.g., lighting devices) using sensing information from various sensors (in some embodiments, at least one remote sensing device and at least one local sensing device).

[0049] In some embodiments, the controller may be decoupled from the electronic devices and sensors, for example, as a connectable device coupled to the electronic devices and / or sensors via one or more network connections. In another embodiment, the controller resides within or is directly coupled to one of the electronic devices and / or sensors, and that device or sensor acts as a master controller for the other electronic devices and / or sensors. In various embodiments, the controller may be physical control circuitry, such as a controller computer having one or more coupled processors, memories, and data storage. The controller may operate by executing one or more machine-interpretable instructions stored on a non-transitory computer-readable medium by one or more processors.

[0050] Systems comprised of devices capable of acting on commands issued by automated controllers offer benefits to users of the space where such systems are deployed. Examples of such systems in residential and commercial spaces include: light bulbs at entrances that illuminate when a person approaches; coffee makers connected to the power grid via timers that turn on at a specific time of day before a resident wakes up and desires freshly brewed coffee; thermostats that receive commands to adjust the indoor temperature via an internet router, which in turn receives the commands from a remotely connected smartphone device. Other devices include locks (such as smart locks), vacuum cleaners, water heaters (for showers), and so on.

[0051] These systems may include one or more sensors, one or more electronic devices, a communication network consisting of multiple connections or couplings capable of transmitting data arrays, and one or more logical commands and numerical calculations that, when executed on one or more processing units, associate the data arrays from the sensors with the drives of the electronic devices.

[0052] In systems with a large number of sensors and electronic devices, and a wide range of multiple types of sensors and electronic devices, the potential correlations between logical commands are also greater. Therefore, the potential utility of a system increases as a wider range of properties of an interior space can be measured or inferred, and additional capabilities of the interior space can be acted upon to meet the needs of people within the space, while also optimizing operating costs and resource usage. This is particularly evident for resources that may be over-consumed due to forgetfulness, such as lighting electricity or indoor temperature control. This is especially true for people with disabilities or those who cannot use typical manual control systems of an interior space at certain times. As described herein, additional variants that contribute to scalability are described where the number of sensors and / or electronic devices is large enough that limitations in processing power or networking capabilities lead to technical constraints.

[0053] The sheer number of sensors and electronic devices also increases the complexity of potential connections. In other words, while the number of useful connections between sensors and electronic devices can increase, the number of useless and potentially harmful connections can also increase to a greater extent. Therefore, the effective operation of a system requires innovation in how logical commands are constructed. This may include additional logical commands and numerical calculations that, upon execution, generate logical commands most relevant to the specific installed system. This could include automated training of a particular installed system to eliminate or reduce the occurrence of useless functions while performing useful functions.

[0054] Another challenge for control systems is that the presence of certain sensors can make people feel a spatial intrusion or discomfort. Concerns about malicious actors gaining access to sensor data can outweigh the utility of a more precisely automated controlled space. Such concerns might involve known private information and events that the individual only wishes to disclose through intentional action (if any). It has been noted that concerns about data privacy will hinder consumer acceptance of IoT deployments. (Privacy Mediator: Helping IoT Cross the Chasm, by Davis, Taft, Satyanarayanan, Clinch, and Amos, 2016).

[0055] These concerns mean that a system, limited by technology in terms of specific spatial or locational data but still capable of executing logical commands that lead to useful operations, may be more useful than a system using higher-resolution sensors for more precise or wider-range measurements. In other words, a system that requires primarily the execution of useful logical correlations, rather than useless, harmless ones, may be inconsistent with a system that requires overcoming consumer anxieties about their privacy.

[0056] Intentionally causing a system to be unable to perceive objects, detect or infer certain features of a space, place, location or room, as well as the technical limitations of people in such spaces, places, locations or rooms, means that innovative technical solutions must be created to enable the system to still operate with sufficient accuracy under such limiting conditions.

[0057] One of the three privacy engineering principles established by the National Institute of Standards and Technology (NIST) of the U.S. Department of Commerce is predictability. Systems that comply with these principles enable "individuals, owners, and operators to make reliable assumptions about human identity information and how it is processed by their information systems" (see NISTIR 8062). In this regard, systems with sensors that are essentially unable to measure the characteristics of interest are highly predictable and therefore preferred.

[0058] The innovative control systems and methods for controlling system operation described below in various embodiments address the aforementioned challenges. These systems and methods can be built upon (1) multiple individual low-resolution sensors, none of which can reveal sensitive private information through appropriate or inappropriate use; (2) multiple sensors are spatially distributed throughout a room, office, or space; and (3) the spatially distributed sensor data is capable of predicting partial or future partial behavior of one or more persons in the space. Specific technical problems related to the use of low-resolution sensors and the acquisition of spatial relationships and patterns are addressed in various embodiments, where the system is configured to incrementally learn a mode and then used to control the characteristics of electronic devices (e.g., lights and motion sensors work together to maintain various data structures on the backend, are trained based on patterns extracted from human actuation, begin to identify / recognize routines, and automatically drive / deactivate lighting when a person performs a routine, without further manual activation).

[0059] The relatively simple number of sensors allows for the exclusion of unwanted privacy violations while maintaining the ability to infer relevant behavioral patterns for effective control of electronic devices. A single low-resolution sensor (such as a motion sensor) is insufficient to achieve the required accuracy. A single high-resolution sensor (such as a camera) not only requires significant bandwidth for data transmission but also raises privacy concerns. Multiple low-resolution sensors operating in tandem (such as motion sensors) can provide sufficient accuracy while preserving private information.

[0060] The specific methods described herein can overcome some of the limitations previously encountered by electronic devices based on simple motion sensors (e.g., simple lights that simply turn on when motion is detected, and those that cannot learn when they are not rotating or when they learn from motion sensed by other motion sensors). Therefore, innovative systems and innovative approaches to system operation can facilitate consumer adoption of useful Internet of Things (IoT) deployments that other systems on the market have not achieved.

[0061] Furthermore, the innovative control systems and innovative operating methods of control systems described below include adaptation and learning of the relationships between sensor signals, inferred partial behaviors, and electronic device actuations. Unlike explicit configuration of devices in a system by a person installing it, a system can be passively configured (e.g., automatically configured) over time, as the system's installation space is used. This means that the system's operation can change over time to reflect new behavioral patterns or changes in the system after initial installation.

[0062] This system is more flexible, requiring no specialized programming skills or time to manually input strictly defined patterns or routines. Furthermore, as described in this paper, the system can adapt through partial matching and array prediction (e.g., based on local alignment), allowing it to still capture small variations or deviations from specific routines. For example, a person may not always dress along the exact same route in the morning, but there may be a representative subset of elements that almost always exists. The system automatically adjusts its flexibility—an improved technical feature that is extremely useful in overcoming the drawbacks of strictly defined "if this, then do this" approaches, where manual input requires strict adherence to stored conditions.

[0063] Innovative control systems can also operate when the spatial relationships between sensors and electronics are unclear. Therefore, a variety of more flexible potential implementations are possible (e.g., compared to expensive systems specifically designed for a particular space, such as a concert hall). However, if these relationships within the system are known, certain control applications can be enabled for the system, or made more precise. Thus, in some embodiments of innovative systems, the relative spatial relationships between sensors are automatically derived using innovative methods performed by devices specific to the control system. This includes using operating systems for portable remote sensing devices.

[0064] For these reasons, innovative control systems overcome two major hurdles of Internet of Things (IoT) and artificial intelligence (AI) operation in residential or commercial spaces by handling complexity through adaptive methods and hiding private information from the system in a predictable manner. This enables a wide range of useful applications, as further illustrated in the various embodiments described below.

[0065] Automatic operating system

[0066] This section describes the operation of the control system and how it works with people and equipment in an interior space. An interior space, or location, can refer to one or more rooms in a house or apartment, a location bounded by walls, ceilings, and floors, office space in a workplace, spaces used for commercial and hospitality services such as restaurants and hotels, or nursing facilities and hospitals. Other types of spaces or locations can be considered as long as they are space-constrained and electronic equipment can operate within them.

[0067] refer to Figure 1 Within the space where the system is installed and operated, the operation of the control system 250 precedes the action 251. Action can be a description of events occurring within the space. Action, in turn, creates multiple sense objects 252, which are the physical manifestations of the action. A sense object is the basic data of the perceived object and is a result of the action, but not necessarily a single action implies a single sense object.

[0068] To illustrate what kind of behavior and perceived object might be, consider an illustrative scenario: a blue-eyed man walks from the entrance of a room to a table in the corner while talking to his mother on his cell phone, simultaneously commuting to court. This is a description of the behavior of a specific identifiable person. In this case, the perceived object could be: light waves reflected from the body, possibly revealing his blue eye color; mechanical electromagnetic waves transmitting his voice, possibly revealing what he is saying to his mother; trace amounts of volatile molecules, possibly indicating that the person is sweating; or Doppler shift reflections of electromagnetic radiation from multiple motion sensors, possibly indicating that the person is moving from the entrance to the table in the corner. Other perceived objects could be considered for illustrative behavior.

[0069] The sensing object can interact with one or more sensors 253. A sensor is a device consisting of components capable of interacting with the relevant sensing object, components that convert the interaction into electrical signals, and components that support and drive other components.

[0070] In some embodiments, the multiple sensors may include motion sensors. The motion sensors among the multiple sensors can detect and characterize localized motion. This means that the motion sensors will not detect and characterize motion beyond a sensor distance threshold from their location. The radius of the sensor distance threshold can be 2 meters, 5 meters, or 20 meters. The sensor distance threshold can be further limited by objects near the sensor, such as walls, furniture, and doors.

[0071] Motion sensors can employ passive infrared (PIR) technology, Doppler radar microwave, Doppler radar ultrasonic, tomographic motion detection, and other motion sensor technologies. Other motion sensor technologies can also be considered.

[0072] The characteristics of local motion determined by the motion sensor and embodied in the electrical signals within the sensor can be further represented as sensor data array 254. However, in the illustrative embodiment, the motion sensor cannot interact with a perceived object that has the potential to reveal dialogue content. Therefore, this information is not present in the sensor data array.

[0073] Multiple local motion features constitute motion patterns. Motion patterns can be detected and characterized by one or more motion sensors.

[0074] In other embodiments, the multiple sensors may include a low-resolution microphone. The microphone can interact with mechanical electromagnetic waves that can sense object speech, music, or collisions. Waves within a certain frequency and amplitude range cause the membrane to vibrate, and the membrane's vibration, in turn, generates an electrical signal within the sensor. This electrical signal may be further embodied as a sensor data array 254. The sensor data array may consist of data values ​​of mechanical wave amplitudes within a quantized frequency range, such as 10 Hz, 20 Hz, 1000 Hz, or 20 kHz.

[0075] In other embodiments, the multiple sensors may include ambient light sensors. Light waves in the room reaching the sensor detector surface interact with a solid material that conducts charge only when light within a frequency range strikes the material. This conducted charge generates a current or voltage within the sensor. This current or voltage may be further embodied in a sensor data array 254. The sensor data array may consist of data values ​​of incident light flux within a quantized frequency range, such as 300 terahertz, 400 terahertz, 700 terahertz, and 1000 terahertz.

[0076] In other embodiments, the multiple sensors may include a switch. The switch can interact with forces applied by a person, such as by pulling on a supporting surface like a floor or seat, or by touching, pressing, or twisting the sensor component. The switch can be a push-button switch, rotary switch, slide switch, toggle switch, rocker switch, key-lock switch, or combination switch. Other switching technologies are also possible. The switch signal can be represented as a sensor data array 254. The switch data array can consist of data values ​​quantized by the movable parts of the switch, such as "switch to off," "switch to on," slider at 25%, slider at 75%, or, if the movable parts are uniquely defined in operation, the data values ​​can be 1, 0, 25%, or 75%.

[0077] In other embodiments, the multiple sensors include cameras. High-resolution variable light captured by the camera lenses can be implemented as a sensor data array 254. Using a first computer vision method, the data array can be interpreted as human behavior in space, such as movement.

[0078] However, using a second computer vision approach, high-resolution data can reveal a person's appearance and, through lip reading, the content of a conversation. Methods for predicting conversation content using machine-generated video streams of a person's moving mouth have been published, such as Deep Audiovisual Speech Recognition, published in the IEEE Transactions on Pattern Analysis and Machine Intelligence in December 2018. Therefore, malicious access to such sensor data arrays could threaten human privacy. The very concern that such malicious access might expose could deter users from installing camera sensors.

[0079] Therefore, regardless of how a person's lips move in the room, sensors that produce the same or nearly identical sensor data arrays are essentially unable to display the speech content. Consider a first variation of a man talking to his mother on the phone, and in this first variation, he is telling his mother the numerical password for a bank account. Multiple low-resolution motion sensors could be "10.0, 0.0, 0.0, 1.0", whose quantization is determined by the motion patterns of the sensors in operation.

[0080] Consider a second variation of a person talking to their mother on the phone, in which they say to their mother: multiple low-resolution motion sensors can be “10.0, 0.0, 0.0, 1.0”, the quantization of which is determined by the motion pattern determined by the sensors in operation.

[0081] In the first and second variations of the illustrative scenario, multiple low-resolution motion sensors are creating the same sensor data array, even though the behavior of the person at that location differs. In other words, private and sensitive information cannot be distinguished from cryptic chatter. Even if a malicious actor accesses the sensor data array, they cannot retrieve the private information from it using any method.

[0082] Other types of sensors can be considered, which may interact with different objects being sensed or generate signals manifested as sensor data arrays through different physical means. Other sensors may include those providing additional informational elements, such as time, humidity, external temperature, external ambient light, expected external ambient light for a given geographic location (e.g., sunrise or sunset), lunar phase / tidal phase, etc. Sensors may be homogeneous in some embodiments or heterogeneous in others.

[0083] The type of sensors used in a control system and the objects they interact with are crucial to the system's operation. This includes considerations of what can be sensed and what cannot. In some applications, simpler or lower-resolution sensors, such as motion sensors, may be preferred.

[0084] In the non-limiting illustrative embodiments described below, the multiple sensors consist of motion sensors, but not all embodiments are so limited.

[0085] Multiple data arrays 254 are compiled into a composite sensor data array 255 by a bonding device 256. The bonding device is coupled 257 to multiple sensors, enabling it to receive the multiple sensor data arrays 254. The coupling 257 may include an antenna for transmitting and receiving 2.4 GHz electromagnetic radiation waves, which can be encoded by modulation of the multiple data arrays. The coupling and the multiple data arrays can be configured to transmit using a Wi-Fi protocol. Other protocols, such as, but not limited to, Bluetooth, may be used. TM Threads, Zigbee, Z-Wave, LTE, 4G, 5G. Other proprietary protocols could be considered for wireless data transmission.

[0086] Coupler 257 can be wired, where electrical signals are transmitted through a conductive medium, such as copper wires or copper traces in a printed circuit board (PCB) or optical fiber. Multiple data arrays 254 communicate between the sensor and coupling device 256 via modulation, such as, but not limited to, pulse width modulation (PWM). Protocols for wired data transmission, such as, but not limited to, Ethernet and Universal Serial Bus (USB), can be considered.

[0087] Coupling 257 can be mediated by an auxiliary device such as an Internet router. In these embodiments, the coupling device 256 can be physically remote from the sensor, such as on a server in the cloud. In these embodiments, the sensor transmits multiple data arrays via an Internet connection. Transmitting data arrays over the Internet increases transmission overhead compared to the wireless and wired coupling methods described above, and may also result in additional communication latency. The advantage of the remote coupling device 256 in the cloud is that the same computing resources, logical commands, and numerical calculations can be used to process multiple sensor data arrays 254 from multiple different devices in the system.

[0088] Other coupling methods capable of transmitting data arrays could be considered, including audio waves or light waves.

[0089] In other illustrative embodiments, a combination of methods for coupling sensors to the bonding device may be used. The control system may consist of multiple motion sensors mounted in a space 1 to 50 meters from the bonding device, with the corresponding coupling method being wireless Bluetooth communication. The control system may also include an ambient light sensor integrated with the electronic hardware of the bonding device, with the corresponding coupling method using conductive metal traces within the electronic hardware. The control system may also consist of buttons and slide switches mounted on the space wall, with the corresponding coupling method using wires to connect some switches and using wireless Bluetooth communication to connect other switches.

[0090] In some embodiments, each of the plurality of data arrays 254 contains a unique identifier (e.g., absolutely unique or relatively unique) that represents the sensor that generated the particular data array. In some embodiments, if no relatively unique identifier exists, the controller assigns a relatively unique identifier (e.g., the controller is being modified for a system without identifiers).

[0091] In other embodiments, a unique identifier that associates a data array with a particular sensor can be inferred from other properties of the plurality of data arrays 254 (e.g., the order of the plurality of data arrays) or from the coupling 257 of the data arrays they receive. A method for inferring a unique identifier that associates a data array with a sensor, but does not explicitly attach the data to the data array it creates, is disclosed in a method for data transmission in a hierarchical data network (WO 2019 / 134046).

[0092] In some embodiments, the composite data array 255 created by the master device can be created by connecting all the data arrays in a plurality of sensor data arrays 254. The composite data array can be understood as a dictionary, where a unique sensor identifier is entered and the corresponding data array is used as an associated value.

[0093] In other embodiments, a composite data array 255 is created by appending a recently received data array to multiple previously received data arrays. Thus, this data array operation generates a composite data array 255 containing a time series of sensor signals. The composite data array can be understood as a dictionary, where unique sensor identifiers and unique time identifiers are entered, with the corresponding data arrays as associated values.

[0094] In other embodiments, a composite data array 255 is created by appending recently received data arrays to a plurality of previously received data arrays and deleting a plurality of data arrays received more than a first threshold time ago. Thus, this data array operation generates a composite data array 255 containing time series of sensor signals, but limited to time instances not exceeding the first threshold from now. The composite data array 255 can be understood as a dictionary, with unique sensor identifiers and unique time identifiers entered, and the corresponding data arrays as associated values. The composite data array 255 is not necessarily a continuous appending of recently received data arrays; rather, in some embodiments, the composite data array 255 is a composite snapshot at different discrete time points.

[0095] The composite sensor data array 255 is sent to an inference engine 258, which can be implemented as hardware processing circuitry, software processing module, or a combination of both. The inference engine 258 is coupled 259 to a bonding device, enabling it to receive the composite sensor data array 255. The coupling 259 may include an antenna for transmitting and receiving 2.4 GHz electromagnetic radiation waves, which can be encoded to modulate the data array. The coupling and multiple data arrays can be configured to allow Wi-Fi protocols to be used for transmission. Other protocols, such as, but not limited to, Bluetooth, can be used. TM , Thread, Zigbee, Z-Wave, LTE, 4G, 5G. Other proprietary protocols could be considered for wireless data transmission.

[0096] Coupler 259 can be wired, where electrical signals are transmitted through a conductive medium, such as copper wires or copper traces in a printed circuit board (PCB) or optical fiber. Data array 255 communicates between the host device and the inference engine using modulation methods, such as, but not limited to, pulse width modulation (PWM). Protocols for wired data transmission can be considered, such as, but not limited to, Ethernet and Universal Serial Bus (USB).

[0097] Coupling 259 can be mediated by an auxiliary device such as an Internet router. In these embodiments, the inference engine 258 can be physically located away from the coupling device 256, such as on a server in the cloud. In these embodiments, the master device transmits the composite data array via an Internet connection with typical protocols and addresses. Transmitting the data array over the Internet increases transmission overhead compared to the wireless and wired coupling methods described above, and may also result in additional communication latency. The advantage of placing the inference engine 258 in the cloud is that the same computing resources, logical commands, and numerical computations can be used to process the composite sensor data array 255 from multiple different devices within the system.

[0098] In some embodiments, the inference engine 258 is located within the same electronics as the bonding device 256. In these embodiments, the inference engine 258 and the host device may share one or more electronic components, such as numerical memory and processing units. In these embodiments, the communication medium 259 is preferably wired communication, as this minimizes the transmission latency of the composite data array 255.

[0099] The inference engine 258 consists of multiple logical commands and numerical calculations that transform data in a composite data array during execution. The execution of the logical commands and numerical calculations may also utilize an input data array retrieved from a reference library 260, as well as one or more global state data arrays 261. At the end of execution, the inference engine 258 outputs one or both of a partial behavior prediction 262 and a partial future behavior prediction 263.

[0100] A global state data array or multiple global state data arrays 261 are data representations of attributes that the system can access but are not obtained from multiple sensors 253. The global state data arrays can be partially or entirely compiled from data retrieved from the system by internal components 264. The global state data arrays can also be partially or entirely compiled from data retrieved from external devices via communication ports or antennas 265.

[0101] In some embodiments, the global state data array may consist of a time data array represented as an hour of the day, a minute of the hour, and a second of the minute. In some embodiments, the time of day can be retrieved from an internal clock generator (e.g., but not limited to a quartz piezoelectric oscillator). In other embodiments, the time of day is retrieved via a communication port or antenna coupled to an external device that can query the time of day, such as, but not limited to, a Bluetooth antenna coupled to a nearby smartphone.

[0102] In other embodiments, the global state data array may consist of an ambient brightness data array, which is expressed as one or more brightness values ​​per square meter, per square foot, nit, or other units. The ambient brightness data can be measured by ambient light sensors distributed throughout the space and can communicate with its data array via the system's communication ports or antennas.

[0103] In other embodiments, the global state data array may consist of a counter representing the number of individuals in the space. The value of the counter can be determined through interaction with assistive devices, such as, but not limited to, the number of access card readers or mobile phone devices connected to a home Wi-Fi network.

[0104] In other embodiments, the global state data array may consist of a bedtime index. Users of the space can set the bedtime index via an assistive device such as a smartphone or button. In an illustrative embodiment, the bedtime index is set to 1 to indicate the intention of a person in the space to sleep, and set to 0 to indicate the absence of such intention. Other types of global state data arrays may be considered.

[0105] Reference library 260 consists of multiple data arrays that can be logically and numerically compared. The multiple data arrays stored in the reference library represent information about the range of sensor data caused by typical or specific behaviors in space.

[0106] Figure 2Three illustrative embodiments of logical and numerical comparisons that can be performed are shown in (a), 2(b), and 2(c), and are further described below. A particular composite data array 2599 of the illustrative embodiments consists of a sequence of six integers.

[0107] In some embodiments, the data array in the reference library may have the same shape and meaning as the composite data array, see Figure 2 (a) In these embodiments, the logical and numerical comparisons 51 performed between the composite data array 2599 and the reference data arrays 60, 61 can be equality tests. In these embodiments, the logical and numerical comparisons performed can be tests of approximate equality or similarity between a given composite data array 2599 and the reference library data arrays 60, 61. In an illustrative embodiment, the composite data array is approximately equal to the reference library data array 60.

[0108] Methods for evaluating approximate equality or similarity include Euclidean distance, Manhattan distance, Minkowski distance, Hamming distance, cosine similarity, Levinstein distance, Damelau-Levinstein distance, Yarro distance, longest common subsequence distance, Bray-Curtis distance, Canberra distance, Chebyshev distance, and Mahalanobis distance. Other methods can be considered that quantify the similarity between at least two data arrays into a single value.

[0109] In other embodiments, see Figure 2 (b) The logical and numerical comparisons performed involve approximate equality or similarity of partial sequences of the composite data array and the data array in the reference library. In these embodiments, the logical and numerical comparison 52 performed between the composite data array 2599 and the reference data arrays 62, 63 may be a test of approximate equality or similarity between partial but continuous portions of the composite data array and partial but continuous portions of the data array in the reference library. The comparison may consist of a partial alignment of a portion of the composite data array with another portion of the data array in the reference library. In an illustrative embodiment, based on four consecutive values ​​that can be locally aligned, the composite data array 2599 is more similar to data array 62 than to data array 63.

[0110] Local alignment methods can include, but are not limited to, the Smith-Waterman algorithm, dynamic programming, and k-tuple grouping methods. Local alignment methods may require a way to evaluate the similarity between different parts of the data array. This can be achieved using methods such as... Figure 2 The same method applies to the illustrative embodiment of (a). Other methods for local comparison and similarity can be considered.

[0111] In other embodiments, the data arrays in the reference library represent relevant information in a form different from the composite data arrays. This different form can be a compressed form of multiple data arrays, such as obtained through clustering or projection methods that reduce the dimensionality of the data arrays in the reference library, see [link to relevant documentation]. Figure 2 (c) In these embodiments, prior to the logical and numerical comparisons 53 performed between the composite data array 2599 and the reference data arrays 64, 65, the composite data array can be converted to its compressed form 2598 and then compared with the data array of the reference library 54. Compression may result in the loss of information in the composite data array; however, if the loss is minor, the advantage of the smaller size of the data array can make it the preferred method.

[0112] Clustering or projection methods can be, but are not limited to, Principal Component Analysis (PCA), Kernel PCA, Generalized Discriminant Analysis, Sammon Mapping, k-means clustering, affinity propagation, agglomerative clustering, and t-distributed stochastic neighbor embedding. Other clustering or projection methods may also be considered.

[0113] An illustrative embodiment of compression that provides a reduced size for the data array with negligible information loss is a room where four motion sensors are installed; however, the first and second sensors are very close to each other, and the third and fourth sensors are very close to each other. The composite sensor data array consists of four data values. However, the first and second data values ​​are always nearly identical due to their spatial proximity, and the third and fourth data values ​​are always nearly identical due to their spatial proximity. The compressed form of the composite data array consists only of the first and third data values.

[0114] If the distance between the first and second sensors is greater than that in the exemplary embodiment described above, the information contained in the first and second data values ​​becomes increasingly non-redundant or irrelevant. Therefore, compression is either impossible or only possible when there is significant loss of motion pattern information within a room. Appropriate compression can be obtained by performing a grid search on the compression parameters defined by the compression method, thereby reducing the size of the data array and achieving acceptable information loss for system operation.

[0115] Other logical and numerical comparison methods can be considered. A relevant characteristic is that their evaluations quantify the similarity between at least two data arrays, such that a given composite data array derived from the sensor data array can be determined to be more or less similar to the reference data array.

[0116] Reference library 260 may also include volatile or non-volatile computer memory, such as, but not limited to, dynamic random access memory, static random access memory, flash memory, floating gate devices, and nitride read-only memory. When inference engine 258 is executed, multiple data arrays in the reference library can be updated during system operation.

[0117] Partial behavior prediction 262 consists of a data array representing inferred or predicted features of behavior 251. The prediction does not include all features of the behavior, therefore it is only partial. Partial future behavior prediction 263 consists of a data array representing inferred or predicted future behavior that will follow the current behavior 251 over a period of time. The prediction does not include all features of the behavior, therefore it is only partial.

[0118] The system operation steps and components described so far include the sensing and interpreting capabilities of the control system. A subset of the sensed objects, along with the meaning of the sensor signals, are interpreted, and the interpretation is encoded as prediction. Predictions can be associated with probabilities, which represent the determinism with which the control system performs its interpretations.

[0119] After sensing and interpretation, predictions can be evaluated for one or more targets, and control actions can be constructed. The steps and components that constitute the latter part of the control system will be described in detail in later paragraphs.

[0120] To illustrate, as Figure 1 The results shown are from a running system, when the system's components work together. Figure 3 (a) shows room 300 and person 333. Person 333 has entered the room in the upper left corner. Several electronic devices 2731-2734 and 2735 are installed in the room. The former electronic device is an LED bulb with variable brightness. The latter electronic device is a door lock that can be opened or closed. In addition, a motion sensor component is installed in each LED bulb.

[0121] During operation, the system follows these steps. Figure 3 In (a), person 333 generates a sensing object, which is detected by the motion sensor in bulb 2731. An electrical signal is generated through sensing, which is then materialized into a sensor data array. The other sensors (2732-2734) do not interact with the sensing object, so their sensor data arrays are empty or zero.

[0122] Figure 3 The composite data array in (a) was created by cascading four separate sensor data arrays. The composite data array was compared to multiple data arrays stored in a reference library. Figure 3 In the case of (a), it is impossible to infer where person 333 will move next.

[0123] The non-existent inference is compared with the rule base, and only LED bulb 2731 should be turned on to full brightness because local motion is only detected in its vicinity. An operation data array is created. It consists of brightness values ​​of 100%. The operation data array may also include the network address corresponding to bulb 2731.

[0124] The operation data array is transmitted over a network. Each electronic device connected to the network receives the operation data array. For electronic devices 2732-2735, the operation data array remains unchanged. However, for electronic device 2731, the operation data array is interpreted by electronic components within electronic device 2731. A brightness value of 100% is retrieved, and the current driving the light-emitting diode is changed to a value corresponding to 100%, such as 30 mA, 60 mA, or 100 mA.

[0125] In the illustrative example, person 333 from Figure 3 The upper left position in (a) moves to Figure 3 (b) is located in the lower left position. The sensing object interacts with the sensors in electronic device 2733, but interacts less with the sensors in electronic device 2731. This is achieved by connecting four separate sensor data arrays in series. Figure 3 (b) Create a composite data array. Compare it with multiple data arrays stored in the reference library.

[0126] for Figure 3 In the case of (b), we can infer where person 333 will move next. In the two composite data arrays ( Figure 3 One of (a) and Figure 3 The movement pattern depicted in (b) is inferred to mean that person 333 is moving away from electronic device 2731 and towards electronic device 2734. Note that in Figure 3 No local motion was detected near electronic device 2734 in (b).

[0127] The inference and the local motion near electronic device 2733 are compared with rules in the rule base. Three operational data arrays are created as follows: A brightness value of 100% is associated with the network address corresponding to bulb 2733. The brightness decrease command "quickly dim" is associated with the network address corresponding to bulb 2731. The brightness increase command "quickly brighten" is associated with the network address corresponding to bulb 2734.

[0128] Three operational data arrays are transmitted over a network. Each electronic device connected to the network receives the operational data array. For electronic devices 2732 and 2735, the operational data arrays remain unchanged. However, for electronic device 2733, the first of the three operational data arrays is interpreted by electronic components within electronic device 2733. The brightness value of 100% is retrieved, and the current driving the LED is changed to a value corresponding to 100%, such as 30 mA, 60 mA, or 100 mA.

[0129] The second of the three operational data arrays is interpreted by electronic components within the electronic device 2731. The brightness reduction command "dim" is retrieved, and the current driving the LED is gradually reduced until zero current drives the LED. In calculating the reduction, the current driving the LED decreases by 10 mA per second compared to the previous second. In other words, the LED bulb 2731 gradually dims to zero within 3 to 10 seconds.

[0130] The third of the three operational data arrays is interpreted by the internal electronics of the 2734. Retrieving the brightness increase command "brighten," the current driving the LED gradually increases from zero to the current corresponding to 100%, for example, 30 mA, 60 mA, 100 mA. Unless the 100% value is reached, the calculation of the increase value is based on an increase of 10 mA per second in the current driving the LED compared to the previous second.

[0131] In the illustrative example, person 333 from Figure 3 The lower left position in (b) moves to Figure 3 (c) shows the bottom right position. The sensing object interacts with the sensors in electronic device 2734. This is achieved by cascading four separate sensor data arrays. Figure 3 (c) A composite data array was created. It was compared with multiple data arrays stored in the reference library.

[0132] for Figure 3 In the case of (c), we can infer where person 333 will move next. In the three composite data arrays ( Figure 3 One of (a) Figure 3 One of (b) and Figure 3 The movement pattern embodied in one of (c) is inferred to mean that person 333 is moving away from electronic device 2733 and towards electronic device 2735, i.e., the door.

[0133] The inference and the local motion near electronic device 2734 are compared with rules in the rule base. Three operational data arrays are created as follows: The brightness value of 100% is associated with the network address corresponding to bulb 2734. The brightness reduction command "dimming" is associated with the network address corresponding to bulb 2733. The locking command "unlocking the door" is associated with the network address corresponding to door lock 2735.

[0134] Three operational data arrays are transmitted over a network. Each electronic device connected to the network receives the operational data array. For electronic devices 2731 and 2732, the operational data arrays remain unchanged. However, for electronic device 2734, the first of the three operational data arrays is interpreted by electronic components within electronic device 2734. The brightness value of 100% is retrieved, and the current driving the LED is changed to a value corresponding to 100%, such as 30 mA, 60 mA, or 100 mA.

[0135] The second of the three operational data arrays is interpreted by electronic components within the electronic device 2733. The brightness reduction command "dim" is retrieved, and the current driving the LED is gradually reduced until zero current is applied to the LED. In calculating the reduction, the current driving the LED decreases by 10 mA per second compared to the previous second. In other words, the LED bulb 2733 gradually dims to zero within 3 to 10 seconds.

[0136] The third of the three operational data arrays is interpreted by electronic components within the electronic device 2735. The locking command "unlock door" is retrieved, and the electrical operation of the door lock is altered so that the door can be opened by gently pushing or pulling it. Changes to the door lock's electrical operation may include alterations to the door lock's mechanical characteristics, such as pulling out the locking bolt.

[0137] In summary, Figure 3 The illustrative sequence of operations in (a)-(c) shows how multiple sensors and electronic devices can infer where person 333 will move next, and adjust the operation of specific electronic devices so that the position is at or near optimal in terms of energy use and the comfort and functional use of person 333.

[0138] The following provides several non-limiting illustrative embodiments of the inference engine 258, its operation, inputs, and outputs.

[0139] exist Figure 4In the illustrative embodiment shown in (a), a person 333 passes through room 300 at a first time, such that a person 334 is in another location at a second time. The room is equipped with four motion sensors 2531-2534, each of which can be uniquely identified. The sensors are omnidirectional within an accuracy threshold, and their signal amplitude decreases uniformly with radial distance from the moving person. The signal has limited resolution and can take discrete levels of values, such as ascending 0, 1, and 2. In other embodiments, the signal can take discrete levels of values, such as none, weak, and strong, in ascending order. Other values ​​and ranges of values ​​can be considered.

[0140] Four sensors 257 are connected to the bonding device 256. This connection is wireless, allowing motion sensors to be mounted by physically attaching them to surfaces such as ceilings, walls, or furniture, without the need for wiring for data communication. The sensors can be integrated into devices that perform other functions, such as lighting, heating, cooling, and smoke detection. The sensors can be battery-powered. They can also be powered via a connection to the power grid. This latter power source can be part of the power supplied to lighting or temperature control components.

[0141] In the illustrative embodiment, a person walks along a first path 301 from one corner of a room to another. The first path is a specific movement pattern. At different points in time, motion sensors interact with the sensed object along the path, and the composite data array 255 is altered. In the illustrative embodiment, six instances of alteration to the composite data array occur along the first path 301.

[0142] The number of interactions with the sensor can depend on the initial frequency at which the sensor emits physical signals to detect its potential motion environment. This initial frequency can be, but is not limited to, 100 times per second, once per second, or once every 10 seconds. The higher the frequency at which the motion sensor detects its environment, the faster it can detect new motion.

[0143] Motion sensors can be configured to passively detect (e.g., poll) their motion environment. In another variation, the motion sensor can actively scan for various given triggers or logic commands. A deviation from the baseline signal exceeding a threshold immediately causes the sensor to create a data array representing the characteristics of the detected motion.

[0144] Communication between the sensor data array and the bonding device 256 may depend on a second frequency at which the bonding device polls multiple sensors to obtain their respective sensor data arrays. The second frequency may be, but is not limited to, 10 times per second, once per second, or once every 10 seconds. In other embodiments, the sensors send their data arrays to the bonding device and interrupt the bonding device to update the composite data array.

[0145] Figure 4(b) illustrates a composite sensor data array 255 for a person walking along path 301, where the first row above the second row corresponds to more recent past time points, and the closer the person is to a given sensor as they move along the path, the greater the amplitude of the corresponding signal. A bonding device 256 continuously attaches newer data arrays to the received data arrays, thereby creating an expanded-size composite data array.

[0146] Figure 4 (b) and Figure 4 The composite sensor data array in (c) represents a motion pattern in a specific format. Other formats may be considered. Figure 5 (a) illustrates a simplified data array format. Motion amplitude is represented by the characters W and S. Amplitude is proportional to the radial distance between the person and the motion sensor. Sensors interacting with the motion-sensing object are identified by their unique identifier after the amplitude characteristic. Different sensors interacting with the motion-sensing object simultaneously are separated by commas. Sensor data at different time points are separated by semicolons. The absence of a corresponding unique identifier is not explicitly stated as a lack of motion sensing near the sensor.

[0147] Other formats for data arrays can be considered. This format specifies how information can be represented as strings, numerical sequences, or combinations of other symbols. In practical applications, a particular data array format may be preferred due to its simplicity, readability, and compliance with third-party conventions. However, different formats containing the same information are interchangeable in the description of an innovative system. Therefore, the format of the data array does not substantially alter the innovation.

[0148] The inference engine 258 communicates with the bonding device 256 and the reference library 260. In an illustrative embodiment, the reference library stores two different composite data arrays 2601-2602, such as... Figure 4 As shown in (c).

[0149] In an illustrative embodiment, as a person walks along path 301, the inference engine executes the following steps of logical commands and numerical calculations. At a first time point, the inference engine receives a data array corresponding to the first row of the composite data array 255 from the joining device. The inference engine continues to evaluate a first distance value 2581, which quantifies the similarity between the first row of the data array and data array 2601. The inference engine continues to evaluate a second distance value 2582, which quantifies the similarity between the first row of the data array and data array 2602. The distance value is the result of multiple numerical calculations between the values ​​of the corresponding plurality of data arrays indicated by a mathematical formula referred to as metric 2580.

[0150] Metric 2580 can be, but is not limited to, Euclidean distance, Manhattan distance, Minkowski distance, Hamming distance, cosine similarity, Levinstein distance, Damelau-Levinstein distance, Yarro distance, longest common subsequence distance, Bray-Curtis distance, Canberra distance, Chebyshev distance, and Maharanobis distance. Other distance metrics can be considered that quantify the similarity between at least two data arrays into a single value.

[0151] In the illustrative embodiment, the first row in data array 255 is clearly identical to the first row in data arrays 2601 and 2602. The corresponding distance values ​​reflect this high degree of similarity. This high degree of similarity can be quantified using 0, 1, or 100%.

[0152] Based on at least these two distance values, the inference engine 258 may or may not perform inference. In the illustrative embodiment, no inference is performed because the array of data received and processed by the inference engine is too small. In other words, too little information is retrieved about the behavior to infer sufficient confidence.

[0153] Conversely, the inference engine is idle until the second time point, at which point the composite data array is modified by connecting the second row to the first row. The evaluation of the new distance values ​​is similar to that described above. That is, the composite data array existing at the second time point is associated with one or more distance values ​​that quantify the similarity to the reference library data arrays 2601 and 2602.

[0154] Based on at least these two distance values, the inference engine 258 may or may not perform inference. In the illustrative embodiment, no inference is performed because the inference engine receives and processes too little data array. Instead, the inference engine 258 remains idle until the next composite data array is received from the joining device. Using metric 2580, the composite data array present at the third time point, and data arrays 2601 and 2602 in the reference library, new distance values ​​are calculated.

[0155] In this illustrative embodiment, the inference engine can infer the recent behavior of a person in space to generate sensor data that distinguishes the two reference database data arrays, such that data array 2601 is more similar to the most recent sensor data than data array 2602. In another illustrative embodiment, the inference engine makes the inference that the future sensor data array will be identical to the remaining data array in composite data array 2601. In other illustrative embodiments, the inference engine infers that the degree of difference between the future sensor data array and the remaining data array in composite data array 2601 does not exceed a threshold.

[0156] An ongoing motion pattern can be matched with one or more reference motion patterns in a reference library, so that the ongoing motion pattern does not have to be the same as any of the reference motion patterns. It can be envisioned that each ongoing motion pattern differs from the embodiment motion pattern of all reference patterns due to small differences in the way a person moves throughout the space, body size, or speed of movement.

[0157] However, the ongoing motion pattern may be identical to one or more reference motion patterns in a reference library within a matching threshold. Therefore, in some embodiments, inference about the ongoing motion pattern may include the association of a composite sensor data array with representative motion patterns and their reference library data array, rather than an exact match.

[0158] In embodiments that associate an ongoing motion pattern with a similar, but not necessarily identical, reference motion pattern, multiple data arrays in the reference library can each represent a family of homologous motion patterns. In these embodiments, all motion patterns associated with the same series of motion patterns can cause the inference engine to make the same inference.

[0159] In an embodiment of an inference engine that calculates the association between a computation and a representative reference motion pattern, the accuracy of the computation can be measured along two dimensions: sensitivity and specificity.

[0160] The sensitivity calculation quantifies the frequency with which an ongoing motion pattern is correctly associated with at least the first family of motion patterns. If the matching threshold is too strict, a person moving in space could be located on path 303, which should be associated by the inference engine with the same family of motion patterns that path 301 would be associated with. However, due to the small variations in the path and the strict threshold, the match fails. This reduces the sensitivity.

[0161] The specificity of the calculation quantifies the frequency with which an ongoing motion pattern is incorrectly associated with at least the first family of motion patterns. If the matching threshold is too permissible, a person moving in space could be located on path 302, which should not be associated by the inference engine with the same family of motion patterns as movement along path 301. However, incorrect associations can occur if the motion pattern and the permissible matching threshold change. This reduces specificity.

[0162] In some embodiments, sensitivity and specificity are inversely related. In other words, there is a trade-off between the two dimensions of accuracy. Sensitivity can be improved by adjusting the matching threshold, making it more lenient and forgiving. The same adjustment is expected to reduce specificity.

[0163] In some embodiments where trade-offs exist, higher sensitivity is preferred over higher specificity. For example, if the predicted motion pattern is used to determine the driving of lights on the predicted path, not turning on the lights on the path of the ongoing motion pattern can be considered worse than turning on the lights on the path of a different motion pattern.

[0164] In some embodiments where trade-offs exist, higher specificity is preferred over higher sensitivity. For example, if a predicted motion pattern is used to unlock a computer that would otherwise be password-protected at the predicted end of a path, then unlocking the computer when the actual path terminates elsewhere may be considered worse than occasionally requiring manual unlocking.

[0165] In some embodiments, by mounting additional sensors 253 in space, generating more information sensor data array 254, creating enhanced logic commands and numerical calculations executed by inference engine 258, or adding additional reference motion patterns to reference library 260, the trade-off between sensitivity and specificity becomes less strained. In these embodiments, both high sensitivity and high specificity can be achieved simultaneously.

[0166] An additional sensor 253 installed at an additional location in space can indicate that two or more different motion patterns will not produce the same (within the matching threshold region) sensor data array. In an illustrative embodiment including only a single omnidirectional motion sensor, the two motion patterns are at the same distance from the motion sensor despite different angles relative to the motion sensor, thus creating the same sensor data array. Therefore, no inference engine can resolve these two different motion patterns. The additional motion sensor reduces the number of motion patterns that create the same (within the matching threshold) sensor data array.

[0167] Installing other sensors in other locations in space could mean higher system installation and operating costs. Therefore, it is preferable to have a first system that achieves the same accuracy as the second system, wherein the first system has fewer motion sensors.

[0168] The more informative sensor data array 254 can imply that two or more different motion patterns will not produce the same (within a matching threshold) sensor data array. In the illustrative embodiment, the sensor data array not only represents, but also... Figure 4 The motion amplitude shown in embodiments (a)-(c) also represents the motion polar angle relative to the sensor.

[0169] Figure 5The descriptive data array in (b) includes “+” and “-” characters to indicate additional specifications for the motion of the right or left side of the sensor’s axis. This motion characteristic may correspond to two polar angle ranges, for example, 0 to 180 degrees and 180 to 360 degrees, respectively, where both ranges include the lower angle in the range specification but exclude the upper angle.

[0170] Figure 5 The descriptive data array in (c) includes the characters “a”, “b”, “c”, and “d” to represent an additional specification of motion located in one of the four quadrants defined by the two orthogonal axes of the sensor. This motion characteristic may correspond to four polar angle ranges, for example, 0 to 90 degrees, 90 to 180 degrees, 180 to 270 degrees, and 270 to 360 degrees, where the four ranges include the lower angles in the range specification but exclude the upper angles.

[0171] Other ways of representing more informative data arrays could be considered, such as, but not limited to, multiple Euler curve ranges, so that motion at two different points on a figurative sphere around the motion sensor can produce different sensor data arrays.

[0172] A larger sensor data array may imply a more complex sensor component structure. It can also suggest an increase in the size or number of data arrays transmitted via coupling 257. This, in turn, requires more resources to manage data communication. Therefore, a first system with a simpler sensor data array is preferred, even if it achieves the same accuracy as the second system.

[0173] The additional reference motion patterns in reference library 260 can imply that two or more different motion patterns have a minimum distance value to the same reference motion pattern, rather than having a minimum distance value to two different reference motion patterns. Therefore, inference engine 258 can associate two motion patterns with different families of motion patterns, and thus make different inferences.

[0174] Additional reference motion patterns in the reference library may imply a need for more numerical memory to store multiple data arrays from the reference library. This could potentially require more expensive electronics to be part of the system. Furthermore, additional reference motion patterns in the reference library may mean that more numerical evaluations of the metrics must be performed, which could delay inference or require more expensive electronics to keep the inference creation time below a threshold. Therefore, a first system that achieves the same accuracy as the second system is preferred, where the first system has fewer reference motion patterns in the reference library.

[0175] Enhancements to the logical commands and numerical computations executed on the inference engine 258 may include changing metrics to give two or more different motion patterns a distance value to the reference motion pattern of the model that makes the correct association between the reference library and the family of motion patterns more consistent.

[0176] Additional enhancements to the logical commands and numerical computations executed on the inference engine 258 can explain the expansion or compression of the signal of the composite data array, which has two identical paths with different velocities, such that the two motion modes, despite their different numerical scales, are associated with the same series of motion modes.

[0177] Additional enhancements to the logical commands and numerical calculations executed on inference engine 258 can explain two identical paths, but one possibility is that the sensor temporarily sends out anomalies due to transient disturbances from unrelated events in space, yet still matches the same family of motion patterns. Other causes for temporary anomalies in the sensor data array can be considered, such as momentary congestion of couplings 257 or 259. Other enhancements can be considered.

[0178] Enhancements to the logic commands and numerical computations executed on the inference engine may mean more computationally intensive calculations as part of the execution of these commands and computations, potentially delaying inference or requiring more expensive electronics to produce sub-threshold inferences within a given timeframe. A first system achieving the same accuracy as the second system, which uses multiple simpler logic commands and therefore prioritizes numerical computation, is preferable.

[0179] In some embodiments, having a sufficiently distributed range of motion sensors, a sensor data array with a sufficient amount of information, a sufficiently wide range of templates or reference motion patterns in a reference library, and a sufficient number of enhanced logical commands for the inference engine to execute, can simultaneously achieve 100% sensitivity and 100% specificity.

[0180] In other embodiments, logical commands and numerical calculations executed by the inference engine are used for partial behavior prediction to indicate whether behavior in the space is anomalous or deviates sufficiently from normal. For example, if Figure 4 If person 333 in (a) trips along the path and stops moving, then the composite data array processed by the inference engine can deviate from all reference motion patterns in the reference library. In some embodiments, the deviation is quantified using a metric, and if multiple distance values ​​are greater than a deviation threshold, the inference engine infers that abnormal behavior has occurred. Therefore, this embodiment relates to the prediction of the meaning of past behavior.

[0181] In an embodiment of an inference engine that predicts whether a motion pattern indicates anomalous behavior, the accuracy of the prediction can be measured along two dimensions: sensitivity and specificity.

[0182] Predictive sensitivity quantifies the frequency with which truly anomalous behavior is predicted. If the deviation threshold is too strict, the person might trip or act in other unusual ways, but because multiple distance values ​​are below the deviation threshold, the inference cannot predict it. This reduces sensitivity.

[0183] The specificity of the calculation quantifies how often normal behavior is incorrectly predicted as abnormal. If the bias threshold is too lenient, it is possible to incorrectly predict that a person moving in space in a slightly different manner than normal (but not because of abnormal behavior) will engage in abnormal behavior. This will reduce the specificity.

[0184] In some embodiments, sensitivity and specificity are inversely related. In other words, there is a trade-off between the two dimensions of accuracy. Sensitivity can be improved by adjusting the bias threshold, making it more lenient. The same adjustment is expected to reduce specificity.

[0185] In some embodiments, by mounting additional sensors 253 in space, generating more information sensor data array 254, creating enhanced logic commands and numerical calculations executed by inference engine 258, or adding additional reference motion patterns to reference library 260, the trade-off between sensitivity and specificity becomes less lenient. In these embodiments, high sensitivity and high specificity can be achieved simultaneously.

[0186] Figure 6 Exemplary embodiments using switch sensors to enhance inference are shown in (a)-(c). An innovative system is installed at location 300, including the same plurality of sensors 2531-2534 and engagement device 256, as described above. Figure 4 As described in the exemplary embodiments in (a)-(c).

[0187] In addition, the system includes a switch sensor 2536 mounted on a wall near the upper right corner of the room. In an illustrative embodiment, the switch sensor is a slide switch. The slide switch consists of a slider that can be continuously set between a starting position and a terminal position. If the slider is set to the starting position, the slide switch creates a sensor data array consisting of data values ​​of 0.0. If the slider is set to one-quarter of the way from the starting position and three-quarters of the way from the terminal position, the slide switch creates a sensor data array consisting of data values ​​of 0.25. If the slider is set to the terminal position, the slide switch creates a sensor data array consisting of data values ​​of 1.0.

[0188] The sensor data array from the slide switch 2536 is transmitted to the engagement device 256 via a network. As in the previously illustrated embodiment, the motion sensor also transmits its sensor data array to the engagement device 256 via the network at a given point in time. As in the previous illustrative embodiment, the sensor data array from the motion sensor consists of values ​​0, 1, and 2, depending on whether motion, weak motion, or strong motion is sensed in the vicinity of the motion sensor, respectively.

[0189] The bonding device 256 constructs the composite data array 2558, see [link / reference] Figure 6 (b). In the illustrative embodiment, the system has performed the following sequence of operations:

[0190] The command is executed to create the composite data array. The first motion sensor 2531 detects strong motion due to the presence of the person 333. All other motion sensors detect no motion. The slider of the slide switch 2536 is detected to be in its initial position.

[0191] In the second time instance, the first motion sensor still detects strong motion, and motion sensor 2533 detects weak motion. The slider switch 2536 has also changed since the previous time instance and is transmitting sensor data arrays with a data value of 0.25. This change occurs because the person 333 has moved along motion path 301 and moved the slider along that path to a position one-quarter of the way from the starting position. Figure 6 The second row of the composite data array in (b) reflects the sensed state of the room.

[0192] In a subsequent time instance, person 333 moves along path 301 until reaching the bottom right corner of the room. The motion sensor sends signals as follows: Figure 4 (a) and Figure 4 (b) The data array described above. In addition to the previous illustrative embodiments, the composite data array contains values ​​from a sliding switch that are always kept constant at 0.25.

[0193] In the alternative movement pattern of traversing the room, person 333 moves along path 303 from the upper left corner to the lower right corner. However, in this alternative movement pattern, person 333 behaves differently because they ignore the slider of the motion slider switch. The slider remains in its initial position during movement along path 303, which is reflected in Figure 6 In (c), different synthetic data arrays 2559.

[0194] Because the two composite data arrays are different, the inference engine 258 can create different inferences even though person 333 moves along two spatially indistinguishable paths. In the absence of the slide switch and its contribution to the composite data array, it is impossible to make different inferences. In some embodiments, the slide switch indicates the intention of person 333 to engage in a longer work session in room 300, rather than the intention of person 333 to quickly enter to collect items and then leave the room again. In other words, the additional slide switch sensor enables the determination of different inferences. Figure 4 Inferences that the system in the illustrative embodiment in (a) cannot make.

[0195] exist Figure 7 In the exemplary embodiment shown in (a), the same as Figure 4 (a) The motion sensors 2531-2534 and the bonding device 256 are arranged in the same space 250, as described above. A person 333 is moving through the room, and the composite data array 255 is created by the bonding device based on the path and time point. Figure 4 The same constraints and characteristics as those in the illustrative embodiments in (a)-(c) apply to these components in the illustrative embodiments.

[0196] See Figure 7 (c) The two illustrative embodiments differ in relation to reference library 260 and the multiple logical commands and numerical calculations executed by inference engine 258.

[0197] The reference data array 2605 in reference library 260 can be represented as a weighted directed bipartite graph. Figure 7 In (c), each node on the left side 2606 corresponds to a sensor in the system. Each node on the right side 2607 corresponds to a sensor in the system. The connections 2608 between multiple nodes correspond to transitions between nodes in the direction of the arrows, i.e., from left to right. Each connection 2608 is associated with a value.

[0198] For the first and second sensors in the system, the determinism of motion on the first sensor followed by motion on the second sensor is related to the value of connection 2608 between the node corresponding to the left side 2606 of the first sensor and the node corresponding to the right side 2607 of the second sensor.

[0199] The logical commands executed by the inference engine include a numerical multiplication 2584 of multiple values ​​concatenated in a reference data array 2605 and a composite data array 255 that includes past sensor data arrays. In some embodiments, the multiplication includes only the most recent sensor data array added to the composite data array. Execution of the logical commands returns an output data array 2585.

[0200] In other embodiments, the reference data array 2605 consists of additional nodes and connections. These additional nodes and connections can quantify the determinism of motion at a second sensor at a second amplitude following motion at a first sensor at a first amplitude. For sensors capable of recording both strong and weak motion, the number of nodes on the left and right sides is doubled.

[0201] In other embodiments, additional nodes and connections can quantify the determinism of the motion of the first sensor at a first time point, the motion of the second sensor at a second time point, and subsequently the motion of the third sensor. In these embodiments, the inference engine can distinguish additional motion patterns that differ temporally from the most recently recorded sensor output.

[0202] The data array stored in the reference library contains information about typical motion patterns, as well as the determinism to predict future motion patterns based on past motion patterns. In some embodiments, the determinism of any individual motion pattern is lower. Figure 7 In (a), the motion at sensor 2531 alone cannot serve as the basis for motion prediction along path 301 or 302. Both paths are possible, and in some embodiments, this is insufficient for the inference engine to make a prediction.

[0203] When the additional sensor data array is sent to the joining device and the inference engine, a pattern can emerge that, when multiplied with a reference data array, returns a data array representing the predicted motion with high determinism at one or more sensors in the system. The inference engine 258 can then infer where the person will move to in the near future.

[0204] The additional reference data array in reference library 260 can imply (otherwise, it would produce two or more different motion patterns based on the same prediction by inference engine 258), rather than serving as the basis for different predictions of future motion patterns by the inference engine. In some embodiments, the additional reference data array can be indexed based on the values ​​of global state data array 261. An index can be constructed to distinguish between weekends and weekdays, so that the reference data arrays differ between weekends and weekdays. This index can be used to distinguish between normal and emergency situations in order to predict different families of motion patterns and their associations in emergency situations.

[0205] The following provides several non-limiting illustrative embodiments of the rules engine, its operations, inputs, and outputs.

[0206] Refer again Figure 1The output from inference engine 258 can be transmitted and used as input elsewhere in the system, such as rule engine 270. Coupling 269 between the inference engine and rule engine can consist of an antenna that transmits and receives 2.4 GHz electromagnetic radiation waves, which can be modulated to encode a data array. The coupling and data array can be further implemented to transmit composite sensor data using a Wi-Fi protocol. Other specified protocols, such as, but not limited to, Bluetooth, can be used. TM Threads, Zigbee, Z-Wave, LTE, 4G, 5G. Other proprietary protocols could be considered for wireless data transmission.

[0207] Coupler 269 can be wired, where electrical signals are transmitted via a conductive medium, such as copper wires or copper traces in a printed circuit board (PCB) or optical fiber. Coupler can also be wireless. Data arrays 262 and 263 communicate between inference engine 258 and rule engine using modulation methods, such as, but not limited to, pulse width modulation (PWM). Protocols for wired data transmission can be considered, such as, but not limited to, Ethernet and Universal Serial Bus (USB).

[0208] Coupling 269 can be mediated by an auxiliary device such as an Internet router. In these embodiments, the rule engine 270 can be physically located away from the inference engine 258, for example, on a server in the cloud. In these embodiments, the master device transmits the data array via an Internet connection with typical protocols and addresses. Unlike the wireless and wired coupling methods described above, transmitting the data array over the Internet increases the overhead of the method and may result in additional communication latency. The advantage of placing the rule engine 258 in the cloud is that the same computing resources and logical commands, as well as numerical computations, can be used to process partial behaviors predicted from multiple different installations of the system and partial future behaviors predicted from the future.

[0209] Rule engine 270 may be coupled to rule base 271. Rule base 271 may contain a key-value dictionary that associates predictions with one or more operational data arrays 272. Operational data arrays may consist of unique electronic device identifiers and one or more values, which may be referred to as data payloads. Rule engine 274 may be coupled to one or more electronic devices 273 such that the data payload can be received by one or more electronic devices 273 corresponding to the unique electronic device identifier.

[0210] The coupling 274 may include an antenna for transmitting and receiving 2.4 GHz electromagnetic radiation waves, which can be encoded into multiple data arrays through modulation. Other frequencies are also possible. The coupling and multiple data arrays can be configured to enable Wi-Fi protocols for transmission. Other protocols, such as, but not limited to, Bluetooth, can be used. TMThreads, Zigbee, Z-Wave, LTE, 4G, 5G. Other proprietary protocols could be considered for wireless data transmission.

[0211] Coupler 274 can be wired, where electrical signals are transmitted via a conductive medium, such as copper wires or copper traces in a printed circuit board (PCB) or optical fiber. Multiple data arrays 272 communicate between the rule engine and an electronic device or multiple electronic devices 273 via modulation, such as, but not limited to, pulse width modulation (PWM). Protocols for wired data transmission can be considered, such as, but not limited to, Ethernet and Universal Serial Bus (USB).

[0212] Coupling 274 can be mediated by an auxiliary device such as an Internet router. In these embodiments, one or more electronic devices 273 can be located physically away from the rule engine, for example, in a space beyond the range of typical wireless communications. In these embodiments, the rule engine transmits multiple data arrays via an Internet connection. Transmitting data arrays over the Internet increases transmission overhead compared to the wireless and wired coupling methods described above, and may therefore result in additional communication latency. An advantage of the remote rule engine 270 is that the same computing resources, logical commands, and numerical calculations can be used to create multiple operational data arrays 272 from multiple different installations on the system.

[0213] Other coupling methods capable of transmitting data arrays can also be considered, including audio waves or light waves.

[0214] In some embodiments, multiple electronic devices comprise multiple LEDs. In these embodiments, the data payload may consist of multiple current values, such as 30 mA, 60 mA, and 100 mA. Upon receiving the data payload, one of the LEDs can modify its electrical operation, thereby changing the current driving the light-emitting diode. The luminous flux of the LED can be proportional to the current driving the light-emitting diode. Therefore, in these embodiments, the light output of the lamp changes after it receives and processes the operational data array.

[0215] In some embodiments, multiple electronic devices consist of multiple LEDs. In these embodiments, the data payload may consist of a data field representing a luminous flux value, such as 400 lumens, 600 lumens, or 1000 lumens. Upon receiving the data payload, one of the multiple LEDs can process the data payload and modify its electrical operation, thereby changing the current driving the light-emitting diode so that the luminous flux of the LED equals the luminous flux value of the data payload. This type of LED can be called a dimmable LED.

[0216] A change in luminous flux can increase, which can be described as "dimming the LED." A change in luminous flux can decrease, which can be used to reduce the brightness of the LED. A change in luminous flux can decrease to zero, which can be used to turn off the LED. A change in luminous flux can increase to the maximum luminous flux allowed by the LED's electronics, which can be invoked to turn the LED on.

[0217] In some embodiments, the light output of an LED lamp is a mixture of the light outputs of multiple light-emitting diodes (LEDs) consisting of three different LEDs, wherein the first LED primarily emits red light, the second LED primarily emits green light, and the third LED primarily emits blue light. This type of LED lamp can be called an RGB lamp.

[0218] In an embodiment having one or more electronic devices composed of RGB lights, the data payload may consist of three different current values, such as 10 mA, 30 mA, and 50 mA. Upon receiving the data payload, the RGB lights may modify their electrical operation such that a first plurality of LEDs receive a current equal to a first current value, a second plurality of LEDs receive a current equal to a second current value, and a third plurality of LEDs receive a current equal to a third current value.

[0219] Changes in the optical output of RGB lights can be perceived as changes in light color by people in the space. Multiple operational data arrays can be created by a rule engine so that only a few RGB lights in the space change color, while the rest emit the same color as before.

[0220] In some embodiments, the light output of an LED lamp is a mixture of the light outputs of multiple light-emitting diodes (LEDs) consisting of four different LEDs, wherein the first LED primarily emits red light, the second LED primarily emits green light, the third LED primarily emits blue light, and the fourth LED primarily emits white light. This type of LED lamp can be called an RGBW lamp.

[0221] In an embodiment having one or more electronic devices composed of RGBW LEDs, the data payload may consist of four different current values, such as 10 mA, 20 mA, 30 mA, and 50 mA. Upon receiving the data payload, the RGBW LEDs may modify their electrical operation such that a first plurality of LEDs receive a current equal to a first current value, a second plurality of LEDs receive a current equal to a second current value, a third plurality of LEDs receive a current equal to a third current value, and a fourth plurality of LEDs receive a current equal to a fourth current value.

[0222] Systems with electronic devices composed of RGBW lights can modify the environment in the same way as RGB lights through driving. Furthermore, RGBW lights can create optical outputs with a higher color rendering index than RGB lights. Therefore, RGBW lights are preferred in certain applications.

[0223] In some embodiments, the light output of an LED lamp is a mixture of the light outputs of multiple LEDs consisting of five different plurality of LEDs, wherein the first plurality of LEDs primarily emits red light, the second plurality of LEDs primarily emits green light, the third plurality of LEDs primarily emits blue light, the fourth plurality of LEDs primarily emits warm white light (correlated color temperature 3500K or lower), and the fifth plurality of LEDs primarily emits cool white light (correlated color temperature 5000K or higher). This type of LED lamp can be called an RGBWC lamp.

[0224] In an embodiment having one or more electronic devices composed of RGBWC lamps, the data payload may consist of five different current values, such as 10 mA, 20 mA, 30 mA, 40 mA, and 50 mA. Once the data payload is received, the RGBWC lamps can modify their electrical operation such that a first plurality of LEDs receive a current equal to a first current value, a second plurality of LEDs receive a current equal to a second current value, a third plurality of LEDs receive a current equal to a third current value, a fourth plurality of LEDs receive a current equal to a fourth current value, and a fifth plurality of LEDs receive a current equal to a fifth current value.

[0225] Systems with electronic devices consisting of RGBWC lamps can modify the environment in the same way as RGB and RGBW lamps through driving. Furthermore, RGBWC lamps can create optical outputs with a higher color rendering index than RGB or RGBW lamps. Therefore, RGBW lamps are preferred in certain applications.

[0226] Changing the current of RGB, RGBW, or RGBWC lights can be called color adjustment.

[0227] In some embodiments, multiple electronic devices consist of multiple connected optical switches. In these embodiments, the data payload may consist of multiple Boolean values ​​indicating the power state of each circuit. When the data payload is received, one of the optical switches can modify its electrical operation to turn current on or off. Therefore, in these embodiments, the optical output of the connected circuit changes after it receives and processes the operational data array.

[0228] In some embodiments, multiple electronic devices comprise multiple connected dimmer switches. In these embodiments, the data payload may consist of multiple percentage values, such as 30%, 60%, and 100%. Upon receiving the data payload, one of the multiple dimmer switches may modify its electrical operation, thereby altering the dimming method of the lamps connected to its circuitry. In some embodiments, the dimming method may be triac dimming compatible with incandescent or LED lamps. In some embodiments, the dimming method may adapt the percentage to a voltage in the range of 0 to 10V proportional to the percentage. This voltage can be used to control various light control devices. Therefore, in these embodiments, the light output of the lamp controlled by the dimmer switch changes after it receives and processes the operational data array.

[0229] In some embodiments, multiple electronic devices may consist of multiple heating, ventilation, and air conditioning (HVAC) devices, such as radiators, vents, air conditioners, humidifiers, and dehumidifiers. The data payload in these embodiments may include temperature values, airflow values, or relative humidity values, such as 22 degrees Celsius, 400 cubic feet per minute, or 50%. Upon receiving the data payload, the HVAC device alters its internal operation. In some embodiments, the change includes an increase in current, thereby generating more heat. In other embodiments, the change includes an increase in current, causing one or more fans to rotate faster. In other embodiments, the change includes the angle at which a window should be opened. In other embodiments, the change includes the flow rate of refrigerant gas. These are details of the internal operation of the HVAC device, which innovative systems can specify indirectly, rather than directly, by targeting temperature, airflow, and humidity.

[0230] In some embodiments, multiple electronic devices may consist of controllable household appliances, such as coffee makers, slow cookers, and robotic vacuum cleaners. In these embodiments, the data payload may include instructions to open or drive pre-programmed routines. Thus, the household appliances perform functions that alter the environment, which require some time to complete.

[0231] In some embodiments, the multiple electronic devices may include devices for home entertainment, such as a television or speaker system. In these embodiments, the data payload may include instructions to turn on a specific program or tune music.

[0232] In some embodiments, multiple electronic devices may consist of motion robots capable of performing complex physical actions, such as lifting or moving heavy or fragile objects. In these embodiments, the data payload may include instructions to move to a specific location in space, defined by its relationship to multiple sensors in the system, and to perform actions at that location, such as assisting a person.

[0233] In some embodiments, multiple electronic devices may be devices capable of transmitting an array of data to an audiovisual device that can display informational or warning messages, such as a smartphone or computer screen, at a location remote from the space for which the inference engine creates predictions. In these embodiments, the data payload may be a text string describing a prediction created by the inference engine, which, upon receiving the prediction by a particular audiovisual device, can notify a person of events in space, prompting that person to take action to alter the environment of space. Devices in space may be internet-connected routers.

[0234] Other types of electronic devices can be considered. A key characteristic of multiple electronic devices is that they can be driven by one or more data arrays, and they directly or indirectly alter the spatial environment of one or more sensors mounted on the system.

[0235] Therefore, as stated above, Figure 1 The control system and its operation can control or adjust the environment within the space based on behavior in the space. Control or adjustment can be automatic. System inputs ensure that sensitive privacy information of people in the space is not disclosed. Multiple sensor outputs are treated as a single unit, rather than multiple individual data points, enabling accurate prediction of certain behaviors.

[0236] The following provides numerous non-limiting illustrative embodiments of all components of the cooperating system, from sensors to actuators, parts of physical electronics, and hardware architecture.

[0237] In one embodiment of the system and its operation, the system comprises multiple dimmable LEDs. Within the housing of each dimmable LED, a motion sensor and an antenna are installed. Therefore, each dimmable LED is capable of detecting localized motion and communicating wirelessly with a corresponding sensor data array.

[0238] A current brightness value is defined for each LED. This current brightness is a signal directly connected to the power supply hardware within each dimmable LED, controlling the power consumed and the final amount of light emitted. In this approach, it is assumed that the hardware operates almost instantaneously, providing light based on the current brightness value.

[0239] The second value is defined as the desired brightness. This value is the data input that each dimmable LED can receive via its antenna. The current brightness control sequence for each dimmable LED is as follows:

[0240] a. Continuously monitor the difference between the required brightness and the current brightness. If a difference exists, evaluate the mutual exclusion condition of steps b and c.

[0241] b. If the required brightness is higher than the current brightness, the dimmable LED light is instructed to increase or change its brightness. This is done by gradually increasing the current brightness, step by step at a first rate. The first scenario is when people in the room can obtain the required lighting in a fairly short time, such as within three seconds.

[0242] c. If the required brightness is lower than the current brightness, the dimmable LED light is instructed to reduce its brightness or dim. This is done by gradually decreasing the current brightness, executing the drive step-by-step at a rate of one step per second. The second rate is slower than the first rate, and this makes the dimming of the light less noticeable. For example, a rate can be set to dim the lighting fixture over 30 seconds.

[0243] d. Return to step a.

[0244] dimming methods such as Figure 8 As shown. Multiple dimmable LEDs and their operation ensure smooth brightness transitions. Although motion patterns are unstable, in this embodiment, changes to the environment by driving multiple LEDs are smooth.

[0245] This embodiment of the system executes the following logical commands during operation:

[0246] a. When the sensor in the dimmable LED light detects localized motion and describes it as strong motion, the desired brightness of the dimmable LED light is set to full. As described above, this drive dims the dimmable LED light. The lighting fixture enters a "locked" state. The timer is set to zero and begins counting.

[0247] b. If the dimmable LED is locked, and if positional movement (characterized as weak or strong) is detected, the timer will reset to zero and continue counting up.

[0248] c. If the timer reaches its timeout value, indicating that no weak or strong localized movement has occurred for a considerable period of time, the lockout will be deactivated, and the required brightness will be set to zero. For example, the timeout period is 15 minutes.

[0249] Command sequence such as Figure 9 As shown.

[0250] In this embodiment, the sensors, electronics, inference engine, and rule engine are all contained within the same hardware unit. Therefore, the data array is rapidly transferred between logical command executions.

[0251] In this embodiment, the inference is relatively simple in nature. It is inferred that localized motion means a person is near the dimmable LED light and therefore requires illumination. It is inferred that the long-term absence of localized motion means the person is not near the dimmable LED light, therefore the luminous flux can be dimmed until it reaches zero.

[0252] In this embodiment, the bonding device does not perform any function because the inference and driving are performed on each dimmable LED lamp itself.

[0253] In another illustrative embodiment, the system comprises multiple dimmable LEDs. Within the housing of each dimmable LED, a motion sensor and an antenna are installed. Therefore, each dimmable LED is capable of detecting localized motion and communicating wirelessly with a corresponding sensor data array.

[0254] In this embodiment, the reference library stores a weighted directed bipartite graph, such as regarding Figure 7 As described in (a)-(c), the driver for the dimmable LED lights in the system is determined as follows:

[0255] a. When the first sensor in the dimmable LED light detects localized motion, the desired brightness of the first dimmable LED light is set to full. As described above, this drive causes the dimmable LED light to brighten. The lighting device enters a "locked" state. The first timer is set to zero and begins counting.

[0256] b. For the second dimmable LED in the system, whose associated motion sensor has not detected any local motion, the required brightness setting is as follows: Retrieve a pair of nodes from the weighted directed bipartite graph from the reference library, with the first sensor on the left and the second sensor on the right. Multiply the associated weights (if non-zero) by a coefficient. The desired brightness is achieved unless the current brightness of the dimmable LED is higher. Set the second timer to zero and start counting.

[0257] c. Repeat steps a and b for all sensors in the system that detect local motion.

[0258] d. If the first timer of the dimmable LED exceeds the first threshold, the LED begins to dim. If the second timer of the dimmable LED exceeds the second threshold, the LED begins to dim. The first threshold can be greater than the second threshold.

[0259] These steps are as follows Figure 10 (a) and Figure 10 As shown in (b).

[0260] In this illustrative embodiment, the inference engine predicts local motion, meaning a person is approaching and requires illumination. Furthermore, in this illustrative embodiment, the inference engine predicts local motion at a first sensor that is reweighted relative to the second sensor in a weighted bipartite graph in the reference library, meaning a person may approach the second sensor in the near future and then require illumination.

[0261] The rules engine correlates these predictions with varying brightness levels. Current motion near the first sensor results in the LED being fully driven. Predicted future motion near the second sensor results in the LED being partially driven, with the partial drive proportional to the confidence level of the prediction. Therefore, the LED illuminates before one or more possible paths.

[0262] Furthermore, the inference engine and rule engine can more quickly correct for unrealized predicted paths and adjust the lighting. A second dimmable LED is partially driven and dimmed to a low but non-zero desired brightness, but its associated motion sensor fails to detect localized motion, quickly dimming it to zero.

[0263] Learning Automatic Operating Systems

[0264] The preceding section describes the system operation through exemplary embodiments, demonstrating how behavior leads to useful changes in the environment.

[0265] The operation depends on the execution of the logical commands and numerical calculations of the inference engine and rule engine, as well as the data arrays in the reference library and rule library.

[0266] In some embodiments, logical commands and library data arrays can be set during the manufacturing of system components so that they are applicable to all specific installations of the system throughout its entire lifespan.

[0267] In other embodiments, the logic commands and library data array can be configured during system installation by a professional installer in a specific space, such that the logic commands and library contents are applied to the specific installation of the system throughout its lifecycle.

[0268] In other embodiments, the logic commands and library data array can be set by the system user or a designated administrator of the system at a first point in time after the system is installed in a specific space, through a user interface designed for this purpose, so that any specific logic commands and library contents are applied to the specific installation of the system until they are reset at a second point in time during the specific installation lifespan of the system.

[0269] In some embodiments, logical commands and library data arrays can be automatically configured during the use of a particular system installation. Therefore, the logical commands and library data arrays can be learned during use, making them suitable for the specific installation of the system during a period that aligns with operational objectives, indirectly determined by how the system is used. Thus, the logical commands and library data arrays do not require manual configuration but automatically adapt to the specific installation of the system and the use of that installation.

[0270] In some embodiments, the logical command and library data arrays can be configured through a combination of methods, such that the execution of the inference engine or rule engine can involve multiple logical command and library data arrays from different sources. In some embodiments, the logical command and library data arrays are initially configured at manufacturing or installation time and are configured only after the duration of use during which logical command and library content learned from the use of a particular installation of the system has been replaced.

[0271] Examples of learning all or part of a logic command and library data array include systems capable of creating operating rules for a control system of multiple electronic devices. Examples of learning all or part of a logic command and library data array can utilize methods capable of creating operating rules for a control system of multiple electronic devices. Illustrative embodiments of these systems and methods are described below.

[0272] exist Figure 11 In the exemplary embodiments shown in (a)-(c), room 600 includes a plurality of sensors 6531-6536 and a plurality of electronic devices 6731-6732. The plurality of sensors are installed at multiple locations within the room. The plurality of sensors can interact with perceived objects that are consequences of human behavior within the room. Human behavior can be movement, such as a person 633 moving along a path within the room.

[0273] In some embodiments, the multiple sensors may include motion sensors. The motion sensors among the multiple sensors can detect and characterize localized motion. This means that the motion sensors will not detect and characterize motion beyond a sensor distance threshold from their location. The radius of the sensor distance threshold can be 2 meters, 5 meters, or 20 meters. The sensor distance threshold can be further limited by objects near the sensor, such as walls, furniture, and doors.

[0274] Motion sensors can employ passive infrared (PIR) technology, Doppler radar microwave, Doppler radar ultrasonic, tomographic motion detection, and other motion sensor technologies. Other motion sensor technologies can also be considered.

[0275] In other embodiments, the multiple sensors may include a low-resolution microphone. The microphone can interact with electromechanical waves that can sense speech, music, or collisions. Waves within a certain frequency and amplitude range cause the membrane to vibrate, and the vibration of the membrane generates electrical signals.

[0276] In other embodiments, the multiple sensors may include an ambient light sensor. Light waves in the room reaching the sensor detector surface interact with a solid material that conducts charge only when light within a frequency range strikes the material.

[0277] In other embodiments, the multiple sensors may include a switch. The switch can interact with forces applied by a person, such as by pulling on a supporting surface like a floor or seat, or by touching, pressing, or twisting the sensor components. The switch can be a push-button switch, rotary switch, slide switch, toggle switch, rocker switch, key-lock switch, or combination switch. Other switching technologies are also possible.

[0278] Multiple sensors 6531-6536 and multiple electronic devices 6731-6732 are coupled to other components of the control system so that they can send and receive data arrays. Other components are not... Figure 10 As shown in (a), these may include programmable integrated circuits capable of executing logical commands and numerical calculations, as well as memories capable of storing data arrays. A system may have one or more integrated circuits. A system may have one or more memories.

[0279] The multiple electronic devices may include multiple LED lights, multiple door openers, multiple power regulators, multiple HVAC units, or various combinations thereof. Multiple electronic devices can be manually configured by pressing one or more buttons, using a touchscreen interface, or via voice commands. Multiple electronic devices can be automated by transmitting one or more operational data arrays from the rules engine to the multiple electronic devices.

[0280] Once the system is installed, the control system can operate as described in the preceding sections, especially regarding... Figure 4 The illustrative embodiments are described below. The reference library and rule base can contain multiple reference data arrays and rules. The reference library and rule base can contain multiple basic reference data arrays and rules, thereby enabling simple automated control. The reference library and rule base can be empty, and there is no automated control in the system operation.

[0281] Additionally, the system can have a temporary relational library 660, which can be stored in the data repository as a set of data objects with their relational fields. Logical commands can accumulate in the temporary relational library during system use. Under certain confidence levels, the commands stored in the temporary relational library can become the basis for new content in the reference library and rule base.

[0282] exist Figure 11 In (b), a composite data array 6551 with a driving event at the end is shown. In the illustrative embodiment, the driving event is the activation of an electronic device 6731. The composite data array consists of multiple sensor data arrays. The temporary association library 660 is empty.

[0283] As mentioned in the preceding section Figure 1 and Figure 4The aforementioned method can create multiple sensor data arrays, including composite data arrays. That is, multiple sensors interact with a perceived object generated by a person 633 moving along path 601. The multiple sensors can be motion sensors used to detect and characterize motion in their vicinity. The motion sensors can be omnidirectional within a precise threshold, and the amplitude of their signals decreases uniformly with distance from the moving person. The signal has limited resolution and can take values ​​of ascending order 0, 1, and 2. In other embodiments, the signal can take values ​​of ascending order none, weak, and strong. Other values ​​and ranges of values ​​can be considered.

[0284] At some point, the person manually activates electronic device 6731. This might involve turning on one or more LED lights. It might also involve opening a door and entering an adjacent room. Other electronic devices could be considered.

[0285] The system records manual activation. It also records the time prior to manual activation of the electronic device, consisting of a composite data array of sensor data. The composite data array and the driving event pair are stored in a temporary association library. This pair is assigned a confidence level of 6801.

[0286] The confidence level can be a percentage, such as 10% or 100%. The confidence level can be a fraction between 0 and 1, such as 0.1 or 1.0. The confidence level can be a descriptive string, such as "weak" or "very high".

[0287] At some point later, a person is moving around in the room. As previously described, multiple sensors interact with the person's behavior. In the illustrative embodiment, the person again moves along path 601 toward a specific electronic device 6731. As previously described, the person manually activates the electronic device 6731. The system records the manual activation. The system also records a composite data array consisting of sensor data arrays from the time prior to the manual activation of the electronic device.

[0288] The temporary associated library is not empty. Compare the composite data array and driver event pair with any storage pair containing the same driver event. Figure 11 In the illustrative embodiment in (c), the first pair of composite data arrays and drivers 6553 is selected, instead of the second pair of composite data arrays and drivers 6554.

[0289] The system calculates the similarity between composite data array 6552 and composite data array 6553, which quantifies the similarity between the two data arrays. The similarity is the result of multiple numerical calculations.

[0290] The values ​​of the various data arrays are evaluated according to the instructions of a mathematical formula (called a metric).

[0291] Metrics can be, but are not limited to, Euclidean distance, Manhattan distance, Minkowski distance, Hamming distance, cosine similarity, Levinstein distance, Damelau-Levinstein distance, Yarro distance, longest common subsequence distance, Bray-Curtis distance, Canberra distance, Chebyshev distance, and Maharanobis distance. Other distance metrics can be considered that quantify the similarity between at least two data arrays into a single value.

[0292] If the similarity is less than a threshold, the data arrays are considered different. That is, new behaviors leading to driving events are detected and characterized. 6552 composite data arrays and driving events are added to a temporary association library. Each pair is assigned a confidence level. The confidence level can be a percentage, such as 10% or 100%. The confidence level can be a fraction between 0 and 1, such as 0.1 or 1.0. The confidence level can be a descriptive string, such as "weak" or "potential".

[0293] If the similarity is greater than or equal to the threshold, the data arrays are considered similar or identical within the accuracy constraints of practical applications. In other words, behaviors previously observed that drive the event have been detected and characterized again. This indicates a stronger correlation between specific behaviors and their drivers.

[0294] Therefore, the specified confidence level for 6553 can be modified by a factor, a step function, or other type of function. In some embodiments, the factor is an increase of one-quarter, one-third, or half in the confidence level. In other embodiments, the step function modifies the string value from “weak” to “moderate”, or from “potential” to “weakly significant”. Other transformations may be considered.

[0295] In some embodiments, composite data arrays 6552 and 6553 are considered similar but not identical. A higher threshold may result in two composite data arrays being more dissimilar, yet still considered similar. In this case, the confidence level can be modified not only in the temporary association library but also in the composite data array. In some embodiments, an interpolation between the values ​​in the two composite data arrays is evaluated. The composite data array obtained from the interpolation replaces the composite data array in the temporary association library. Any future similarity calculations can include the interpolated composite data array.

[0296] At some point later, the person is moving around the room again. As previously described, multiple sensors interact with the person's behavior. In the illustrative embodiment, the person again moves along path 601 toward a specific electronic device 6731. As previously described, the person manually activates the electronic device 6731. The system records the manual activation. The system also records a composite data array consisting of sensor data arrays from the time prior to the manual activation of the electronic device.

[0297] As previously stated, the temporary association library is not empty; repeat the steps above. However, since the specified confidence level has been increased, the increase may be larger than before. The specified confidence level for 6553 can be increased by a factor or a step function or other type of function. In some embodiments, the factor is an increase of one-quarter, one-third, or half of the confidence level. In other embodiments, the step function modifies the string value from "moderate" to "very high," or from "weakly significant" to "predictable." Other transformations may be considered.

[0298] In some embodiments, if the confidence level has been sufficiently increased, the content from the temporary association library may be the basis for automatically creating one or more data arrays to be placed into the reference library and one or more data arrays to be placed into the rule library.

[0299] exist Figure 11 In the illustrative embodiments described in (a)-(c), the data array of 6553 can be stored or recorded to a reference library. As described in the preceding sections, this means that the control system can identify relevant motion patterns and predict some future behavior. This could include predicting that the person is moving toward electronic device 6731.

[0300] The rule base can be updated using the driving event for 6553. The key of this new key-value item in the rule base can be the predicted future behavior of the composite data array for 6553.

[0301] With these two updates to the reference library and rule library, the control system operates as follows: Person 633 begins to move along path 601. After walking along the path for a period of time, but before reaching the location of electronic device 6731, the control system predicts future behavior, and the rule engine automatically activates the electronic device. The system has learned behaviors and rules from the person's behavior in the room.

[0302] In other embodiments, the data array is converted from a temporary associated library to a compressed form before updating the reference library. Compression may result in the loss of information in the composite data array; however, if the loss is minor, the smaller size of the data array makes it the preferred method. Compression can be accomplished by projecting the data array to a lower dimension or through clustering.

[0303] Clustering or projection methods can be, but are not limited to, Principal Component Analysis (PCA), Kernel PCA, Generalized Discriminant Analysis, Sammon Mapping, k-means clustering, affinity propagation, agglomerative clustering, and t-distributed random neighbor embedding. Other clustering or projection methods may also be considered.

[0304] This learning method can create multiple reference data arrays and rules. Figure 11In an illustrative embodiment, person 633 may also move along another path 602 to reach another electronic device 6732. By following the steps of the method described above, the degree of tactile sensation can be sufficiently reduced when a person walks along path 602 to reach electronic device 6732 multiple times. The contents of the temporary association library are used to construct a second reference data array for the reference library and to construct a second rule for the rule base.

[0305] This learning method can create multiple reference data arrays and rules involving the same electronic device. Figure 11 In the illustrative embodiment of (a), a person 633 may move along another path 603 to reach the same electronic device 6732 as path 602. By following the steps of the method described above, the degree of tactile sensation can be sufficiently reduced when the person walks along path 603 to reach the electronic device 6732 multiple times. The contents of the temporary association library are used to construct the third reference data array of the reference library and the third rule of the rule base.

[0306] In some embodiments, the memory used for the reference library and rule library has a limited size. Therefore, in this example embodiment, only a certain number of references and rules can be stored. In the illustrative embodiment, paths 602 and 603 overlap at their ends shortly before reaching the electronic device 6732. In some embodiments, the second and third reference data arrays can be merged into a single data array. The merged data array considers only the sensor data arrays corresponding to the last portions of the two paths.

[0307] With this update to the reference library and rule library, the control system operates as follows: Person 633 begins to move along path 603. Electronic device 6732 is not activated because the reference library does not contain a sufficiently similar array of reference data. After walking along the path for a period of time, approaching the area between sensors 6533 and 6536, but before reaching the position of electronic device 6731, the control system predicts future behavior, and the rule engine automatically activates the electronic device. The system has learned behavior and rules from the person's actions in the room.

[0308] If person 633 begins to move along path 602, the same actuation event occurs once the person approaches the area between sensors 6533 and 6536, but before reaching the position of electronic device 6731. This is accomplished using the same reference data array and the same rules, just as if the person were moving along path 603. Therefore, the required memory is reduced.

[0309] If person 633 moves reliably along path 601 associated with the drive of electronic device 6731, but turns around once every ten times due to something forgotten, the control system can create a drive that should not occur under ideal operation. Learning methods can take note of this and weaken the confidence level of inferred predictions.

[0310] If a person changes their behavior and movement along path 601 completely ceases to be associated with the drive of electronic device 6731, the confidence level in the inferred prediction will further decrease. At some point, the confidence level falls below a threshold, and the rule engine can stop associating any activation with the prediction. The prediction is outdated and can be deleted.

[0311] The learning method can be configured to balance the removal of the correlation between predicted behavior and the driving force. Removing only when the confidence is very low may result in the execution of many driving forces, even though they should not ideally be executed. If the confidence is only slightly below the highest possible value, removal may cause the control system to abandon or ignore valid predictions. The sensitivity and specificity of the control system can be traded off when the prediction and the driving force are no longer correlated.

[0312] In other embodiments, it can be done Figure 7 The weighted average has automatically learned weights in the bipartite graph. For example, regarding... Figure 7 The weights determine the prediction of future behavior, which can be used to predict the location of the person's next movement in space based on the person's previous movement patterns.

[0313] In the illustrative embodiment, the sensor is used as a motion sensor to detect weak and strong local motion.

[0314] For the first sensor in the system, perform the following steps:

[0315] a. If there is no strong or weak movement within the set "cool-down" period (e.g., 5 minutes), the system will set a flag. This flag serves as an activation of learning, preventing frequent and repetitive movement events from leading to false learning.

[0316] b. If there is motion on the second sensor other than the first sensor, and a flag is set, the system can activate a countdown timer (lasting 20 seconds).

[0317] c. If the countdown timer reaches zero, the system clears the flag and reduces the weight associated with the first and second sensor pairs. The system returns to step (a).

[0318] d. If the first sensor detects strong local motion and sets a flag, the system is configured to clear the flag, set the countdown timer to zero, and increment the weight associated with the first and second sensor pairs. The system state returns to step (a).

[0319] Repeat these steps for all sensors in the system.

[0320] After multiple training iterations, the weights of the weighted directed bipartite graph converge to a probability that indicates the frequency at which motion at the first sensor in the system is followed by motion at the second sensor in the system.

[0321] Figure 12 (a)-(c) show an exemplary embodiment in which a light bulb simultaneously incorporates an LED and a motion sensor is illustrated. Figure 12 In (b), the weak motion near light 1 is immediately followed by the strong motion near light 3, not light 2.

[0322] The learned weights can be stored in a temporary library. If the number of motions recorded at the first sensor exceeds a sampling threshold, it can be considered that all weights involving the first sensor have been sufficiently sampled. The corresponding portion of the weighted directed bipartite graph is transferred from the temporary library to the reference library. Therefore, as regarding Figure 7 Motion at the first sensor can lead to predicted future behavior.

[0323] In some embodiments, the sampling threshold is 1. In these embodiments, the control system quickly equips a weighted directed bipartite graph from a reference library and can begin prediction shortly after installation. However, a low threshold implies uncertain weights and lower prediction reliability.

[0324] In some embodiments, the sampling threshold is 1000. In these embodiments, the control system is equipped with a weighted directed bipartite graph from the reference library only after a considerable period. Therefore, the system may have to rely on settings created during manual operation or installation. However, once the threshold is exceeded, the predictions of the inference engine have higher reliability.

[0325] In some embodiments, the sampling threshold is calibrated to provide the control system with the value of a weighted directed bipartite graph learned from a reference library, provided that the erroneous prediction of future partial behavior is no worse than the negative impact on people in the space.

[0326] The learning method can continue to be executed as described, updating the weighted directed bipartite graph in the temporary library. The reference library is periodically updated with the contents of the temporary library so that changes in behavior are reflected in the reference library as part of the control system operation.

[0327] In some embodiments, the temporary library may share the same memory as the reference library and the rule base. Multiple data arrays are stored on the same volatile or non-volatile computer memory, such as, but not limited to, dynamic random access memory, static random access memory, flash memory, floating-gate devices, and nitride read-only memory. Different data arrays are distinguished by storing their unique memory addresses.

[0328] In one embodiment of the system and its operation, the system comprises multiple dimmable LED lights. A motion sensor and an antenna are installed within the housing of each dimmable LED light. Furthermore, a central processing unit and a memory are also housed within the housing of each dimmable LED light, see [link to documentation]. Figure 13 Regarding the illustrative embodiments, each dimmable LED can detect local motion, communicate wirelessly with a corresponding sensor data array, and execute inference engines, rule engines, logical commands, and numerical calculations to update the reference library, rule library, and temporary association library.

[0329] In these embodiments, different libraries use the same memory and execute different engines using the same computer processor. Because the data arrays that must be transmitted and received via wireless coupling or coupling relying on multiple intermediate devices are minimal (if any), each LED is able to respond to behavior with very little latency.

[0330] In some embodiments, the housing of the LED light with motion sensor, memory, and processor is in the shape of a standard bulb, such as an A19 bulb, PAR30, PAR38, MR16 directional light, or T8, T12, or T5 tube. In some embodiments, the housing of the LED light with motion sensor, memory, and processor has a significantly flat shape factor and is polygonal, such as an equilateral triangle, square, or hexagon, see [link to relevant documentation]. Figure 14 and Figure 15 Other structures for LED lights, consisting of multiple sensors, memory, and processing units, could be considered.

[0331] Portable remote sensing system

[0332] In some embodiments, portable remote sensors are adapted to automatically identify nearby devices so that they should be controlled by a remote switch. For example, a person can walk into a room, operate (e.g., press a button) a remote control on a table or glued to the wall, and turn on electronic devices (e.g., lights) nearby (only nearby), all without having to manually specify the lights associated with the remote control via a bulky smartphone ULs, and of course, without having to install wires on the walls and ceiling. One challenge with alternative approaches is that they often require manually identifying electronic devices and inputting them into the control mechanism (e.g., a person must set a specific light to a bedroom, hallway). This process can be time-consuming, inefficient, and prone to errors.

[0333] In some embodiments described herein, an improved method is described in which a portable remote sensor can invoke pre-programmed drive sequences of electronic devices. These pre-programmed drive sequences are used in conjunction with sensors embedded within or otherwise physically coupled to the remote portable device, such that when a specific drive is sensed, only those electronic devices are coupled to control the remote portable device. Alternatively, in another embodiment, spatial relationships are stored to be tracked in a stored data array.

[0334] In the embodiments of the innovative control systems and their learning described so far, the spatial relationships between sensors, between electronic devices, and between sensors and electronic devices are not explicitly represented in the data array. The spatial quality of the behavior is implicit in the composite data array, as well as how it is ordered along the time axis / dimension and which motion mode precedes which drive. For many applications, this is sufficient.

[0335] However, in some applications, it is useful to be able to include logical commands involving the spatial relationship between one or more sensors and one or more electronic devices in multiple logical commands.

[0336] like Figure 16 As shown, a space 790 contains four electronic devices 701-704 and two sensors 711-712. Multiple sensors can detect whether nearby electronic devices are activated. The space includes a wall 791, which prevents sensor 712 from detecting the activation of electronic devices 701 and 702, and sensor 711 from detecting the activation of electronic devices 703 and 704.

[0337] The sensors and electronic devices are connected to at least the central controller 721, which can send data arrays to the electronic devices and receive data arrays from the sensors.

[0338] The central controller can execute the following logical commands. A data array is sent to electronic device 701, instructing it to be driven for a time interval, such as one millisecond, one second, or one minute. The drive is detected by sensor 711, which transmits the sensor data array to the central controller. The central controller stores the association between electronic device 701 and sensor 711 in its memory.

[0339] Next, the central controller sends a data array to the electronic device 702, instructing it to be activated within a time interval. This is driven by sensor 711, and the data is transmitted to the central controller as a sensor data array. The central controller stores the association between the electronic device 702 and the sensor 711.

[0340] Next, the central controller sends a data array to the electronic device 703, instructing it to be activated within a time interval. This activation is detected by sensor 712, and the data is transmitted to the central controller as a sensor data array. The central controller stores the association between the electronic device 703 and the sensor 712.

[0341] Next, the central controller sends a data array to the electronic device 704, instructing it to be activated within a time interval. This activation is detected by sensor 712, and the data is transmitted to the central controller as a sensor data array. The central controller stores the association between the electronic device 704 and the sensor 712.

[0342] At this stage, the central controller stores a data array 722, which represents all relationships between sensors and electronic devices in the space. From the data array 722, the electronic devices are naturally grouped such that electronic devices 701 and 702 can include electronic device group 705. From the data array 722, the electronic devices are naturally grouped such that electronic devices 703 and 704 can include electronic device group 706.

[0343] Because the sensors detect the drive in their vicinity, the group contains spatial information that causes electronic devices 701 and 702 to be close to each other, and electronic devices 703 and 704 to be close to each other. The spatial relationship between the sensors and electronic devices can also be obtained from the data array 722 stored in the central controller 721.

[0344] Grouping electronic devices and sensors helps reduce the complexity of control tasks. If the first and second electronic devices are in the same group, two drive events can be combined into a single drive event, rather than treating the drive of the first electronic device as a separate drive event from that of the second. Therefore, control tasks may require controlling a reduced number of groups of devices, rather than a single electronic device.

[0345] In some embodiments, the device group consists of multiple LED lights. As a group, the multiple LED lights can be turned on, off, brightened, dimmed, and color-adjusted simultaneously. In these embodiments, the rule engine can send an array of operation data to all LED lights in the group.

[0346] In some embodiments, the device group comprises multiple HVAC devices. As a group, multiple HVAC units can be adjusted to increase ventilation velocity, increase current, increase refrigerant gas flow, or vice versa. In these embodiments, the rule engine can send an array of operational data to all HVAC devices in the group.

[0347] In some embodiments, the device group consists of two or more devices of different types, but they can still operate in concert.

[0348] While each device in a group of multiple devices can be comprised of hardware and software that allows it to operate as a single unit, grouping reduces the complexity of rules in a rule base. In some embodiments, it may be impossible to find behavior that optimally correlates with changes in the environment that involve the control of an individual device among multiple devices in a group of electronic devices. In these embodiments, coordinated control of multiple devices in a group of electronic devices is more useful for people in a space.

[0349] In some embodiments, the device group is dynamically defined relative to the portable remote sensor 729, see Figure 17 The portable remote sensor is not installed in a fixed location, but can be moved between rooms by a person in the room.

[0350] exist Figure 17 In the illustrative embodiment, the portable remote sensor is located in the same room as electronic devices 701 and 702; however, it can be moved to be located in the same room as electronic devices 703 and 704.

[0351] A portable remote sensor can be initialized to generate a data array 723.

[0352] The actuators 701-704 of the system first execute in a pre-programmed order. For example, they can be rapidly turned on and off in the order of actuator 701 first, actuator 702 second, actuator 703 third, and actuator 704 fourth. (2) Sensor 718 is used for its sensing object during the sequence sensing, which is the output of actuators 701-704. (3) The sensing signal of sensor 718 is aligned with a known pre-programmed order. If a signal is sensed when actuator 701 is activated in the pre-programmed sequence, it is inferred that actuator 718 is close to actuator 701. Conversely, if no signal is sensed (or a signal below the intensity threshold is sensed) when actuator 703 is activated in the pre-programmed sequence, it is inferred that sensor 718 is not close to actuator 703. (4) These inferred spatial relationships between sensors 718 and actuators 701-704 are stored in data array 723.

[0353] The portable remote sensor 729 may include at least a first-class sensor 719 and a second-class sensor 718. The first-class sensor 719 may detect and characterize the effects of driving events via one or more electronic devices 701-704 installed in a space and partial control system. The proximity of the first sensor 719 to one or more electronic devices 701-704 may be part of the characterization performed by the sensor. Figure 17 In this embodiment, this means that the driver of 701 or 702 is detected, but the driver of 703 or 704 is not detected.

[0354] The central controller can execute the following logical commands. A data array is sent to electronic device 701, instructing it to be driven for a time interval, such as one millisecond, one second, or one minute. Driven by sensor 719, this drive is transmitted to the central controller as a sensor data array. The central controller stores the association between electronic device 701 and sensor 719 in its memory.

[0355] A series of such drives are performed, each occurring only within a single time interval. Therefore, the alignment and drive sequence of multiple sensor data arrays can classify each electronic device as a neighboring member of sensor 719, i.e., a spatial relationship.

[0356] At this stage, the central controller 721 stores a data array 723 representing the spatial relationship between the sensor 719 and the electronic devices 701-704 installed in the space. Based on the data array, electronic devices naturally grouped around the portable remote sensor 729.

[0357] In an illustrative embodiment, another sensor 718, as part of the portable remote sensor, interacts with the sensed object. The sensed object may be triggered by the actions of a person 733 in the space. This event can be encoded into a data array that can be transmitted to a central controller. The two sensors of the portable remote sensor are spatially compact due to the design of the portable remote sensor. The stored data array 723 is available for use by the central controller.

[0358] Therefore, the control system can infer from the execution of a syllogism that the person's behavior occurred near certain electronic devices. In an illustrative embodiment, the syllogism could be: (Proposition 1) Person 733 performs the action of approaching sensor 718, (Proposition 2) Sensor 718 approaches sensor 719, (Proposition 3) Sensor 719 approaches electronic devices 701 and 702, therefore, person 733 performs the action of approaching electronic devices 701 and 702. Other syllogisms or logical commands may be considered.

[0359] Therefore, the inference engine can create part of the predicted behavior by executing logical commands.

[0360] In a specific example, when actuators 701-704 are illumination, sensor 718 is an ambient light sensor. However, for this method to function properly, the actuation of actuators 701-704 must result in a rapid change in the environment. Light is a good signal, while heat is not because it diffuses slowly.

[0361] The rule engine can then associate predicted partial behaviors at specific locations near electronic devices 701 and 702 with rules to drive electronic devices 701 and 702, rather than electronic devices 703 or 704. Therefore, the control system associates behavior within the room's spatial environment with driving events and environmental changes. The portable remote sensor and the data array 723 it creates provide the inference engine with information about the spatial environment.

[0362] Therefore, in this example, (1) a person 733 engages in an action in the room. For example, moving or pressing a button. (2) This action is sensed by sensor 719, which is part of a portable device placed in the room. For example, sensor 719 could be a motion sensor or a button. (3) Sensor 719 is known to be near sensor 718 prior to the action. This prior relationship could be a result of the portable device’s manufacture and would not be altered after assembly. (4) Sensor 718 is spatially related to multiple actuators in rooms 701-704, as described in the storage data array 723. For example, the spatial relationship could be a binary “close” / “not close” relationship. (5) Therefore, when a person 733 performs some action in the room, a subset of actuators can be activated, taking into account the spatial relationships. For example, a person pressing a button on a portable device might only turn on a light near the portable device, which in the illustrative embodiment is 701 and 702, not 703 and 704.

[0363] In some embodiments, see Figure 18 The central controller 721 is contained within the housing of the portable remote sensor 728. The operation of the control system is as follows: Figure 17 The process is described above. The central controller can communicate with the sensor array of the portable remote sensor via wires or conductive traces instead of a wireless connection.

[0364] In some embodiments, the central controller 721 is contained within the housing of the portable remote sensor 728, and the portable remote sensor is physically connected to the body of a person 733. Therefore, a person can wear the portable remote sensor.

[0365] In some embodiments, the central controller updates the data array 723, which represents the relationship between the sensor 719 and the electronic devices installed in spaces 701-704, at fixed intervals (e.g., every 1 minute, every 10 minutes, every 1 hour).

[0366] In some embodiments, if person 733 presses a button, the central controller updates the associated data array 723 representing the sensor 719 and the electronic devices 701-704 installed in the space. The button can connect a portion of the housing to a remote control.

[0367] In some embodiments, if a third type of sensor detects that the portable remote sensor is moving, the central controller updates the data array 723 representing the relationship between sensor 719 and electronic devices 701-704 installed in space. The third type of sensor may be an accelerometer or a gyroscope, capable of detecting and characterizing motion or acceleration.

[0368] In some embodiments, the sensor 719, which can detect and characterize the driving events of electronic devices 701-704, can be an ambient light sensor, and the electronic devices 701-704 can be LED lights. Light waves emitted by the electronic devices reaching the sensor detector surface interact with the solid material, and the property is that charge is only conducted when light within a certain frequency range illuminates the material. The conducted charge generates a current, which can be represented as a sensor data array. Because light travels quickly and only requires a brief interaction between the light and the solid material, the control system can rapidly determine the spatial environment of the portable remote sensor. The duration of the spatial environment determination can be 1 millisecond, 100 milliseconds, 1 second, or 10 seconds.

[0369] In some embodiments, the sensor 719, which can detect and characterize driving events of electronic devices 701-704, can be an antenna tuned to detect and characterize electromagnetic waves at a set frequency. The frequency can be 2.4 GHz. The frequency can be 5 GHz. Other frequencies are also possible. Since the intensity of electromagnetic waves decreases with increasing distance, the intensity of the detected electromagnetic waves can be used to characterize the spatial distance between the sensor and multiple electronic devices.

[0370] In some embodiments, the sensor 718, which can detect and characterize human behavior, can be a switch that interacts with forces applied by a person. The switch can interact with forces applied by a person, such as by pulling on a supporting surface like a floor or seat, or by touching, pressing, or twisting the sensor component. The switch can be a push-button switch, rotary switch, slide switch, toggle switch, rocker switch, key-lock switch, or combination switch. The switch can be part of a touchscreen. Other switching technologies are also possible.

[0371] In some embodiments, the sensor 718, which can detect and characterize human behavior, may be a microphone that interacts with the mechanical air waves generated by the behavior (e.g., speaking, clapping, breaking a finger, and walking on a hardwood floor). If it is spoken language, the sensor may be sentence-specific, such as “turn on the light,” “set the light to sunset mode,” or “lower the temperature by a few degrees.”

[0372] In some embodiments, the sensor 718 that can detect and characterize human behavior can be a motion sensor that interacts with the variable motion of a person's gestures or walking.

[0373] In some embodiments, the portable remote sensor is a smartphone. The sensor, as part of the smartphone, can be programmed to perform the detection and feature description described above. In other embodiments, the portable remote sensor is a wearable device, such as a smartwatch, smart wristband, smart glasses, smart textile, or other device or material integrated with an object that a person can wear, and may consist of at least one sensor and a programmable integrated circuit to perform logical commands and numerical calculations.

[0374] The control system may consist of additional electronic equipment, which may be in a known spatial relationship with other electronic equipment, see [link to relevant documentation]. Figure 19 (a)-(c). As in the previous embodiments, the sensor 719 of the portable remote sensor can detect and characterize actuation events of a plurality of electronic devices 701-704. The system also includes a second plurality of electronic devices 741-744. The first plurality of electronic devices may be in a known spatial relationship with the second plurality of electronic devices. Figure 19 In the illustrative embodiments described, the relationship is as follows: electronic device 701 is close to electronic device 741; electronic device 702 is close to electronic device 742; electronic device 703 is close to electronic device 743; and electronic device 704 is close to electronic device 744. In some embodiments, the two types of electronic devices are contained within the same housing.

[0375] The execution of logical commands in these embodiments can begin as in previous embodiments to determine the space environment of the portable remote sensor. The first-type sensor 719 can detect and characterize the effects of driving events via one or more electronic devices 701-704 installed in the space and partial control system. The proximity of the first sensor 719 to one or more electronic devices 701-704 can be part of the characterization performed by the sensor. Figure 19 In the embodiments in (a)-(c), this means that the drive of electronic device 701 or 702 is detected, but the drive of electronic device 703 or 704 is not detected.

[0376] At this stage, the central controller 721 stores a data array 723 representing the relationship between the sensor 719 and the electronic devices 701-704 installed in the space. From the data array, the electronic devices near the portable remote sensor 729 are naturally grouped.

[0377] In an illustrative embodiment, another sensor 718, as part of the portable remote sensor, interacts with the sensed object. The sensed object may be triggered by the actions of a person 733 in the space. This event can be encoded into a data array that can be transmitted to a central controller. The two sensors of the portable remote sensor are spatially compact due to the design of the portable remote sensor. The stored data array 723 is available for use by the central controller.

[0378] Therefore, the control system can infer from the execution of a syllogism that a person's behavior occurred near certain electronic devices. In an illustrative embodiment, the syllogism could be: (Proposition 1) Person 733 performs the action of approaching sensor 718, (Proposition 2) Sensor 718 approaches sensor 719, (Proposition 3) Sensor 719 approaches electronic devices 701 and 702, (Proposition 4) Electronic devices 701 and 702 approach electronic devices 741 and 742, therefore, person 733 performs the action of approaching electronic devices 741 and 742 respectively. Other syllogisms or logical commands may be considered.

[0379] Therefore, the inference engine can create part of the predicted behavior by executing logical commands.

[0380] The rule engine can then associate predicted partial behaviors at specific locations near electronic devices 741 and 742 with rules to drive electronic devices 741 and 742, rather than electronic devices 743 or 744. Therefore, the control system associates behavior within the room's spatial environment with driving events and environmental changes. The portable remote sensor and the data array 723 it creates provide the inference engine with information about the spatial environment.

[0381] Figure 19 The two types of electronic devices and two types of sensors in the illustrative embodiments can perform different functions in the operation of the control system. Sensor 719 and electronic devices 701-704 can perform a learning function of the space environment. Therefore, the portable remote sensor can be characterized as being in a relative position with respect to multiple space environment electronic devices.

[0382] Sensors 718 and electronics 741-744 can correlate behavior with environmental changes via actuation. This functionality can be part of a combination of known spatial relationships between sensors 718 and 719 and between electronics 701-704 and 741-744, the spatial environment of the behavior, and the location of the actuation. In other words, the behavior can have a location in space, and the response to said behavior can be spatially constrained, where the spatial constraints can be dynamically determined by the portable remote sensor.

[0383] Preferably, multiple sensors and multiple electronic devices capable of performing space environment learning functions rely on the rapid transmission of signals with a limited range and distinguishable from other activities in space.

[0384] The preferred signal can be a light wave transmitted from an electronic device and detected by a light sensor. The light wave travels very fast, and its intensity decreases as the distance from the light source and the light sensor increases. The light wave can also be pulsed.

[0385] Examples of portable remote sensors include Figure 20As shown. The remote sensor consists of a button that senses force on the "+" symbol, the "-" symbol, and the crescent-shaped symbol. An array of sensor data can be created to reflect how the button is pressed. The remote sensor also includes [further details about the remote sensor]. Figure 20 The sensor inside the top hemispherical housing can sense light. Therefore, Figure 20 Portable remote sensors in the middle can be used to transmit signals such as those related to... Figure 18 The operation of the portable remote sensor is locally controlled for illumination.

[0386] Another preferred signal can be electromagnetic waves, such as radio waves, transmitted from an electronic device and detected by a receiving antenna. Electromagnetic waves travel very fast and their intensity decreases with increasing distance from the transmitting electronic device and the receiving antenna. Furthermore, electromagnetic waves can also be pulsed.

[0387] For electronic devices used for learning about the spatial environment, a less suitable signal is heat diffusion from a heated radiator, detected by a temperature sensor (thermometer). Heat diffusion is slow, and convection caused by directional airflow can obscure the spatial relationship between the heat source and the thermometer.

Claims

1. A method for automatically operating a plurality of electronic devices at a location, wherein said plurality of electronic devices being coupled to a first communication network such that data arrays can be transmitted and received, and wherein the operation of the electronic devices is changed or set by the operation data arrays, wherein a plurality of sensors in the space are coupled to a second communication network such that data arrays can be transmitted and received, and wherein the sensor signals of the sensors are represented as sensor data arrays, wherein a reference library stores a plurality of reference data arrays, said method comprising the steps of: constructing a composite data array of a plurality of sensor data arrays received from said plurality of sensors over said second communication network within a time interval, evaluating a plurality of similarities of said composite data array to a plurality of reference data arrays in said reference library, predicting that a future sensor data array or a plurality of future sensor data arrays is equal to a reference data array or a plurality of reference data arrays having the highest similarity among the evaluated plurality of similarities, unless a reference data array having a similarity greater than a first threshold is missing, associating the predicted future sensor data array or the predicted plurality of future sensor data arrays with a first actuation of said plurality of electronic devices, and transmitting a plurality of operation data arrays to said plurality of electronic devices over said first communication network according to said first actuation; wherein said plurality of sensors consists of a plurality of motion sensors, and said sensor data arrays consist of one or more motion feature values of one or more persons within a distance of said plurality of motion sensors.

2. The method of claim 1, wherein, said plurality of similarities of said composite data array to said plurality of reference data arrays in said reference library are evaluated by comparing a first partial sequence of said composite data array and a second partial sequence of said reference data arrays, wherein the first partial sequence and the second partial sequence are locally aligned.

3. The method of claim 1, wherein, said plurality of similarities of said composite data array to said plurality of reference data arrays in said reference library are evaluated by comparing a first compressed data array from said composite data array and a compressed reference data array in said reference library.

4. The method of claim 1, wherein, said plurality of electronic devices consists of a plurality of LED lights, and said operation data arrays consist of one or more voltage or current values.

5. The method of claim 4, wherein, said plurality of LED lights are color tunable, and said operation data arrays consist of one or more current values corresponding to different color light emitting diodes constituting said color tunable LED lights.

6. The method of claim 1, wherein, said plurality of motion feature values consist of ordered discrete levels proportional to the radial distance of one or more persons to a plurality of sensors.

7. The method of claim 1, wherein, said plurality of electronic devices consists of a plurality of light switches, and said operation data arrays consist of one or more Boolean values.

8. The method of claim 1, wherein, said plurality of electronic devices consists of a plurality of dimmer switches, and said operation data arrays consist of one or more percentage values.

9. The method of claim 1, wherein, said plurality of sensors consists of a plurality of ambient light sensors, and said sensor data arrays consist of one or more ambient light feature values present in said location.

10. The method of claim 1, wherein, said sensors in said plurality of sensors are low resolution sensors that cannot resolve the personal identity information of one or more persons in said location.

11. The method of claim 1, wherein, The time interval is 10 seconds before the current time, or wherein the time interval is 1 hour before the current time.

12. The method of claim 1, wherein, The plurality of electronic devices consists of internet-connected devices that can send information messages or warning messages to devices remote from the space.

13. The method of claim 1, wherein, The plurality of sensors consists of a plurality of switches, and the array of sensor data consists of one or more values corresponding to the disposition of the plurality of switches.

14. The method of claim 1, wherein, The plurality of electronic devices and the plurality of sensors are located within a plurality of shared housings, such that each housing contains at least one electronic device and at least one sensor.

15. The method of claim 14, wherein, The shared housing and its internal components include a light.

16. The method of claim 1, wherein, The location is a single room in an office or residence, or wherein the location is a plurality of contiguous rooms in an office or residence.

17. A control system for automatically operating a plurality of electronic devices in a location, the system comprising: at least one programmable integrated circuit capable of executing logical commands and numerical calculations, at least one memory capable of storing a plurality of data arrays, a plurality of sensors in the location that interact with perceived objects induced by a plurality of behaviors of at least one person in the location, a first communication network through which data arrays are transmitted and received, coupled to the plurality of electronic devices in the location and at least one other component of the system, a second communication network through which data arrays are transmitted and received, coupled to the plurality of sensors in the location and at least one other component of the system, automatically operating the plurality of electronic devices in the location with the programmable integrated circuit to: construct a composite data array of the plurality of data arrays received from the plurality of sensors through the second communication network over a time interval, evaluate a plurality of similarities of the composite data array to a plurality of reference data arrays in the memory, predict a future sensor data array or a plurality of future sensor data arrays equal to a reference data array or a plurality of reference data arrays having a highest similarity among the evaluated plurality of similarities, unless a reference data array having a similarity greater than a first threshold is lacking, associate the predicted future sensor data array or the predicted plurality of future sensor data arrays with a first actuation of the plurality of electronic devices, and transmit a plurality of operational data arrays to the plurality of electronic devices through the first communication network according to the first actuation; wherein the plurality of sensors consists of a plurality of motion sensors, and the plurality of data arrays received through the second communication network consists of one or more motion feature values of one or more persons within a distance of the plurality of motion sensors.

18. The control system of claim 17, wherein, evaluate a plurality of similarities of the composite data array stored in memory to the plurality of reference data arrays in the reference library by comparing a first partial sequence of the composite data array and a second partial sequence of the reference data array, wherein the first partial sequence and the second partial sequence are locally aligned.

19. The control system of claim 17, wherein, evaluating a plurality of similarities of the composite data array stored in the memory to the plurality of reference data arrays in the reference library by comparing a first compressed data array from the composite data array to a compressed reference data array in the reference library.

20. The control system of claim 17, wherein, the operation of the plurality of electronic devices remains unchanged due to lack of a reference data array having a similarity to the composite data array greater than the first threshold.

21. The control system of claim 17, wherein, the plurality of electronic devices consists of a plurality of LED lights and the plurality of data arrays transmitted over the first communication network consists of one or more current values.

22. The control system of claim 21, wherein, the plurality of LED lights are color adjustable and the plurality of data arrays transmitted over the first communication network consists of one or more current values corresponding to different color light emitting diodes that make up the color adjustable LED lights.

23. The control system of claim 22, wherein, the sensed object consists of a Doppler shifted electromagnetic wave.

24. The control system of claim 17, wherein, the plurality of electronic devices consists of a plurality of light switches and the operational data array consists of one or more Boolean values.

25. The control system of claim 17, wherein, the plurality of electronic devices consists of a plurality of dimmer switches and the operational data array consists of one or more percentage values.

26. The control system of claim 17, wherein, the plurality of sensors consists of a plurality of ambient light sensors and the sensor data array consists of one or more ambient light feature values present in the location, or wherein the plurality of sensors consists of a plurality of low resolution motion sensors and the sensor data array consists of one or more motion feature values present in the location.

27. The control system of claim 17, wherein, the time interval is 10 seconds prior to the current time, or the time interval is 1 hour prior to the current time.

28. The control system of claim 17, wherein, the plurality of electronic devices consists of internet connected devices that can send information messages or warning messages to devices remote from the location.

29. The control system of claim 17, wherein, the plurality of sensors consists of a plurality of switches and the sensor data array consists of one or more values corresponding to the settings of the plurality of switches.

30. The control system of claim 17, wherein, the plurality of electronic devices and the plurality of sensors are located in a plurality of shared enclosures such that each enclosure contains at least one electronic device and at least one sensor.

31. The control system of claim 30, wherein, the shared enclosures and their internal components include lighting.

32. The control system of claim 17, wherein, the location is a single room in an office or residence, or the location is a plurality of connected rooms in an office or residence.

Citation Information

Patent Citations

  • Transport method in hierarchical data network

    WO2019134046A1

  • Policy-driven automated facilities management system

    US20130226320A1