Introduction

Intelligent or automated building systems play a crucial role in today’s modern sophisticated buildings. Monitoring and automatic control systems are important for achieving the required level of building technology behaviour. From the perspective of the development of web/mobile applications, it is possible to use javascript applications for visualization of technological processes in an administrative building. Javascript has become a standard language for developing web browsers and hybrid applications today. Implementation of visualization and monitoring applications are becoming more and more useful in today’s technological applications, e.g. in connection with the development of the Smart Cities (SC) technological concept. For the visualization and monitoring of the operational and technical functions in multiple buildings within the IAB (Smart Home (SH), Smart Home Care (SHC) [1]), it is possible to use more robust visualization and monitoring SW tools [2], which have already become widespread in larger administrative buildings [3]. The possibilities of developing visualization and monitoring applications using wireless components are described in detail in articles [4,5,6,7]. The actual monitoring of operational and technical variables may be used for optimizing the management of individual operational and technical functions of buildings, such as lighting [8], [9] or HVAC (Heating, Ventilation, and Air Conditioning), in order to reduce the operating costs of the building, for setting the optimal climate in individual rooms of the building [10] with respect to the requirements of the hygienic standards, or for classification [11], prediction [12] and foreseeing of building behaviour based on the variables [13] measured and processed.

To determine room occupancy in an IAB, a wide range of sensors can be used, for example rH sensors, wearable inertial sensors or wearable vital signs sensors [14], humidity sensors [15], RFID sensors [16], microphones [17], movement sensors [18], video surveillance [19], light sensor [20], presence sensors [21], CO2 sensors [22], ambient sensors [23], video cameras [24], simple binary sensors or temperature sensors etc. Two approaches can be used for monitoring the occupancy of individual rooms in an administrative building [25]:

  • Distributed Direct Sensing (DDS), which includes the option of installing special sensors for capturing the life activities of the users of the administrative premises. This approach does not respect the privacy and the personal zone of the people so much, it rather disrupts these needs.

  • Infrastructure Mediated Sensing (IMS) which uses the existing sensors for managing the operational and technical functions in buildings. Temperature sensors for heating control, light intensity sensors for lighting control in individual rooms, humidity or CO2 sensors for controlling forced ventilation in rooms, etc., may be used as examples. This approach rather respects the privacy and the personal zone of the people.

For recognition and classification of occupancy in an IAB, various mathematical methods, such as the Hidden Markov Model (HMM) [26], the Decision Trees method, the Bayesian network-based method, Support Vector Machines (SVM) [27], [28], Artificial Neural Networks (ANN) [29], the Linear Discriminant Analysis (LDA) [30], the Adaptive systems [31], and other Soft Computing methods are used.

The information on the occupancy of an IAB is used for HVAC control [32], access systems, facility management of buildings [33], security systems [34], Energy saving control [35], maintenance staff of buildings [36], monitoring and visualization [37], human behaviour recognition [38], light control, building management systems and others.

Some of the above-described works share a common way of monitoring the occupancy of individual rooms of an IAB using CO2 sensors. Carbon dioxide is the most common air pollutants inside residential buildings. Humans, their metabolism, breathing and thermoregulation processes are primarily the source of this gas inside buildings. The increasing concentration of carbon dioxide simultaneously increases the amount of water vapour in the air and, thus, also the relative humidity of the air. The number of people present in the room, the size of the room and insufficient ventilation are the main causes of the increase in carbon dioxide concentration. Higher concentrations of carbon dioxide adversely affect breathing—already at concentrations above 15,000 ppm. If its concentration in the air rises above 30,000 ppm, most people suffer from headaches, dizziness, and nausea [39]. The current efforts to maximize energy savings on heating and operation of buildings in the Czech Republic in the last 15 years most often include thermal insulation of facades and replacement of windows. In recent years, an increasing number of companies in the Czech Republic have become aware of the fact that these well-intentioned measures have a significant negative impact on human health [40]. CO2 concentration in the air is a suitable indicator of stuffiness in an enclosed space and very well corresponds to the number of people staying in this enclosed space. By the breathing process, the inhaled oxygen is changed to carbon dioxide and the air exhaled by an adult human contains on average about 35,000–50,000 ppm of CO2 (about 100 times higher concentration than in the outside air). Without the corresponding forced ventilation, then, logically, there is an increase in CO2 concentration in the enclosed space [41].

The objective of the article is the design of a new method for monitoring the presence of people in an IAB office room using the SW Tool PI System (PI—Plant Information enterprise information system) within IAB automation from the measured temperature variables Tindoor (°C) and the relative humidity rHindoor (%) and the temperature Toutdoor (°C) using the Artificial Neural Network (ANN) with the Bayesian Regulation Method (BRM).

The goal of the first part of the article is the design and the implementation of the FEVISUAL visualization monitoring application for the IAB of the new FEI at VŠB TU Ostrava using an Android mobile device that monitors the technological processes (HVAC) in the IAB. The application will be created using the PI System. In the IAB described, there is currently no processing and evaluation of room occupancy information for optimizing management of operational and technical functions in order to reduce the operational costs of the building. There is also no monitoring of CO2 concentration in the air inside the individual rooms of the administrative building.

The second part of the article describes the design of a new indirect method and evaluation of the IMS approach for indirect monitoring of the presence of people of the individual IAB areas using prediction of the course of CO2 concentration (ppm) from the measured temperature Tindoor (°C) indoors and the relative humidity rHindoor (%) and the temperature Toutdoor (°C) in order to determine the presence of people of the monitored areas using operational sensors installed in the building.

The aim of this part of the article is to verify the use of ANN for predicting the measured quantities for the purpose of monitoring the person presence in the interior of the IAB office room with the gradient algorithm of error backpropagation using the BRM. For the classification of the prediction quality, a Correlation Analysis (correlation coefficient R), the calculated MSE (mean squared error) were used. In addition, an adaptive filter with the LMS algorithm will be used for filtering the output of the predicted CO2 course and, thus, for improving the reliability of the designed indirect method. The DTW criterion will be used for classifying and comparing the output course.

The main contribution of the article is to verify the assumption of improving the accuracy of the CO2 prediction method using ANN BRM with the LMS adaptive filter algorithm to remove additive noise from the predicted CO2 course.

Another goal is to verify the proposed method on the measured data for different seasons in a time interval between winter and spring (from February 1 to February 28, 2015) and for a time interval between spring and summer (from June 1 to June 28, 2015) in long experiments and for a time interval (from February 8 to February 14, 2015) in short experiment in winter.

Part One—The design and the implementation of the visualization monitoring application FEVISUAL for the administrative building of the new FEI

In the new FEI building at VSB—Technical University Ostrava, the HVAC (heating, ventilation and air conditioning) system is controlled using the LonWorks bus system. Other implemented technological systems in the described building include (Fig. 1):

Fig. 1
figure 1

Block schema of the interconnection implemented technologies for operation control in the new FEI building at VSB TU Ostrava [42]

  • Control of lighting and outlets using the KNX technology.

  • Electronic security system (ESS).

  • Electronic fire alarm system (EPS).

  • CCTV (closed circuit television) circuit.

  • Visualization of EPS, ESS.

  • Visualization of HVAC.

  • Visualization of the condition of lighting and outlets.

  • Wireless system for controlling blinds.

In terms of the execution of the management of operation and technical features of the individual structures and buildings located within the area of VSB TU Ostrava, it is possible to generally say that various types of technologies, standards, data protocols and bus systems for building automation (KNX, LonWorks, BACnet) have been used here. At present, the need to implement a unifying tool (BMS—building management system) for processing and analysis of the measured data from the implemented technology, not only in the new FEI building at the Technical University of Ostrava, but also at other buildings of the whole area of the Technical University of Ostrava, becomes obvious. A properly chosen BMS tool can serve for ensuring monitoring of the condition of the controlled devices, active alerting operators to the occurrence of atypical events—faults, exceeding threshold values with the monitored variables in the environment of the building (e.g. room temperature) or data archiving for the retrospective analysis and subsequent optimization of the building operation in order to reduce the operating costs, thus ensuring energy savings [43], for example with wireless sensor network [44].

PI System implementation

To unify the monitoring and control of various automation and electronic systems into a single BMS (building management system) environment, it is necessary to use a software tool that allows you to consolidate several types of bus systems, standards and communication and data protocols into o single monitoring application. In our case, we took advantage of the opportunities offered by the PI System software tool (hereinafter referred to as PI) produced by OSIsoft. This is an industry standard designed for industrial enterprises and IAB for data reporting and real-time events. PI allows for easier retrieval, storage, distribution, analysis and visualization of data from various sources such as (database systems, SCADA systems, manual inputs, application software, actuators, sensors etc.). Individual PI programs or groups of PI programs can also exist separately. PI System can be roughly divided into a data, server and client part. The client part of the PI (PI client) system is suitable for providing BMS in the described building. PI clients are PI software applications, with which end users work and which present the data in a user-friendly environment with interesting graphics. These are desktop applications (PI DataLink, PI ProcessBook, PI Data Access) and web applications (PI WebParts, PI ActiveView, PI Vision).

PI System description

The block schema of the implementation of the PI System to monitoring technical and operating functions (HVAC) in the new FEI building in the VSB Technical University Ostrava is shown below in Fig. 2. The acquired data measured by operating variables (HVAC) are stored in a database, from where they are stored on the PI server (PIAF) via the RDBMSPI interface. This data is then used in desktop and web applications on a remote computer, which communicates with the PI server. The applications that connect to PI, use PI SDK (Software Development Kit), PI API (Application Programming Integration) libraries or a combination of both. PI SDK and PI API are dynamically linked libraries, through which the individual applications communicate with the PI server (Fig. 2).

Fig. 2
figure 2

The block schema of the PI implementation in the new FEI building of VSB—TU Ostrava [3]

Libraries are installed on a computer as a part of the PI SDK installation process.

PI DataLink

It is a desktop application. It establishes a direct connection between the PI System and Microsoft Excel software to view data in real time (Fig. 15). PI DataLink can also process and analyze the historical data. PI DataLink performs such tasks as statements of values with their timestamps, reporting, modelling, analysis, aggregation function of time periods (hourly averages) and planning process [3].

PI ProcessBook

For monitoring the presence of people in the individual room of IAB SW TOOL PI, ProcessBook was used (Fig. 3). PI ProcessBook allows instant access and data visualization both in real-time and in the past, using interactive, graphical displays of the time. The data can be viewed through the trends (Fig. 4), dynamic symbols, tables, numerical values for subsequent processing and analysis of the measured data. For fast, basic statistical data analysis, it is possible to use the table (Fig. 5) with the basic statistical parameters of the measured data source (Average, Minimum, Maximum, Range, Standard Deviation, Time interval …) [3]. Figure 3 shows the measured waveforms of non-electrical CO2 indoor values (ppm), rHindoor (%) and Tindoor(°C) in the monitored area using the PI ProcessBook in the period from June 1, 2015 to June 28, 2015.

Fig. 3
figure 3

PI ProcessBook environment for displaying the monitored values of CO2 (ppm), rH (%) and T(°C) in the monitored IAB office room

Fig. 4
figure 4

PI ProcessBook environment for displaying monitored values of CO2 (ppm) in the monitored IAB office room

Fig. 5
figure 5

Basic and quick statistical analysis of the CO2 (ppm) in the time period from 1 June 2015 to 28 June 2015

Figure 4 shows the measured course of CO2 in the monitored IAB area. From the measured courses, the arrival at the room (point 1 and point 3), the departure from the room (point 2 and point 4) can be determined. It is also possible to determine the occupancy time of the monitored room at the selected time Δt1 and Δt2. A more detailed description of the departures and arrivals of people in the monitored room within a given time is shown in Fig. 20.

Technologies, tools and frameworks used for the design of the application for mobile devices running Android

Server part—Spring MVC

Spring MVC is mainly used for creating web applications. The main advantage of Spring MVC is the simplification of the development of Java applications.

Server part—Apache Tomcat

Apache Tomcat is a web server and servlet container. It is being developed as an open source project. Apache Tomcat will be used as a container for testing and development of custom applications.

Server part—PI Web API

PI Web API is a member of the PI System software tools. RESTful is the PI System access layer that provides a cross-platform programming interface for PI System. The RESTful interface allows for the cross-platform development of web, desktop and mobile applications in various programming languages. PI Web API enables the retrieval and manipulation of data time-series from the PI data archive, and also loads and configures asset data and framework events from the PI AF server. It contains a set of REST services and APIs, which are being further developed. It is a web-based communication method.

It is a commonly used tool for bilateral communication and communication with clients, because it allows companies to communicate between different IT infrastructures. In essence this creates a universal language for communication across IT infrastructures. The most commonly used models of web services are SOAP and REST. The Web service client in this case sends an HTTP GET request to the URL https://picoresight/PIVision/PB/#/PBDisplays/423 for the Web server services. The URL indicates the source location which the client wants to access. Designations such as GET, POST or PUT indicate the action with which the client wants to query the server. When the server receives this request, it processes it and sends a response back to the client as XML1 or JSON2. Web API has the following system requirements:

  • Windows Server 2008 R2, 2012 or 2012R2 (2012 or newer).

  • PI data archive 3.4.380 or newer (2012 or newer).

  • PI Asset Server 2.1 or higher (2012 or newer).

Server part—Eclipse IDE

Another important tool is the development environment. The officially supported one is the Eclipse IDE, currently the most popular Java development environment.

Client part—Hybrid development

Hybrid development combines both native and web approaches. The application consists of a native frame in which the web view and the web application are located. It is part of the application or it can be downloaded remotely via the Internet. The pros and cons of hybrid applications arise from the nature of the two approaches combined in the hybrid development. The advantage of hybrid applications compared to the web ones is the possibility of publication in the official platform store. The user installs and runs them alongside the classic native applications. Another key advantage compared to traditional web applications is the ability to use frameworks which link the web application running in WebView with the system.

Client part—Framework Sencha Touch

The application programming is done using JavaScript and not the HTML5 markup. Although Sencha Touch takes full advantage of HTML5, the whole application code is placed in JavaScript files, and the HTML file contains only skeleton pages with the embedded application script. Sencha Touch has its own library named Ext. It is a robust library with various components. Sencha Touch makes writing the application code a little harder than it is in an ordinary JavaScript or e.g. jQuery framework, mainly due to its special syntax. In addition to writing the code, however, the Sencha Touch framework is much more robust than e.g. the mentioned jQuery Mobile that contains more functionality; while a full-fledged Web application with all the trimmings can be created only with the help of this framework. Sencha Touch has so much functionality and settings that the programmer is not prevented from doing almost anything.

Client part—PhoneGap

One of the most successful so called “wrappers” is the PhoneGap. It is an application with an inserted web code including HTML5, CSS3 and JavaScript, packaged for any operating system. This wrapper is often extended with the option of bridging some functionality that a website alone cannot handle. PhoneGap can bridge some of these. PhoneGap offers downloadable SDK on its website, through which application projects are created. Each project has its own special folder locations for native applications in different devices. Currently, PhoneGap version 4.2.0 supports the creation of applications for the following operating systems: iOS, Android, Windows Phone, Bada, WebOS and BlackBerry.

Design and description of the application and server architecture

Design of the user interface

Since the application is primarily used for mobile devices with a touch screen, it is necessary to adapt the controls for this purpose. The Sencha Touch Framework offers controls and user interface components directly adapted for touch control. The interface layout was selected so that each part of the application has its own tab and these tabs are switched using menu buttons that swipe to the right, or using a button in the upper left corner (Fig. 6a). Figure 6b) is the design of the visualization. It contains the view of real data and diagrams of the given room or system.

Fig. 6
figure 6

a Main menu design, b visualization design [45]

Figure 7 shows the chart design. These designs were discussed with the office building administrator.

Fig. 7
figure 7

Chart design [45]

Architecture, application communication, UseCase diagram

The Sencha Touch architecture is based on the MVC model. Model-View-Controller has its beginnings in the Smalltalk, where it is originally used to incorporate a traditional process: input, processing, output to the UI (user interface) programs. It is equally suitable, however, for use in multi-tier web applications. A description of the architecture and communication is shown in the following Fig. 8.

Fig. 8
figure 8

Architecture and communication FeiVIsual [45]

The server component and the web client of the application are deployed on the application server Apache Tomcat, which is located on a PC within the VSB domain. The applications on mobile devices must be connected via WiFi to the VSB domain to function; without it, they cannot receive any data necessary to create the visualization for the users. There is also the possibility of using the university VPN. A mobile device can also connect to the web client with a web browser after entering the proper URL, but they must also be located in the VSB domain or connected through the university VPN. With the connection to the web client, the initial startup is slow because the entire application must be downloaded into the mobile or computer browser, and it is a major problem if the connection to the VPN is established using mobile data, where one usually tries to be economical. After connecting and starting the application, the HTTP GET request with the relevant parameters is sent to Tomcat that verifies the parameters and connects to the PI Web API using a certificate and HTTPS. As parameters, the PI Web API receives the relevant attribute (value) web id and another parameter, which is the required interval or what historical data shall be returned, for example. − 8 for historical data up to − 8 h. Web API processes the request and then sends the data as JSON to the client application. The client application receives the data. The model creates objects based on the received data which are then stored in the repository. From there, the client application processes them and calculates the minimum and the maximum as well as data for the waveform graph of various temperatures. Furthermore, they are processed for the visualization of equipment temperatures, such as ventilation, engineering and visualization of the heat pumps.

Diagram of major use cases

This UseCase diagram (Fig. 9) shows the major use cases as data acquisition, visualization of the given space and the display of trends of attributes of individual spaces which are:

Fig. 9
figure 9

UseCase diagram [45]

  • VZT 1 auditorium EC3.

  • VZT 2 auditorium EC2.

  • VZT 3 auditorium EC1.

  • VZT 4 depository.

  • VZT 5 boardroom.

  • Cooling plant.

  • Heat pumps.

Deployment diagram

The deployment diagram (Fig. 10) shows the deployment of hardware and software resources and their major interprocesses.

Fig. 10
figure 10

Deployment diagram [45]

Description of the development of the individual parts of the application and the server

The following text will deal with the process of developing the individual parts of the new FeiVisual visualization system. The procedures described are also applicable to other projects.

Creating a database in the application

A database of individual attributes has been created for data persistence. The final number of these attributes is 91. It was necessary to create two models; one model that represents what the “store” for descriptions, webid and the variables of the attributes will look like; the second model represents an object received with JSON. The following is a sample of this model:

figure a

Using these models, 93 “stores”, where the received data is stored in the form of objects, were created and, from these “stores”, this data is further used for processing and visualization. An example of a selected “store” is in the following code:

figure b

View and controllers

View

In this part of the application, there are entire UI applications. The files have a js extension, i.e. javascript, since the entire UI is written in JavaScript using Sencha Touch. There are individual visualized systems, but also the application menu that bears the name Main.js. There are also thumbnails to preview the measured system in your application. These files comprise implementation of the zoom function.

The temperature.js file contains a UI section where the charts for tracking the progress of the values measured are created. Next, the maximums and minimums for a specific interval are also implemented. The files of the individual visualized systems are the most important ones:

  • vzt1.js is the air-conditioning of EC3 lecture hall,

  • vzt2.js is the air-conditioning of EC2 lecture hall,

  • vzt3.js is the air-conditioning of EC1 lecture hall,1,

  • vzt_board.js is the air-conditioning of the office,

  • vzt_depo.js is the air conditioning of the depository,

  • t_c.js is a room with the heat pumps,

  • strojovna.js is the engine room for cooling.

In these seven UIs, there are individual measured values which are, as a result, logically arranged into usable and transparent visualizations of these systems.

A sample of these UIs can be seen in Figs. 11, 12 and 13. The views are divided by room types.

Fig. 11
figure 11

Application—the heat pump system

Fig. 12
figure 12

a Example of application—cooling plant deployment diagram, b example of application—graph of the measured value (temperature) within the selected interval

Fig. 13
figure 13

a Example of application—EC3 Hall ventilation application, b example of application—view of Heat pumps

Figure 11 shows the examples of heat pump system applications.

Figure 12 shows the examples of applications displaying the cooling plant schematics in the IAB (Fig. 12a) and the graph of the measurement of the selected variable (temperature) within the selected interval (Fig. 12b).

Controllers

These are basically the view drivers, so for each view there is a Controller with the same designation as view but is located in the Controllers folder. Controllers control the UI elements and perform the required actions. For example, when pressing the menu button in the UI or swiping from the left to the right, a drop-down menu is displayed. If necessary, the calculations required for displaying the minimum and maximum charts, etc., are performed.

Figure 13 shows the examples of application—(a) EC3 hall ventilation application and (b) view of heat pumps.

File app.js

This file is one of the most important ones in the application. It contains initializations of individual views, controllers, stores, models, and also initializations of third-party packages, which, in this case, chart. Next, there is also the actual start of the application, which shows what is to be run on the start screen or immediately after the application starts.

The server part of the application

The server part of the application is created by the application server that performs authorization. Subsequently, the mobile application sends a request for the data parameters to the application server (AS). The AS processes this request and passes this request with the appropriate parameters to the PI Web API, which, however, requires basic authorization along with the need to show the HTTPS secure communication certificate. In the future, the server can also be used for accessing data, or for more complicated calculations with which a mobile phone might have problems.

Implementation and placing on the server

Node JS

Application development is performed mainly on the command line and in your favourite code management editor. PhoneGap and Sencha Touch are dependent on Node.js, which needs to be installed.

Sencha Touch CMD

Using this application, a basic Sencha Touch 2.4.2 application will be created, in which you can choose the application’s own name, in this case FeiVisual2. Once the application has been created, it can be further developed and modified, whether in a conventional notepad or in another editor; in this case, Eclipse has been selected. The version used for this application is Sencha CMD 5.1.2.52. This is a tool that not only creates the basic application framework, but also inserts additional packages along with the framework itself.

Sencha Touch CMD and PhoneGap

Sencha CMD is a very useful tool that can integrate the PhoneGap wrapper directly into the application developed.

Build and installation of FeiVisual in a mobile device

After finishing the development, completing the previous and initializing steps, you can switch to the actual application using Sencha Touch CMD.

FeiVisual application test

The application was tested mainly during the development phase, after consultation with the caretaker. During the testing stage, emphasis was placed on the relevance of the data and its proper display in the visualizations. Testing was performed on a mobile device running Android version 4.4.2. The individual UI components and their proper functionality in individual applications were tested.

Authorization description for PI Web API

The PI Web API can be connected via secure HTTPS communication, but it requires a server certificate where the API is implemented. Before exporting the certificate, the IIS administrator must be running on the server where the API is located in order to enable export of the required certificate.

Export and placing on the server

After completing the above-stated procedure, it was possible to place the application and the server part in the VSB PC. To do this it, was necessary to export the application and the server part. The export of the server part was implemented using the Eclipse development environment. In order to place the server part to the Apache Tomcat application server, the option ‘export to a war file’ was selected because this file type supports the aforementioned application server.

The test of the server part

As with the application testing, the correctness of the data as well as the proper authentication were verified. The web application has been created as an add-on and is not fully customized for viewing on a large computer screen, but, despite this fact, the visualization is transparent and works reliably. The server handled a larger number of connected applications using a mobile application or a browser on a computer.

Part II—designing a method for monitoring the presence of people in an IAB office room using prediction of the course of CO2 concentration

The designed application for monitoring technological processes in the IAB can be used for obtaining information about the current state of the measured variables from common operating sensors (temperature, rH, CO2, light intensity E) for further practical applications in the context of operational and technical functions in the IAB. As an example, the article presents a design of the method for obtaining information on the quality of the indoor environment of the IAB office rooms of the building and, subsequently, information on the occupancy of the IAB office rooms of the building. The basic information on the quality of the indoor environment in the IAB is provided by the sensors of temperature (indoors) Ti (°C) and air humidity rH (%). However, it is much more important to know the concentration of carbon dioxide CO2 (ppm). This is important for the comfort and the overall habitability of the individual IAB offices, or for HVAC management.

The price of high-quality temperature and air humidity sensors is in the order of tens of Euros. The price of sensors for measuring CO2 concentration moves the price of a sensor to the order of several tens of Euros.

In the Czech Republic, the emphasis is placed on securing energy savings of buildings by thermal insulation of the facade within the requirements of the legislation approved in the European Union, which is implemented in large administrative buildings, schools, hospitals, residential complexes, family homes and panel houses. However, the indoor environment of the reconstructed insulated buildings is deteriorated by the increase in the concentration of CO2 and humidity rH. Nonetheless, many investors in the Czech Republic do not take this into account. To reduce CO2 concentration in a room, it is possible to simply open the window and the door or to use forced ventilation as part of a comprehensive solution provided by the technology (HVAC). In case of using the HVAC technology, it is necessary to measure CO2 concentration. In order to reduce the investment costs concerning the acquisition of the missing sensors for monitoring CO2 concentration in the IAB or large residential complexes, it is possible to use the method of predicting CO2 from the measured courses of the temperature T (°C) (indoors and outdoors) and air humidity rH (%) (indoors), which is often standard IAB equipment.

As an example of possible electric energy savings, depending on the presence of people in the monitored area, a typical day of an IAB office room having an area of 19.2 m2 is stated here (Fig. 14).

Fig. 14
figure 14

The IAB office room floor plan with the identification of the sensors used for measuring temperature Tindoor, Toutdoor, relative humidity rHindoor and CO2indoor

After entering the office, the employee usually turns on the light (Fig. 15) and quite often leaves the light on for the entire working time in the room. In the meantime, they leave the room several times and the light is inefficiently on (Fig. 15). In order to obtain an overview of room occupancy (arrival time, departure time) in the monitored IBA room, indirect CO2 concentration (ppm) measurement, by means of the QPA 2062 operating sensor [range 0 and 2000 (ppm), accuracy ± 50 (ppm)], is used in this article (Figs. 4, 20, 21). Production of CO2 concentration is directly proportional to the physical activity of the people in the IAB monitored room. Carbon dioxide concentration is indicated in ppm (parts per million). Based on the course of the measured values of CO2 concentration (Fig. 15) in an IAB office room, it is possible to specify the time of arrival and departure or presence and the time spent of the person in the monitored area. It assumes that a person is present in the IAB office room (a CO2 source), if CO2 concentration increases. When the person leaves the monitored area, CO2 concentration decreases. This can be used for switching the lights in the IAB office room on and off in case of absence of people.

Fig. 15
figure 15

Measured waveform of CO2 (ppm) and illuminance E (lx) in IAB (9.1.2018–10.1.2018). 9.1.2018 (hh:mm:ss): 1 arrival (8:50:00), 2 departure (10:30:00), time of person presence (TPP) ∆t1 = 1:40:00; 3 arrival (10:50:00), 4 departure (11:10:00), TPP ∆t2 = 0:20:00; 5 arrival (11:20:00), 6 departure (11:30:00), TPP ∆t3 = 0:10:00; 7 arrival (11:40:00), 8 departure (12:10:00), TPP ∆t4 = 0:30:00; 9 arrival (12:30:00), 10 departure (13:00:00), TPP ∆t5 = 0:30:00; 11 arrival (14:30:00), 12 departure (17:00:00), TPP ∆t6 = 2:30:00; 13 arrival (17:50:00), 14 departure (19:20:00), TPP ∆t7 = 1:30:00; 15 arrival (19:40:00), 16 departure (20:30:00), TPP ∆t8 = 0:50:00

The text further describes the procedure for determining the appropriate method for predicting the course of CO2 concentration from the measured values taken by the indoor temperature sensor Ti (°C) (QPA 2062) in an IAB office room (range 0 to 50 °C/− 35 to 35 °C, accuracy ± 1 K) and relative humidity rH (%) (QPA 2062) (range 0 and 100%, accuracy ± 5%), outdoor temperature To (°C) (AP 257/22) (range − 30… + 80 °C, resolution: 0.1 °C) using a gradient algorithm of backpropagation for adapting the multilayered forward Artificial Neural Network (ANN) using the Bayesian Regulation Method (BRM) (Fig. 16).

Fig. 16
figure 16

The architecture of the designed ANN

For the classification of prediction quality, Correlation Analysis (CA) and the calculated MSE (mean squared error) parameters were used.

Description of the technologies used

The visualization, monitoring, and processing of the measured values of non-electric variables, such as measurement of temperature, humidity, CO2 for monitoring the quality of the indoor environment of the selected room in the building described, are implemented using the PI System software application. Figure 17 shows the process of measuring and processing data in connection with the use of the PI System SW tool (PI ProcessBook) in the IAB.

Fig. 17
figure 17

Simplified block scheme of utilized technology in IAB with prediction of CO2

Implementation of the practical part experiments

The practical implementation and ANN learning process together with the verification of the ANN BRM learned on the test data is carried out in the following steps:

Step 1.:

Measurement of non-electrical variables Ti, T0, rH a CO2 in the office IAB room from February 1 to February 28, 2015 (transition from winter to spring), from June 1 to June 28, 2015 (transition from spring to summer) using operating sensors in a selected IAB room.

Step 2.:

Data preprocessing–normalization with the min–max method.

Step 3.:

Creating an ANN with the BRM structure (Fig. 16).

Step 4.:

Training ANN, BRM for neuron counts in an interval of 10-800, measuring the time t(s) of learning, the MSE calculation, and the correlation coefficient R for data:

  1. a.

    from June 1 to June 28, 2015 (Fig. 20, Table 1). The best results were recorded for ANN BRM with 600 neurons, MSE = 1.105·10−3 (ppm) and R = 0.959 (Table 1)

    Table 1 Comparison of learning quality ANN (BRM), [1.6.2015–28.6.2015 (data normalized)]
  2. b.

    from February 1 to February 28, 2015 (Fig. 21, Table 5). The best results were recorded for ANN BRM with 600 neurons, MSE = 9.239·10−4 (ppm) and R = 0.932 (Table 5)

  3. c.

    from February 8 to February 14, 2015 (Table 9). The best results were recorded for ANN BRM with 600 neurons, MSE = 7.726·10−4 (ppm) and R = 0.987 (Table 9).

Step 5.:

Prediction CO2 of the test data generalization—the MSE calculation, and the correlation coefficient R for:

  1. a.

    ANN (BRM) (from June 1 to June 28, 2015) with the tested data (from June 1 to June 28, 2015) (Table 2). The best results were recorded with the predicted course of CO2 for ANN BRM with 500 neurons, MSE = 1.640·10−3 (ppm) and R = 0.94 (Table 2)

    Table 2 Comparison of prediction quality ANN (BRM) [1.6.2015–28.6.2015 (data normalized)], with the tested data from the interval [1.6.2015–28.6.2015 (data normalized)]
  2. b.

    ANN (BRM) (from February 1 to February 28, 2015) with the tested data (from February 1 to February 28, 2015) (Table 6). The best results were recorded with the predicted course of CO2 for ANN BRM with 600 neurons, MSE = 1.017·10−3 (ppm) and R = 0.93 (Table 6)

  3. c.

    ANN (BRM) (from February 8 to February 14, 2015) with the tested data (from February 8 to February 14, 2015) (Table 10). The best results were recorded with the predicted course of CO2 for ANN BRM with 400 neurons, MSE = 2.021·10−3 (ppm) and R = 0.97 (Table 10).

Step 6.:

Cross-validation data prediction CO2 of the results achieved the MSE calculation, and the correlation coefficient R for:

  1. a.

    ANN (BRM) (from June 1 to June 28, 2015) with the tested data (from February 1 to February 28, 2015) (Table 3). The best results were recorded with the cross-validation data prediction CO2 for ANN BRM with 400 neurons, MSE = 1.414·10−3 (ppm) and R = 0.89 (Table 3)

    Table 3 Comparison of prediction quality ANN (BRM) [1.6.2015–28.6.2015 (data normalized)], with the tested data from the interval [1.2.2015–28.2.2015 (data normalized)] (cross validation)
  2. b.

    ANN (BRM) (from February 1 to February 28, 2015) with the tested data (from June 1 to June 28, 2015) (Table 7). The best results were recorded with the cross-validation data prediction CO2 for ANN BRM with 250 neurons, MSE = 2.042·10−3 (ppm) and R = 0.92 (Table 7)

  3. c.

    ANN (BRM) (from February 8 to February 14, 2015) with the tested data (from Jun 8 to Jun 14, 2015) (Table 11). The best results were recorded with the predicted course of CO2 for ANN BRM with 400 neurons, MSE = 1.414·10−3 (ppm) and R = 0.89 (Table 11).

Step 7.:

Graphic view of the cross-validation data prediction CO2 results for:

  1. a.

    ANN (BRM) with 400 neurons (Table 3), Step 6a (from June 1 to June 28, 2015) with the tested data (from February 1 to February 28, 2015) (Fig. 22)

  2. b.

    ANN (BRM) with 250 neurons (Table 7), Step 6b (from February 1 to February 28, 2015) with the tested data (from June 1 to June 28, 2015) (Fig. 24)

  3. c.

    ANN (BRM) with 400 neurons (Table 11), Step 6c (from February 8 to February 14, 2015) with the tested data (from June 8 to June 14, 2015) (Fig. 26).

Step 8.:

The use of the LMS adaptive filter algorithm for noise elimination in the predicted signal using the ANN BRM

  1. a.

    ANN (BRM) with 400 neurons (Table 3), Step 6a (from June 1 to June 28, 2015) with the tested data (from February 1 to February 28, 2015) (Fig. 23)

  2. b.

    ANN (BRM) with 250 neurons (Table 7), Step 6b (from February 1 to February 28, 2015) with the tested data (from June 1 to June 28, 2015) (Fig. 25)

  3. c.

    ANN (BRM) with 400 neurons (Table 11), Step 6c (from February 8 to February 14, 2015) with the tested data (from June 8 to June 14, 2015) (Fig. 27).

Step 9.:

Comparison of the prediction results of the ANN BRM without filtering and with LMS filtering using the DTW criteria.

Step 10.:

Evaluation of the results achieved.

A training and test set of data

The goal of the test is to verify whether the results achieved on the training data can be used in the future for other input data files. The training set is made directly from the measured values of temperature Ti (°C), relative humidity rH (%) in the selected IAB office room (Fig. 14) and outdoor temperature Tout (°C). The output (target) set of data consists of the measured CO2 values (ppm). The values measured in February 2015 and in June 2015 were selected.

The data is sampled in an interval of 10 min. Before the actual learning, the training set of data was normalized using the min–max method.

$$ x^{\prime}_{i} = \frac{{x_{i} - min\left( {x_{1 \cdots } x_{i} } \right)}}{{max\left( {x_{1 \cdots } x_{i} } \right) - min\left( {x_{1 \cdots } x_{i} } \right)}} , $$
(1)

where \( min\left( {x_{1 \cdots } x_{i} } \right) \) is the smallest value of the set \( \left( {x_{1 \cdots } x_{i} } \right) \) and \( max\left( {x_{1 \cdots } x_{i} } \right) \) is the biggest value of the set \( \left( {x_{1 \cdots } x_{i} } \right) \).

The min–max method was used for the reasons of eliminating potential errors in training the ANN BRM. After training the neural network and at simulating the training or test data, it was necessary to denormalize the output from the neural network according to the original range of the training input values. The ANN training process is shown in Fig. 18.

Fig. 18
figure 18

Block diagram of the ANN with the BRM in the training mode

Selection of the diagnostic tools, their application and evaluation

The quality of the diagnostic tools that are presented by artificial intelligence methods can be evaluated using various methods, such as mean square error (MSE), mean absolute percent error (MAPE) or Root Mean Squared Error (RMSE). In this article, the quality of performing the prediction using the BRM ANN is assessed using the mean square error (MSE), which is given by Eq. (2):

$$ MSE = \frac{1}{n}\mathop \sum \limits_{i = 1}^{n} \left( {y_{i} - y_{i}^{ *} } \right)^{2} , $$
(2)

where n is the number of measured values, yi represents the measured data (response) of the real system and yi* is the model response.

The force of (linear) dependence between two measured non-electrical quantities has been evaluated by means of the value of the Pearson´s correlation coefficient

$$ {\mathbf{R}}_{x,y} = \frac{{\varSigma \left( {x_{i} - \bar{x}} \right)\left( {y_{i} - \bar{y}} \right)}}{{\sqrt {\varSigma \left( {x_{i} - \bar{x}} \right)^{2} \varSigma \left( {y_{i} - \bar{y}} \right)^{2} } }} $$
(3)

The correlation coefficient \( {\mathbf{R}}_{x,y} \) can take values from the closed interval < −1, + 1 >. The more the absolute value of the correlation coefficient approaches 1, the stronger the dependence of the random quantities is.

Bayesian regularization backpropagation algorithm

Backpropagation algorithm

The backpropagation algorithm is a method for minimizing the average square error value between the actual output value and the pattern that is input into the neural network in order to give a desired target against each unit of the output layer when a neural network is learned [46]. In this article, the Bayesian regularization backpropagation algorithm [47] was chosen for its accuracy and high quality. The backpropagation algorithm is a gradient algorithm by means of which multilayer forward networks are adapted. Backpropagation is conducted as learning supervised by a teacher where the calculated network output is compared to the desired output. Subsequently, using the backpropagation of the signal, the scales are adjusted, so that the network responded to the pattern with the desired output. It has been proved that such networks are able to approximate any continuous function with the required accuracy, and therefore are broadly applicable, for example, for regression analysis [48]. In general, the backpropagation principle is the most widely used algorithm in the field of neural networks. It is used in about 80–90% of applications [49]. Backpropagation optimization is used for forward neural networks with hidden layers and is designed for data classification that is generally not linearly separable [50]. The learning process of backpropagation can be divided into four main parts [15]:

  1. 1.

    Initialization.

  2. 2.

    Pattern introduction.

  3. 3.

    Comparison.

  4. 4.

    Error backpropagation and weight modification (in hidden layers)

Bayesian regularization backpropagation algorithm

The Bayesian evidence framework proposed by MacKay (1992) provides a unified theoretical treatment of learning in neural networks. In the Bayesian evidence framework, the weights and biases of the network are assumed to be random variables with specified distributions [51]. BRM approach works similar to the Levenberg–Marquardt optimization, in a sense that it minimises the squared errors and the weights and finds the optimal combination so that the network performs well. Bayesian based NN training is more robust than the standard back propagation nets [52]. When the parameters (weights and biases) increase, the network loses its ability to generalize. The error on the training set is driven to a very small value, but when new data is presented to the network, the error is great. The predictor has memorized the training examples, but it has not learned to generalize to new situations; the network overfits the data [53]. Typically, training aims to reduce the sum of squared errors in Eq. 4:

$$ F(\omega ) = \alpha E_{\text{w}} + \beta E_{\text{D}} , $$
(4)

where w is the sum of the squared network weights and w is the sum of network errors. Both and are the objective function parameters. In the BRM framework, the weights w of the network are viewed as random variables, and then the distribution of the network weights and training set are considered as Gaussian distribution [54]. The advantage of the BRM ANN is the fact that classical data division into training, validation and testing is not necessary. As the Bayes’ formula indicates, the data and the model will correct each other. The task is to evaluate the models—thus obtaining the control parameters (the scale, or possibly the bias, the vector). Subsequently, the models are compared to each other, which results in optimal hyperparametric gains. The inference task is specified within the model using the Bayes’ formula (5) [55]:

$$ P\left( {\left. w \right|D,\alpha ,\beta ,M} \right) = \frac{{P\left( {\left. D \right|w,\beta ,M} \right) \cdot P\left( {\left. w \right|\alpha ,M} \right)}}{{P\left( {\left. D \right|\alpha ,\beta ,M} \right)}} $$
(5)

In Eq. (5), D is the training sample and the prior distribution of weights is defined as P(w|α,M) = (α2π)m/2exp{− α2w’w}. M is the particular ANN used and w is the vector of networks weights. P(w|α, M) states our knowledge of weights before any data is collected, P(D|w, βM) is the likelihood function which is the probability of the occurrence, giving the network weights [56].

The network was built by using MATLAB’s trainbr function. The logistic sigmoid functions are used for the activation function in each neuron and a linear transfer function, which is used to calculate the network output [57].

LMS algorithm of the adaptive filter

The stability and convergence of the LMS algorithm (Fig. 19) are ensured by having the optimum settings of a step size parameter μ and the length M of the adaptive filter with the LMS algorithm. The least mean-square (LMS) algorithm was developed by Widrow and Hoff in 1960. This algorithm is a member of the stochastic gradient algorithms [58]. The LMS algorithm is a linear adaptive filtering algorithm, which, in general, consists of two basic processes:

Fig. 19
figure 19

FIR LMS adaptive filter realization [59]

a. Filtering process, which involves, computing the output y(n) of the adaptive filter in response to the vector input signal x(n) (6),

Generating an estimation error e(n) (Fig. 19) by comparing this output y(n) with the desired response d(n) (7),

b. An adaptive process (8), which involves the automatic adjustment of the parameters w(n + 1) of the filter in accordance with the estimation error e(n) [59], [60]

$$ y(n) = {\mathbf{w}}^{\text{T}} \left( n \right)\;{\mathbf{x}}\left( n \right), $$
(6)

where w(n) is tap—weight vector.

$$ e(n) = d\left( n \right) - {\text{y}}\left( n \right), $$
(7)
$$ {\mathbf{w}}\left( {n + 1} \right) = {\mathbf{w}}\left( n \right) + 2\mu e\left( n \right){\mathbf{x}}\left( n \right), $$
(8)

where w(n + 1)is tap—weight vector update, μ is step size parameter.

Settings of a step size parameter μ

  1. a.

    Calculating of a step size parameter μ to ensure the stability of the adaptive filter with the LMS algorithm.

For determination, when the LMS algorithm remains stable, it is necessary to find the upper bound of μmax, that guarantees stability of the LMS algorithm (9) [58]

$$ \mu_{stab} < \frac{1}{{3\text{tr}[{\mathbf{R}}]}} , $$
(9)

where tr[R] is trace of R, which is the mean of the sum of the diagonal elements of R (Toeplitz autocorrelation matrix calculated from the vector of input signal x(n), size R is M × M.)

  1. b.

    Calculating of a step size parameter μ to ensure the convergence of an adaptive filter with the LMS algorithm

Convergence behaviour of the LMS algorithm is directly linked to the eigenvalue spread of the autocorrelation matrix R and the power spectrum of x(n). Convergence of the LMS algorithm is directly related to the flatness in the spectral content of the underlying input process. E[v(n)] converges to zero when μ remains within the range of formula (10). E[v(n)] is expectation of weight—error vector v(n) = w(n) − w0.

$$ \mu_{{\text{conv}}} \le \frac{1}{{\lambda_{\hbox{max} } }}, $$
(10)

where λmax is maximum eigenvalue of the autocorrelation matrix R of the input vector x(n).

  1. c.

    Calculating of the optimal value of a step size parameter μopt of an adaptive filter with the LMS algorithm

As a result, a small value μ slows down the convergence of the LMS algorithm and, consequently, increases the inaccuracies in the filtration of non-stationary signals [60]. The following equation is used for the optimal value of the parameter μ opt (7) [58]

$$ \mu_{{\text{opt}}} = \frac{\text{M}}{{\left( {1 + \text{M}} \right) \cdot \text{tr}[{\mathbf{R}}]}}, $$
(11)

where tr[R] is trace of R, which is the mean sum of the diagonal elements of R, \( \text{M} \) is parameter misadjustment.

Parameter misadjustment \( \text{M} \) is defined as the ratio of the steady-state value of the excess mean-square error (MSE) ξexcess to the minimum mean square (MSE) error ξmin.

$$ \text{M} = \frac{{\xi_{excess} }}{{\xi_{\hbox{min} } }} = \mu \,\text{tr}[{\mathbf{R}}] . $$
(12)

The misadjustment \( \text{M} \) is a dimensionless parameter that provides a measure of how close the LMS algorithm is to optimality in the mean-square-sense. The closer adaptive filter length M is to 0, the more accurate is the adaptive filtering action being performed by the LMS algorithm.

DTW criterion for comparing two waveforms

The Dynamic Time Warping (DTW) criterion is used to compare the two sequences of compared vectors: reference vector P = [p(1),… p(P)] of length P and test vector O = [o(1),… o(T)] of length T [61]. The distance d between the sequences O and P is given as minimum distance over the set of all possible paths (all possible lengths, all possible courses) [62]. Minimum distance computation

$$ D({\mathbf{O}},{\mathbf{P}}) = \mathop {\hbox{min} }\limits_{{\left\{ C \right\}}} D_{c} ({\mathbf{O}},{\mathbf{P}}) $$
(13)

is simple, when normalization factor Nc is not a function of the path and it is possible to write Nc= N for \( \forall_{c} \)

$$ D({\mathbf{O}},{\mathbf{P}}) = \frac{1}{N}\mathop {\hbox{min} }\limits_{{\left\{ C \right\}}} \sum\limits_{k = 1}^{Kc} {d\,\left[ {{\mathbf{o}}\left( {t_{c} (k)} \right),{\mathbf{p}}\left( {r_{c} (k)} \right)} \right]} \,W_{c} (k) $$
(14)

If the calculated distance \( D({\mathbf{O}},{\mathbf{P}}) = 0 \) is between the two compared waveforms, the comparison curves are identical. If the distance \( D({\mathbf{O}},{\mathbf{P}}) \ne 0 \) is not the same waveforms compared.

Data preparation for the experiments

The experimental practical part

This section contains the description of the experiments performed, the setting of the individual parameters, the calculated and measured results. In the first long-term experiment, CO2, temperature (T) and relative humidity (rH) indoor measurement were performed in a summer month, from Jun 1 to Jun 28, 2015. The measured course of CO2 concentration in Fig. 20 indicates the occurrence of people in the monitored area.

Fig. 20
figure 20

The reference (measured) course of CO2 concentration (from June 1 to June 28, 2015). 1. Arrival (8.6.2015 7:30:00), 2. departure (8.6.2015 10:10:00), TPP ∆t1 = 2:40:00; 3. arrival (8.6.2015 10:50:00), 4. departure (8.6.2015 13:00:00), TPP ∆t2 = 2:10:00; 5. arrival (9.6.2015 8:40:00), 6. departure (9.6.2015 11:00:00), TPP ∆t3 = 2:20:00; 7. arrival (10.6.2015 7:10:00), 8. departure (10.6.2015 10:20:00), TPP ∆t4 = 3:10:00; 9. arrival (10.6.2015 12:10:00), 10. departure (10.6.2015 14:20:00), TPP ∆t5 = 2:10:00

In the second long-term experiment, CO2, temperature (T) and relative humidity (rH) indoor measurement were performed in a winter month, from February 1 to February 28, 2015. Figure 21 shows the arrival and departure of people in the monitored area (see the legend) in the selected time interval.

Fig. 21
figure 21

The reference (measured) course of CO2 concentration (from February 1 to February 28, 2015). 1. Arrival (5.2.2015 12:50:00), 2. departure (5.2.2015 14:40:00), TPP ∆t1 = 1:50:00; 3. arrival (11.2.2015 8:20:00), 4. departure (11.2.2015 10:10:00), TPP ∆t2 = 1:50:00; 5. arrival (17.2.2015 6:40:00), 6. departure (17.2.2015 10:50:00), TPP ∆t3 = 4:10:00; 7. arrival (19.2.2015 8:50:00), 8. departure (19.2.2015 9:20:00), TPP ∆t4 = 0:30:00; 9. arrival (20.2.2015 8:00:00), 10. departure (20.2.2015 9:10:00), TPP ∆t5 = 1:10:00; 11. arrival (24.2.2015 12:40:00), 12. departure (24.2.2015 15:00:00), TPP ∆t6 = 2:20:00

The design of the experiments is based on the requirement for verifying the quality of the prediction execution for the summer months [selected in a time interval of spring/summer (from June 1 to June 28, 2015)] as well as for the winter months [winter/spring (from February 1 to February 28, 2015)].

Next, it was necessary to experimentally verify the quality of the prediction by means of cross-validation for the values measured in 28 days.

The values measured from June 1 to June 28, 2015, and from February 1 to February 28, 2015, within the individual experiments served for the cross-validation and testing of the trained ANN with the BRM on the data obtained by measuring from June 1 to June 28, 2015, and from February 1 to February 28, 2015.

The actual experiments were carried out as follows:

  1. I.

    The long-term experiment—28 days. Training the ANN with the BRM was implemented on the data (from June 1 to June 28, 2015) (Table 1).

Training ANN, BRM (Step 4a) for neuron counts in an interval of 10-800, measuring the time t(s) of learning, the MSE calculation, and the correlation coefficient R for data from June 1 to June 28, 2015 (Fig. 20) (Table 1). The total number of samples is 4032. Training—70%, 2822 samples, which are presented to the network during the training, and the network is adjusted according to its error). Validation—15%, 605 samples, which were used to measure the network generalization, and to halt the training when the generalization stopped improving. Testing—15%, 605 samples, which have no effect on the training and, therefore, they provide an independent measure of the network performance during and after the training. The prediction (Step 5a) of CO2 concentration using the ANN with the BRM was implemented by, firstly, using the measured values of rH (%) indoors, temperature indoors Tin (°C), temperature outdoors Tout (°C) on the training data from June 1 to June 28, 2015 (Fig. 16, Table 2). Further, the cross-validation (Step 6a) used the training data [rH (%) indoors, temperature indoors Tin (°C), temperature outdoors Tout (°C)] that was measured from February 1 to February 28, 2015 (Table 3). Table 1 shows the calculated and measured parameters for training the ANN BRM (Step 4a) (a number of neurons set, the measured time t of training the ANN with the BRM and the calculated R and MSE values for the trained ANN with the BRM) on the data measured in the interval from June 1 to June 28, 2015.

The minimum value of MSE = 1.105·10−3 parameter and maximum value of correlation coefficient R = 0.959 were calculated for ANN with the BRM where the configured number of neurons was 600 (Table 1). The learning time of ANN BRM is not directly proportional to the number of configured neurons.

Table 2 shows the calculated values of R and MSE parameters for the number of neurons set within the testing of the ANN with the BRM (from June 1 to June 28, 2015) for predicting (Step 5a) the course of CO2 using the ANN with the BRM on the data measured in the interval from June 1 to June 28, 2015. The best calculated minimum MSE parameter (MSE = 1.640·10−3) and maximum R correlation coefficient (R = 0.94) (Table 2) for predicted courses of CO2 are for trained ANN BRM with 500 neurons.

Table 3 shows the calculated values of R and MSE parameters for the number of neurons (10–800) set within the testing of the ANN with the BRM (from June 1 to June 28, 2015) for predicting (Step 6a) the course of CO2 using the ANN with the BRM on the data measured in the interval from February 1 to February 28, 2015. The best calculated minimum value of MSE parameter (MSE = 1.414·10−3) and maximum value of R correlation coefficient (R = 0.89) (Table 3) for predicted courses of CO2 (Fig. 22) are for trained ANN BRM with 400 neurons (cross validation).

Fig. 22
figure 22

The reference [measured course of CO2 concentration (from February 1 to February 28, 2015)] and the predicted course of CO2 concentration. The ANN with the BRM learned (from June 1 to June 28, 2015), the predicted ANN with the data from February 1 to February 28, 2015—the number of neurons—400 (Table 3). 1. Arrival (5.2.2015 12:50:00), 2. departure (5.2.2015 14:40:00), TPP ∆t1 = 1:50:00; 3. arrival (11.2.2015 8:20:00), 4. departure (11.2.2015 10:10:00), TPP ∆t2 = 1:50:00; 5. arrival (17.2.2015 6:40:00), 6. departure (17.2.2015 10:50:00), TPP ∆t3 = 4:10:00; 7. arrival (19.2.2015 8:50:00), 8. departure (19.2.2015 9:20:00), TPP ∆t4 = 0:30:00; 9. arrival (20.2.2015 8:00:00), 10. departure (20.2.2015 9:10:00), TPP ∆t5 = 1:10:00; 11. arrival (24.2.2015 12:40:00), 12. departure (24.2.2015 15:00:00), TPP ∆t6 = 2:20:00

Figure 22 illustrates the reference measured course of CO2 concentration from February 1 to February 28, 2015, and the predicted course of CO2 concentration using the ANN with the BRM learned (Step 4a) on the data (from June 1 to June 28, 2015) and predicted within the cross-validation (Step 6a) (with the data from February 1 to February 28, 2015) using the ANN with the BRM (number of neurons 400) (Table 3). The red circles indicate the predicted CO2 values that were incorrectly calculated within the prediction error using the ANN with the BRM.

Figure 23 illustrates the reference measured course of CO2 concentration from February 1 to February 28, 2015. Figure 23 further illustrates the predicted filtered course of CO2 concentration using the LMS algorithm [the ANN with the BRM learned on the data (from June 1 to June 28, 2015) and predicted within the cross-validation (Step 6a) with the data from February 1 to February 28, 2015, using the ANN with the BRM (the number of neurons—400) (Table 3)]. Based on relations (6) to (11), the step size parameter μ values (Table 4) for setting the structure of the LMS algorithm adaptive filter (M = 48, μ = 0.0062) for noise elimination in the calculated predicted course of CO2 (Fig. 22).

Fig. 23
figure 23

The reference [measured course of CO2 concentration (from February 1 to February 28, 2015)] and predicted filtered course of CO2 concentration using the LMS algorithm [the ANN with the BRM learned on the data (from June 1 to June 28, 2015)] and predicted within the cross-validation with the data from February 1 to February 28, 2015, using the ANN with the BRM (the number of neurons—400) (Table 3). 1.Arrival (5.2.2015 12:50:00), 2.departure (5.2.2015 14:40:00), TPP Δt1 = 1:50:00; 3.arrival (11.2.2015 8:20:00), 4.departure (11.2.2015 10:10:00), TPP Δt2 = 1:50:00; 5.arrival (17.2.2015 6:40:00), 6.departure (17.2.2015 10:50:00), TPP Δt3= 4:10:00; 7.arrival (19.2.2015 8:50:00), 8.departure (19.2.2015 9:20:00), TPP Δt4 = 0:30:00; 9.arrival (20.2.2015 8:00:00), 10.departure (20.2.2015 9:10:00), TPP Δt5 = 1:10:00; 11.arrival (24.2.2015 12:40:00), 12.departure (24.2.2015 15:00:00), TPP Δt6 = 2:20:00.

Table 4 The calculated optimal step size parameter μ with securing the stability and convergence of the LMS algorithm

Comparison of the prediction results of the ANN BRM without filtering and with LMS filtering using the DTW criteria for the long-term experiment—28 days (from June 1 to June 28, 2015) (Table 1). Using relations (6)–(8), the resulting predicted course of CO2 concentration was calculated using the ANN BRM (400 neurons) (Table 3), with suppression of the additive noise using the LMS algorithm (Fig. 23). For the comparison and classification of the measured course of CO2 (Fig. 21) and the predicted course of CO2 without filtering (Fig. 22) using the ANN BRM with cross-validation (400 neurons) (Table 3) was distance D calculated using relations (13), (14) D = 0.239. For the comparison and classification of the measured course of CO2 (Fig. 21) and the predicted course of CO2 using the ANN BRM with cross-validation (400 neurons) (Table 3), using the LMS algorithm for suppression of the additive noise (Fig. 23) distance D was calculated using relations (13), (14) D = 0.176 (M—Misadjustment).

  1. II.

    The long-term experiment—28 days. Training the ANN with the BRM was implemented on the data (from February 1 to February 28, 2015) (Table 5).

    Table 5 Comparison of learning quality ANN (BRM), [1.2.2015–28.2.2015 (data normalized)]

Training ANN, BRM (Step 4b) for neuron counts in an interval of 10–800, measuring the time t(s) of learning, the MSE calculation, and the correlation coefficient R for the data from February 1 to February 28, 2015 (Fig. 21, Table 5). The total number of samples is 4032. Training—70%, 2822 samples, which are presented to the network during the training, and the network is adjusted according to its error. Validation—15%, 605 samples, which were used to measure the network generalization, and to halt the training when the generalization stopped improving. Testing—15%, 605 samples, which have no effect on training and, therefore, they provide an independent measure of the network performance during and after the training).

The prediction (Step 5b) of CO2 concentration using the ANN with the BRM was implemented by, firstly, using the measured values of rH (%) indoors, temperature indoors Tin (°C), temperature outdoors Tout (°C) on the on the training data from February 1 to February 28, 2015 (Fig. 16, Table 6).

Table 6 Comparison of prediction quality ANN (BRM) [1.2.2015–28.2.2015 (data normalized)], with the tested data from the interval [1.2.2015–28.2.2015 (data normalized)]

Further, the cross-validation (Step 6b) used the training data [rH (%) indoors, temperature indoors Tin (°C), temperature outdoors Tout (°C)] that was measured from June 1 to June 28, 2015 (Table 7).

Table 7 Comparison of prediction quality ANN (BRM) [1.2.2015–28.2.2015 (data normalized)], with the tested data from the interval [1.6.2015–28.6.2015 (data normalized)] (cross validation)

Table 5 shows the calculated and measured parameters for training the ANN BRM (Step 4b), a number of neurons set, the measured time t of training the ANN with the BRM and the calculated R and MSE values for the trained ANN with the BRM) on the data measured in the interval from February 1 to February 28, 2015. The minimum value of MSE parameter is MSE = 9.239·10−4 and maximum value of correlation coefficient R = 0.932 were calculated for ANN with the BRM where the configured number of neurons was 700 (Table 5).

Table 6 shows the calculated values of R and MSE parameters for the number of neurons set within the testing of the ANN with the BRM (Step 4b) (from February 1 to February 28, 2015) for predicting the course (Step 5b) of CO2 using the ANN with the BRM on the data measured in the interval from February 1 to February 28, 2015. The best calculated minimum value of MSE parameter (MSE = 1.017·10−3) and maximum value of R correlation coefficient parameter (R = 0.93) (Table 6), for predicted courses of CO2 are for trained ANN BRM with 600 neurons.

Table 7 shows the calculated values of R and MSE parameters for the number of neurons set within the testing of the ANN with the BRM (from February 1 to February 28, 2015) for predicting the course of CO2 using the ANN with the BRM on the data measured in the interval from June 1 to June 28, 2015. The best calculated minimum MSE parameter (MSE = 2.042·10−3) and maximum R correlation coefficient (R = 0.92) (Table 7) for predicted courses of CO2 (Fig. 24) are for trained ANN BRM with 250 neurons (cross validation).

Fig. 24
figure 24

The reference measured course of CO2 concentration from June 1 to June 28, 2015, and the predicted course of CO2 concentration using the ANN with the BRM learned on the data (from February 1 to February 28, 2015) and predicted within the cross-validation (with the data from June 1 to June 28, 2015) using the ANN with the BRM (number of neurons 250) (Table 7). 1. Arrival (8.6.2015 7:30:00), 2. departure (8.6.2015 10:10:00), TPP ∆t1 = 2:40:00; 3. arrival (8.6.2015 10:50:00), 4. departure (8.6.2015 13:00:00), TPP ∆t2 = 2:10:00; 5. arrival (9.6.2015 8:40:00), 6. departure (9.6.2015 11:00:00), TPP ∆t3 = 2:20:00; 7. arrival (10.6.2015 7:10:00), 8. departure (10.6.2015 10:20:00), TPP ∆t4 = 3:10:00; 9. arrival (10.6.2015 12:10:00), 10. departure (10.6.2015 14:20:00), TPP ∆t5 = 2:10:00

Figure 24 illustrates the reference measured course of CO2 concentration from June 1 to June 28, 2015, and the predicted course of CO2 concentration using the ANN with the BRM learned on the data (from February 1 to February 28, 2015) and predicted within the cross-validation (with the data from June 1 to June 28, 2015) using the ANN with the BRM (number of neurons 250) (Table 7).

Figure 25 illustrates the reference measured course of CO2 concentration from June 1 to June 28, 2015, and the predicted filtered course of CO2 concentration using the LMS algorithm (the ANN with the BRM learned on the data from February 1 to February 28, 2015) and predicted within the cross-validation (with the data from June 1 to June 28, 2015) using the ANN with the BRM (number of neurons 250) (Table 7). Based on relations (6) to (11), the step size parameter μ values (Table 8) for setting the structure of the LMS adaptive filter algorithm (M = 34, μ = 0.013) for noise elimination in the calculated predicted course of CO2 (Fig. 25).

Fig. 25
figure 25

The reference measured course of CO2 concentration from June 1 to June 28, 2015, and the predicted filtered course of CO2 concentration using the LMS algorithm (the ANN with the BRM learned on the data from February 1 to February 28, 2015) and predicted within the cross-validation (with the data from June 1 to June 28, 2015) using the ANN with the BRM (number of neurons 250) (Table 7). 1. Arrival (8.6.2015 7:30:00), 2. departure (8.6.2015 10:10:00), TPP ∆t1 = 2:40:00; 3. arrival (8.6.2015 10:50:00), 4. departure (8.6.2015 13:00:00), TPP ∆t2 = 2:10:00; 5. arrival (9.6.2015 8:40:00), 6. departure (9.6.2015 11:00:00), TPP ∆t3 = 2:20:00; 7. arrival (10.6.2015 7:10:00), 8. departure (10.6.2015 10:20:00), TPP ∆t4 = 3:10:00; 9. arrival (10.6.2015 12:10:00), 10. departure (10.6.2015 14:20:00), TPP ∆t5 = 2:10:00

Table 8 The calculated optimal step size parameter μ with securing the stability and convergence of the LMS algorithm

Comparison of the prediction results of the ANN BRM without filtering and with LMS filtering using the DTW criteria for the long-term experiment—28 days (from February 1 to February 28, 2015) (Table 1). Using relations (6)–(8), the resulting predicted course of CO2 concentration was calculated using the ANN BRM (250 neurons) (Table 7), with suppression of the additive noise using the LMS adaptive filter algorithm (Fig. 25). For the comparison and classification of the measured course of CO2 (Fig. 20) and the predicted course of CO2 without filtering (Fig. 24) using the ANN BRM with cross-validation (250 neurons) (Table 7) distance D was calculated using relations (13), (14) D = 0.288. For the comparison and classification of the measured course of CO2 (Fig. 20) and the predicted course of CO2 using the ANN BRM with cross-validation (250 neurons) (Table 7), using the LMS adaptive filter for suppression of the additive noise (Fig. 25), distance D was calculated using relations (13), (14) D = 0.143 (M—Misadjustment).

  1. III.

    The short-term experiment—7 days. Training the ANN with the BRM was implemented on the data (from February 8 to February 14, 2015) (Table 3). 1 week (08/02/2015–14/02/2015).

Training ANN, BRM (Step 4c) for neuron counts in an interval of 10-800, measuring the time t(s) of learning, the MSE calculation, and the correlation coefficient R for data from June 8 to June 14, 2015 (Fig. 26, Table 9). The total number of samples—1152. Training—70%, 806 samples. Validation—15%, 173 samples. Testing—15%, 173 samples. The prediction (Step 5c) of CO2 concentration using the ANN with the BRM was implemented by, firstly, using the measured values of rH (%) indoors, temperature indoors Tin (°C), temperature outdoors Tout (°C) on the training data from June 8 to June 14, 2015 (Table 10). Further, the cross-validation (Step 6c) used the training data [rH (%) indoors, temperature indoors Tin (°C), temperature outdoors Tout (°C)] that was measured from February 1 to February 28, 2015 (Table 11). Table 9 shows the calculated and measured parameters for training the ANN BRM (Step 4c) (a number of neurons set, the measured time t of training the ANN with the BRM and the calculated R and MSE values for the trained ANN with the BRM) on the data measured in the interval from June 8 to June 14, 2015. The minimum value of MSE = 7.726·10−4 and maximum value of correlation coefficients R = 0.987 were calculated for ANN with the BRM where the configured number of neurons was 600 (Table 9).

Fig. 26
figure 26

The reference [measured course of CO2 concentration (from February 8 to February 14, 2015)] and the predicted course of CO2 concentration. The ANN with the BRM learned (from June 8 to June 14, 2015), the predicted ANN with the data from February 8 to February 14, 2015—the number of neurons—400 (Table 11). 1. Arrival (8:50:00), 2. departure (10:30:00), TPP ∆t1 = 1:40:00; 3. arrival (10:50:00), 4. departure (11:10:00), TPP ∆t2 = 0:20:00; 5. arrival (11:20:00) and 6. departure (11:30:00), TPP ∆t3 = 0:20:00

Table 9 Comparison of learning quality ANN (BRM), [8.6.2015–14.6.2015 (data normalized)]
Table 10 Comparison of prediction quality ANN (BRM) [8.6.2015–14.6.2015 (data normalized)], with the tested data from the interval [8.6.2015–14.6.2015 (data normalized)]
Table 11 Comparison of prediction quality ANN (BRM) [8.6.2015–14.6.2015 (data normalized)], with the tested data from the interval [8.2.2015–14.2.2015 (data normalized)] (cross validation)

Table 10 shows the calculated values of R and MSE parameters for the number of neurons set within the testing of the ANN with the BRM (from June 8 to June 14, 2015) for predicting (Step 5c) the course of CO2 using the ANN with the BRM on the data measured in the interval from June 8 to June 14, 2015.

The best calculated minimum MSE parameter (MSE = 2.021·10−3) and maximum R correlation coefficient (R = 0.97) (Table 10) for predicted courses of CO2 are for trained ANN BRM with 400 neurons.

Table 11 shows the calculated values of R and MSE parameters for the number of neurons (10–800) set within the testing of the ANN with the BRM (from June 8 to June 14, 2015) for predicting (Step 6c) the course of CO2 using the ANN with the BRM on the data measured in the interval from February 8 to February 14, 2015. The best calculated minimum MSE parameter (MSE = 1.414·10−3) and maximum R correlation coefficient (R = 0.89) (Table 11) for predicted courses of CO2 (Fig. 26) are for trained ANN BRM with 400 neurons (cross validation).

Figure 26 illustrates the reference measured course of CO2 concentration from February 8 to February 14, 2015, and the predicted course of CO2 concentration using the ANN with the BRM learned (Step 4c) on the data (from June 8 to June 14, 2015) and predicted within the cross-validation (Step 6c) (with the data from February 8 to February 14, 2015) using the ANN with the BRM (number of neurons 400) (Table 11). The red circles indicate the predicted CO2 values that were incorrectly calculated within the prediction error using the ANN with the BRM.

Figure 27 illustrates the reference measured course of CO2 concentration from February 8 to February 14, 2015. Figure 27 further illustrates the predicted filtered course of CO2 concentration using the LMS algorithm [the ANN with the BRM learned on the data (from June 8 to June 14, 2015) and predicted within the cross-validation (Step 6c) with the data from February 8 to February 14, 2015, using the ANN with the BRM (the number of neurons—400) (Table 11)]. Based on relations (6) to (11), the step size parameter μ values (Table 12) for setting the structure of the LMS algorithm adaptive filter (M = 44, μ = 5.63·10−2) for noise elimination in the calculated predicted course of CO2 (Fig. 26).

Fig. 27
figure 27

The reference [measured course of CO2 concentration (from February 8 to February 14, 2015)] and predicted filtered course of CO2 concentration using the LMS algorithm (the ANN with the BRM learned on the data (from June 8 to June 14, 2015) and predicted within the cross-validation with the data from February 8 to February 14, 2015, using the ANN with the BRM (the number of neurons—400) (Table 11). 1. Arrival (8:50:00), 2. departure (10:30:00), TPP ∆t1 = 1:40:00; 3. arrival (10:50:00), 4. departure (11:10:00), TPP ∆t2 = 0:20:00; 5. arrival (11:20:00) and 6. departure (11:30:00), TPP ∆t3 = 0:20:00

Table 12 The calculated optimal step size parameter μ with securing the stability and convergence of the LMS algorithm

Comparison of the prediction results of the ANN BRM without filtering and with LMS filtering using the DTW criteria for the short-term experiment—7 days (from June 8 to June 14, 2015) (Table 9). Using relations (6)–(8), the resulting predicted course of CO2 concentration was calculated using the ANN BRM (400 neurons) (Table 11), with suppression of the additive noise using the LMS algorithm (Fig. 27). For the comparison and classification of the measured course of CO2 and the predicted course of CO2 without filtering (Fig. 26) using the ANN BRM with cross-validation (400 neurons) (Table 11) was distance D calculated using relations (13), (14) D = 0.256. For the comparison and classification of the measured course of CO2 and the predicted course of CO2 using the ANN BRM with cross-validation (400 neurons) (Table 11), using the LMS algorithm for suppression of the additive noise (Fig. 27) distance D was calculated using relations (13), (14) D = 0.107 (M—Misadjustment).

Discussion

Experiment I

For the training ANN BRM (Step 4a) learned on the data from June 1 to June 28, 2015, for the set number of neurons (10–800), R values ranging from 63 to 96% were calculated (Table 1). Using the trained ANN BRM (Step 4a) learned on the data from June 1 to June 28, 2015, the course of CO2 concentration, with the input measured values rH and Ti, To from June 1 to June 28, 2015, with the calculated R values ranging from 61 to 94% (Table 2) for the set number of neurons from 10 to 800, was predicted (Step 5a). For the prediction (Step 6a) of the course of CO2 on the ANN learned from June 1 to June 28, 2015, within the cross-validation for the data measured from February 1 to February 28, 2015, R values ranging from 52 to 89% (Table 3) were calculated. Distance D calculated using the DTW criteria (3) and (4) was bigger, D = 0.239, for the predicted course of CO2 concentration (Fig. 22) without using the LMS algorithm. When the LMS algorithm was used (Fig. 23), the distance between the compared courses was smaller, D = 0.176. From the above-stated results, it can be stated that the LMS algorithm has brought more accuracy to the proposed method in the long-term experiment for the training ANN BRM (Step 4a) learned on the data from June 1 to June 28, 2015, for the set number of neurons (400) (Table 3) within cross-validation data prediction CO2 (Step 6a) with the tested data (from February 1 to February 28, 2015) (Table 3).

Experiment II

For the training ANN BRM (Step 4b) learned on the data from February 1 to February 28, 2015, for the set number of neurons (10–800), R values ranging from 55 to 93% were calculated (Table 5). Using the trained ANN BRM (Step 4b) learned on the data from February 1 to February 28, 2015, the course of CO2 concentration, with the input measured values rH and T from February 1 to February 28, 2015, with the calculated R values ranging from 55 to 93% (Table 6) for the set number of neurons from 10 to 800, was predicted (Step 5b). For the prediction (Step 6b) of the course of CO2 on the trained ANN BRM (Step 4b) learned from February 1 to February 28, 2015, within the cross-validation for the data measured from June 1 to June 28, 2015, R values ranging from 63 to 92% (Table 7) were calculated. The results obtained (Table 7) confirmed the improvement of the predicted course of CO2 by means of the ANN BRM using the LMS algorithm. Distance D calculated using the DTW criteria (3) and (4) was bigger, D = 0.288, for the predicted course of CO2 concentration (Fig. 20) without using the LMS algorithm. When the LMS algorithm was used (Fig. 21), the distance between the compared courses was smaller, D = 0.143.

From the above-stated results, it can be stated that the LMS algorithm has brought more accuracy to the proposed method in the long-term experiment for the training ANN BRM (Step 4a) learned on the data from February 1 to February 28, 2015, for the set number of neurons (250) (Table 7) within cross-validation data prediction CO2 (Step 6b) with the tested data from June 1 to June 28, 2015) (Table 7).

Experiment III

The achieved results confirmed the improvement in the predicted course of CO2 by means of ANN BRM using the LMS algorithm. Distance D calculated by means of the DTW criterion (13) and (14) D = 0.256 was higher for the predicted course of CO2 (Fig. 26) not using the LMS algorithm. Similarly, the correlation coefficient R = 0.89 was lower. When the LMS algorithm was used (Fig. 27), the distance between the compared courses was smaller, D = 0.107. Similarly, the calculated correlation coefficient R = 0.93 was higher. The advantage of the proposed method consists in the use of common operating sensors to obtain information on the state of the operational-technical functions in the IAB for the purpose of their optimum control on the basis of predictable needs of the persons using the IAB areas. The disadvantage of the proposed method with the LMS algorithm is the slow adaptation of the LMS algorithm to real conditions depending on the precision of calculation of the step size parameter μ and inaccurate determination of a person’s arrival and departure to and from the monitored area (Fig. 27) (between points 2 and 4). This is, however, a small decline in the CO2 concentration (ppm) depending on the quick departure and arrival of the person. The proposed method is not able to record the quick change due to the small or big changes in the CO2 concentration. On the basis of the above-indicated results, however, one can state that the LMS algorithm has brought improved precision of the proposed method.

Due to the complexity of the ANN BRM mathematical model, the learning process is a non-trivial optimization problem. Iterative algorithms often encounter the local minima in which the learning process is terminated. The ANN instability is a consequence of such behaviour. Especially the fact that two learning processes run on the same data (but from different starting points) end in two different local solutions is often criticized. Partial elimination of this disadvantage is ensured by using a corresponding adaptive filter. The advantage of the method designed is the possible use of common operational sensors for the detection of information on the state of operational and technical functions in the IAB. The disadvantage of the method designed with the LMS algorithm is the slow adaptation of the LMS algorithm to real conditions, depending on the accuracy of the step size parameter μ calculation and inaccurate determination of the arrival and departure time of the person from the monitored area.

Conclusion

The article describes the design and verification of the indirect method of predicting the course of CO2 concentration (ppm) using the ANN with the BRM for monitoring the presence of people in the IAB office room using the SW Tool PI System (PI—Plant Information enterprise information system).

The first part of this article covers the individual tools and the actual design of the user interface for monitoring the technological processes in an administrative building (IAB). The goal of the first part of the article—the design and the implementation of the FEVISUAL visualization monitoring application for the administrative building of the new FEI at VŠB TU Ostrava using an Android mobile device that monitors the technological processes (HVAC) in the IAB was solved using the PI System. The development and implementation of a mobile hybrid application are characterized by the fact that it is a platform-independent application. The application was tested in real-time operation of the building in conjunction with the PI System SW tool used for monitoring, archiving and processing the data measured in the new FEI administrative building at VŠB TU Ostrava (IAB).

The article further describes the indirect method of Bayesian Regularization Method (BRM) for predicting the course of CO2 from the values measured by the temperature and humidity sensors using a gradient algorithm of backpropagation for adapting the multilayered forward Neural Network (ANN). Based on the long-term measurements and the data collected in relation to the above-mentioned variables, the BRM method can be used, with a sufficient precision rate, for estimating CO2 concentration in the air in order to obtain information on the occupancy of individual rooms (arrival time, departure time, number of people) in an IAB.

The article has verified using the ANN with BRM to predict CO2 for the purposes of monitoring the presence of people in the selected IAB office. In addition, the article verified the improvement of the reliability and accuracy of the proposed indirect method using the LMS adaptive filter for filtering the predicted CO2 concentration course for seasons in a time interval between winter and spring (from February 1 to February 28, 2015), for a time interval between spring and summer (from June 1 to June 28, 2015) and for short experiment in winter (from February 8 to February 14, 2015).

It is obvious that before the method is put into practice, it is necessary to calibrate the methods designed in real conditions. Implementation of the designed indirect method of CO2 concentration prediction has potential for reducing the investment and operating costs by reducing the total number of sensors used in the IAB. In the next work, the authors will focus on improving real-time implementation of the method designed using IoT platforms for determining the occupancy of the monitored IAB areas.