Learning device, machine control system, learning method, and program
The learning device uses machine learning to create an estimation model for accurate air quality control with fewer sensors, addressing low prediction accuracy in existing technologies and enhancing device control efficacy.
Patent Information
- Application Number
- JP2024507195
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-03-14
- Publication Date
- 2025-08-01
- Estimated Expiration
- 2042-03-14
AI Technical Summary
Existing technologies for adjusting air quality using a small number of sensors result in low prediction accuracy, leading to inadequate device control due to reliance on predicted sensor values.
A learning device generates an estimation model using machine learning to estimate control values from a reduced number of sensors, incorporating data from other sensors and devices, ensuring accurate device control with fewer sensors.
Enables appropriate device control with a minimal number of sensors by generating an estimation model that accurately predicts control values, reducing power consumption and installation complexity while maintaining effective air quality adjustment.
Smart Images

Figure 0007717258000001 
Figure 0007717258000002 
Figure 0007717258000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to a learning device, a device control system, a learning method, and a program.
Background Art
[0002] Currently, a technique for adjusting the air quality of a target space using a sensor that detects the air quality of the target space, a device that adjusts the air quality of the target space, and a control device that controls the device is known. The control device calculates, for example, an arithmetic value used for controlling the device from sensor values output by a plurality of sensors, and controls the device based on the calculated arithmetic value. Here, in order to appropriately adjust the air quality of the target space, it is preferable to install a large number of sensors in the target space. However, considering restrictions on the installation location of the sensors, power consumption of the sensors, etc., there may be cases where it is not desired to install a large number of sensors in the target space.
[0003] As a technique related to such circumstances, Patent Document 1 describes a technique for predicting the sensor value of one sensor from the sensor values of other sensors in order to suppress the power consumption of the sensors. Specifically, Patent Document 1 describes a technique for predicting a first sensor value from a second sensor value based on the correlation between the first sensor value and the second sensor value during a period in which the first sensor value measured by the first sensor device is not acquired and the second sensor value measured by the second sensor device is acquired.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] However, in the technology described in Patent Document 1, since the first sensor value itself is predicted, the prediction accuracy is low, and appropriate device control may not be achieved. For example, when calculating the above calculation value from the first sensor value and the second sensor value, if the first sensor value itself is predicted from the second sensor value and the above calculation value is calculated from the second sensor value and the predicted first sensor value, the accuracy of the above calculation value may be lower than directly predicting the above calculation value from the second sensor value. Therefore, a technology that supports realizing appropriate device control with a small number of sensors is desired.
[0006] The present disclosure has been made in view of the above problems, and an object thereof is to provide a learning device, a device control system, a learning method, and a program that support realizing appropriate device control with a small number of sensors.
Means for Solving the Problems
[0007] To achieve the above object, a learning device according to the present disclosure learning data acquisition means for acquiring learning data including a sensor value output by a first number of first sensors that detect the quality of air in a target space, and a first calculation value used for controlling a first device that adjusts the quality of air in the target space, obtained from the sensor value output by the first number of the first sensors; learning means for generating an estimation model for estimating a second calculation value used for controlling the first device from sensor values output by a second number of second sensors that is less than the first number and is selected from the first number of the first sensors, by machine learning using the learning data acquired by the learning data acquisition means.
Effects of the Invention
[0008] In the present disclosure, an estimation model for estimating a second calculation value used for controlling a first device from sensor values output by a second number of second sensors that is less than the first number and is selected from the first number of the first sensors is generated. Therefore, according to the present disclosure, it is possible to support realizing appropriate device control with a small number of sensors.
Brief Description of the Drawings
[0009]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Modes for Carrying Out the Invention
[0010] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals.
[0011] (Embodiment 1) FIG. 1 is a diagram showing the configuration of a device control system 1000 according to Embodiment 1. The device control system 1000 is a system that learns an arithmetic value used for controlling a device from sensor values output by sensors, and controls the device using an estimation model obtained by learning. The device control system 1000 learns an arithmetic value in a learning stage and controls the device in an operation stage. The learning stage is a stage of learning an arithmetic value used for controlling a device and generating an estimation model for estimating this arithmetic value. The operation stage is a stage of operating the device control system 1000 using the estimation model, and a stage of controlling the device using the estimation model.
[0012] In the learning stage, the device control system 1000 learns an appropriate arithmetic value used for controlling a device using sensor values output by a large number of sensors, and in the operation stage, controls the device using sensor values output by a small number of sensors and the estimation model. The learning process, that is, the update process of the estimation model, is performed, for example, once every three months. For example, the first week of the three months is the learning stage, and the remaining period of the three months is the operation stage. According to the device control system 1000, in the operation stage, the device can be appropriately controlled using a smaller number of sensors than the number of sensors used in the learning stage.
[0013] In the learning stage, in order to generate an estimation model with high accuracy, it is preferable to install a large number of sensors in the target space. On the other hand, in the operation stage, from the viewpoints of convenience, power consumption, aesthetics, etc., it is preferable that the number of sensors installed in the target space is small. For example, if there are too many sensors installed, the sensors may interfere with the work. Also, if there are too many sensors installed, the power consumption is large. Further, if there are too many sensors installed, there is a high possibility of spoiling the aesthetics.
[0014] Note that since the learning stage is relatively short, it is often considered that these adverse effects are not so much of a concern. Also, when using battery-powered sensors, there is no need for wiring routing work to secure power, and the work load for installing the sensors is small. Since the period of the learning stage is shorter than that of the operation stage, even when using battery-powered sensors, the battery consumption can be ignored. Therefore, it is preferable to install a large number of sensors in the target space during the learning stage and a small number of sensors in the target space during the operation stage.
[0015] As shown in FIG. 1, the device control system 1000 includes one or more servers 100. The device control system 1000 functions as a cloud that provides a service for controlling devices by the operation of one server 100 or by the cooperation of a plurality of servers 100. In the present embodiment, the device control system 1000 includes at least server 100A and server 100B. Hereinafter, server 100A and server 100B are collectively referred to as server 100 as appropriate. Server 100A and server 100B are communicably connected to each other via a communication network 800. The communication network 800 is, for example, the Internet. Further, one or more first devices 300, a plurality of first sensors 400, one or more second devices 500, one or more third sensors 600, and a terminal device 700 are connected to the communication network 800.
[0016] The server 100 is a server that provides various services related to device control. The server 100 includes a learning function for learning operation values used for device control and generating an estimation model, a control function for controlling devices using the estimation model, and a communication function for connecting to the communication network 800 and communicating with various devices. The server 100 is, for example, a cloud server that provides a service for controlling devices. A cloud server is a server that provides resources in cloud computing. As shown in FIG. 2, the server 100 includes a control unit 11, a storage unit 12, and a communication unit 13.
[0017] The control unit 11 includes a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), an RTC (Real Time Clock), etc. The CPU, also called a central processing unit, a central arithmetic unit, a processor, a microprocessor, a microcomputer, a DSP (Digital Signal Processor), etc., functions as a central arithmetic processing unit that executes processes and calculations related to the control of the server 100. In the control unit 11, the CPU reads programs and data stored in the ROM, and uses the RAM as a work area to comprehensively control the server 100. The RTC is, for example, an integrated circuit having a timekeeping function. Note that the CPU can specify the current date and time from the time information read from the RTC.
[0018] The storage unit 12 includes a non-volatile semiconductor memory such as a flash memory, an EPROM (Erasable Programmable ROM), an EEPROM (Electrically Erasable Programmable ROM), etc., and plays the role of a so-called auxiliary storage device. The storage unit 12 stores programs and data used by the control unit 11 to execute various processes. In addition, the storage unit 12 stores data generated or acquired when the control unit 11 executes various processes.
[0019] The communication unit 13 communicates with devices connected to the communication network 800 according to the control by the control unit 11. The communication unit 13 communicates with various devices in accordance with various wireless communication standards. Examples of various wireless communication standards include Wi-Fi (registered trademark). The communication unit 13 includes a communication interface compliant with various communication standards.
[0020] The first device 300 is a device to be controlled installed in the target space. In the present embodiment, the first device 300 is a device that adjusts the air quality in the target space. Adjusting the air quality basically means improving the air quality. Improving the air quality is, for example, reducing the proportion of CO2 in the air, removing dust, dirt, particles, etc. in the air, or removing substances that cause odors in the air. The first device 300 is a ventilation device that replaces the air in the target space, an air purifier that removes dust, pollen, house dust, etc. floating in the air of the target space, and the like. The first device 300 has a function of connecting to the communication network 800 directly or via a relay device. The first device 300 is an example of the first device.
[0021] The first sensor 400 is a sensor installed in the target space during the learning stage. In the present embodiment, the first sensor 400 is a sensor that detects the air quality in the target space. The first sensor 400 outputs a sensor value indicating a numerical value to be detected. The sensor value output by the first sensor 400 is used for calculating the first calculation value, which is a calculation value used for controlling the first device 300 during the learning stage. Also, the sensor value output by the first sensor 400 is used for learning the estimation model. The estimation model is a model for estimating the second calculation value, which is a calculation value to be used for controlling the first device 300 during the operation stage, from the sensor value output by the second sensor 400S, the operation data output by the second device 500, and the sensor value output by the third sensor 600.
[0022] The first sensor 400 is a CO2 sensor that detects the amount of carbon dioxide in the air, a PM2.5 sensor that detects the amount of PM (Particulate Matter) 2.5 in the air, an odor sensor that detects the odor of the air, and the like. The first sensor 400 has a function of connecting to the communication network 800 directly or via a relay device. In the present embodiment, the first sensor 400 is a CO2 sensor. The first sensor 400 is an example of the first sensor.
[0023] The second sensor 400S is a sensor installed in the target space during the operation stage. The second sensor 400S is a sensor selected from a plurality of first sensors 400. More specifically, the second sensor 400S is a first sensor 400 that is installed in the target space during the operation stage without being thinned out among the plurality of first sensors 400 installed in the target space during the learning stage. The second number, which is the number of the second sensors 400S, is less than the first number, which is the number of the first sensors 400. The sensor value output by the second sensor 400S is used for estimating the second calculated value using the estimation model. The second sensor 400S is an example of the second sensor.
[0024] The second device 500 is a device installed in the target space that is not a control target. The second device 500 is an air conditioner, a lighting device, etc. The second device 500 outputs operation data indicating the operation state of the second device 500. The operation data is, for example, the set temperature, set humidity, operation mode, air volume, wind direction, etc. when the second device 500 is an air conditioner. The operation data is, for example, the lighting state, illuminance, etc. when the second device 500 is a lighting device. The operation data output by the second device 500 is used for learning the estimation model and estimating the second calculated value using the estimation model. The second device 500 has a function of connecting to the communication network 800 directly or via a relay device. The second device 500 is an example of the second device.
[0025] The third sensor 600 is a sensor different from the first sensor 400 installed in the target space. The third sensor 600 is a human presence sensor that detects the presence or absence of a person, an opening / closing sensor that detects the opening / closing state of a window, a door, etc. The third sensor 600 may be a sensor installed in the second device 500. For example, the third sensor 600 may be a temperature sensor installed in an air conditioner. Examples of the temperature sensor include a temperature sensor that detects the suction temperature, which is the temperature of the air sucked in by the air conditioner, and a temperature sensor that detects the blowing temperature, which is the temperature of the air blown out by the air conditioner. The third sensor 600 outputs a sensor value indicating a numerical value of the detection target. The sensor value output by the third sensor 600 is used for learning the estimation model and estimating the second calculation value using the estimation model. The third sensor 600 has a function of connecting to the communication network 800 directly or via a relay device. The third sensor 600 is an example of the third sensor.
[0026] The terminal device 700 is an information processing device used by a user. The terminal device 700 receives various operations from the user and presents various information to the user. The terminal device 700 includes an operation reception function for receiving various operations, a display function for displaying various information, a communication function for connecting to the communication network 800, etc. The terminal device 700 is, for example, a smartphone, a tablet terminal, a notebook computer, etc.
[0027] Next, with reference to FIGS. 3 and 4, the arrangement of each device installed in the target space will be described. FIG. 3 shows the arrangement of each device installed in the target space in the learning stage. FIG. 4 shows the arrangement of each device installed in the target space in the operation stage.
[0028] As shown in FIG. 3, in the learning stage, as the first device 300, the first device 300A, the first device 300B, the first device 300C, and the first device 300D are installed in the target space. Also, in the learning stage, as the first sensor 400, the first sensor 400AA, the first sensor 400AB, the first sensor 400AC, the first sensor 400AD, the first sensor 400AE, the first sensor 400AF, the first sensor 400BA, the first sensor 400BB, the first sensor 400BC, the first sensor 400BD, the first sensor 400BE, the first sensor 400BF, the first sensor 400CA, the first sensor 400CB, the first sensor 400CC, the first sensor 400CD, the first sensor 400CE, the first sensor 400CF, the first sensor 400DA, the first sensor 400DB, the first sensor 400DC, the first sensor 400DD, the first sensor 400DE, and the first sensor 400DF are installed in the target space. Also, in the learning stage, as the third sensor 600, the third sensor 600A, the third sensor 600B, the third sensor 600E, and the third sensor 600F are installed in the target space. Note that the illustration of the second device 500 is omitted.
[0029] The dashed lines 50A, 50B, 50C, and 50D indicate groups of sensor values used for calculating the first calculation value for controlling one first device 300 in the learning stage. For example, in the group indicated by the dashed line 50A, it shows that the first calculation value for controlling the first device 300A is calculated by an operation using the six sensor values output by the first sensor 400AA, the first sensor 400AB, the first sensor 400AC, the first sensor 400AD, the first sensor 400AE, and the first sensor 400AF.
[0030] Here, in the learning stage, a large number of first sensors 400 are installed in the target space in order to generate an accurate estimation model. On the other hand, in the operation stage, from the viewpoints of convenience, power consumption, aesthetics, etc., a small number of second sensors 400S are installed in the target space. That is, the number of second sensors 400S installed in the operation stage is less than the number of first sensors 400 installed in the learning stage. Therefore, in the operation stage, as shown in FIG. 4, as the second sensors 400S, a first sensor 400CF and a first sensor 400DC are installed in the target space, and the other first sensors 400 are not installed in the target space. Note that there is no difference in the number of the first device 300, the second device 500, and the third sensor 600 installed between the learning stage and the operation stage.
[0031] Next, with reference to FIGS. 5 and 6, the functions of the device control system 1000 will be described. FIG. 5 is a diagram for explaining the functions of the device control system 1000 in the learning stage. FIG. 6 is a diagram for explaining the functions of the device control system 1000 in the operation stage. The device control system 1000 functionally includes an arithmetic unit 101, a device control unit 102, a learning data acquisition unit 103, a learning unit 104, a sensor information output unit 105, an operation data acquisition unit 106, an estimation unit 107, and a state determination unit 108.
[0032] These functions are realized by the configuration provided in the server 100. That is, these functions are realized by software, firmware, or a combination of software and firmware. The software and firmware are described as programs and stored in the ROM or the storage unit 12. Then, the CPU realizes these functions by executing the programs stored in the ROM or the storage unit 12.
[0033] Note that the device control system 1000 can also be said to functionally include a control device 150 that controls the first device 300 using the estimation model generated by the learning device 160, and a learning device 160 that generates the estimation model through learning. In this case, the control device 150 includes an arithmetic unit 101, a device control unit 102, an operation data acquisition unit 106, an estimation unit 107, and a state determination unit 108. The learning device 160 includes a learning data acquisition unit 103, a learning unit 104, and a sensor information output unit 105. The functions of the control device 150 and the learning device 160 may be realized by the cooperation of the server 100A and the server 100B, or may be realized by the individual functions of the server 100A or the server 100B. The control device 150 is an example of a control device. The learning device 160 is an example of a learning device.
[0034] In the learning stage, the arithmetic unit 101 executes arithmetic operations on the sensor values output by the first number of first sensors 400, and calculates a first arithmetic value used for controlling the first device 300. The first arithmetic value is an arithmetic value used for controlling the first device 300 in the learning stage, and is an arithmetic value calculated from the sensor values output by the first number of first sensors 400. The method for calculating the first arithmetic value from the sensor values can be adjusted as appropriate.
[0035] The first arithmetic value may be calculated for each group, for example, and may be the average value of the sensor values output by the first sensors 400 belonging to the same group. For example, in the example shown in FIG. 3, the first arithmetic value in the group indicated by the dashed line 50A, that is, the first arithmetic value used for controlling the first device 300A, is the sensor value output by the first sensor 400AA, the sensor value output by the first sensor 400AB, the sensor value output by the first sensor 400AC, the sensor value output by the first sensor 400AD, the sensor value output by the first sensor 400AE, and the sensor value output by the first sensor 400AF. The arithmetic unit 101 is an example of an arithmetic means.
[0036] In the learning stage, the machine control unit 102 controls the first device 300 based on the first calculation value calculated by the calculation unit 101. For example, in the example shown in FIG. 3, when the amount of carbon dioxide indicated by the first calculation value calculated for the group indicated by the dashed line 50A exceeds the threshold value, the first device 300A, which is a ventilation device, is controlled to be turned on, and when this first threshold value is below the threshold value, the first device 300A is controlled to be turned off. Note that the control of the first device 300 is not limited to the control of turning the first device 300 on or off based on the relationship between the first calculation value and the threshold value. For example, the control of the first device 300 may be control for adjusting the degree of operation of the first device 300 based on the magnitude of the first calculation value.
[0037] For example, when the first device 300 is a ventilation device, the air volume of ventilation, the ventilation mode, etc. may be adjusted according to the magnitude of the first calculation value. The ventilation mode is, for example, a mode indicating either normal ventilation or heat exchange ventilation. Also, for example, when the first device 300 is an air purifier, the air volume of the air sucked in by the air purifier may be adjusted according to the magnitude of the first calculation value.
[0038] Note that the fact that the machine control unit 102 controls the first device 300 is a concept that includes the machine control unit 102 indirectly controlling the first device 300. For example, when there is a control device that controls the operation of the first device 300 according to the set parameters, the machine control unit 102 sending parameters to this control device corresponds to the machine control unit 102 controlling the first device 300. The machine control unit 102 is an example of machine control means.
[0039] The learning data acquisition unit 103 acquires learning data. The learning data is teacher data used for learning to generate an estimation model. For example, the learning data includes sensor values output by the first sensor 400 of the first number, operation data output by the second device 500, sensor values output by the third sensor 600, and a first calculation value obtained from the sensor values output by the first sensor 400 of the first number. The learning data acquisition unit 103 acquires the sensor values of the first sensor 400 from the first sensor 400, acquires the operation data of the second device 500 from the second device 500, and acquires the sensor values of the third sensor 600 from the third sensor 600. Further, the learning data acquisition unit 103 acquires the first calculation value from the calculation unit 101.
[0040] The learning data acquired by the learning data acquisition unit 103 is stored in the storage unit 12. The learning data is, for example, time-series data managed by records in which the acquisition time of the learning data, the sensor values output by the first sensor 400, the operation data output by the second device 500, the sensor values output by the third sensor 600, and the first calculation value are associated. The learning data acquisition unit 103 is an example of learning data acquisition means. The storage unit 12 is an example of storage means.
[0041] The learning unit 104 generates an estimation model by machine learning using the learning data acquired by the learning data acquisition unit 103. The estimation model is a model for estimating a second calculation value used for controlling the first device 300 from the sensor values output by the second sensor 400S of the second number, the operation data output by the second device 500, and the sensor values output by the third sensor 600. The second calculation value is a calculation value suitable for use in controlling the first device 300 in the operation stage. The learning unit 104 stores the generated estimation model in the storage unit 12.
[0042] When an example problem included in the learning data is input to the estimation model, the learning unit 104 generates an estimation model so that the correct answer included in the learning data is output from the estimation model. The machine learning method adopted by the learning unit 104 can be adjusted as appropriate. For example, the learning unit 104 may learn by multiple regression analysis that predicts one target variable with a plurality of explanatory variables.
[0043] The target variable is the first calculation value. The plurality of explanatory variables are the sensor values output by the first number of first sensors 400, the operation data output by the second device 500, and the sensor values output by the third sensor 600. When the values of the explanatory variables included in the learning data are input to the estimation model, the learning unit 104 adjusts the weighting coefficients for each explanatory variable so that the values of the target variables included in the learning data are output from the estimation model. Alternatively, the learning unit 104 may learn using a neural network.
[0044] The learning unit 104 selects the second number of second sensors 400S from among the first number of first sensors 400 so that the estimation accuracy of the estimation model is equal to or higher than the reference accuracy. The estimation accuracy of the estimation model is calculated, for example, from the average value of the error between the value of the target variable output from the estimation model when the value of the explanatory variable included in the learning data is input to the estimation model and the value of the target variable included in the learning data. The reference accuracy is, for example, the minimum accuracy desired by the user.
[0045] It is preferable that the number of the second sensors 400S is as small as possible. However, if the first sensor 400 whose sensor value is difficult to predict is not adopted as the second sensor 400S, it is considered that the estimation accuracy of the estimation model cannot be maintained. Therefore, the learning unit 104 adopts a method of reducing the second number while suppressing a decrease in the estimation accuracy by sequentially thinning out the first sensors 400 whose sensor values are easy to predict from the first number of first sensors 400. The first sensor 400 whose sensor value is easy to predict is a first sensor 400 that has a high correlation with the sensor values of other first sensors 400, the operation data of the second device 500, or the sensor values of the third sensor 600 and outputs a sensor value that is easy to estimate from these data.
[0046] The learning unit 104 executes a first process and a second process. The first process is a process of selecting, as candidate sensors to be excluded, first sensors 400 from among the first sensors 400 of the first number, which are the easiest to estimate from the sensor values output by other first sensors 400, the operation data output by the second device 500, and the sensor values output by the third sensor 600. The second process is a process of generating a preliminary estimation model by machine learning.
[0047] This machine learning is machine learning using the first calculation value included in the learning data, the sensor values output by the non-excluded sensors included in the learning data, the operation data output by the second device 500 included in the learning data, and the sensor values output by the third sensor 600 included in the learning data. The non-excluded sensors are the first sensors 400 among the first sensors 400 of the first number that have not been selected as candidate sensors to be excluded. The preliminary estimation model is a model for estimating the second calculation value from the sensor values output by the non-excluded sensors, the operation data output by the second device 500, and the sensor values output by the third sensor 600.
[0048] The learning unit 104 repeats the first process and the second process until the estimation accuracy of the preliminary estimation model becomes less than the reference accuracy. The learning unit 104 selects, as the second sensors 400S of the second number, the non-excluded sensors and the last selected candidate sensors to be excluded among the first sensors 400 of the first number. That is, the learning unit 104 selects, as the second sensors 400S, the minimum number of first sensors 400 necessary to make the estimation accuracy of the preliminary estimation model equal to or higher than the reference accuracy.
[0049] The method by which the learning unit 104 selects candidate sensors to be excluded can be adjusted as appropriate. For example, the learning unit 104 selects, as candidate sensors to be excluded, non-excluded sensors that output the sensor value that is the easiest to estimate from the sensor values output by other non-excluded sensors among the non-excluded sensors. That is, the learning unit 104 selects, as candidate sensors to be excluded, non-excluded sensors that output the sensor value with the highest correlation with the sensor values output by other non-excluded sensors among the non-excluded sensors.
[0050] For example, the learning unit 104 generates an individual estimation model for each target sensor by machine learning using the sensor values output by the non-excluded sensors included in the learning data, with each non-excluded sensor as the target sensor. The individual estimation model is a model for estimating the sensor value output by the target sensor from the sensor values output by the non-excluded sensors other than the target sensor among the non-excluded sensors. The learning unit 104 identifies the individual estimation model having the highest estimation accuracy among the individual estimation models generated for each non-excluded sensor. The learning unit 104 selects the non-excluded sensor corresponding to the identified individual estimation model as the exclusion candidate sensor. The learning unit 104 is an example of a learning means.
[0051] The sensor information output unit 105 outputs sensor information indicating the second number of second sensors 400S selected by the learning unit 104. For example, the sensor information output unit 105 outputs the sensor information to the terminal device 700 via the communication network 800. The sensor information is information indicating the identifier of the second sensor 400S, the installation location of the second sensor 400S, and the like. The terminal device 700 displays a screen showing the sensor information received from the server 100. The user refers to this screen to grasp the second number of second sensors 400S. When the user shifts from the learning stage to the operation stage, the user removes the first sensors 400 other than the second sensors 400S among the first sensors 400 installed in the target space from their installation locations. The sensor information output unit 105 is an example of a sensor information output means.
[0052] The operation data acquisition unit 106 acquires operation data in the operation stage. The operation data is data acquired for controlling the first device 300 in the operation stage. In the present embodiment, the operation data includes the sensor value output by the second sensor 400S, the operation data output by the second device 500, and the sensor value output by the third sensor 600.
[0053] During the operation phase, the estimation unit 107 estimates a second calculation value to be used for controlling the first device 300 from the operation data acquired by the operation data acquisition unit 106 using the estimation model generated by the learning unit 104. That is, the estimation unit 107 supplies the sensor value output by the second sensor 400S, the operation data output by the second device 500, and the sensor value output by the third sensor 600 to the estimation model, and specifies the second calculation value from the output result of the estimation model. Note that the second calculation value is a calculation value estimated to be output by the calculation unit 101 when the calculation unit 101 that outputs an appropriate calculation value for controlling the first device 300 is operated in the operation phase. The estimation unit 107 is an example of an estimation means.
[0054] During the operation phase, the device control unit 102 controls the first device 300 based on the second calculation value estimated by the estimation unit 107. Note that the second number, which is the number of second sensors 400S installed in the target space during the operation phase, is smaller than the first number, which is the number of first sensors 400 installed in the target space during the learning phase. Therefore, when the calculation unit 101 is used in the operation phase, it is considered that the number of sensor values supplied to the calculation unit 101 is insufficient and it is difficult to calculate an appropriate calculation value. Thus, in the operation phase, the device control unit 102 controls the first device 300 based on the second calculation value estimated by the estimation unit 107.
[0055] As described above, time-series learning data acquired by the learning data acquisition unit 103 during the learning phase is stored in the storage unit 12. This learning data includes the time-series sensor values output by the first sensor 400 during the learning phase, the time-series operation data output by the second device 500 during the learning phase, the time-series sensor values output by the third sensor 600 during the learning phase, and the time-series first calculation values output by the calculation unit 101 during the learning phase. Therefore, time-series first accumulated data including the time-series sensor values output by the second number of second sensors 400S during the learning phase, the time-series operation data output by the second device 500 during the learning phase, and the time-series sensor values output by the third sensor 600 during the learning phase is stored in the storage unit 12.
[0056] FIG. 7 shows the learning data. FIG. 8 shows the first accumulated data. As shown in FIG. 7, the learning data includes a plurality of records including the acquisition date and time, the sensor values of the first sensor 400, the operation data of the second device 500, the sensor values of the third sensor 600, and the first calculated value. As shown in FIG. 8, the first accumulated data includes a plurality of records including the acquisition date and time, the sensor values of the second sensor 400S, the operation data of the second device 500, and the sensor values of the third sensor 600. Note that the second sensor 400S is one of the first sensors 400. Therefore, the sensor value of the second sensor 400S is the same as the sensor value of any one of the first sensors 400.
[0057] The state determination unit 108 determines whether it is in an irregular state. The irregular state is a state in which the acquisition data obtained in the operation stage deviates from the acquisition data obtained in the learning stage. The acquisition data is a concept including the sensor value output by the second sensor 400S, the operation data output by the second device 500, and the sensor value output by the third sensor 600. The state determination unit 108 determines whether the acquisition data obtained in the operation stage is in an irregular state that deviates from the time-series acquisition data stored in the storage unit 12 in the learning stage.
[0058] The method by which the state determination unit 108 determines whether it is in an irregular state can be adjusted as appropriate. For example, the state determination unit 108 can handle the acquisition data obtained at the same timing as an acquisition data group, and determine whether it is in an irregular state based on the data distance based on the root mean square between multiple acquisition data groups. Hereinafter, a specific example will be given and described for the method of determining whether it is in an irregular state.
[0059] Regarding the acquired data group obtained in the learning stage, the acquired data group obtained at time t1 is Dt1 = (Dt1_1, Dt1_2, Dt1_3, Dt1_4, Dt1_5 ···), the acquired data group obtained at time t2 is Dt2 = (Dt2_1, Dt2_2, Dt2_3, Dt2_4, Dt2_5 ···), the acquired data group obtained at time t3 is Dt3 = (Dt3_1, Dt3_2, Dt3_3, Dt3_4, Dt3_5 ···), the acquired data group obtained at time t4 is Dt4 = (Dt4_1, Dt4_2, Dt4_3, Dt4_4, Dt4_5 ···), and the acquired data group obtained at time t5 is Dt5 = (Dt5_1, Dt5_2, Dt5_3, Dt5_4, Dt5_5 ···). Also, let the acquired data group obtained in the operation stage be D = (D_1, D_2, D_3, D_4, D_5 ···).
[0060] When the acquired data group is obtained in the operation stage, the root mean square is calculated between D, which is the acquired data group obtained in the operation stage, and Dt1, Dt2, Dt3, Dt4, Dt5, which are the acquired data groups obtained at each time in the learning stage, to obtain the data distance. For example, the data distance between D and Dt1 is expressed as (((D_1 - Dt1_1) 2 +(D_2 - Dt1_2) 2 +(D_3 - Dt1_3) 2 +(D_4 - Dt1_4) 2 +(D_5 - Dt1_5) 2 ) / 5) 0.5 . Similarly, the data distances between D and Dt2, D and Dt3, D and Dt4, and D and Dt5 are obtained.
[0061] Here, among Dt1, Dt2, Dt3, Dt4, and Dt5, the acquired data group with the shortest data distance from D is identified. Here, it is assumed that Dt3 is the acquired data group with the shortest data distance from D. In this case, the data distance is obtained between Dt3 and each of Dt1, Dt2, Dt4, Dt5, and so on. Then, among Dt1, Dt2, Dt4, and Dt5, the acquired data group with the shortest data distance from Dt3 is identified. Here, it is assumed that Dt5 is the acquired data group with the shortest data distance from Dt3.
[0062] Here, if the data distance between D and Dt3 is longer than the data distance between Dt3 and Dt5, it is determined to be irregular. That is, if the acquired data group obtained in the operation stage deviates from the acquired data groups obtained at each time in the learning stage, it is determined to be irregular. In other words, if the similarity between the acquired data group obtained in the operation stage and the acquired data groups obtained at each time in the learning stage is low, it is determined to be irregular. The state discrimination unit 108 is an example of a state discrimination means.
[0063] In the operation stage, when the state discrimination unit 108 determines that the state is irregular, the device control unit 102 controls the first device 300 with predetermined control content. For example, the device control unit 102 operates the ventilation device with a medium air volume. Also, for example, the device control unit 102 stops the air conditioner installed in a place where there is usually no one and operates the air conditioner installed in a place where there is usually someone. In this way, when the state is irregular, the device control unit 102 executes predetermined control instead of the control based on the second calculation value estimated by the estimation unit 107. According to such a configuration, it is possible to suppress the execution of unwanted control in an environment that did not occur in the limited learning stage. For example, the occurrence of a special environment due to the holding of an event assumed in a school, hotel, commercial facility, etc. is automatically detected, and the execution of unwanted control is suppressed.
[0064] Next, with reference to the flowchart of FIG. 9, the learning-time device control process executed by the server 100 will be described. The learning-time device control process is a process in which the server 100 controls the first device 300 during the learning stage. For example, in response to receiving an instruction to start the learning-time device control process from the user, the server 100 starts executing the learning-time device control process.
[0065] First, the control unit 11 included in the server 100 collects sensor values from the first sensor 400 (step S101). After completing the process of step S101, the control unit 11 collects operation data from the second device 500 (step S102). After completing the process of step S102, the control unit 11 collects sensor values from the third sensor 600 (step S103).
[0066] After completing the process of step S103, the control unit 11 selects one first device 300 from among at least one first device 300 installed in the target space (step S104). After completing the process of step S104, the control unit 11 calculates a first calculation value for the selected first device 300 (step S105). For example, the control unit 11 calculates the average value of the sensor values of all the first sensors 400 belonging to the group to which the selected first device 300 belongs as the first calculation value for the selected first device 300.
[0067] After completing the process of step S105, the control unit 11 controls the first device 300 based on the first calculation value (step S106). For example, when the first calculation value exceeds the threshold value, the control unit 11 operates the first device 300, and when the first calculation value is equal to or less than the threshold value, the control unit 11 stops the first device 300. After completing the process of step S106, the control unit 11 determines whether there is an unselected first device 300 (step S107).
[0068] When the control unit 11 determines that there is an unselected first device 300 (step S107: YES), the process returns to step S104. When the control unit 11 determines that there is no unselected first device 300 (step S107: NO), it saves the learning data (step S108). For example, the control unit 11 stores in the storage unit 12 a record in which the data acquisition time, the sensor value of the first sensor 400, the operation data of the second device 500, the sensor value of the third sensor 600, and the first calculated value are associated. When the process of step S108 is completed, the control unit 11 returns the process to step S101.
[0069] Next, with reference to the flowchart of FIG. 10, the learning process executed by the server 100 will be described. The learning process is a process of generating an estimation model by learning using the learning data accumulated in the learning stage. The server 100 executes the learning process, for example, when the learning data is sufficiently accumulated and the learning stage ends.
[0070] First, the control unit 11 adds all the first sensors 400 to the temporary sensor list (step S201). The temporary sensor list is a list indicating the first sensors 400 that output the sensor values used for generating the temporary estimation model. The temporary estimation model is a provisional estimation model for estimating the second calculated value. The temporary sensor list and the temporary estimation model are stored in the storage unit 12, for example.
[0071] When the process of step S201 is completed, the control unit 11 generates a temporary estimation model based on the temporary sensor list (step S202). That is, the control unit 11 generates a temporary estimation model based on the sensor value of the first sensor 400 indicated by the temporary sensor list among the learning data, the operation data of the second device 500 among the learning data, the sensor value of the third sensor 600 among the learning data, and the first calculated value among the learning data.
[0072] When the control unit 11 finishes the process of step S202, it determines the accuracy of the preliminary estimation model (step S203). For example, the control unit 11 calculates an error for each record included in the learning data, and determines the accuracy corresponding to the average value of the errors. Specifically, for example, the control unit 11 selects one record from the learning data. The control unit 11 supplies the sensor value of the first sensor 400 indicated by the temporary sensor list, the operation data of the second device 500 included in the selected record, and the sensor value of the third sensor 600 included in the selected record to the preliminary estimation model.
[0073] The control unit 11 calculates the error between the second calculated value estimated by the preliminary estimation model and the first calculated value included in the selected record. The control unit 11 calculates the above error for all records included in the learning data. The control unit 11 calculates the average value of the errors calculated for all records. The control unit 11 determines the accuracy of the preliminary estimation model from the average value of the errors. Note that the smaller the average value of the errors, the higher the accuracy of the preliminary estimation model.
[0074] When the control unit 11 finishes the process of step S203, it determines whether the accuracy of the preliminary estimation model is equal to or higher than the reference accuracy (step S204). When the control unit 11 determines that the accuracy of the preliminary estimation model is not equal to or higher than the reference accuracy (step S204: NO), it transmits an error message (step S205). For example, the control unit 11 transmits an error message to the terminal device 700 via the communication network 800.
[0075] Note that, as reasons why the accuracy of the preliminary estimation model generated using the sensor values of all the first sensors 400 is less than the reference accuracy, it is conceivable that the environment of the target space changes drastically, the learning data is insufficient, etc. Therefore, it is preferable for the user who has confirmed the error message to take measures such as investigating the reason why the environment of the target space changes drastically and lengthening the learning period, which is the period set in the learning stage. When the control unit 11 finishes the process of step S205, it ends the learning process.
[0076] When the control unit 11 determines that the accuracy of the preliminary estimation model is equal to or higher than the reference accuracy (step S204: YES), it saves the preliminary sensor list as the sensor list (step S206). After completing the process of step S206, the control unit 11 saves the preliminary estimation model as the estimation model (step S207). The sensor list is a list indicating the first sensor 400 that output the sensor values used for generating the estimation model. The estimation model is a normal estimation model for estimating the second calculation value. The sensor list and the estimation model are stored in the storage unit 12, for example. If the sensor list is already saved, the saved sensor list is updated with the new sensor list. Similarly, if the estimation model is already saved, the saved estimation model is updated with the new estimation model.
[0077] After completing the process of step S207, the control unit 11 executes an exclusion candidate sensor selection process (step S208). The exclusion candidate sensor selection process is a process of selecting an exclusion candidate sensor that is a candidate for the first sensor 400 to be excluded from the sensor list and is the first sensor 400 to be excluded from the preliminary sensor list. Hereinafter, the exclusion candidate sensor selection process will be described in detail with reference to FIG. 11.
[0078] First, the control unit 11 selects one target sensor from the non-excluded sensors (step S301). The non-excluded sensors are the first sensors 400 that have not been excluded from the preliminary sensor list and are the first sensors 400 indicated by the preliminary sensor list. The target sensor is the first sensor 400 that is the generation target of the individual estimation model described later. After completing the process of step S301, the control unit 11 generates an individual estimation model corresponding to the target sensor (step S302).
[0079] The individual estimation model is a model for estimating the sensor value of the target sensor from the sensor values of non-excluded sensors other than the target sensor. For example, when the sensor values of non-excluded sensors other than the target sensor among the first accumulated data stored in the storage unit 12 are supplied to the individual estimation model, the control unit 11 performs machine learning so that the sensor value of the target sensor among the first accumulated data is output from the individual estimation model, thereby generating the individual estimation model. For example, for each record included in the accumulated data, the control unit 11 uses the sensor value of the non-excluded sensor other than the target sensor as the explanatory variable and the sensor value of the target sensor as the objective variable to generate an individual estimation model by multiple regression analysis.
[0080] When the control unit 11 completes the process of step S302, it specifies the accuracy of the individual estimation model (step S303). For example, the control unit 11 selects one record from the first accumulated data. The control unit 11 supplies the sensor values of the non-excluded sensors other than the target sensor included in the selected record to the individual estimation model. The control unit 11 calculates the error between the estimated value estimated by the individual estimation model and the sensor value of the target sensor included in the selected record. The control unit 11 calculates the above error for all records included in the first accumulated data. The control unit 11 calculates the average value of the errors calculated for all records. The control unit 11 specifies the accuracy of the individual estimation model from the average value of the errors. Note that the smaller the average value of the errors, the higher the accuracy of the individual estimation model.
[0081] When the control unit 11 completes the process of step S303, it determines whether there is an unselected non-excluded sensor (step S304). That is, the control unit 11 determines whether there is a non-excluded sensor that has not been selected as the target sensor. When the control unit 11 determines that there is an unselected non-excluded sensor (step S304: YES), it returns the process to step S301.
[0082] When the control unit 11 determines that there is no unselected non-excluded sensor (step S304: NO), it selects the target sensor corresponding to the individual estimation model with the highest accuracy as the candidate sensor for exclusion (step S305). The high estimation accuracy of the individual estimation model means that it is easy to estimate the sensor value of the target sensor from the sensor values of non-excluded sensors other than the target sensor. For example, the high estimation accuracy of the individual estimation model means that there is a high correlation between the sensor value of the target sensor and the sensor value of any of the non-excluded sensors other than the target sensor. Therefore, even if there is no target sensor corresponding to the individual estimation model with the highest accuracy, there is a high possibility that appropriate control can be performed. Thus, the control unit 11 selects the target sensor corresponding to the individual estimation model having the highest estimation accuracy among the individual estimation models generated for each target sensor as the candidate sensor for exclusion. When the control unit 11 completes the process of step S305, it completes the candidate sensor selection process for exclusion.
[0083] When the control unit 11 completes the candidate sensor selection process for exclusion in step S208, it deletes the candidate sensor for exclusion from the temporary sensor list (step S209). When the control unit 11 completes the process of step S209, it generates a temporary estimation model based on the temporary sensor list from which the candidate sensor for exclusion has been deleted (step S210). When the control unit 11 completes the process of step S210, it specifies the accuracy of the temporary estimation model (step S211).
[0084] When the control unit 11 completes the process of step S211, it determines whether the accuracy of the temporary estimation model is equal to or higher than the reference accuracy (step S212). When the control unit 11 determines that the accuracy of the temporary estimation model is equal to or higher than the reference accuracy (step S212: YES), it returns the process to step S206. When the control unit 11 determines that the accuracy of the temporary estimation model is not equal to or higher than the reference accuracy (step S212: NO), it transmits the sensor information indicating the sensor list (step S213). For example, the control unit 11 transmits the sensor list stored in the storage unit 12 to the terminal device 700.
[0085] On the one hand, the terminal device 700 displays a screen presenting the sensor list indicated by the sensor information received from the server 100. The user refers to the presented sensor list to identify the first sensor 400 to be adopted as the second sensor 400S from among the first sensors 400. When the operation stage starts, the user removes from the target space the first sensors 400 that were not adopted as the second sensor 400S.
[0086] Note that the sensor list indicated by the sensor information is a list of the first sensors 400 that output the sensor values used for generating the adopted estimation model. The adopted estimation model is basically the estimation model among those having an accuracy equal to or higher than the reference accuracy, with the smallest number of sensor values of the second sensor 400S used for estimating the second calculation value. When the control unit 11 completes the process of step S213, it completes the learning process.
[0087] Next, with reference to the flowchart of FIG. 12, the operation-time device control process executed by the server 100 will be described. The operation-time device control process is a process in which the server 100 controls the first device 300 during the operation stage. For example, in response to receiving an instruction to start the operation-time device control process from the user, the server 100 starts executing the operation-time device control process.
[0088] First, the control unit 11 collects sensor values from the second sensor 400S (step S401). When the control unit 11 completes the process of step S401, it collects operation data from the second device 500 (step S402). When the control unit 11 completes the process of step S402, it collects sensor values from the third sensor 600 (step S403).
[0089] When the control unit 11 finishes the process of step S403, it compares the acquired data group with the first accumulated data (step S404). The acquired data group corresponds to one record including the sensor values collected from the second sensor 400S, the operation data collected from the second device 500, and the sensor values collected from the third sensor 600. The control unit 11 determines, for example, whether the acquired data group deviates from the first accumulated data based on the distance between data based on the root mean square described above.
[0090] When the control unit 11 finishes the process of step S404, it determines whether it is in an irregular state (step S405). The irregular state is a state in which the acquired data group deviates from the first accumulated data. When the control unit 11 determines that it is in an irregular state (step S405: YES), it controls all the first devices 300 with predetermined control contents (step S406).
[0091] When the control unit 11 determines that it is not in an irregular state (step S405: NO), it selects one first device 300 from among at least one first device 300 installed in the target space (step S407). When the control unit 11 finishes the process of step S407, it calculates a second calculation value for the selected first device 300 using the estimation model stored in the storage unit 12 (step S408). For example, the control unit 11 supplies the acquired data group to the estimation model and acquires the second calculation value that is the output result of the estimation model.
[0092] When the control unit 11 finishes the process of step S408, it controls the selected first device 300 based on the second calculated value (step S409). For example, when the second calculated value exceeds the threshold, the control unit 11 operates the selected first device 300, and when the second calculated value is equal to or less than the threshold, the control unit 11 stops the selected first device 300. When the control unit 11 finishes the process of step S409, it determines whether there is an unselected first device 300 (step S410).
[0093] When the control unit 11 determines that there is an unselected first device 300 (step S410: YES), the process returns to step S407. When the control unit 11 completes the process of step S406 or determines that there is no unselected first device 300 (step S410: NO), it saves the acquired data group (step S411). For example, the control unit 11 stores in the storage unit 12 a record in which the data acquisition time, the sensor value of the second sensor 400S, the operation data of the second device 500, and the sensor value of the third sensor 600 are associated. When the control unit 11 completes the process of step S411, the process returns to step S401.
[0094] In the present embodiment, an estimation model for estimating a second calculation value used for controlling the first device 300 is generated from the sensor values output by the second number of second sensors 400S, which is less than the first number selected from the first number of first sensors 400. Therefore, according to the present embodiment, it is possible to generate an estimation model for realizing appropriate device control with a small number of sensors.
[0095] Further, in the present embodiment, the operation data of the second device 500 is included in the learning data, and the operation data of the second device 500 is used for estimating the second calculation value by the estimation model. Here, there may be a high correlation between the sensor value of the first sensor 400 and the operation data of the second device 500. For example, when the first sensor 400 is a CO2 sensor and the second device 500 is a lighting device, when a person is present in the target space, the lighting device is turned on and the carbon dioxide concentration in the air in the target space is likely to increase. In this case, there is a high correlation between the carbon dioxide concentration output by the CO2 sensor and the operation state of the lighting device. In this case, even if the CO2 sensor is not installed, the sensor value of the CO2 sensor can be easily estimated from the operation data of the lighting device. That is, in this case, it is possible to generate an estimation model for estimating the second calculation value from the operation data of the lighting device without using the sensor value of this CO2 sensor. Therefore, according to the present embodiment, it is possible to generate an estimation model for realizing appropriate device control with an even smaller number of sensors.
[0096] In addition, in the present embodiment, the sensor values of the third sensor 600 are included in the learning data, and the sensor values of the third sensor 600 are used for estimating the second calculation value by the estimation model. Here, there may be a high correlation between the sensor values of the first sensor 400 and the sensor values of the third sensor 600. For example, when the first sensor 400 is a CO2 sensor and the third sensor 600 is a human presence sensor, when a person is present in the target space, the human presence sensor detects the person, and at the same time, the carbon dioxide concentration in the air in the target space is likely to increase. In this case, there is a high correlation between the carbon dioxide concentration output by the CO2 sensor and the sensor value output by the human presence sensor. In this case, even if the CO2 sensor is not installed, the sensor value of the CO2 sensor can be easily estimated from the sensor value of the human presence sensor. That is, in this case, an estimation model for estimating the second calculation value from the sensor value of the human presence sensor without using the sensor value of this CO2 sensor can be generated. Therefore, according to the present embodiment, an estimation model for realizing appropriate device control with a smaller number of sensors can be generated.
[0097] In addition, in the present embodiment, the second number of second sensors 400S are selected from the first number of first sensors 400 so that the estimation accuracy of the estimation model is equal to or higher than the reference accuracy, and the sensor information indicating the second number of second sensors 400S is output. Therefore, according to the present embodiment, the user can be notified of the second sensors 400S necessary for controlling the first device 300.
[0098] In addition, in the present embodiment, the process of excluding the candidate sensors to be excluded from the first sensor 400 is repeated until the estimation accuracy of the preliminary estimation model fails to meet the reference accuracy, and the second sensors 400S necessary for controlling the first device 300 are specified. Therefore, according to the present embodiment, the second sensors 400S necessary for controlling the first device 300 can be appropriately specified.
[0099] In addition, in the present embodiment, among the individual estimation models generated for each of the non-excluded sensors, the non-excluded sensor corresponding to the individual estimation model having the highest estimation accuracy is selected as the exclusion candidate sensor. Therefore, according to the present embodiment, the second sensor 400S necessary for controlling the first device 300 can be appropriately specified.
[0100] In addition, in the present embodiment, the first device 300 is controlled based on the second calculation value estimated using the estimation model. Therefore, according to the present embodiment, appropriate device control can be realized with a small number of sensors.
[0101] In addition, in the present embodiment, in the operation stage, when it is determined that the state is irregular, the first device 300 is controlled with predetermined control contents. Therefore, according to the present embodiment, it is possible to suppress the execution of unintended control in an unintended environment.
[0102] (Embodiment 2) In Embodiment 1, an example in which the operation data is not corrected in the operation stage has been described. In the present embodiment, an example in which the operation data is corrected in the operation stage will be described. Hereinafter, for the same configurations and functions as those in Embodiment 1, the description will be omitted or simplified as appropriate.
[0103] As shown in FIG. 13, the device control system 1100 according to the present embodiment functionally includes an arithmetic unit 101, a device control unit 102, a learning data acquisition unit 103, a learning unit 104, a sensor information output unit 105, an operation data acquisition unit 106, an estimation unit 107, a state determination unit 108, and a correction unit 109. Each of these functions is realized by a configuration provided in the server 100. That is, each of these functions is realized by software, firmware, or a combination of software and firmware. The software and firmware are described as programs and stored in the ROM or the storage unit 12. Then, the CPU realizes each of these functions by executing the programs stored in the ROM or the storage unit 12.
[0104] Note that the device control system 1100 may also be functionally said to include a control device 151 that controls the first device 300 using the estimation model generated by the learning device 160, and a learning device 160 that generates the estimation model through learning. In this case, the control device 151 includes an arithmetic unit 101, a device control unit 102, an operation data acquisition unit 106, an estimation unit 107, a state determination unit 108, and a correction unit 109. The learning device 160 includes a learning data acquisition unit 103, a learning unit 104, and a sensor information output unit 105. The functions of the control device 150 and the learning device 160 may be realized by the cooperation of the server 100A and the server 100B, or may be realized by the individual functions of the server 100A or the server 100B. The control device 151 is an example of a control device. The learning device 160 is an example of a learning device.
[0105] In this embodiment, the storage unit 12 stores first accumulated data including time-series sensor values output by the second sensor 400S in the learning stage, and second accumulated data including time-series sensor values output by the second sensor 400S in the operation stage. The second accumulated data includes time-series sensor values output by the second number of second sensors 400S in the operation stage, time-series operation data output by the second device 500 in the operation stage, and time-series sensor values output by the third sensor 600 in the operation stage. The format of the second accumulated data is the same as the format of the first accumulated data.
[0106] Also, the operation data acquisition unit 106 acquires operation data in the operation stage. The operation data is data acquired for controlling the first device 300 in the operation stage. In this embodiment, the operation data includes sensor values output by the second sensor 400S, operation data output by the second device 500, and sensor values output by the third sensor 600. The operation data acquisition unit 106 stores a record including the data acquisition time, the sensor value of the second sensor 400S, the operation data of the second device 500, and the sensor value of the third sensor 600 in the storage unit 12 and updates the second accumulated data.
[0107] The correction unit 109 corrects the newly acquired data in the operation stage based on the distribution of the time-series data stored in the storage unit 12 in the learning stage and the distribution of the time-series data stored in the storage unit 12 in the operation stage. That is, when the correction unit 109 detects a drift, which is a shift in constant values such as sensor values and operation data, it corrects the newly acquired data in the operation stage.
[0108] The correction unit 109 detects a drift and corrects the data for each data acquisition source. For example, the correction unit 109 detects a drift and corrects the data for the sensor value of the second sensor 400S, the operation data of the second device 500, and the sensor value of the third sensor 600, respectively. For example, the correction unit 109 extracts a data group for a certain period from the first accumulated data and the second accumulated data, and detects a drift by comparing the distributions of the extracted data groups. The certain period can be adjusted as appropriate. The certain period is, for example, one week. Hereinafter, an example of detecting the drift of the sensor value of one second sensor 400S will be described.
[0109] First, the correction unit 109 acquires a first sensor value group, which is a group of sensor values of the second sensor 400S accumulated in the last one week of the learning stage, from the sensor values of the second sensor 400S included in the first accumulated data. The correction unit 109 identifies a first peak value, which is the peak value of the first sensor value group. That is, the correction unit 109 identifies the first peak value, which is the value that was accumulated the most among the values accumulated as the sensor value of the second sensor 400S during the above one week.
[0110] In addition, the correction unit 109 acquires a second sensor value group, which is a group of sensor values of the second sensor 400S accumulated in the most recent one week, from the sensor values of the second sensor 400S included in the second accumulated data. The correction unit 109 identifies a second peak value, which is the peak value of the second sensor value group. That is, the correction unit 109 identifies the second peak value, which is the value that was accumulated the most among the values accumulated as the sensor value of the second sensor 400S during the above most recent one week.
[0111] When the difference between the first peak value and the second peak value is equal to or greater than the threshold value, the correction unit 109 determines that drift has occurred in the sensor value of the second sensor 400S. When the correction unit 109 determines that drift has occurred in the sensor value of the second sensor 400S, the correction unit 109 supplies the sensor value obtained from the operation data acquisition unit 106 and shifted by the difference between the first peak value and the second peak value to the estimation unit 107 and the state determination unit 108.
[0112] For example, when the first peak value is 5 and the second peak value is 6, the correction unit 109 supplies the value obtained by subtracting 1 from the value obtained from the operation data acquisition unit 106 to the estimation unit 107 and the state determination unit 108. The correction unit 109 also performs drift detection and correction on the data obtained from other second sensors 400S by the same method. Further, the correction unit 109 performs drift detection and correction for each data acquisition source on the operation data of the second device 500 and the sensor value of the third sensor 600 by the same method. The correction unit 109 is an example of correction means.
[0113] Next, with reference to the flowchart of FIG. 14, the correction process executed by the server 100 will be described. The correction process is a process of correcting the data acquired by the server 100 during the operation stage. The correction process is executed, for example, between the process of step S403 and the process of step S404 in the operation-time device control process. Note that it is preferable that the correction process is executed after the elapse of the above-mentioned fixed period after entering the operation stage.
[0114] The control unit 11 selects a correction candidate from the data acquisition sources (step S501). Note that all the second sensors 400S, all the second devices 500, and all the third sensors 600 are data acquisition sources. When the control unit 11 completes the process of step S501, the control unit 11 compares the first accumulated data and the second accumulated data (step S502). Specifically, the control unit 11 compares the data group acquired from the selected correction candidate in the first accumulated data for a certain period with the data group acquired from the selected correction candidate in the second accumulated data for a certain period.
[0115] When the control unit 11 finishes the process of step S502, it determines whether there is drift (step S503). For example, the control unit 11 determines whether the difference between the first peak value, which is the peak value of the data group extracted from the first accumulated data, and the second peak value, which is the peak value of the data group extracted from the second accumulated data, is equal to or greater than a threshold value. When the control unit 11 determines that there is drift (step S503: YES), it corrects the data obtained from the correction candidates (step S504). For example, the control unit 11 shifts the newly obtained data from the correction candidates by the difference between the first peak value and the second peak value.
[0116] When the control unit 11 determines that there is no drift (step S503: NO), or when the process of step S504 is completed, it determines whether there is a source for unselected data (step S505). When the control unit 11 determines that there is a source for unselected data (step S505: YES), it returns the process to step S501. When the control unit 11 determines that there is no source for unselected data (step S505: NO), it completes the correction process.
[0117] In the present embodiment, it is determined whether there is drift based on the distribution of the data acquired in the learning stage and the distribution of the data acquired in the operation stage. When it is determined that there is drift, the data is corrected. According to the present embodiment, for example, even when the data drifts due to aging deterioration, appropriate device control is executed.
[0118] (Modification example) As described above, the embodiments of the present disclosure have been described. However, when implementing the present disclosure, various forms of modification and application are possible. In the present disclosure, it is arbitrary which parts of the configurations, functions, and operations described in the above embodiments are adopted. Also, in the present disclosure, in addition to the configurations, functions, and operations described above, further configurations, functions, and operations may be adopted. Moreover, the configurations, functions, and operations described in the above embodiments can be freely combined.
[0119] In Embodiment 1, an example was described in which a plurality of servers 100 included in the device control system 1000 cooperate to function as the control device 150 and the learning device 160. The device control system 1000 may include one server 100, and this server 100 may function as the control device 150 and the learning device 160. Further, the device control system 1000 may include, in addition to the server 100, a storage device connected to the communication network 800. In this case, the storage device stores various types of information that were stored in the storage unit 12 in Embodiment 1.
[0120] In Embodiment 1, an example was described in which the second device 500 and the third sensor 600 are connected to the communication network 800. The second device 500 may not be connected to the communication network 800. In this case, the operation data of the second device 500 is not included in the learning data used for learning the estimation model, and the operation data of the second device 500 is not used for estimating the second calculation value by the estimation model. Similarly, the third sensor 600 may not be connected to the communication network 800. In this case, the sensor value of the third sensor 600 is not included in the learning data used for learning the estimation model, and the sensor value of the third sensor 600 is not used for estimating the second calculation value by the estimation model.
[0121] In Embodiment 1, an example was described in which the data used when the calculation unit 101 calculates the first calculation value includes only the sensor value of the first sensor 400. The data used when the calculation unit 101 calculates the first calculation value may include at least one of the operation data of the second device 500 and the sensor value of the third sensor 600 in addition to the sensor value of the first sensor 400. In this case, in the operation stage, appropriate device control may be realized even if the second sensor 400S is not installed.
[0122] In Embodiment 1, an example in which the number of the second sensors 400S is reduced to the limit under the condition that the estimation accuracy of the estimation model is equal to or higher than the reference accuracy was described. If the estimation accuracy of the estimation model is equal to or higher than the reference accuracy, the number of the second sensors 400S does not have to be reduced to the limit. This is because it is highly likely that appropriate device control can be maintained by allowing some margin in the number of the second sensors 400S.
[0123] In Embodiment 1, an example in which data collection processing is executed throughout the entire learning stage and learning processing is executed at the end of the learning stage was described. Learning processing may be executed together with data collection processing throughout the entire learning stage.
[0124] In the above embodiment, in the control unit 11, the CPU functioned as each unit shown in FIGS. 5, 6, and 13 by executing the program stored in the ROM or the storage unit 12. However, in the present disclosure, the control unit 11 may be dedicated hardware. The dedicated hardware is, for example, a single circuit, a composite circuit, a programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination thereof. When the control unit 11 is dedicated hardware, the functions of each unit may be realized by individual hardware, or the functions of each unit may be realized by a single piece of hardware.
[0125] Also, among the functions of each unit, a part may be realized by dedicated hardware, and the other part may be realized by software or firmware. Thus, the control unit 11 can realize the above-described functions by hardware, software, firmware, or a combination thereof.
[0126] By applying an operation program that defines the operation of the server 100 according to the present disclosure to a computer such as an existing personal computer or information terminal device, it is also possible to make the computer function as the server 100 according to the present disclosure. Further, the distribution method of such a program is arbitrary. For example, it may be stored and distributed in a computer-readable recording medium such as a CD-ROM (Compact Disk ROM), DVD (Digital Versatile Disk), MO (Magneto Optical Disk), or memory card, or it may be distributed via a communication network such as the Internet.
[0127] The present disclosure allows for various embodiments and modifications without departing from the broad spirit and scope of the present disclosure. Also, the above-described embodiments are for explaining this disclosure and do not limit the scope of the present disclosure. That is, the scope of the present disclosure is indicated by the claims rather than the embodiments. And various modifications made within the scope of the claims and within the scope of the meaning equivalent to the disclosure are considered to be within the scope of this disclosure.
Industrial Applicability
[0128] The present disclosure is applicable to a device control system for controlling devices.
Explanation of Signs
[0129] 11 Control Unit, 12 Memory Unit, 13 Communication Unit, 50A, 50B, 50C, 50D Dashed Lines, 100, 100A, 100B Servers, 101 Arithmetic Unit, 102 Equipment Control Unit, 103 Learning Data Acquisition Unit, 104 Learning Unit, 105 Sensor Information Output Unit, 106 Operation Data Acquisition Unit, 107 Estimation Unit, 108 State Discrimination Unit, 109 Correction Unit, 150, 151 Control Devices, 160 Learning Device, 300, 300A, 300B, 300C First Devices, 400, 400AA, 400AB, 400AC, 400AD, 400AE, 400AF, 400BA, 400BB, 400BC, 400BD, 400BE, 400BF, 400CA, 400CB, 400CC, 400CD, 400CE, 400CF, 400DA, 400DB, 400DC, 400DD, 400DE, 400DF First Sensors, 400S Second Sensor, 500 Second Device, 600, 600A, 600B, 600E, 600F Third Sensors, 700 Terminal Device, 800 Communication Network, 1000, 1100 Equipment Control System
Claims
1. Learning data acquisition means for acquiring learning data including sensor values output by a first number of first sensors that detect the air quality of a target space, and first calculation values used for controlling a first device that adjusts the air quality of the target space, obtained from the sensor values output by the first number of first sensors; Learning means for generating an estimation model for estimating a second calculation value used for controlling the first device from sensor values output by a second number of second sensors that is less than the first number and is selected from the first number of first sensors by machine learning using the learning data acquired by the learning data acquisition means. A learning device comprising: Learning device.
2. The learning data includes operation data indicating the operation state of a second device provided in the target space, The estimation model is an estimation model for estimating the second calculation value used for controlling the first device from the sensor values output by the second number of second sensors and the operation data output by the second device. The learning device according to Claim 1. The learning device according to Claim 1.
3. The learning data includes sensor values output by a third sensor different from the first sensor provided in the target space, The estimation model is an estimation model for estimating the second calculation value used for controlling the first device from the sensor values output by the second number of second sensors and the sensor values output by the third sensor. The learning device according to Claim 1 or 2. The learning device according to Claim 1 or 2.
4. The learning means selects the second number of second sensors from among the first number of first sensors so that the estimation accuracy of the estimation model is equal to or higher than a reference accuracy, The learning device further comprises sensor information output means for outputting sensor information indicating the second number of second sensors selected by the learning means. The learning device according to any one of Claims 1 to 3. The learning device according to any one of Claims 1 to 3.
5. The learning means selects, as candidate sensors for exclusion, a first sensor that outputs a sensor value that is most easily estimable from sensor values output by other first sensors from among the first sensors of the first number, and uses the first calculation value included in the learning data and the sensor value output by a non-excluded sensor, which is a first sensor of the first number included in the learning data and not selected as the candidate sensor for exclusion, to perform machine learning to generate a temporary estimation model for estimating the second calculation value from the sensor value output by the non-excluded sensor. This process is repeated until the estimation accuracy of the temporary estimation model is less than the reference accuracy, and the non-excluded sensor and the last selected candidate sensor for exclusion among the first sensors of the first number are selected as the second sensors of the second number. The learning device according to claim 4.
6. The learning means generates, for each of the non-excluded sensors as a target sensor, an individual estimation model for estimating the sensor value output by the target sensor from the sensor values output by non-excluded sensors other than the target sensor among the non-excluded sensors by performing machine learning using the sensor values output by the non-excluded sensors included in the learning data, and selects, as the candidate sensor for exclusion, the non-excluded sensor corresponding to the individual estimation model having the highest estimation accuracy among the individual estimation models generated for each of the non-excluded sensors. The learning device according to claim 5.
7. A device control system comprising the learning device according to any one of claims 1 to 6 and a control device that controls the first device using the estimation model generated by the learning device, wherein the control device in a learning stage, performs an operation on the sensor values output by the first sensors of the first number to calculate the first calculation value used for controlling the first device; in an operation stage, uses the estimation model generated by the learning means to estimate the second calculation value used for controlling the first device from the sensor values output by the second sensors of the second number; and in the learning stage, controls the first device based on the first calculation value calculated by the operation means, and in the operation stage, controls the first device based on the second calculation value estimated by the estimation means. Device control system.
8. Further comprising an accumulating means for accumulating the sensor values output by the second number of the second sensors in the learning stage. The control device further comprises a state discriminating means for discriminating whether or not the sensor value output by the second number of the second sensors in the operation stage is in an irregular state deviating from the sensor value accumulated in the accumulating means in the learning stage. In the operation stage, when the state discriminating means discriminates that the state is the irregular state, the device control means controls the first device with predetermined control contents. The device control system according to claim 7.
9. Further comprising an accumulating means for accumulating the sensor value output by the second sensor in the learning stage and the sensor value output by the second sensor in the operation stage. The control device further comprises a correcting means for correcting the sensor value output by the second sensor in the operation stage based on the distribution of the sensor values accumulated in the accumulating means in the learning stage and the distribution of the sensor values accumulated in the accumulating means in the operation stage. The device control system according to claim 7 or 8.
10. Obtaining learning data including the sensor value output by the first number of first sensors for detecting the air quality of the target space and the first calculation value used for controlling the first device for adjusting the air quality of the target space obtained from the sensor value output by the first number of the first sensors. Generating an estimation model for estimating a second calculation value used for controlling the first device from the sensor values output by the second number of second sensors, which is less than the first number, selected from the first number of the first sensors by machine learning using the obtained learning data. Learning method.
11. Causing a computer to function as a learning data acquisition means for acquiring learning data including the sensor value output by the first number of first sensors for detecting the air quality of the target space and the first calculation value used for controlling the first device for adjusting the air quality of the target space obtained from the sensor value output by the first number of the first sensors, and a learning means for generating an estimation model for estimating a second calculation value used for controlling the first device from the sensor values output by the second number of second sensors, which is less than the first number, selected from the first number of the first sensors by machine learning using the learning data acquired by the learning data acquisition means. Program.
Citation Information
Patent Citations
Electronic device and control method therefor
EP3540420A1
Operation controller for air conditioner
JP1993126391A
Air conditioning control method and air conditioning control device
JP2019100687A
Sensor state determination device, sensor state determination method and program
JP2020008204A
Sensor auto-calibration method for improving fine dust and ultra-fine dust measurement accuracy
KR102134545B1