Intelligent Monitoring Platform to Evaluate the Overall State of People with Neurological Disorders

The percentage of people around the world who are living with some kind of disability or disorder has increased in recent years and continues to rise due to the aging of the population and the increase in chronic health disorders. People with disabilities find problems in performing some of the activities of daily life, such as working, attending school, or participating in social and recreational events. Neurological disorders such as epilepsy, learning disabilities, autism spectrum disorder, or Alzheimer’s, are among the main diseases that affect a large number of this population. However, thanks to the assistive technologies (AT), these people can improve their performance in some of the obstacles presented by their disorders. This paper presents a new system that aims to help people with neurological disorders providing useful information about their pathologies. This novelty system consists of a platform where the physiological and environmental data acquisition, the feature engineering, and the machine learning algorithms are combined to generate customs predictive models that help the user. Finally, to demonstrate the use of the system and the working methodology employed in the platform, a simple example case is presented. This example case carries out an experimentation that presents a user without neurological problems that shows the versatility of the platform and validates that it is possible to get useful information that can feed an intelligent algorithm.


Introduction
About one billion people live with some kind of disability. This corresponds to around 15% of the world's population [1]. The rate of disability is increasing, among other things due to the growth in the average age of the population and the increase in chronic health disorders. Lower income countries have a higher prevalence than higher income countries. Poor people have less resources to access treatment.
Half of people with disabilities cannot afford necessary medical care, compared to one third of non-disabled people who cannot afford it. People with disabilities have more than twice the probability of finding inadequate health care providers techniques, up to four times as likely to report improper treatment, and nearly three times as likely to be denied medical care [1].
Children with disabilities or disorders have a lower probability of attending school and receiving an adequate education. The probability of finding a job for a disabled person is also lower. Global employment data show that the employment rate for people with disabilities is 53% for men and 20% for women, while for people without disabilities it is 65% and 30% [1]. Therefore, people with disabilities are more vulnerable to poverty. They have worse living conditions due to the additional costs of their special needs (specialized when they become disoriented, among other things. The system is composed by multiple devices that monitor the user, records their position, and control medication and objects that may be important. Through a mobile application, the user and caregivers have access to information and receive alerts. Another idea is presented in [12]. It proposed using wearable monitoring devices together with computational intelligence to diagnose and monitor people with Parkinson's disease. The assessment of Parkinson's Disease motor disabilities is based on neurological examination during patient's visits to the clinic and home diaries that the patient or the caregiver keeps. However, the short-time examination may not reveal important information. To overcome these limitations and difficulties, the ambulatory monitoring systems can improve this evaluation. Applying machine learning algorithms to these platforms allows to obtain intelligent systems for assistance. For example, Casalino et al. (2018) [13] present a system for real-time monitoring of cardiovascular problems using video images and fuzzy inference rules. The proposed system is composed of a transparent mirror with a camera that detects the user's face. The frames are processed using photoplethysmography in order to estimate different physiological parameters of the user. The estimated parameters are used to predict a risk of cardiovascular disease through fuzzy inference rules. Another system that employs the use of monitoring devices and machine learning algorithms is [14]. The authors present a gait-assistive system using a neural network. The system is composed of devices that monitor the user's movement during gait and stimulate the muscle nerves using electrical stimulation through electrodes. After a data collection phase, a model based on recurrent neural networks is trained. The model will be in charge of predicting the user's movement during gait and controlling the stimulation signal.
The purpose of this work is to present a full platform for the development of custom predictive models that help people with neurological disorders. Figure 1 sketches the concept of this work. The main challenges that this work faces are the signal acquisitions from the user and the environment, the signal processing, the dataset generation with feature engineering, and to train and optimize a predictive model. The aim is to use the generated model to help the user to manage their pathologies; therefore, the model will become an AT in his daily life. Unlike other works where the system is focused on a specific pathology or the algorithms used are optimized for a specific application, the proposed system is intended to be used for multiple pathologies and applications. The platform is presented in a generic way, where each of the stages can be adapted in order to obtain a different predictive model. This model will be personalized for the user and the desired application. Thus, to illustrate the versatility of the platform and to show the working methodology, a system validation experimentation is performed. This paper is organized as follows. In the materials and methods section, the description of the different parts that make up the platform is presented. First, the acquisition system composed by four modular electronic devices. Then, Sections 2.2 and 2.3 describe the characteristics of the database and the feature engineering before training the model, respectively. Section 2.4 shows the steps to follow towards generating predictive models using machine learning (ML) algorithms. In Section 2.5, a use case of the platform is presented; it is intended to generate a prediction model for people concentration in the workstation. Section 3 shows the results of the use case with data extracted from the generated model and its training. Finally, in Sections 4 and 5 the obtained results are discussed and the conclusions of the paper are outlined.

Materials and Methods
This section presents a platform for the generation of predictive models for people with neurological disorders (Figure 1). These models, customized for each user, intend to provide information about the pathology of the user and to help them manage it in a more controlled way. The generated information can also be used as input or as feedback for other assistive technologies. First, the different parts that make up the platform are described. Each of the stages can be adapted to the special conditions of the user and the final objective of the application to be developed. To conclude the section, an example of the use of the platform is described to show the workflow of the system.

Data Acquisition System
The first stage of the platform is the data acquisition system. This system is responsible for obtaining information from the user and from the surrounding environment. It has been developed with a modular architecture that allows adjusting the use of the devices according to the special characteristics of each user and the application that is carried out. For example, it allows the sensors to be restructured in the event that one of the devices is no longer required. An example of this would be to integrate the sound sensor into the smartphone in situations where the video device is not used, or vice versa. The system consists of four electronic devices: a smartphone, a wrist wearable device, an environmental monitoring device, and a video sensor device.

Personal and Environmental Devices
The environmental and personal monitoring devices are responsible for measuring the environmental conditions and the user's physiological variables, respectively. The development of these devices, which are integrated within the presented platform in this work, along with a study of the different parameters measured by this data acquisition system is described in [15].
The environmental monitoring device provides information about the luminosity, the environmental temperature, the relative humidity, and the atmospheric pressure of the environment where the user is. It is a small electronic device, which could be a key ring.
The personal monitoring device is the one described in [15], which integrates the measurement of the heart rate and the body temperature of the user. To complement the device, a new sensor has been integrated. It is an Inertial Measurement Unit (IMU), which provides information about the motor activity performed by the user. The details of this sensor and its integration into the system are described in Section 2.1.2. This personal monitoring equipment consists of a small wearable wrist device. Its design has been slightly updated to integrate the new sensor, and its dimensions have been reduced with respect to the previous version, despite integrating a larger capacity battery that provides an autonomy of more than 20 h of use. In addition, it has been manufactured with soft and comfortable materials that provide ergonomics and facilitate its placement for users with special difficulties. Figure 2 shows a picture of the new design, where the device, completely covered with EVA foam, can be seen. This also allows the device to weigh only 5.90 g, including the foam cover. On the other hand, the management of these monitoring devices is done with a smartphone via an Android application. The application, also described in [15], also allows displaying information to the user or to the caregiver. The interface and the displayed information can be modified depending on the user and the corresponding application. Furthermore, as described in [15], the smartphone also acts as a sound sensor, capturing the entire human audible spectrum (between 20 Hz and 22 kHz).

Motor Activity Sensor
The motor activity (MA) of the user is a relevant parameter that provides useful information to the platform. For example, it allows to evaluate the health and wellness in users with neurodegenerative disorders that influence in the motor functionality [16]. This parameter allows to quantify the arm movements and provides data about the user's displacement. In addition, together with other parameters, it is possible to estimate the state of mind or measure stress levels of the user [17].
The sensor used for the measurement consists of an IMU placed in the personal monitoring device, which integrates 3-axis gyroscope, 3-axis accelerometer, and 3-axis magnetometer. As an example, Figure 3 shows a fragment of the obtained signals by the MA sensor in the X-axis during a test session.  The obtained data every sample by the sensor are organized in an array and stored in the corresponding collection within the database. The structure of a sample document for storing samples is shown below. The date and dateString parameters are the timestamp of the measurement in milliseconds and in character string, respectively. These parameters are included in every document in all data collections. The generated array with the measurement data is stored in the motor parameter. The ObjectId identifier is automatically set by the database when the document is uploaded.

Video Device
The last device that makes up the data acquisition stage is the video device. The purpose of using this system is to obtain visual relevant information to the applications from the user's environment.
Some neurological disorders can cause difficulties in social interaction and therefore affect the mental wellbeing of the user [18]. Thus, one of the parameters measured by the video device is the number of people in the user's environment at any given time. In this way, the platform has information which together with other parameters allows to relate, for example, how social interaction can affect the user or whether an excessive presence of people around the user influences in the user's behavior [19].
On the other hand, regardless of the number of people around the user, some people with neurological disorders may feel overwhelmed if there is excessive activity around them, such as constant moving around or movements close to the user. In addition, these actions added to other stimuli, e.g., ambient noise, may be intensified [20]. Therefore, another parameter provided by the video device to the platform is the Optical Flow. The Optical Flow is the apparent motion pattern of objects in the image between two consecutive frames, caused by the displacement of the object or the camera. It is a 2dimensional vector field where each vector represents a displacement vector indicating the movement of a point from its position in the first frame to its position in the second frame [21]. Consequently, if we keep the camera in a fixed position, the displacement that occurs in the image between frames will then be due only to the movement of the objects. In other words, we will have an estimate of how much movement occurs in the user's environment. The video device consists of an Nvidia Jetson Nanocompute card [22] and an Insta360 Air 360 degree camera [23]. The Jetson Nano has 128 CUDA ® (Compute Unified Device Architecture) cores that encourage the execution of applications where computer vision and machine learning algorithms are used. The 360 degree camera provides the most complete possible picture of the user's environment. The system is mounted in a 118 × 96 × 60 mm aluminum casing for portability between rooms. In addition, an improved cooling kit has been added to keep the temperature stable during use. An image of the video device is shown in Figure 4a.  The first parameter introduced is the quantification of people in the user's environment. To do this, it is necessary to detect the people who are in the room at any given moment. This detection task is performed using a convolutional neural network (CNN) model. The algorithm used is YOLOv5 [24,25]. A pretrained model optimized for object detection is used. It has a high speed of execution doing inference and its size is contained. Figure 4b shows a screenshot of a frame where the detection of people during a test session is observed. It can be seen how the 360 degree camera captures the entire environment and the algorithm detects where the people are. The structure of a sample document for storing People Detection data is shown below. The people parameter stores the measured number of people.
{ " _ id " : O b j e c t I d " date " : NumberLong " d a t e S t r i n g " : " EEE MMM d HH:mm: s s z yyyy " " people " : NumberShort } On the other hand, there are different ways to measure the Optical Flow. In this case, a dense measurement of Optical Flow has been chosen, in which the displacement of all the points of the frame is calculated. To measure the Optical Flow of all the points in the image and to be able to quantify the movement that occurs in the user's environment, the method of Gunnar Farnebäck is used [26]. This algorithm is based on polynomial expansion and performs an estimation of the motion of two frames. Finally, the displacement modulus of both axes (X and Y) of the frame is stored. Figure 4c shows a fragment of the Optical Flow signal recorded during a test session. It can be observed how after a period of time the signal level is lower. This fact is due to a change of position by the people in the session to a place farther away from the camera, which results in a smaller change between frames and therefore a lower signal magnitude. The structure of a sample document for storing Optical Flow data is shown below. The optical parameter stores the estimated optical flow.
{ " _ id " : O b j e c t I d " date " : NumberLong " d a t e S t r i n g " : " EEE MMM d HH:mm: s s z yyyy " " o p t i c a l " : NumberLong }

Database
The next stage of the platform is in charge of storing the information obtained by the data acquisition system. The information must be organized in an efficient and secure way. Therefore, the database must have some characteristics that allow the platform to work properly and with minimum execution times. The main properties that must be met are listed below.
• It must allow the integration of multiple types of data, as well as change the architecture in which the information is stored if necessary. • It must have continuous availability and scalability. • It must support time-series. This requires less storage space and allows for faster query speed. • It must perform continuous data updates that allow real-time analysis of the information. • It must have strong access controls, data audits, and protect the data with encrypted controls. The information stored in the database is very valuable to the user and to the platform itself. Thus, the security standards must be met to ensure data anonymity and data access restriction.
The database used in the platform is a non-relational MongoDB database [27]. The information obtained by the data acquisition system is stored in documents within data collections, with a collection for each measured parameter. This allows new parameters to be integrated into the platform without the need to modify the storage architecture. An example of the collection storage structure is shown in Figure 5.

Feature Engineering
Feature engineering is the process of extracting attributes that improve the machine learning model from the raw information using data mining techniques [28]. The features must have an appropriate configuration. Therefore, these features are created from the previously acquired data, and their inputs are transformed and prepared for the machine learning (ML) model. Synthetic features that do not originally exist in the dataset are also created from the available information and they will allow the model to perform better.
The features have to comply with a series of properties in order to be suitable for use in the model. The attribute must be related to the objective of the application, i.e., it must be relevant in the output that our model is looking for. In addition, it must be certain that it will be possible to know the value of that feature at the time of the prediction; otherwise, the model will not work correctly. The value of the features must be numerical and must represent a magnitude. This is because, for example, a neural network is no more than a machine that performs arithmetic, trigonometric, and algebraic operations on the input variables [29]. Therefore, those features that are not numerical but are required to be used will have to be converted or encoded before introducing them into the model. Finally, it is also necessary to have enough examples of the features values to train the model correctly. The above rules are used to extract the appropriate features for the application and to generate a dataset that will be used to train and to validate the desired model. The transformations to be performed on the available signals in order to extract the attributes will depend on the final objective of the application. Therefore, once the problem to be faced has been defined, the signals must be analyzed and those that will be useful for the model must be selected. Subsequently, the necessary modifications will made.
The final aim of this stage is to generate a suitable dataset to train the model. As mentioned above, this stage depends entirely on the information obtained from the model. Therefore, it is directly related to the result of the model training and could be placed in a parallel position to the next stage. In most of the times, it will be necessary to modify the dataset with new information or to change the existing features.

Training and Generation of a Custom Model
Using the generated feature dataset from the information collected by the data acquisition system, a customized model is trained for the user and the desired application. For this purpose, appropriate machine learning algorithms are used according to the specific application, i.e., it is particularized according to the information that will be predicted in the future. The training and evaluation process of the model is performed cyclically until the optimal and sufficiently accurate behavior of the model is found. The dataset will be modified using the information obtained during training to improve the model accuracy. Finally, a validation of the model is performed with a part of the dataset reserved for testing. This allows checking the predictive behavior of the trained model, analyzing possible lines of improvement in the process, and verifying the accuracy for new inputs to the platform.
Once the training, validation, and testing processes of the model are completed, the trained model can be used to predict information from new inputs to the platform taken with the acquisition system. The model can be hosted on a client that runs continuously and can provide real-time feedback to the user.
The first step to be performed before starting the training is the split of the dataset into three parts. A diagram of this split is shown in Figure 6. The first fragment will be the training data (training set). The training set is the dataset used by the model to learn how to process the information. From these data, the model adjusts the parameters of the classifier or from the algorithm used in the model. Using the training set, different machine learning algorithms can be evaluated to generate the model, and the results obtained can be compared to obtain the most appropriate one for the application. The training set contains most of the data from the main dataset. The validation set is used to estimate how well the model has been trained. This can be done between periodic training cycles and when the training process has been completed. It is also used to estimate model properties, such as the error in a classifier or the precision and recall in binary models. Cross-validation is the most commonly used method for this task [30]. Finally, there is the test set. It is used only to evaluate the performance of the model after the training process has been completed. It can be considered as a mock production use of the model.

Creation of a People Concentration Model in the Workstation
The system presented in this paper can be used for multiple pathologies and applications. The acquisition system and the database allow to easily adapt or integrate new sensors. The signal processing, the feature analysis, and the machine learning algorithms used to generate the model will also be defined according to the objective. To show the workflow of the platform, an experimentation to validate the system is performed. The test consist of generating a personalized model of the concentration of a person in two different workstations within the same research laboratory. One of the places is located at the entrance of the laboratory, next to the door. Any person who must access or leave the laboratory has to pass by this position, which we will call Position A. The second position (Position B) is located in an isolated room within the same laboratory.
The final goal of the model is to predict at which times the person is focused on the tasks being performed and at which times the concentration is reduced, for example, due to an interruption or stimuli around the workstation. This will provide information on which of the positions is the most suitable to work at. Although this application is not directly related to assisting people with neurological disorders, it is an example of the versatility that the system can offer as well as to show the working methodology of the platform. In addition, a similar model could also be proposed for a person with a neurological disorder so that it would be possible to analyze how the user adapts to a specific work environment. The two possible situations are labeled as "Focused" and "Distracted", and the output of the predictive model will be one of these two options.
First, it is necessary to define what will be considered as "Focused" and "Distracted". For this example, a first supervised part has been proposed where data are collected from the person and the environment in both workstations performing a task that allows to quantify the person's concentration on the task. This task consists of reading an entertainment book. The reading of technical or scientific documents, which a priori could be more related to a task to be developed in the person's work, has been discarded, because the reading pace may not be constant due to the complexity of certain parts throughout the document. During this supervised period, the number of lines per minute read by the user is counted. In this way, a range is established in which the person is considered focused on the task. Below that range, the person is considered distracted. The supervised task is necessary to establish the user's concentration level in a quantitative way. The model needs this information to learn in which situations the user is focused on the task.
Once the supervised stage is completed, the necessary information is available to generate the new model, always based on the previously established definition of concentration. The second part of the experimentation corresponds to the unsupervised collection of new data in both workstations. The user performs the usual tasks of his job. The new information collected will be used to estimate the concentration levels of the person in both workstations using the generated model with the supervised data.
For the supervised stage, a data acquisition period of 180 min has been established for each of the established positions (A and B), i.e., a total of 6 h. To make the supervised experimentation more user-friendly, the time has been divided into three one-hour periods, taken on consecutive days. Subsequently, for the unsupervised stage, a total of 8 h of data have been collected. For each of the positions, 4 h have been taken. In turn, these 4 h have been captured in 2-h periods on consecutive days.
The next step is to analyze the available signals and decide which data can provide relevant information to the model. As the experimentation is performed in a controlled environment, the weather conditions are kept constant over time at both workstations. Therefore, ambient temperature, relative humidity, and atmospheric pressure do not provide information to the model that helps to predict the concentration level and are discarded. Similarly, the use of the ambient luminosity can be discarded as the values also remain constant over time and of the same magnitude, both at position A and B. Finally, the use of the magnetometer signal from the MA sensor is also discarded because it is not necessary to know the user's position. Thus, the heart rate and the body temperature signals of the user, the gyroscope and the accelerometer signals of the MA sensor, the ambient sound, and the signals of the video device (optical flow and people detection) would remain.
When the available signals to be used have been decided, a preprocessing is performed before generating the dataset. The different transformations applied to each of them are described below.
• Sound: The audio spectrum is available divided into frequency bands. For the desired model, the information isolated by frequencies is not needed. Thus, a feature that contains the accumulated energy value in all frequency bands is generated. We use Equation (1) for this purpose: • Heart Rate: The heart rate value is available in 6-s windows. As the photoplethysmography signal used to obtain the heart rate value is very sensitive to motion artifacts, the 75th percentile of the last 30 s is used as feature for the dataset. • Body Temperature: The body temperature value does not require any special transformation. The obtained signal itself is used as a feature.
• Gyroscope and Accelerometer: The gyroscope and the accelerometer signals are available separately in the three axes (X, Y, and Z). For the desired model the divided information is not needed, so a feature is generated with the module of the three axes for the gyroscope signal and another one for the accelerometer signal. • Optical Flow and People Detection: Both the Optical Flow signal and the quantification of people do not require any special transformation for the dataset. The signals obtained are used as features.
Finally, the signals of all the generated features are normalized, excluding the quantification of people. A fragment of these signals can be seen in the Appendix A in Figure A1. Once the features have been established and the different transformations have been carried out, the dataset is generated. For this purpose, a time vector is created where the time values of all the features are chronologically ordered together inside with an identifier that indicates the feature to which they belong. In addition, an index is assigned to each of the features indicating the last entry added to the dataset. Then, the time vector is browsed, adding to the dataset the values of the different features of the position indicated by each of its indexes. This merging generates an input in the dataset. Once the entire time vector has been browsed, the dataset is complete with all the information generated. To describe this process graphically, a schematic is shown in Figure 7. f2 [2] f2 [3] f2 [4] f2 [5] f2 [6] f2 [k] f2 i_f2 f3 [1] f3 [2] f3 [3] f3 [4] f3 [m] f3 i_f3 f4 [1] f4 [2] f4 [3] f4 [4] f4 [5] f4 [6] f4 [7] f4[n] f4 i_f4 fn [1] fn [2] fn [3] fn [4] fn [5] fn [6] fn [p] fn i_fn Figure 7. Diagram of the dataset generation process.
Using the described method, both datasets are generated for our model with the data collected in the experiment (supervised set and unsupervised set). Table 1 shows the distribution of both. Therefore, joining the records in both positions (A and B), we have a dataset for training and validation of the model with 17,135 entries, with 34.08% of entries labeled as "Distracted". For training and validation of the model, the dataset has been split (80-20%). Between different checked algorithms, a sequential neural network model has been selected due to its performance with the available dataset. The neural network architecture has also been adjusted from the simplest to obtain an adequate performance without increasing the inference time excessively. The selected neural network consists of the input layer, two hidden layers with 120 and 80 nodes with "relu" type activation function and the output layer with 2 nodes and "softmax" as activation function. A schematic of the model structure is shown in Figure 8. The parameters used for training the model are as follows.

Results
It should not be forgotten that the final aim of the experimentation is to generate a model of the concentration of a person in two different workstations within the same laboratory. This section attempts to present the results obtained from both the training of the model and the experimentation itself.
The obtained results of the model training are summarized in the Table 2. The Receiver Operating Characteristic (ROC) curve and its respective Area Under Curve (AUC) are included in Figure 9. The performance of the model is very fine. The model is able to recognize which dataset inputs have been defined as "Focused" and "Distracted" with high accuracy.  Once the model has been generated and evaluated its performance, the unsupervised dataset is used in order to identify each dataset input as a "Focused" or "Distracted" situation using the model. The results obtained are shown in Figure 10. A comparative graph between both positions (A and B) can be seen.

Discussion
A model with successful results has been trained only using seven generated features from all the integrated signals in the platform. As can be seen in Table 2, the error in the model evaluation is very low. The AUC is very close to 1 (Figure 9), which means that the obtained results in the evaluation are almost perfect.
Analyzing the generated predictions by the model from the unsupervised set ( Figure 10), the total time of concentration in Position B is higher. There is a notable difference in the time that the user remains focused on his tasks in Position A (51.34%), with respect to Position B, where more than the 90% of the time has been identified as "Focused". In addition, the concentration time has undergone a 50% more changes in the level of concentration in Position A (39) than in Position B (25). This implies that concentration periods are shorter between distractions. Therefore, it seems that as common sense would indicate, Position B is a better workstation.
Regarding the performance of the initial stages of the platform, the acquisition data system has allowed obtaining signals with good quality in all devices and the storage protocol has worked correctly. The analysis of the signals and the processing carried out to extract the features have been customized for the application that has been presented as an example of use. However, the platform presented in this work has demonstrated high versatility when it comes to generating new information that can help people with neurological disorders.

Conclusions
This work aims to present an intelligent platform that could provide useful information about people with neurological pathologies as an assistive technology. The novelty of this work is the acquisition of physiological and environmental signals for the generation of predictive models using machine learning algorithms. Throughout the paper, the different stages that make up the system have been described. Finally, an example of the use of the platform is presented, which allows a more detailed description of each of the steps taken until the desired model is obtained. The proposed application in the experimentation does not have a direct relationship with the assistance to people with neurological disorders. However, it has made it possible to describe the work at each stage of the platform. In addition, the presented example could be transformed into a real case with a user with a neurological disorder. For example, the platform could be used to measure the user's level of adaptation to a particular job.
This paper attempts to show the versatility offered by the presented system. The modular design allows to integrate or adapt different sensors. The analysis and processing of the signals will be defined according to the objective for which the platform is to be used. Likewise, the machine learning algorithms used will depend on the model to be obtained. However, to generate a real predictive model that helps to manage problems arising from a neurological disorder, it is necessary to collect a much larger amount of information than the used for the example case. In addition, the feature engineering that must be developed to obtain the appropriate features for the model is also very complex. Therefore, the system has been presented in a generic way together with a simple example to show the workflow. Currently, the system is in use for the development of a personalized models of people with ASD, one for each user. Every model should predict behavioral changes in the user due to environmental stimuli, caused by a sensory processing problem derived from their pathology. Data collection is being developed in a clinical setting. Another possible use could be to obtain information about the stress level of a person with reduced mobility. The information provided by the platform could be used to modify the user's posture, alert the caregiver, etc. Different applications could also be to have an intelligent feedback system during a session of rehabilitation activities, or to be used in Sleep Disorders Units.

Conflicts of Interest:
The authors declare no conflict of interest.