تولید سیگنال فوتوپلتیسموگرام (PPG) مصنوعی با استفاده از مدل سازنده مبتنی بر برنامهنویسی ژنتیک
محورهای موضوعی : هوش مصنوعی و رباتیکفاطمه قاسمی 1 , فردین ابدالی محمدی 2
1 - گروه مهندسی کامپیوتر و فناوری اطلاعات، دانشکده فنی و مهندسی، دانشگاه رازی، کرمانشاه، ایران
2 - هیات علمی
کلید واژه: فوتوپلتیسموگرام, مدل سازنده, برنامهنویسی ژنتیک, مقیاسپذیری, مدل ریاضی,
چکیده مقاله :
امروزه تحولات فناوری اطلاعات و ارتباطات در حوزه سلامت، بهویژه در نظارت بر فعالیتهای قلبی، به افزایش استفاده از تکنولوژی فوتوپلتیسموگرام (PPG: Photoplethysmogram) در دستگاههای هوشمند و تلفنهای همراه منجر شده است. توسعۀ مدلهای سازنده به جهت تولید سیگنالهای مصنوعی PPG نیازمند حل چالشهایی مانند کمبود تنوع و محدودیت دادهها در آموزش مدلهای یادگیری عمیق است. این مقاله، یک رویکرد مبتنی بر برنامهنویسی ژنتیک (GP: Genetic Programming) را به کار میگیرد تا مدل سازندهای را ارائه دهد که با کمک یک نمونۀ اولیه از سیگنال PPG، قادر به تولید دادههایی با تنوع بیشتر و دقت افزودهشده باشد. برخلاف رگرسیون معمول، در برنامهنویسی ژنتیک ساختار و ترکیبات مدل ریاضی بهصورت خودکار تعیین میگردد. رویکرد پیشنهادی، با داشتن اندازه خطای میانگین (MSE: Mean Squared Error) برابر با 0.0001، ریشه میانگین مربعات خطا (RMSE: Root Mean Squared Error) بهاندازه 0.01 و همبستگی 0.999 نشان میدهد که به دلیل بهینگی مناسب و دقت قابلقبول در تولید دادههای PPG مصنوعی، نسبت به دیگر روشها برتری دارد و ازنظر کارایی و قابلیت اجرا در محیطهای با منابع محدود نیز مؤثر عمل می کند.
Today, advancements in Information and Communication Technology (ICT), particularly in healthcare and cardiac activity monitoring, have led to increased adoption of Photoplethysmogram (PPG) technology in smart devices and mobile phones. The development of generative models for producing artificial PPG signals faces challenges such as a lack of diversity and constraints in training data. This article employs a Genetic Programming (GP) based approach to introduce a generative model capable of producing PPG data with increased diversity and enhanced accuracy using an initial sample of PPG signals. In contrast to conventional regression, Genetic Programming automates the determination of the mathematical model's structure and compositions. The proposed approach, with a Mean Squared Error (MSE) of 0.0001, Root Mean Square Error (RMSE) of 0.01, and a correlation of 0.999, demonstrates superior performance due to appropriate optimization and acceptable accuracy in generating synthetic PPG data. It outperforms other methods in terms of efficiency and execution capability, especially in resource-constrained environments.
[1] M. Nardelli and R. Bailón, "Advances in Wearable Photoplethysmography Applications in Health Monitoring," (in eng), Sensors (Basel), vol. 23, no. 16, Aug 10 2023, doi: https://doi.org/10.3390/s23167064.
[2] K. B. Kim and H. J. Baek, "Photoplethysmography in Wearable Devices: A Comprehensive Review of Technological Advances, Current Challenges, and Future Directions," Electronics, vol. 12, no. 13, p. 2923, 2023, doi: https://doi.org/10.3390/electronics12132923.
[3] B. Tarifi, A. Fainman, A. Pantanowitz, and D. M. Rubin, "A Machine Learning Approach to the Non-Invasive Estimation of Continuous Blood Pressure Using Photoplethysmography," Applied Sciences, vol. 13, no. 6, p. 3955, 2023. [Online]. Available: https://www.mdpi.com/2076-3417/13/6/3955.
[4] M. A. Noor Faris Ali, "An efficient hybrid LSTM-ANN joint classification-regression model for PPG based blood pressure monitoring," Biomedical Signal Processing and Control, vol. 84, 2023, doi: https://doi.org/10.1016/j.bspc.2023.104782.
[5] H. a. S. Asgharnezhad, Afshar and Bakhshayeshi, Ivan and Alizadehsani, Roohallah and Chamaani, Somayyeh and Alinejad-Rokny, Hamid, "Improving PPG Signal Classification with Machine Learning: The Power of a Second Opinion," 2023, pp. 1-5, doi: https://doi.org/10.1109/DSP58604.2023.10167869.
[6] D. a. C. Jarchi, Alex, "Description of a Database Containing Wrist PPG Signals Recorded during Physical Exercise with Both Accelerometer and Gyroscope Measures of Motion," Data, vol. 2, 2016, doi: 10.3390/data2010001.
[7] U. Yadav, S. N. Abbas, and D. Hatzinakos, "Evaluation of PPG Biometrics for Authentication in Different States," 2018 International Conference on Biometrics (ICB), pp. 277-282, 2017, doi: https://doi.org/10.1109/ICB2018.2018.00049.
[8] Y. a. C. Liang, Zhencheng and Liu, Guiyong and Elgendi, Mohamed, "A new, short-recorded photoplethysmogram dataset for blood pressure monitoring in China," Scientific Data, vol. 5, p. 180020, 2018, doi: https://doi.org/10.1038/sdata.2018.20.
[9] A. a. I. Reiss, Ina and Schmidt, Philip and Van Laerhoven, Kristof, "Deep PPG: Large-Scale Heart Rate Estimation with Convolutional Neural Networks," Sensors, vol. 19, p. 3079, 2019, doi: https://doi.org/10.3390/s19143079.
[10] O. a. R. Mazumder, Dibyendu and Bhattacharya, Sakyajit and Sinha, Aniruddha and Pal, Arpan, "Synthetic PPG generation from haemodynamic model with baroreflex autoregulation: a Digital twin of cardiovascular system," in 2019 41st Annual International Conference of the IEEE Engineering in Medicine and Biology Society (EMBC), 2019, pp. 5024-5029, doi: https://doi.org/10.1109/EMBC.2019.8856691.
[11] T. W. C. Fanny, "Deep Learning for Imbalance Data Classification using Class Expert Generative Adversarial Network," Procedia Computer Science, vol. 135, pp. 60-67, 2018, doi: https://doi.org/10.1016/j.procs.2018.08.150.
[12] J. M. Johnson, Khoshgoftaar, T.M, "Survey on deep learning with class imbalance," Journal of Big Data, vol. 6, 2019, doi: https://doi.org/10.1186/s40537-019-0192-5.
[13] O. a. C. Sayadi, Gari, "Synthetic ECG Generation and Bayesian Filtering Using a Gaussian Wave-Based Dynamical Model," Physiological measurement, vol. 31, pp. 1309-29, 2010, doi: https://doi.org/10.1088/0967-3334/31/10/002.
[14] D. Martin-Martinez, P. Casaseca-de-la-Higuera, M. Martin-Fernandez, and C. Alberola-Lopez, "Stochastic modeling of the PPG signal: a synthesis-by-analysis approach with applications," (in eng), IEEE Trans Biomed Eng, vol. 60, no. 9, pp. 2432-41, Sep 2013, doi: https://doi.org/10.1109/TBME.2013.2257770.
[15] L. Wang, L. Xu, S. Feng, M. Q. Meng, and K. Wang, "Multi-Gaussian fitting for pulse waveform using Weighted Least Squares and multi-criteria decision making method," (in eng), Comput Biol Med, vol. 43, no. 11, pp. 1661-72, Nov 2013, doi: https://doi.org/10.1016/j.compbiomed.2013.08.004.
[16] Y. Luo, W. Li, W. Rao, X. Fu, L. Yang, and Y. Zhang, "A New Modeling Method of Photoplethysmography Signal Based on Lognormal Basis," in International Conference on Internet and Distributed Computing Systems, 2016.
[17] Q. Tang, Z. Chen, R. Ward, and M. Elgendi, "Synthetic photoplethysmogram generation using two Gaussian functions," (in eng), Sci Rep, vol. 10, no. 1, p. 13883, Aug 17 2020, doi: https://doi.org/10.1038/s41598-020-69076-x.
[18] M. M. Alankrita Aggarwal, Gopi Battineni, "Generative adversarial network: An overview of theory and applications," International Journal of Information Management Data Insights, vol. 1, no. 1, 2021, doi: https://doi.org/10.1016/j.jjimei.2020.100004.
[19] E. Brophy, Z. Wang, and T. E. Ward, "Quick and Easy Time Series Generation with Established Image-based GANs," ArXiv, vol. abs/1902.05624, 2019, doi: https://doi.org/10.48550/arXiv.1902.05624.
[20] D. a. T. Kiyasseh, Girmaw Abebe and Le Nguyen Thanh, Nhan and Van, Tan and Thwaites, Louise and Zhu, Tingting and Clifton, David, "PlethAugment: GAN-Based PPG Augmentation for Medical Diagnosis in Low-Resource Settings," IEEE Journal of Biomedical and Health Informatics, vol. PP, pp. 1-1, 2020, doi: 10.1109/JBHI.2020.2979608.
[21] J. M. L. Alcaraz and N. Strodthoff, "Diffusion-based conditional ECG generation with structured state space models," (in eng), Comput Biol Med, vol. 163, p. 107115, Sep 2023, doi: https://doi.org/10.1016/j.compbiomed.2023.107115.
[22] M. A. Quiroz-Juárez, O. Jiménez-Ramírez, R. Vázquez-Medina, V. F. Breña-medina, J. L. Aragón, and R. A. Barrio, "Generation of ECG signals from a reaction-diffusion model spatially discretized," Scientific Reports, vol. 9, 2019, doi: https://doi.org/10.1038/s41598-019-55448-5.
[23] Q. Zhang, D. Zhou, and X. Zeng, "Highly wearable cuff-less blood pressure and heart rate monitoring with single-arm electrocardiogram and photoplethysmogram signals," (in eng), Biomed Eng Online, vol. 16, no. 1, p. 23, Feb 6 2017, doi: https://doi.org/10.1186/s12938-017-0317-z.
[24] M. M. E. Maryam Amir Haeri, Gianluigi Folino, "Statistical genetic programming for symbolic regression," Applied Soft Computing, vol. 60, pp. 447-469, 2017, doi: https://doi.org/10.1016/j.asoc.2017.06.050.
[25] F. A.-M. Majid Sepahvand, "A novel multi-lead ECG personal recognition based on signals functional and structural dependencies using time-frequency representation and evolutionary morphological CNN," Biomedical Signal Processing and Control, vol. 68, 2021, doi: https://doi.org/10.1016/j.bspc.2021.102766.
[26] m. amintoosi and H. Ezzati, "The aware genetic algorithm of the best member, applied to graph coloring and metric-dimension of the graph problems," Journal of Information and Communication Technology, vol. 12, no. 43, pp. 143-154, 2020. [Online]. Available: http://rimag.ir/fa/Article/13601.
[27] S. Katoch, Chauhan, S.S. & Kumar, V, "A review on genetic algorithm: past, present, and future," Multimed Tools Appl, vol. 80, pp. 8091–8126 2021, doi: https://doi.org/10.1007/s11042-020-10139-6.
[28] S. Bakhtiari and M. Khosroshahi, "A Multi-Objective Differential Evolutionary Algorithm-based Approach for Resource Allocation in Cloud Computing Environment," Journal of Information and Communication Technology, vol. 14, no. 51, pp. 113-128, 2022. [Online]. Available: http://rimag.ir/fa/Article/39235.
[29] F. A.-M. Majid Sepahvand, "A novel representation in genetic programming for ensemble classification of human motions based on inertial signals," Expert Systems with Applications, vol. 185, 2021, doi: https://doi.org/10.1016/j.eswa.2021.115624.
[30] L. a. J. Tan, Jean, Image Processing Basics. 2019.
[31] m. nikseresht and M. Raji, "A Task Mapping and Scheduling Algorithm based on Genetic Algorithm for Embedded System Design," Journal of Information and Communication Technology, vol. 13, no. 47, pp. 186-197, 2021. [Online]. Available: http://rimag.ir/fa/Article/16369.
[32] W. K. W. Pauline Wong, Filbert H. Juwono, Basil Andy Lease, Lenin Gopal, I.M. Chew, "Sensor abnormality detection in multistage compressor units: A “white box” approach using tree-based genetic programming," e-Prime - Advances in Electrical Engineering, Electronics and Energy, vol. 5, 2023, doi: https://doi.org/10.1016/j.prime.2023.100209.
[33] M. P. Aghababa and a. b. baghbaderani, "Routing of Multipartite Computer Networks Using Ant Genetic Algorithm," Journal of Information and Communication Technology, vol. 9, no. 31, pp. 1-12, 2017. [Online]. Available: http://rimag.ir/fa/Article/8199.
[34] A. E. Johnson et al., "MIMIC-III, a freely accessible critical care database," (in eng), Sci Data, vol. 3, p. 160035, May 24 2016, doi: https://doi.org/10.1038/sdata.2016.35.
[35] B. F. Jernej Zupančič, Matjaž Gams, "Genetic-programming-based multi-objective optimization of strategies for home energy-management systems," Energy, vol. 203, 2020, doi: https://doi.org/10.1016/j.energy.2020.117769.
[36] A. Kianimajd et al., "Comparison of different methods of measuring similarity in physiologic time series," IFAC-PapersOnLine, vol. 50, pp. 11005-11010, 2017, doi: https://doi.org/10.1016/j.ifacol.2017.08.2479.
[37] A. a. P. Sološenko, Andrius and Marozas, Vaidotas and Sörnmo, Leif, "Photoplethysmogram Modeling During Paroxysmal Atrial Fibrillation," Computers in Biology and Medicine, vol. 81, 2017, doi: 10.22489/CinC.2017.049-011.
[38] M. a. A.-M. Feli, Fardin, "12 lead Electrocardiography signals compression by a new genetic programming based mathematical modeling algorithm," Biomedical Signal Processing and Control, vol. 54, pp. 1-20, 2019, doi: 10.1016/j.bspc.2019.101596.
Journal of Information and
Communication Technology
Volume 17, Issue 63-64, Spring and Summer 2025, pp. 43-54
Synthetic Photoplethysmogram (PPG) Generation Using Genetic Programming Based Generative Model
Fatemeh Ghasemi1, Fardin Abdali Mohammadi11
1 Department of Computer Engineering and Information Technology, Razi University, Kermanshah, Iran
Received: 16 December 2023, Revised: 01 October 2024, Accepted: 01 December 2024
Paper type: Research
Abstract
Today, advancements in Information and Communication Technology (ICT), particularly in healthcare and cardiac activity monitoring, have led to increased adoption of Photoplethysmogram (PPG) technology in smart devices and mobile phones. The development of generative models for producing artificial PPG signals faces challenges such as a lack of diversity and constraints in training data. This article employs a Genetic Programming (GP) based approach to introduce a generative model capable of producing PPG data with increased diversity and enhanced accuracy using an initial sample of PPG signals. In contrast to conventional regression, Genetic Programming automates the determination of the mathematical model's structure and compositions. The proposed approach, with a Mean Squared Error (MSE) of 0.0001, Root Mean Square Error (RMSE) of 0.01, and a correlation of 0.999, demonstrates superior performance due to appropriate optimization and acceptable accuracy in generating synthetic PPG data. It outperforms other methods in terms of efficiency and execution capability, especially in resource-constrained environments.
Keywords: Photoplethysmogram, Generative Model, Genetic Programming, Scalability, Mathematical Model.
[1] Corresponding Author’s email: fardin.abdali@razi.ac.ir
تولید سیگنال فوتوپلتیسموگرام (PPG) مصنوعی با استفاده از مدل سازنده مبتنی بر برنامهنویسی ژنتیک
فاطمه قاسمی1، فردین ابدالی محمدی21
1دانشجوی کارشناسیارشد، گروه مهندسی کامپیوتر و فناوری اطلاعات، دانشکده فنی و مهندسی، دانشگاه رازی، کرمانشاه، ایران
2دانشیار، گروه مهندسی کامپیوتر و فناوری اطلاعات، دانشکده فنی و مهندسی، دانشگاه رازی، کرمانشاه، ایران
تاریخ دریافت: 25/09/1402 تاریخ بازبینی: 10/07/1403 تاریخ پذیرش: 11/09/1403
نوع مقاله: پژوهشی
چکيده
امروزه تحولات فناوری اطلاعات و ارتباطات در حوزه سلامت، بهویژه در نظارت بر فعالیتهای قلبی، به افزایش استفاده از تکنولوژی فوتوپلتیسموگرام (PPG: Photoplethysmogram) در دستگاههای هوشمند و تلفنهای همراه منجر شده است. توسعۀ مدلهای سازنده به جهت تولید سیگنالهای مصنوعی PPG نیازمند حل چالشهایی مانند کمبود تنوع و محدودیت دادهها در آموزش مدلهای یادگیری عمیق است. این مقاله، یک رویکرد مبتنی بر برنامهنویسی ژنتیک (GP: Genetic Programming) را به کار میگیرد تا مدل سازندهای را ارائه دهد که با کمک یک نمونۀ اولیه از سیگنال PPG، قادر به تولید دادههایی با تنوع بیشتر و دقت افزودهشده باشد. برخلاف رگرسیون معمول، در برنامهنویسی ژنتیک ساختار و ترکیبات مدل ریاضی بهصورت خودکار تعیین میگردد. رویکرد پیشنهادی، با داشتن اندازه خطای میانگین (MSE: Mean Squared Error) برابر با 0.0001، ریشه میانگین مربعات خطا (RMSE: Root Mean Squared Error) بهاندازه 0.01 و همبستگی 0.999 نشان میدهد که به دلیل بهینگی مناسب و دقت قابلقبول در تولید دادههای PPG مصنوعی، نسبت به دیگر روشها برتری دارد و ازنظر کارایی و قابلیت اجرا در محیطهای با منابع محدود نیز مؤثر عمل میکند.
کلیدواژگان: فوتوپلتیسموگرام، مدل سازنده، برنامهنویسی ژنتیک، مقیاسپذیری، مدل ریاضی.
[1] * رایانامة نويسنده مسؤول: fardin.abdali@razi.ac.ir
1- مقدمه
اخیراً استفاده از تکنولوژی فوتوپلتیسموگرام (PPG)، بهعنوان یک روش کمهزینه و آسان، در تلفنهای همراه و دستگاههای پوشیدنی هوشمند، مورد توجه قرارگرفته است [1, 2]. PPG یک روش غیرتهاجمی برای اندازهگیری تغییرات حجم خون در رگ انسان است که از طریق آن میتوان تغییرات در نرخ ضربان قلب را به دست آورد. با استفاده از سیگنال PPG میتوان بر فعالیتهای قلبی ازجمله ضربان قلب و فشارخون نظارت داشت و به همین علت سیگنال PPG در زمینههای ورزشی و نظارت بر سلامت انسان بسیار مورد استفاده قرار میگیرد[3-5]. امروزه با توجه به اهمیت سیگنال PPG، وجود دادههای مربوط به این سیگنال به جهت آموزش مدلهای یادگیری عمیق بسیار حائز اهمیت است. اینگونه از مدلها برای آموزش نیازمند مقادیر فراوان و متنوعی از دادههای PPG میباشند. تاکنون مجموعه دادههای PPG گوناگونی ازجمله WristPPG [6]، BioSec.Lab [7]، PPG-BP [8] و PPG-DaLiA [9] ارائه شدهاند. دادههای PPG موجود در مجموعه WristPPG با فرکانس 256 هرتز از 9 شخص در بازه سنی 22 تا 32 در حالتهای مختلف فیزیکی بهدست آمده است. مجموعه BioSec.Lab شامل 218 داده PPG از 86 شخص در بازه سنی 19 تا 35 است که در حالتهای مختلف با فرکانس 100 هرتز نمونهبرداری شده است. نمونههای PPG در PPG-BP شامل 657 نمونه از 219 شخص با فرکانس 1 کیلوهرتز است و سن افراد شرکتکننده از 20 تا 89 متغیر است. در PPG-DaLiA، طیف وسیعتری از نمونههای PPG وجود دارد. این دادهها در طول 36 ساعت از 15 نفر در بازه سنی 21 تا 55 نمونهبرداری شده است.
باتوجهبه مجموعهدادههای موجود PPG، برخلاف تنوع و فراوانی دادههای الکتروکاردیوگرام (ECG)، بهوضوح کمبود داده و عدم تنوع نمونههای سیگنال PPG مشهود است [10]. این مسئله سبب ارائه مدلهای سازنده در جهت تولید سیگنالهای PPG بهصورت مصنوعی شده است. ازاینرو، با استفاده از این مدلها، دادهها بهسادگی و با تنوع بسیاری تولید میشوند که این امر سبب پیشرفت در عملکرد مدلهای یادگیری عمیق خواهد شد [11, 12]. با اینحال ایجاد یک مدل سازنده برای تولید سیگنال PPG که جزو سیگنالهای حیاتی محسوب میشود، چالشهایی دارد و نیازمند ارزیابی دقیق دادههای تولیدشده از نظر صحت و کیفیت است.
در سالهای گذشته، با توجه به توسعۀ حوزه پزشکی و دستگاههای پوشیدنی و نیاز به تولید دادههای سری زمانی، ایدۀ استفاده از مدلهای سازنده بهعنوان یکی از ابزارهای بسیار مؤثر و کارآمد در این زمینه مطرح شد. نکتۀ حائز اهمیت آن است که خروجی مدلهای سازندۀ سیگنالهای حیاتی، نیازمند دقت بسیار بالا هستند. در این بخش به روشهای ارائهشده در جهت تولید سیگنالهای PPG و ECG مختصراً اشاره خواهد شد. اغلب رویکردهای مدلسازی سیگنالهای حیاتی عمدتاً بر اساس توابع گاوسی و شبکههای GAN میباشند. بهطور مثال در روشی که در [13] معرفیشده است، با استفاده از یک مدل پویا گاوسی مبتنی بر موج، مدل سازندهای به منظور تولید دادههای سیگنال الکتروکاردیوگرام ارائهشده است. در روشی دیگر با استفاده از آنالیز دنباله پالسهای سیگنال PPG، سعی شده است تا با بررسی ویژگیهای مهم دنباله، یک مدل سازنده سیگنال PPG ایجاد شود [14]. در مدلهای سازندۀ PPG کمینه بودن خطای نقاط مهم سیگنال PPG بسیار حائز اهمیت است. برای این کار وانگ و همکاران یک مدل سازندۀ PPG را با در نظر گرفتن مقدار خطای تخمین نقاط مهم سیگنال PPG با استفاده از 4 یا 5 تابع گاوسی را با دقت قابل قبولی ارائه دادند [15]. لو و همکاران با هدف افزایش دقت در تولید سیگنال PPG مصنوعی روشی مبتنی بر لگاریتم نرمال و توابع گاوسی ارائه دادهاند که استفاده از لگاریتم نرمال در این روش، سبب افزایش دقت مدل در ویژگیهای طولانی سیگنال PPG شده است [16] در ادامه تانگ و همکاران با استفاده از دو تابع گاوسی توانستند که سیگنال PPG را بهصورت تک ضربانی تولید کنند که این روش در کنار دقت مناسب پارامترهای کمتری نیز دارد [17].
شبکههای GAN نیز بهعنوان یکی از مدلهای یادگیری عمیق در جهت تولید دادههای مصنوعی ارائه شدهاند. این نوع از شبکههای عصبی در حوزۀ تولید سیگنالهای پزشکی نیز بسیار کاربردی هستند [18]. بروفی و همکاران توانستند با استفاده از شبکه DCGAN بر مبنای کانولوشن دوبعدی، سیگنال ECG و PPG تولید کنند. بدینصورت که این مدل ابتدا دادههای ECG و PPG را به تصویر سیاه و سفید تبدیل میکند سپس این تصویر بهعنوان ورودی مدل در نظر گرفته میشود. خروجی مدل سازنده ارائهشده یک تصویر سیاه و سفید است که درنهایت آن تصویر به یک سیگنال تبدیل میشود [19]. در اغلب اوقات تولید داده در جهت افزایش دقت طبقهبند استفاده میشود. بهطور مثال در روش [20] با استفاده از CGAN، سیگنال PPG مصنوعی با این هدف تولید میشود. مدل انتشار نیز اخیراً به یکی از استانداردهای تولید دادههای مصنوعی تبدیلشده است. استفاده از مدل انتشار در روشهای [21, 22] در تولید سیگنال ECG نشان میدهند که اینگونه از مدلها پتانسیل بسیاری در زمینۀ تولید دادههای مصنوعی مانند ECG و PPG خواهند داشت.
بااینحال، مسئله حائز اهمیت آن است که ایجاد مدلهای سازنده با استفاده از شبکههای عصبی، هرچند که دارای دقت خوبی میباشند، اما پیچیدگی بسیار بالای آنها منجر به افزایش حجم مدل و نیازمندی به منابع محاسباتی بیشتر خواهد شد. با توجه به گسترش استفاده از دستگاههایی بر مبنای PPG [23]، باید به این موضوع توجه داشت که استفاده از اینگونه مدلها در مواجه با دستگاههایی با منابع محدود به چالش کشیده میشود؛ بنابراین، امروزه نیازمند توسعۀ مدلهای سازنده با دقت مناسب و درعینحال با پیچیدگی کمتر برای اجرا بر محیطهایی با منابع محدود هستیم.
در این پژوهش، تمرکز بر ارائۀ یک مدل سازنده مبتنی بر برنامهنویسی ژنتیک بهمنظور استخراج یک سیگنال PPG مصنوعی میباشد. برنامهنویسی ژنتیک که بهعنوان مدل رگرسیونی نیز شناخته میشود[24] ، یک متد تکاملی برمبنای درخت است که از طریق ایجاد راهحلهای گوناگون و اعمال تکنیکهای مختلف ازجمله انتخاب، جهش و ترکیب تلاش میکند تا در طی نسلهای مختلف و با بهرهگیری از ترکیب عملگرهای حسابی(+,-,*,/) و عملگرهای هندسی(sin, cos) در بین فضای حالات موجود به بهترین جواب برسد[25, 26]. این روش به دلیل توانایی در یافتن راهحلهای بهینه با استفاده از ترکیب عملیات ژنتیک در مسائل چالشی شناختهشده است [27, 28]. در برنامهنویسی ژنتیک، با تنظیم صحیح پارامترها، میتوان عملکرد، دقت و میزان بهینگی مدل رگرسیونی را بهبود بخشید [29]. این رویکرد از اهمیت ویژهای در تولید مدلهای پیشرفته و کاربردی در مسائل مختلف برخوردار است. در این روش، یک نمونه از سیگنال PPG بهعنوان ورودی در نظر گرفته میشود. بهمنظور کاهش خطای مدل و بهبود عملکرد، پیشپردازشهای لازم بر روی دادهها انجام میشود. سپس مدلGP با بهرهگیری از نمونۀ اولیه PPG، در طی نسلهای مختلف بهترین مدل را انتخاب میکند. درنهایت خروجی بهصورت یک مدل ریاضی سازندۀ سیگنال PPG با میزان بهینگی و دقت قابلقبول ارائه میشود.
در بخش دوم این مقاله بهتفصیل روش پیشنهادی مورد بحث قرار خواهد گرفت. سپس در بخش سوم، نتایج حاصل از اجرای این روش، ارزیابی پارامترها، دقت مدل و مقایسۀ آن با دیگر روشهای موجود به طور جامع مورد بررسی و ارزیابی قرار خواهد گرفت و درنهایت بخش نتیجهگیری ارائه خواهد شد.
هدف از ارائة روش پیشنهادی، ایجاد یک مدل سازنده سیگنال PPG بادقت و بهینگی مطلوب است. بهمنظور دستیابی به این مدل، یک تابع تکهای F(x) تعریف میشود که از زیر توابع تشکیل شدهاست. هر یک از زیر توابع توسط الگوریتم برنامهنویسی ژنتیک (GP) ایجاد میشود و قسمت مشخصی از یک سیگنال PPG را نمایش میدهد. فرمول تابع تکهای F(x) در معادله 1 نمایش دادهشده است.
در معادله 1، بردار x، نمونههای سیگنال PPG است. عبارت exp بخشی از مدل سازنده سیگنال PPG است که توسط ترکیبی از عبارات ریاضی تولید میشود. درمجموع تابع تکهای F(x) شامل n زیر تابع میباشد و سیگنال PPG با اجرای تابع F(x) تولید میشود. بهینگی این مدل توسط دو پارامتر تضمین میشود به شرح زیر:
· مقدار n کمینه است: مدل به نحوی پیادهسازی شده است که تعداد زیر توابع F(x) کمترین تعداد ممکن خود را داشته باشد.
· طول تابع F(x) کمینه است: اگر تعداد کاراکترهای عبارات، طول تابع F(x) در نظر گرفته شود، طول تابع کمترین مقدار خود را خواهد داشت. طول کاراکترهای تابع
را نشان میدهد و مجموع تعداد کاراکترهای زیر توابع، طول تابع F(x) میباشد که با FTS(F(x)) نمایش داده میشود.
فلوچارت ایجاد یک مدل سازنده PPG مصنوعی با استفاده از برنامهنویسی ژنتیک، در شکل 1 ارائه شدهاست. در ابتدا یک نمونه از سیگنال PPG انتخاب میشود. سپس به جهت افزایش دقت و کارکرد مدل سازنده، بر روی دادههای PPG پیشپردازشهای لازم انجام میشود. بخش مهم این روش ایجاد مدل سازنده با استفاده از برنامهنویسی ژنتیک است که مراحل آن در ادامه شرح داده میشود. به صورت جزئیتر، مراحل تولید سیگنال PPG مصنوعی با استفاده از برنامهنویسی ژنتیک در الگوریتم 1 نمایش دادهشده است. ورودی الگوریتم پیشنهادی، یک سیگنال PPG طبیعی از یک شخص است (خط 1) و خروجی این الگوریتم، یک سیگنال PPG تولیدشده توسط مدل F(x) میباشد (خط 2). در ابتدا، تمام پیشپردازشهای لازم بر سیگنال PPG اعمال میشود (خط 3). همانطور که بحث شد، تابع F یک تابع تکهای است که از n زیر تابع تشکیلشده است که در خط چهارم تعداد زیر توابع مشخص میشود (خط 4). سپس سیگنال PPG به n قسمت مجزا تقسیم میشود (خط 5). نقاط شروع و پایان نواحی سیگنال در دو مجموعۀ StartingPoints و EndingPoints قرار میگیرند (خطوط 6 و 7). الگوریتم GP به تعداد بخشهای سیگنال و با بهرهگیری از سیگنال اصلی اجرا میشود. نتیجۀ اجرای هر GP یک عبارت ریاضی است که در ResultSet قرار میگیرد (خطوط 9 تا 11) سپس عبارات موجود در ResultSet در تابع F(x) ذخیره میشوند (خط 13). نهایتا تابع F(x) قادر به ایجاد یک سیگنال مصنوعی PPG میباشد.
شکل 1. . فلوچارت ایجاد یک مدل سازنده PPG با استفاده از برنامهنویسی ژنتیک
الگوریتم 1. شبه کد روش پیشنهادی | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1. Input: PPG Signal(data) 2. Output: Near Optimal Generated Model(F(x)) 3. data’ ß Preprocessing(data) 4. N ß Number Of Partitions 5. Splited_Data ß Split_Data(data’, N) 6 7. 8. 9. for 10. 11. 12. end for 13. F(x) ß ResultSet
2-1- پیشپردازش سیگنال PPG پس از انتخاب سیگنال PPG، قسمتی از سیگنال که شامل سه پیک سیستولیک1 است، انتخابشده و بر روی آن یک فیلتر میانه به جهت کاهش نویز اعمال میشود. فیلتر میانه یک فیلتر غیرخطی است که در حذف نویزهای سیگنال بسیار مؤثر عمل میکند [30]. با تعیین طول پنجره، فیلتر، میانه اعداد در آن مجموعه را مییابد و عدد میانه را جایگزین کل مجموعه میکند. این فرایند سبب بهبود کیفیت سیگنال PPG برای استفاده در مراحل بعدی میشود. پس از اعمال فیلتر بر روی سیگنال PPG، سیگنال به n ناحیۀ مجزا تقسیم میشود (شکل 2Error! Reference source not found.). این تقسیمبندی به جهت افزایش دقت مدل سازنده، بر روی سیگنال اصلی PPG اعمال میشود. سپس، به ازای هر یک از نواحی سیگنال، GP صورت مجزا اجرا خواهد شد. 2-2- ایجاد سیگنال PPG مصنوعی با استفاده از GP برنامهنویسی ژنتیک، به جهت تولید عبارات با استفاده از رویکردهای تکاملی ایجادشده است[31]. در GP برنامههای کامپیوتری برای حل مسئله، بهصورت تصادفی ایجاد میشوند. هر فرد در GP نشانگر یک برنامه است. این برنامهها از 3 عمل تکاملی انتخاب، جهش و ترکیب ایجاد میشوند و توسط تابع برازشی که تعریفشده است سنجیده میشوند. معمولاً از برنامههایی با سطح سازگاری بیشتر با مسئله، برای ایجاد نسلهای بعدی استفاده میشود. درنهایت بهترین راهحل تولیدشده توسط GP، در حقیقت بهترین فرد سازگار در طی نسلهای مختلف هست. در روش پیشنهادی تمرکز بر ایجاد یک مدل سازندۀ PPG با استفاده از برنامهنویسی ژنتیک بر مبنای درخت است تا با ایجاد درختهای گوناگون، عبارت مطلوب یافت شود [32, 33]. در الگوریتم 2، شبه کد برنامهنویسی ژنتیک با جزییات بیشتری شرح دادهشده است. ورودی این الگوریتم، یک ناحیۀ خاص از سیگنال PPG ( [1] systolic
شکل 2. تقسیمبندی سیگنال اصلی PPG به نواحی مختلف، مبنای ایجاد یک مدل سازنده با دقت بیشتر در روش پیشنهادی است.
در GP، ابتدا یک جمعیت اولیه از افراد بهصورت تصادفی پس از محاسبۀ تابع برازش به ازای تمام افراد جمعیت، افراد سازگارتر توسط بهازای انتخاب با استفاده از روش تورنمنت انتخاب خواهند شد (خط 6). در این فرایند، یک تورنمنت با اندازۀ
پس از انتخاب نمونههایی با سطح سازگاری بیشتر در جمعیت فعلی، دو فرایند تکاملی ترکیب و جهش بر روی آن نمونهها اعمال میشود (خط 7). استفاده درست از عملیات تکاملی سبب بهبود سازگاری افراد در نسلهای بعدی خواهد شد. نسل جدید ایجادشده توسط فرایندهای تکاملی، جایگزین افراد در نسل قبلی میشود (خط 8). پس از ارزیابی میزان سازگاری افراد در نسل جدید، سازگارترین فرد در نسل کنونی با بهترین فرد در نسلهای گذشته مقایسه میشود و در صورت برتری، بهعنوان بهترین پاسخ در نظر گرفته خواهد شد (خط 9). تا زمانی که تمامی نسلها ایجاد شوند، این مراحل تکرار خواهند شد و درنهایت بهترین فرد در میان نسلها بهعنوان پاسخ نهایی GP در نظر گرفته میشود (خط 11).
|