Parallelization of Biosignal Processing for Real-Time Human Stress Level Classification 1⋆ Lesia Mochurad1,*,†, Daryna Vasylashko1,† 1 Lviv Polytechnic National University, 12 Bandera street, Lviv, 79013, Ukraine Abstract Stress is a pervasive issue in modern society, significantly impacting both physical and mental health. Effective real-time classification of stress levels from biosignals is critical for timely interventions and improving overall well-being. However, real-time stress classification is computationally demanding and often impractical with traditional methods. This study aims to address these challenges by developing parallel computing techniques to enhance the efficiency and accuracy of stress classification using ultra-short biosignals. In this research, we utilized CUDA technology and OpenMP to accelerate the preprocessing and classification stages of biosignals. The primary goal was to reduce computation time while maintaining high classification accuracy. Using CUDA for parallel processing, we achieved a speedup of 13.21 times compared to sequential processing. OpenMP also provided a significant speedup of 4.65 times using 8 threads. These results highlight the efficiency gains from leveraging parallel computing architectures. We also explored the use of ultra-short biosignals for stress classification, achieving an accuracy of 87.98%. This represents the highest accuracy reported in studies utilizing such short time intervals, demonstrating the feasibility of using brief biosignals for effective stress detection. The findings indicate that the proposed parallel computing methods not only reduce processing time significantly but also maintain high accuracy in stress classification. Keywords Stress recognition, biosignal processing, parallelization, OpenMP, CUDA 1. Introduction The use of parallel programming technologies to classify stress levels based on biosignal analysis is an urgent problem, as it not only contributes to the development of innovative health monitoring methods [1], but also requires continuous improvement of cybersecurity measures to protect the confidentiality of information about users' biometric data from potential threats. It is known [2] that stress is a problem that affects more than half of the adult population. This condition has a direct impact on human health and can cause insomnia, apathy, and heart disease. A study by the American Psychological Association showed that the number of adults suffering from long-term stress increased significantly from 48% in 2019 to 58% in 2023 in the age group of 35 to 44 years. There is also an increase in the number of people diagnosed with ICyberPhyS-2024: 1st International Workshop on Intelligent & CyberPhysical Systems, June 28, 2024, Khmelnytskyi, Ukraine ∗ Corresponding author. † These authors contributed equally. lesia.i.mochurad@lpnu.ua (L. Mochurad); daryna.vasylashko.shi.2022@lpnu.ua (D. Vasylashko); 0000-0002-4957-1512 (L. Mochurad); 0009-0009-4068-1094 (D. Vasylashko); © 2024 Copyright for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0). CEUR ceur-ws.org Workshop ISSN 1613-0073 Proceedings psychological illnesses from 31% to 45% in the same age group [3]. In addition, there are studies that show that a state of constant stress affects not only psychological health, but also physical health, which can lead to diseases such as diabetes, cancer, and various cardiovascular and respiratory diseases [4]. Moreover, the field of stress research has a wide range of applications, ranging from accelerating learning and increasing productivity to reducing the risk of road accidents [5, 6]. For the above reasons, it is important to develop a fast automated system that can measure a person's stress level throughout the day, detect threatening conditions, and notify the user about them. Given that stress is regulated by the autonomic nervous system, it can be detected based on physiological indicators such as electrocardiogram (ECG), galvanic-skin response (GSR), electromyogram (EMG), heart rate variability (HRV), heart rate (HR), blood pressure, respiratory rate, and temperature [7]. In our study, we will rely on indicators extracted from ECG, EMG, HR, respiratory rate, and GSR, as these biosignals are most often used to classify stress levels. However, the main problem is the need for a clean and continuous signal of about 5 minutes to achieve high accuracy [8], which can be problematic in real time. In addition, bio-signal processing is a computationally complex process that requires a lot of time and resources, which is also a problem when the goal is to create a near real-time stress level classification system. To solve this problem, parallel programming technologies such as OpenMP and CUDA can be used. The aim of this study is to develop a parallel biosignal processing algorithm for classifying human stress level and the possibility of implementing it in an automated system that would work in real time. Additionally, this study introduces the use of ultra-short biosignals of two seconds in length. These ultra-short signals, under specific conditions, can significantly speed up the biosignal processing process while maintaining accuracy. Studies have shown that ultra- short HRV analysis (2 to 5 seconds) can reliably estimate stress levels under controlled conditions [9, 10]. We will clearly define the conditions under which these ultra-short signals are effective, including their limitations, and how they can be integrated into the stress level classification algorithm. This study will address the computational challenges and propose solutions to achieve real-time stress level monitoring, enhancing both the efficiency and security of health monitoring systems. As a result, the main contributions of this work are as follows: 1) A parallel algorithm for stress level classification based on human biosignal processing has been developed. 2) Performance indicators for the use of parallel computing technologies OpenMP and CUDA were found and analyzed. 3) The possibility of using ultra-short biosignals of two seconds in length was proposed, which made it possible to significantly speed up the process of biosignal processing. The developed stress level classification algorithm, optimized by parallel computing and the use of ultrashort biosignals, can be integrated into automated medical monitoring systems, which will allow faster detection of patients' stressful conditions and provide appropriate support. In particular, the analysis of performance indicators and data processing speed of such an algorithm is also critical to ensuring the security and confidentiality of patients' biometric data, which are key aspects in the field of cybersecurity in medical systems. 2. Analysis of literary sources Stress is a growing problem in modern society that has a direct impact on human health and functioning. Therefore, there are currently many studies that aim to determine the level of human stress during the day, which allows healthcare professionals to control and influence this condition. Mohammad Naim Rastgoo and other authors [11] proposed a method for classifying stress levels based on the ECG signal. The experiment was conducted for different window lengths and the best results were observed for windows of 420-450 seconds, namely, an accuracy of 92.12% was achieved. However, with the smallest window lengths, from 5 to 30 seconds, the maximum accuracy achieved was 71.66%. In their study [12], the authors Dun Hu and Lifu Gao used heart rate variability as a characterizing feature. As a result, they were able to achieve an accuracy of 93.7% using a KNN classifier. Kun Liu and other authors in their study [8] aim to categorize the level of stress based on short signals, namely from 30 seconds to 3 minutes, using HRV. Using an SVM classifier, they managed to achieve the best result of 85.3% accuracy. Ali I. Siam and others [6] in their study used indicators such as electrocardiogram, galvanic- skin response, electromyogram, and respiratory rate to predict stress levels and were able to achieve 98% accuracy with a Random Forest classifier, which is one of the highest accuracy rates among all the studies we reviewed. The disadvantage of this experiment is the high data processing time, as it takes longer to obtain data from four different signals than in the previous ones, where only one or two biosignals were taken into account. Also, windows of 1 minute are analyzed, which requires continuous recording for a specified period of time. Neural networks are also often used to classify stress levels. Mahtab Vaezi and other authors in their study [13] were able to achieve an accuracy of 93.6% using an ECG signal to predict stress levels, which is still the highest among similar studies. All of the above studies use the DriveDB [14] dataset to train the model and evaluate the classification accuracy. There are also other studies on determining the level of stress, in particular [15] proposes a method that uses a finger tapping test to analyze psychophysical states, and develops a mobile application and a machine learning model to detect and predict anomalies, which provided information for future experiments and improved model accuracy. The developed model is a multilayer recurrent neural network that demonstrates 1.5% error rate on synthetic data and 5% on real data with a similar distribution. The phenomenon of professional stress was studied in [16]. The authors presented its sources, symptoms, and development models, developing a stress classification and an information system for determining the level of stress exposure of an operator during professional activities. Recent studies have also explored the use of ultra-short biosignals to classify stress levels, showing promising results. For example, Shaffer and Ginsberg [9] demonstrated that ultra-short HRV recordings of just 2 to 5 seconds can reliably estimate stress levels under controlled conditions. Munoz et al. [10] further validated this approach, highlighting that while shorter signals are more susceptible to noise, they can still provide accurate stress assessments when using advanced signal processing techniques. These findings suggest that ultra-short biosignals could be effectively used for real-time stress monitoring, offering significant advantages in terms of processing speed and practicality. Based on the above-mentioned studies, we can say that the analysis of several biosignals to determine the level of stress is rarely used, since processing such a large amount of data takes a relatively long time. At the same time, studies that use more than one characterizing signal show a better level of accuracy compared to those that use a single signal. Therefore, our research will focus on speedup signal preprocessing by parallelization. Also, this approach will allow us to study ultra-short signals without compromising the speed of execution, which is crucial in real-time systems. 3. Methods and means It is important to investigate the relationship between physiological signs, such as electrocardiogram, electromyogram, galvanic-skin response, heart rate and respiratory rate, and the stress state of the person being measured. To achieve this, next steps are necessary: 1) Pre-processing: the signal is extracted, divided into segments according to the window size under study, and filtered. 2) Feature extraction and selection: extracting the main characteristics from the pre- processed and normalized signal. 3) Classification: directly determining the patient's condition based on the obtained characteristics using a machine learning model. 3.1. Dataset description For the experiment, we used the same dataset DriveDB as in the works analyzed above, obtained by J. A. Healey and R. W. Picard as a result of a study of the stress level of drivers while driving an unknown route in Boston. During the experiment, biosignals such as electrocardiogram, electromyogram, skin conductivity, respiration, and heart rate were continuously recorded for about 50 minutes for twenty-four drivers. The overall route is divided into several periods with different levels of stress, respectively. The rest periods are 15 minutes each at the beginning and end of the recording. They were created to measure the driver's baseline performance and to create a situation with no stress indicators. Afterwards, the volunteers went through phases of driving in a city with heavy traffic and correspondingly high stress levels, as well as periods with medium stress levels while traveling on the highway. Since we are using electrocardiogram, skin-galvanic response, electromyogram, heart rate, and respiratory rate for our study, we first need to analyze the availability of the data we need among the drivers represented in the dataset. As a result, it turned out that records 2-4 do not contain EMG, record 13 has no GSR biosignal, and record 14 has no heart rate. Therefore, we will use only records 5-12 and 15-16 for the experiment. 3.2. Biosignals preprocessing Baseline offset is a type of noise that most often occurs in the ECG signal, resulting from the subject's movements or breathing during the recording of the indicator [17, 18]. This type of noise can significantly affect the results of the study, so it is important to get rid of it before selection of characterizing features. It can be eliminated by discarding low-frequency components in the signal (less than 0.5 Hz) [6]. To do this, let's use the fast Fourier transform to move from numerical to frequency indicators using formula (1). After that, we assign 0 to all values of the function that are less than 0.5 Hz (see formula (2)). After that, using the inverse fast Fourier transform (3), we return to the numerical indicators. 𝑁𝑁−1 𝑋𝑋𝑘𝑘 = ∑𝑚𝑚=0 𝑥𝑥𝑚𝑚 𝑒𝑒 −𝑖𝑖2𝜋𝜋𝜋𝜋𝜋𝜋/𝑁𝑁 𝑘𝑘 = 0, … , 𝑛𝑛 − 1 , (1) 𝑋𝑋(𝑓𝑓), 𝑓𝑓 > 0.5 𝑋𝑋(𝑓𝑓) = � , (2) 0, 𝑓𝑓 ≤ 0.5 1 𝑥𝑥𝑘𝑘 = ∑𝑁𝑁−1 𝑚𝑚=0 𝑋𝑋𝑘𝑘 𝑒𝑒 𝑖𝑖2𝜋𝜋𝜋𝜋𝜋𝜋/𝑁𝑁 𝑘𝑘 = 0, … , 𝑛𝑛 − 1 , (3) 𝑁𝑁 where 𝑥𝑥𝑘𝑘 = {𝑥𝑥0 , 𝑥𝑥1 , … , 𝑥𝑥𝑛𝑛−1 } – numerical values of the ECG signal and 𝑋𝑋𝑘𝑘 = {𝑋𝑋0 , 𝑋𝑋1 , … , 𝑋𝑋𝑛𝑛−1 } – frequency values of the ECG signal. Figure 1 clearly demonstrates the change in the ECG signal in the time and frequency ranges for the seventh driver. Figure 1: The ECG signal of the seventh driver before and after filtering the signal using the fast Fourier transform. Another important step is to normalize the skin conductivity signal to bring all values to a common range. For this purpose, we use minimax normalization [19, 20]. Other biomarkers used in our study, such as EMG, heart rate, and respiratory rate, do not require any additional preprocessing. 3.3. Segmentation and feature extraction The next step is to divide the data into segments according to the driving period, each of which corresponds to a certain level of stress. In our case, the end and beginning of each phase of the experiment are marked with a special marking signal, which can be used to separate the data and assign them an appropriate stress level score (Table 1), which will determine the correctness of the classification. The resulting segments are then divided into smaller non-overlapping fragments of 2 seconds each. After that, you can move on to the next stage, the extraction and selection of characterizing features. Table 1 Stress levels during the respective phases of driving Driving phase Stress level Rest 1.0 Highway 3.0 City 5.0 For each fragment into which we divided the recordings in the previous step, we calculate 35 statistics that we will use to train our model. As a result, we extracted 8 features of the ECG signal (SDNN, SDANN, AVNN, RMSSD, pNN50, TP, LF, HF), 6 features of the electromyogram (mean, RMS, waveform length, zero crossings, slope sign changes, Willison Amplitude), 6 features for the GSR (mean, std, frequency, magnitude, duration, area), duration, area) collected from the sensors on the arm and leg, 3 characteristics of heart rate (mean, std, HRV ratio) and 6 features corresponding to respiratory rate (mean, std, ULF, VLF, LF, HF). 3.4. Classification At this stage, we used the scikit-learn library to train and evaluate the model. As a model, we used Random Forest, because according to the study by Ali I. Siam [6], this model shows the best classification results. The hyperparameters for the model were selected using grid search [21]. The selection results are shown in Table 2. Table 2 Hyperparameters used for model training N_estimators Min_sample_split Min_sample_leaf Max_features Bootstrap Random_state 400 2 1 sqrt FALSE 1 3.5. Parallel Computation of Characteristic Features Since during the experiment we noticed that the stage of characterizing features extraction and selection takes the most time, we decided to speed up this process using modern parallel and distributed computing technologies. OpenMP [22] is a specification for parallelizing programs in programming languages such as C, C++, and Fortran. It makes it easy to use multithreading to speed up computing on multi- core architectures. The proposed parallel method based on OpenMP technology: 1. Load the biosignal dataset into RAM. 2. Set the number of threads to be used for parallel processing. 3. Distribute the processing of each biosignal among the available threads. 4. Perform data cleaning and normalization in parallel for each biosignal. 5. Divide each biosignal into two-second segments in parallel. 6. Calculate the characteristics for each segment of the biosignal in parallel. 7. Save the calculated characteristics in a shared matrix. Parallelization on graphics processing units (GPUs) using CUDA [23] is an effective way to speed up computing by using the parallel computing capabilities of modern GPUs. Parallel algorithm using CUDA: 1. Load the dataset into the GPU memory, making it available for further processing. 2. Create six CUDA cores, each of which will be responsible for processing one of the biosignals. 3. In each core, allocate the number of blocks equal to the number of characteristics calculated for the corresponding biosignal. 4. Clean and normalize the data for each biosignal to prepare it for further analysis. 5. Within each block, divide the biosignal into 2-second segments for more detailed analysis. 6. Calculate the characteristics for each segment in parallel on six cores and save the results in a matrix in the device's memory using the capabilities of parallel computing. 7. Transfer the calculated characteristics from the GPU memory to the local memory and save them in a .csv file for further use in the scikit-learn library. 4. Numerical experiments The experiment was performed on a computer with an AMD Ryzen 7 5800H processor (8 cores/16 threads) and a discrete Nvidia GeForce RTX 3060 graphics processor. 4.1. Analysis of Sequential Algorithm Execution Time Before starting to work on the parallel algorithm, it was decided to first estimate the time spent on each stage of the sequential algorithm. The results, namely the time spent, can be seen in Table 3. Table 3 Time spent on each stage of the program, s Preprocessing Feature Extraction Model Training Total Time 19.32 120.46 18.55 158.33 As we can see, the Feature Extraction stage takes three quarters of the total time spent on classifying the driver's stress level, so there is a need for parallelization to speed up this stage of the program. 4.2. Analysis of Parallel Algorithm Execution Time In order to reduce the execution time, we used OpenMP and CUDA technologies that run on CPU and GPU, respectively. The calculation results are shown in Table 4. We can observe that as the number of threads used for computation increases, the execution time decreases, which indicates the feasibility of using parallel algorithms to solve the problem. It is also important to note that even though we used an 8-core processor with 16 threads, the execution time does not decrease when the number of worker threads is increased to 16. The reason is that there is not enough RAM to store all the necessary variables. Table 4 Time spent on the feature extraction stage depending on the algorithm execution method, s CPU Sequential GPU 2 threads 4 threads 8 threads 16 threads 120.46 78.33 49.16 25.87 26.03 9.12 Now let's calculate the speedup and efficiency to evaluate our proposed algorithm. It should be noted that theoretical speedup and efficiency are not calculated for GPUs. Table 5 Theoretical and actual speedup and efficiency depending on the execution method CPU GPU 2 threads 4 threads 8 threads 16 threads Actual 1.54 2.45 4.66 4.63 13.21 speedup Theoretical 1.82 3.08 4.71 6.41 - speedup Efficiency 0.10 0.15 0.29 0.29 - Figure 2: Dependence of theoretical and actual speedup on the number of threads in a parallel algorithm. As you can see in Figure 2, the actual speedup value is lower than the theoretical one. This is due to the presence of critical sections in the parallel part of the code, as well as the need to synchronize, allocate and close threads. For 8 threads, the theoretical speedup is already close to the actual one. By classifying the stress level using the Random Forest model, we managed to achieve an accuracy of 87.98%. After parallelization, the accuracy did not change significantly, which allows us to say that the parallel algorithm was designed correctly. It is also worth noting that the achieved accuracy is the highest for studies using ultra-short signals of 2 seconds. 5. Discussion and Conclusion Stress is not only an unpleasant condition, but also a serious problem in modern life. Constant stress can negatively affect a person's physical and mental health. It can lead to problems such as insomnia, decreased immunity, apathy, and an increased risk of developing serious illnesses such as heart disease and depression. In addition, stress can affect productivity and the ability to concentrate, which can affect the quality of life in general. It is for this reason that creating a method to classify stress states is a necessity that can greatly improve the life and productivity of each individual. However, as mentioned earlier, there are a number of problems associated with achieving this goal. One of these problems is the complexity of computation, which makes this process time-consuming and makes real-time classification impossible. We tried to solve this problem in this study. In general, the use of CUDA technology gave the greatest speedup, which amounted to 13.21 at the stage of biosignal processing. This is because CUDA uses the GPU for parallel calculations, which is particularly effective for computing large amounts of data. Thus, the use of CUDA has made it possible to significantly reduce the calculation time compared to other technologies. Using OpenMP, we also managed to achieve a certain speedup, namely 4.65 times for 8 threads. However, this speedup was less than that of CUDA. It is also important to note that as the number of threads to perform calculations increases, the speedup increases. This may indicate that with the increase in CPU power, we can expect a further increase in the speed of calculations and acceleration in general. In addition, the use of parallel algorithms has a number of other advantages: 1. Efficient use of resources: Parallel algorithms allow you to use the full potential of computing resources, such as multi-core processors or server clusters. 2. Scalability: Parallel algorithms can be easily scaled to handle large amounts of data or perform complex calculations. 3. Ability to use the latest technologies: Parallel algorithms allow the use of the latest technologies and computing system architectures to maximize performance and efficiency. We also tried to use ultra-short biosignals for classification. We were able to achieve an accuracy of 87.98%, which is the highest result among studies that have used such short time intervals. However, it is important to note the limitations of the proposed methods. One significant limitation is the dependency on hardware capabilities, which can vary significantly among users and may affect the performance and feasibility of the parallel algorithms in less advanced systems. Additionally, the use of ultra-short biosignals, while offering speed advantages, can introduce noise and reduce the accuracy of stress classification under less controlled conditions. Further research is needed to determine the optimal conditions and preprocessing techniques to mitigate these issues. Future work will focus on improving accuracy by exploring other machine learning models, selecting more classification features, and identifying more relevant features that have a greater impact on stress level classification results. Additionally, expanding the dataset to include a more diverse population and different stress-inducing scenarios will help generalize the findings. Investigating real-world deployment scenarios, including mobile and wearable devices, will also be a key area of future research to ensure the practicality and robustness of the proposed system. In addition, the proposed parallel computing methods can be used in other stress level studies to optimize and accelerate the signal preprocessing stage. To summarize, the parallel method we have proposed can be used to develop automated systems and devices [24, 25] aimed at tracking and analyzing a person's stress level throughout the day, taking into account not only medical and psychological aspects but also the importance of cybersecurity to maintain the confidentiality and integrity of personal information. This can become an important tool for healthcare professionals and researchers in the fields of psychology and medicine, allowing them to provide timely assistance and interventions to support people's physical and emotional health. Acknowledgements The authors extend their heartfelt gratitude to the Armed Forces of Ukraine for providing the security essential for completing this work. The determination and bravery demonstrated by the Ukrainian Army were the sole factors that made this accomplishment possible. References [1] T. Hovorushchenko, V. Kysil, Selection of the artificial intelligence component for consultative and diagnostic information technology for glaucoma diagnosis. Computer Systems and Information Technologies, (4), 2023, 87–90, doi: 10.31891/csit-2023-4-12. [2] S. Gedam, S. Paul, A Review on Mental Stress Detection Using Wearable Sensors and Machine Learning Techniques, in IEEE Access, vol. 9, pp. 84045-84066, 2021. [3] Stress in America 2023 – American Psychological Association (APA). URL: https://www.apa.org/news/press/releases/stress/2023/collective-trauma-recovery. [4] H. Yaribeygi, Y. Panahi, H. Sahraei, T.P. Johnston, A. Sahebkar, The Impact of Stress on Body Function: A Review. EXCLI J. 2017, 16, pp. 1057–1072. [5] N. Sharma, T. Gedeon, Objective measures, sensors and computational techniques for stress recognition and classification: a survey, Comput Methods Programs Biomed, 108(3), 2012, pp. 1287–301. [6] A.I. Siam, S.A. Gamel, F.M. Talaat, Automatic stress detection in car drivers based on non- invasive physiological signals using machine learning techniques, Neural Comput & Applic 35, 2023, pp. 12891–12904. [7] S. Goel, P. Tomar, G. Kaur, ECG Feature Extraction for Stress Recognition in Automobile Drivers. Electron. J. Biol., 12, 2016, pp. 156–165. [8] K. Liu, Y. Jiao, C. Du, X. Zhang, X. Chen, F. Xu, C. Jiang. Driver Stress Detection Using Ultra- Short-Term HRV Analysis under Real World Driving Conditions, Entropy, 25(2):194, 2023. doi:10.3390/e25020194. [9] F.Shaffer, J. P. Ginsberg, An Overview of Heart Rate Variability Metrics and Norms. Frontiers in Public Health, 5, (2017). 258. [10] M. L. Munoz, V. A. Roon, H.Riese, C.Thio, E. Oostenbroek, I. Westrik, E. de Geus, Validity of (Ultra-)Short Recordings for Heart Rate Variability Measurements. PLOS ONE, 10(9), (2015). e0138921. [11] M. N. Rastgoo, B. Nakisa, A. Rakotonirainy, Frederic Maire, Vinod Chandran, ECG-Based Driver Stress Levels Detection System Using Hyperparameter Optimization. Doi:10.48550/arXiv.2101.00165. [12] D. Hu, L. Gao, Psychological Stress Level Detection Based on Heartbeat Mode, Applied Sciences, 2022, 12(3):1409. Doi:10.3390/app12031409. [13] M. Vaezi, M. Nasri, F. Azimifar and M. Mosleh, Driver Assistance System for Stress Recognition by Handcrafted Feature Extraction and Convolutional Neural Network, 2024 20th CSI International Symposium on Artificial Intelligence and Signal Processing (AISP), Babol, Iran, Islamic Republic of, 2024, pp. 1-5. doi: 10.1109/AISP61396.2024.10475225. [14] J. A. Healey and R. W. Picard, Detecting stress during real-world driving tasks using physiological sensors, in IEEE Transactions on Intelligent Transportation Systems, vol. 6, no. 2, pp. 156-166, June 2005. doi: 10.1109/TITS.2005.848368. [15] L. Mochurad, Ya. Hladun, Modeling of Psychomotor Reactions of a Person Based on Modification of the Tapping Test, International Journal of Computing, 20(2), 2021, pp. 190-200. doi: 10.47839/ijc.20.2.2166. [16] L. Mochurad, M. Yatskiv, Simulation of a Human Operator’s Response to Stressors under Production Conditions, Proceedings of the 3rd International Conference on Informatics & Data- Driven Medicine. Växjö, Sweden, November 19 - 21, 2020, pp. 156-169. [17] М. Blanco-Velasco, В. Weng, К.Е. Barner, ECG signal denoising and baseline wander correction based on the empirical mode decomposition. Comput Biol Med, 2008, 38:1–13. doi:10.1016/j.compbiomed.2007.06.003. [18] A. Singhal, P. Singh, B. Fatimah, R.B. Pachori, An efficient removal of power-line interference and baseline wander from ECG signals by employing Fourier decomposition technique, Biomed Signal Process Control 57:101741, 2020. doi:10.1016/j.bspc.2019.101741. [19] S.A. Khowaja, A.G. Prabono, F. Setiawan et al., Toward soft real-time stress detection using wrist-worn devices for human workspaces, Soft Comput 25, 2021, pp. 2793–2820. [20] A. Raza, H. Ayub, J. Ali Khan, I. Ahmad, A. S. Salama, Y. I. Daradkeh, Danish Javeed, Ateeq Ur Rehman, Habib Hamam, Hybrid Deep Learning-Based Approach for Brain Tumor Classification, MDPI- Electronics, Vol. 11, Issue. 7, 5 April 2022. [21] B. H. Shekar and G. Dagnew, Grid Search-Based Hyperparameter Tuning and Classification of Microarray Cancer Data, 2019 Second International Conference on Advanced Computational and Communication Paradigms (ICACCP), Gangtok, India, 2019, pp. 1-8. [22] S. Karlsson, S.W. Lee, M. Brorsson, A Fully Compliant OpenMP Implementation on Software Distributed Shared Memory. In: Sahni, S., Prasanna, V.K., Shukla, U. (eds) High Performance Computing — HiPC 2002. HiPC 2002. Lecture Notes in Computer Science, vol 2552. Springer, Berlin, Heidelberg, 2002. doi:10.1007/3-540-36265-7_19. [23] L. Mochurad, Implementation and analysis of a parallel kalman filter algorithm for lidar localization based on CUDA technology, Front. Robot. AI 11:1341689. 11 p. doi:10.3389/frobt.2024.1341689. [24] M. A. Khan, I. Ahmad, A. N. Nordin, El-Sayed Ahmed, H. Mewada, Yousef Ibrahim Daradkeh, Saim Rasheed, Elsayed Tag Eldin and Muhammad Shafiq, Smart Android Based Home Automation System Using Internet of Things (IoT), Sustainability MDPI, Volume 14 Issue 17, 28 August 2022. [25] A. Altameem, V. Kovtun, M. Al-Ma’aitah, T. Altameem, F. H, and A. E. Youssef, Patient’s data privacy protection in medical healthcare transmission services using back propagation learning, Computers and Electrical Engineering, vol. 102. Elsevier BV, p. 108087, Sep. 2022.