1 Introduction

Parkinson’s disease is a neurological disease caused by the degradation of neuron functions due to the death or damage of dopamine-producing neurons. It was named after the British scientist James Parkinson who described the clinical features of Parkinson’s disease in 1817. It is the second most neurological disorder of elderly people after Alzheimer’s disease [17]. It mostly affects the motor systems of one in every 100 people aged above 55 years and occurs more commonly in men than women [72]. The major symptoms of Parkinson’s disease associated with motor features are tremor, rigidity or stiffness, slowness of movement (Bradykinesia) and body instability [51], while non-motor features includes Dysphonia (vocal disorder), Dementia, Akinesia, Dysautonomia, low blood pressure, depression, sense of balance, etc. [27, 31]. Parkinson’s disease cannot be cured completely, but it can be controlled at early diagnosis by some medications and surgeries. Indeed, there are so many life-threatening side effects of using medicines and surgical operations such as Pallidotomy and Deep Brain Stimulation [19, 33]. Accurate diagnosis of Parkinson’s disease is difficult, so Unified Parkinson’s Disease Rating scale is used for tracking the progression of disease [18, 69]. About 90% of the Parkinson patients suffer from a speech disorder, thus the alternative option to identify Parkinson’s disease includes physical activity and speech therapy.

A patient with a neurological disorder necessitates regular monitoring, but it is not possible for the patient to visit the hospital for a regular checkup. Thus a remote patient health monitoring system is in demand to facilitate healthcare services. In recent years, the Internet of Things, implantable devices, and wireless sensors are employed to monitor the vital parameters of the remote patient continuously which offers efficient healthcare services [28, 74]. The pervasiveness of healthcare applications has emerged with the development of mobile computing which is considered as a useful resource for data collection, analysis and significantly generates certain recommendations for a healthy lifestyle [15, 39,40,41, 59, 63, 66, 70]. Incorporated sensors within a mobile phone are the major source for data acquisition and physical devices such as the Internet of Things (IoT), wearable devices are also utilized to acquire the health-related information [2]. Although mobile phones are sufficient enough to store and process the health data, cloud computing is applied to achieve better battery life, complex computations and centralized storage [9, 23,24,25,26]. As more and more individuals are taking the initiative to keep them healthy, cloud computing assists them in managing their health.

Cloud server provides computing resources on pay per service basis which suits many IoT based applications especially for remote patient health monitoring system [7, 42]. Centralized cloud data center serves as a backbone for storage of an unprecedented amount of health information, thus healthcare service provider prefers cloud server which significantly reduces the cost of service [35, 36, 38, 60, 61]. However, managing such health data on the cloud is highly complex as IoT generates massive data and causes delay transmission over the internet which may lead to serious consequences like death. It also introduces challenges like network traffic, high latency, and computational overhead. Since data collected from the user are highly sensitive and vulnerable to privacy threats and attacks, protection of such personal information such as age, gender, health status, treatment from unauthorized user access is also a major concern [3, 64]. To address the aforementioned challenges, Fog computing is employed as a mediator between user ends and a cloud server to bring computational resources close to the data generating devices [13].

Fog computing also defined as Nano data center is employed between Internet of Things (IoT) and centralized cloud server which provides local storage, data pre-processing and decision making. Unlike cloud, Fog facilitates distributed computing, mobility, low latency which suits applications like healthcare services, vehicular networks, gaming, etc. For real-time monitoring of remote patient health condition, smartphones and wearable devices are used widely to acquire patient health information continuously. Indeed, patients health conditions alone are not enough to predict the accurate disease state, some contextual information is in need for exact diagnosis [58, 65, 67]. Hence, information from user profile along with the contextual information and user feedback can be used as an additional factor for generating a more précised diagnosis and user-centric recommendations [37, 53, 62, 71]. In this article, we proposed a Parkinson disease monitoring system by exploiting fog computing as a midway layer between end devices and a cloud server. The proposed intelligent system takes users’ voice sample as input from smartphone and process the signal on fog server for anomaly detection and sends the processed data to a cloud server for storage and deep analytics.

The remainder of the paper is organized as follows: Section 2 describes the works related to detection of Parkinson disease, classification methods used to distinguish Parkinson patients from healthy individuals and cloud-assisted framework for Parkinson disease detection. Section 3 describes the framework of proposed fog assisted Parkinson disease detection system and its major components in detail. Experimental results, performance analysis, and discussions are presented in Section 4. Finally, Section 5 presents the summary of the work, conclusions and future work directions.

2 Related work

The insufficiency of dopamine causes the Parkinson’s disease as it slowly loses their control over functions. A useful way to detect Parkinson’s disease is testing of voice disorder which is a non-invasive method since 90% of the Parkinson patients suffer from Dysphonia which is a vocal impairment. In fact, certain features of voice samples of Parkinson patients are different from healthy individual, it has been identified that voice disorder can be used as the best way for diagnosing Parkinson’s disease. Kim et al. [32] proposed a fully automated system to predict the severity of Parkinson’s disease from an individual’s voice based on unsupervised clustering technique. Rani and Holi [52] applied multilayer perceptron and radial basis function network for classification of neurological disease and identification based on the analysis of speech characteristics. Little et al. [34] presents Pitch Period Entropy (PPPE) to measure dysphonia for discriminating Parkinson’s disease patients from healthy individuals. They used kernel support vector machine method for classification, and their experimental result provides 91.4% accuracy and also suits telemonitoring applications. Gil and Manuel [20] proposed Parkinson’s disease diagnosing method on the basis of Support Vector Machine and Artificial Neural Network to assist professional, and the result shows an accuracy of 90%. Resul Das [16] compared four different classification methods such as Neural Networks, Regression tree, DMneural and Decision tree classifier for efficient diagnosis of Parkinson patient and to distinguish them from healthy people. The experimental result shows that the neural network yields 92.9% accuracy.

Goetz et al. [21] proposed the computer-based device for assessing Parkinson’s disease-related impairment from home. They tested the feasibility of AHTD device over 6 months for measuring tremor, speech and complex motor control relative to Unified Parkinson’s Disease Rating Scale (UPDRS). Bhattacharya and Bhatia [11] classified Parkinson patient from a healthy person using the support vector machine method. They also attempted to find more classification accuracy by applying libsvm on diverse kernel values and explained the significance of data mining in the ground of bioinformatics. Bakar et al. [10] confirmed that Multilayer Perceptron Neural Network can be used to categorize Parkinson patient. By employing ANOVA (analysis of variance) feature selection method, they attained 90% classification accuracy for LM (Levenberg-Marquardt) and 80% accuracy for SCG (Scaled Conjugate Gradient) algorithm. Sakar and Kursun [55] proposed a model to select minimal features with maximum joint relevance and produced a binary score which predicts the Parkinson’s disease person. Shirvan and Tahami [56] extracted various features from voice signals of both Parkinson’s disease patient and healthy person, and then selected the optimized features using a genetic algorithm for classification using the k-nearest neighbor algorithm. Hossain and Muhammad [22] present the cloud-based framework for collaborative media service which efficiently connects caregivers and professionals for voice pathology. The experimental result shows that the proposed framework works well for web-based collaborative service environment.

Ghulam Muhammad [44] proposed a cloud-assisted healthcare framework and a new feature extraction method named as an interlaced derivative pattern (IDP) for speech recognition which performs well even for the voice transmitted via smartphone with 97.3% accuracy. Al Mamun et al. [4] proposed a practical and useful cloud supported framework for monitoring and detecting Parkinson patients. Professionals can check the patient’s voice disorders over cloud through the internet for remote patients. Pan et al. [46] developed a mobile-based mHealth app called PD Dr. which gathers motor feature about Parkinson patient using Smartphone accelerometer and sent to cloud for severity estimation. The evaluation result shows that the system provides 81% accuracy for gait difficulty detection and 82% accuracy for tremor detection. Kassavetis et al. [29] developed a standalone tool for mobile devices to assess motor symptoms such as tremor and bradykinesia of Parkinson patients. Arora et al. [8] stated that the Smartphone is a supportive diagnostic tool for measuring Parkinson’s symptoms that can assist experts to assess voice disorders, posture, finger tapping, response time and gait. Using these 5 tasks, experts can discriminate Parkinson from healthy persons. Stamate et al. [57] introduce the Smartphone app called cloudUPDRS which closely follows the part III of the UPDRS protocol, and the device automatically computes the unified Parkinson’s disease rating scale score.

Alhussein [5] proposed a health monitoring framework for Parkinson’s disease and symptoms be detected at an early stage for providing proper medication. He used speech signals collected from several sensors and forwarded to cloud for data processing where support vector machine approach is used to classify, and decisions are sent to professionals for prescribing certain medications. The experimental result says that the proposed framework detects Parkinson with an accuracy of 97.2%. Mantri et al. [43] examined activity scores for 383 Parkinson patients and 175 healthy persons, and it shows that activity score is 8% lower in Parkinson patients. Physical activity assessment is considered as one of the crucial factors which reduce the severity and progression of Parkinson disease. However, there is no such target established for prescribing physical activity to Parkinson patients. For old adults, The American Heart Association suggests 2 h and 30 min of moderate activity or 1 h and 15 min of vigorous activity per week for healthy lifestyle [45]. It is not possible for the Parkinson patient to achieve activity benchmark as they are suffering from a motor disability.

Pogorelc et al. [49] proposed a system for automatic recognition of gait-related health problems and notifies a physician regarding the motor features. The trained machine-learning classifier classifies the gait information into one of the labelled classes based on the semantic features. Chaabouni et al. [14] studied the visual attention of dementia patients. A reference model for control subjects was developed based on the deep convolutional neural network. A model provides 99.2% prediction accuracy because of the effectiveness of transfer learning method. To detect the likelihood of Parkinsons’ disease at the early stage, Putri et al. [50] use a pattern recognition method. Authors acquire and extract the features from voice data and EMG signal. Then two classification approaches such as artificial neural network and neuro-fuzzy inference system are utilized for Hughes Scale based classification. And the result shows that the voice-based classification has higher accuracy than EMG based classification. Almogren [6] proposed the remote patients’ monitoring system for early detection of Parkinson’s disease. The proposed system evaluates the patients’ voice disorder to assist professionals on an effect to estimate the severity levels. Bohanec et al. [12] developed a decision support system for management of Parkinson’s disease. The proposed model identifies the crucial point based on both motor and non-motor symptoms from where the alteration of medical remedy is essential to prevent the progression of the disease.

Parkinson disease cannot be cured completely, but its severity level can be controlled by early diagnosis. In this paper, we propose an intelligent system for the early detection of Parkinson disease using fog computing. To the best of our knowledge, no work exists so far on early detection of Parkinson disease using fog computing. The proposed system takes voice sample as input and pre-processes the sample voices for accurate detection in fog layer. In case any abnormality is detected, the proposed system generates an alert immediately to avoid serious consequences. Then the processed voice sample is analyzed on the cloud server for decision making and proper treatment recommendations. The authors used FKNN-CBR classifier for abnormality detection and classification based on voice sample. The classification results obtained are compared with the five other approaches such as J48, Naïve Bayes, SVM, Random tree and KNN to validate the improved performance of the proposed system.

3 Fog-assisted intelligent detection of Parkinson’s disease (fog-IDPD)

The study aims to develop an intelligent system to detect and monitor Parkinson patients’ health condition to reduce the severity of symptoms. An efficient system should provide accurate measurement of vital parameters, effective data processing, timely storage and authentic report to the end user. The proposed system comprises of physical space which is responsible for data collection and information sharing with end users, while cyberspace itself comprises of fog and cloud layer. The data acquired from physical space is transmitted to the fog layer for processing and detecting Parkinson patients. In addition, fog layer also facilitates the alert system to make them alert and take necessary measures in case of emergency. The proposed system provides a précised assessment of voice data to determine the level of severity. At the same time, the patients’ health record along with its medical information is stored in the cloud for future reference.

3.1 Overview of the fog-IDPD framework

The proposed Fog-IDPD system is modelled in a layered manner comprising data acquisition, Fog computing, Cloud computing layer and service providers as shown in Fig. 1. The main entity of data acquisition layer are elderly people equipped with bio-sensors, wearable devices, and smartphone to monitor Parkinson patients’ daily activities such as physiological vital signs, motion features, voice disorders, etc. and gets feedback from authorized domain experts for proper medication. By incorporating the Internet of Things (IoT), the proposed system forms a network and captures patients’ every event effectively. The key objective of the proposed Fog-IDPD system is to provide remote healthcare service for elderly and Parkinson’s patient using fog computing. The core of the Fog-IDPD system is the fog layer that provides all necessary services along with data processing and local storage. Fog layer also facilitates mobility, scalability and real-time services. The pre-processed health-related data are transmitted to the cloud server for storage and decision making. Authorized service providers or physicians can access the patient’s medical data from the cloud server to prescribe certain medicines and suggestions. Then the prescribed medicine with treatment history and report is stored in the cloud server for future reference and also sent back to the patient for report visualization and treatment. The Fog-IDPD establishes communication between patients, his/her family members, cloud server, professionals and emergency service providers through fog platform to exchange health information over the internet. In case of an emergency, an alert is sent immediately to patients’ family members and emergency service regarding the situation to safeguard the users’ life.

Fig. 1
figure 1

Schematic representation of Fog assisted IDPD

For a user to achieve a healthy lifestyle, he/she has to register with the system by providing his/her personal information such as age, gender, contact details, and health status, then the system automatically generates the unique identifier for each registered user for further communications. The Fog-IDPD system should ensure the data security and privacy preservation of user’s personal information while transferring the data to the cloud. The sensors and wearable that are used to monitor the vital parameters are termed as the Internet of things and must be connected efficiently to the system without any intervention from the user. The acquired information is large and cannot be processed by the device itself, thus cloud server is employed for centralized storage and processing. Indeed, employing cloud computing are vulnerable to security and latency issues. Hence, fog computing is employed at the end device to attain low latency, network bandwidth, and local storage. It also facilitates efficient pre-processing, user classification and the decision-making process in case of an emergency. The Fog-IDPD framework includes the following components:

  1. 1.

    Smart devices: Users, who are striving to discover whether they are suffering from Parkinson’s disease or not, may have smartphone enabled with web application and sensors implemented within it. Voice signals are sensed and captured from the user and transmitted to the fog server via Wi-fi, Bluetooth or ZigBee communications. Different wearable sensors such as a 3D accelerometer for collecting gait-related symptoms are also deployed.

  2. 2.

    Fog Layer: The information acquired is then sent to the user’s smart mobile for local storage and analysis of data for classification and anomaly detection. It provides services such as data aggregation, filtering, and dimensionality reduction. After pre-processing the data, the processed data is forwarded to the cloud server for centralized storage and deep analytics. In case, any serious condition is detected an immediate alert is sent to the patient or his/her family members to make them aware about the situation.

  3. 3.

    Cloud computing platform: The cloud layer provides services such as central storage, data analytics and graphical user interface for report visualization, prescription, and recommendations. When the user decides to access the healthcare service, he/she has to send the request to the cloud through internet connections, and then the cloud administrator authenticates the user and registers them by generating a unique identifier for further communication. The cloud administrator manages the user profile with their personal information and stores them into the database.

3.2 Workflow of proposed fog-IDPD

The user or elderly person who wants to monitor their daily activities to lead an active and healthy lifestyle needs to register with the system. The registered patient records and uploads a voice signal to the fog server for pre-processing, and then the pre-processed data are sent to the cloud server from where domain experts or professionals can access the data to prescribe appropriate medication. The processed data are utilized to distinguish Parkinson patients from a healthy person through classification algorithms with various influential features. Generally speaking, each voice pattern has many features, only some of them are influential in distinguishing them from healthy person. So extracting an essential set of features is a crucial step for classification with enhanced accuracy. Once the user is classified as Parkinson, then the fog server immediately sends an alert to the user or his/her family members regarding the situation for continuous monitoring. After that, the registered patients’ medical report is sent to the cloud server for storage and available authorized medical experts access the data for prescription and treatment suggestions. The final statement along with treatment history is stored permanently in the cloud server and also reported to the user for visualization.

The workflow of the proposed Fog-IDPD system is illustrated in Fig. 2. The registered user uploads the recorded voice signal to the application server. After verifying the authenticity of the user, the voice sample is sent for data pre-processing where noise reduction and data filtering takes place. Then the influential voice features are extracted from the processed voice data for precise classification. Now the data is sent to the proposed FKNN-CBR classifier to classify the healthy person and Parkinson patients through the assessment of influential voice features. Usually, to train the classifier, the dataset is divided into training data and test data. Then test data is examined against the training data. Similarly, the whole dataset is divided, and each portion acts as a test data and examined against the remaining portion of the dataset to evaluate the performance accuracy of the proposed classifier. After obtaining the classification result, if it is noted that the user is healthy, then the report is sent back to the user and continues monitoring. Else, the report is transmitted to the cloud server from where the authorized domain experts view the report for providing proper medication and treatment. Finally, the report along with the treatment suggestions is sent back to the user for the visualization and treatment process.

Fig. 2
figure 2

Workflow of proposed Fog-IDPD

3.3 Physical space

Physical space gathers users’ personal information, health condition along with contextual information and transmits the collected information to cyberspace for pre-processing and data analysis. Initially, the user registers with the system through the web or mobile application and receives a unique identifier for further communication. Now, the user can retrieve the health-related data from IoT devices implanted in/around the body having the capability of sensing and transmitting real-time data. This health information is collected and converted into a mobile reading format such as textual, numerical or graphical representation. For instance, the voice signal is recorded and uploaded to the system, where voice analytics is used to convert the received voice signal into textual form. The user can also enter their presence or absence of motor symptoms in the form of yes or no through a mobile application. After collecting all the necessary information, the data is then immediately sent to the fog layer for pre-processing and classification. Finally, the report is forwarded to the cloud server for storage, from where healthcare professionals can access the patients’ medical condition for prescribing medication and treatment on time. Unified Parkinson’s Disease Rating Scale (UPDRS) is the commonly used rating scale for the study of Parkinson disease. The protocol consists of a sequence of movements recorded iteratively by the smartphone sensors.

3.3.1 Sensing devices

A lightweight sensing device that can unobtrusively evaluate the symptoms of Parkinson’s disease in their daily activities with minimum effect includes a wristband, insole sensor, and smartphone. Wristband offers a wider range, three-axis accelerometer, heart rate and skin temperature sensing facilities with useful feature visualization. It primarily used to evaluate symptoms like tremor and rigidity or stiffness of hands. Insole sensor is an innovative shoe sole device developed by Moticon which is easy to use and comfortable. It contains 13 pressure sensors placed on the entire sole to measure user’s pressure distribution on the foot, stability, balance and movement sequences. The microcontroller embedded on the device process the raw data which computed the user’s walking behavior and symmetry between the left and right leg. Besides the implantable and wearable devices, most of the healthcare solution is carried through mobile applications. The widely used mobile supporting operating systems are Android, MS Windows, and Mac OS. Smart Phone assists both clinicians as well as patients to measure the vital parameters, data transfer, authorized access, evaluation and also to provide proper medication for the remote monitoring system. By doing so, the cost of hospitality and medication reduces significantly.

3.3.2 Assessment of motor performance

Currently there is no particular method or test for diagnosing Parkinson’s disease; instead specialist can look for common symptoms if they suspect that the patient is suffering from Parkinson’s disease. During the assessment, the professional would request the user to perform several motor tests like alertness of arms and legs, muscle tone, body balance and gait, and then record the results in Unified Parkinson’s Disease Rating Scale (UPDRS) which is considered as a universal scale for Parkinson symptoms. UPDRS was first introduced in 1987 and then modified in 2008 as Movement Disorder Society-Unified Parkinson’s Disease Rating Scale (MDS-UPDRS). It is a questionnaire-based assessment of Parkinson’s disease. Its feature is classified into four sections as Parts I to IV and associated with both motor and non-motor symptoms. User’s simple actions such as tapping the screen, holding the phone on the knee, limb actions are captured by the smartphone to estimate the UPDRS score through biosensors. So that medical professionals be able to detect the progression of Parkinson symptoms. The UPDRS score ranges between 0 and 56, i.e., no symptoms to maximum motor disability representing immobility. Different levels of severity of Parkinson symptoms [54] are organized as follows:

  1. 1.

    UPDRS score ranges between 0 and 20: Mild Parkinson disease

  2. 2.

    UPDRS score ranges between 21 to 35: Moderate Parkinson disease

  3. 3.

    UPDRS score ranges between 36 o 56: Severe Parkinson disease

For instance, Motor_UPDRS score for some of the 42 subjects with an early stage of Parkinson’s disease are shown in Table 1, where the subject is identified in the first column as integer, age, and sex of each subject in second and third column respectively, test_time denotes the time since the subject is recruited into the trial. Here integer value is the number of days and decimal is the time, motor_UPDRS and total_UPDRS is the UPDRS score of the subjects from the 16 voice measures [47].

Table 1 Sample Parkinsons’ data for UPDRS

3.3.3 Dysphonia: A non-motor feature

The most popular way to detect Parkinson’s disease symptoms progression is UPDRS, but it is time ineffective and non-autonomous. A useful alternative way for detecting Parkinson patient through a non-invasive method is the assessment of voice disorder since 90% of the Parkinson are suffered from Dysphonia or phonatory impairment. It has been noted that some influential voice features are used to distinguish Parkinson form healthy individuals. This method can also suit the telemonitoring applications for remote patient health monitoring systems. Here, the patients’ voice sample is collected through smartphone for analysis and classification. Voice sample with some noise can interfere the classifier, thus noise should be removed before processing. Now the data is reduced through feature selection techniques to avoid more memory occupation and computation complexity. Several voice tests were performed for detection of Parkinson disease through voice samples, out of them pronouncing vowels and typical sentences are considered as popular. Table 2 presents six vowel phonations of a Parkinson patient for the sample [48].

Table 2 Sample Parkinson’s disease data for voice disorders

3.4 Cyberspace

Cyberspace is used to analyze the gathered health information from the physical space. In general, cyberspace is comprised of fog computing and cloud storage layer. Fog computing is an extended version of cloud computing used for distributed computing, local storage, and processing. Fog layer is employed between the end devices and a cloud server which acts as a communication link between physical space and cloud. The real-time data are accumulated and processed in the fog layer; it classifies the Parkinson patient and healthy individuals through efficient classification algorithm based on motor symptoms, UPDRS score or voice features. Once the patient is classified as Parkinson, it sends an immediate alert or notification to the registered user’s mobile phone about the health condition. Compiled and processed medical record is forwarded to the cloud layer for centralized storage and deep analysis. Cloud computing utilizes the resources shared on the internet to store, manage and process the information on the pay per service basis. Here cloud server facilitates alert mechanism and emergency service in case of anomaly detection. It also facilitates user feedback and reports visualization along with the professional suggestions regarding the health condition which is used to improve the motor disability. The detailed description of each layer is given in subsequent sections.

3.4.1 Fog layer

The key objective of employing fog computing layer between end devices and centralized cloud server is to improve scalability and data reduction that requires to be transmitted to the cloud server for permanent storage and deep analysis; it significantly reduces the latency, delay transmission and bandwidth required to data transmission. In a fog computing platform, the smartphone is always used as a hub to process the data or on the edge of the network or on the smart router. In the proposed system, the acquired data is sent to the fog layer for pre-processing like filling missing values, data redundancy and data reduction which converts the gathered raw data into useful information. In addition, fog node is designed to synchronize heterogeneous data collected from various devices. These parameters are converted into a relevant format, so that classifier can efficiently distinguish the Parkinson patient from healthy individuals. Since data pre-processing is performed on fog layer, computational overhead and communication cost of cloud server are reduced considerably. To prevent the sensitive information of a patient, anonymity is considered as a flexible option to hide an individual identity without encryption/decryption techniques which consume more energy. This component uses voice features to identify the patient’s category as healthy or Parkinson, for that combinatorial case-based reasoning with FKNN classifier is used.

Features of the fog layer

Local data processing acts as a major feature of fog computing as acquired health data is analyzed locally. In a health monitoring system, response to a specific condition as early as possible is necessary to avoid serious consequences in emergency situations. Data filtering, compression, aggregation, and analysis are some of the data processing features carried out in fog layer. Acquiring health information from various sensors also accumulates noise which in turn reduces the quality of assessment. As sensors are implemented within the smartphone can reduce the noise. Similarly, data reduction is used to reduce latency, network bandwidth and consumption of energy. Aggregating health information from heterogeneous sensors assists clinicians or professionals to interpret health status more precisely. Furthermore, local notification or feedback from fog layer improves the reliability of the system in case of internet unavailability. Fog node should facilitate local repository in a secured manner, then only data analysis can be performed locally on the fog server. Cryptographic techniques are unfeasible for resource-constrained devices as it requires more energy to process, thus anonymity can be employed to hide the patient’s personal information. In addition, mobility and device discovery is an essential feature to avoid packet loss and interruptions of healthcare service.

3.4.2 Cloud computing layer

Cloud computing is capable of providing massive storage and data processing which cannot be handled by fog nodes. The aim of the cloud server is to offer resources on pay per service basis over the internet rather than a personal computer. In addition, cloud service provides private cloud, public cloud and hybrid cloud for utilizing resources deployed on the cloud. Private cloud is used to store and share data relevant to one particular organization, while the public cloud provides processing and sharing of physical resources with others and hybrid cloud integrates both public and private cloud. It also facilitates three services such as Infrastructure as a Service, Platform as a Service and Software as a Service.

Cloud storage

Cloud storage facilitates the ubiquitous storage of acquired health data at any time and from anywhere for remote access. Cloud database is partitioned into shareable and non-shareable sections. The data associated with every user’s personal information, health status, social contact information and treatment history are stored in the non-shareable database. As it consists of highly sensitive information, the cloud should ensure data security from unauthorized user access. While shareable data includes general information that can be shared with anyone like room maintenance, etc. Similarly, the cloud can allow two kinds of authorized users to access the stored data namely Professionals or clinicians and patients or family members. Caregivers or professionals can access the concerned patient data for analysis to provide proper and precise treatment. On the other hand, patient or his/her family members can access the patient’s report and can provide their feedback about the treatment, their experience and health status which can help other similar users to take advantage of the review comments.

3.5 Hybrid case-based reasoning classifier

Case-based reasoning [1] classifier has received considerable attention towards many researchers in solving classification problems, especially for disease diagnosis. In this paper, Case-based reasoning (CBR) classifier in combination with the Fuzzy k-nearest neighbor (F-KNN) classifier is used to classify Parkinson patient and healthy individuals based on the similarity measurement of influential features retrieved from the similar past cases. Similarity measurement plays a vital role in retrieving similar cases from plenty of available cases. While classifying Parkinson patient from healthy individuals through exploiting voice samples, some influential features have been used to discriminate Parkinson patients. Case-based reasoning method can be used to identify the pattern for classification, while Fuzzy-KNN classifier [30] assigns a membership function associated with the features. The combination of case-based reasoning classifier with the fuzzy k-nearest neighbor classifier is used to retrieve the similar cases effectively. Given a case base CB that consists of k number of cases Ck, where k = 1, 2, ..., k and category as Parkinson or Healthy. CBR classifier can be constructed as,

$$ \varPhi :F\to C $$
(1)

Where F is a feature set, and C is the category of the diagnosis. In general, Case-based reasoning classifier comprises of four steps namely case retrieval, case adaption, case revision, and case retention.

Case retrieval: The cases similar to the target user are retrieved from the CB library where all the past cases with its associated solutions are preserved. Similarity comparison is carried out to retrieve one or more cases from the CB library. Different methods are applied to estimate similarity between similarity between the target user (xu) and neighbor user (xk). Average weighted Euclidian distance similarity method is used in our approach. The similarity of target and neighbor user for ith feature computed using Euclidean distance is defined as follows:

$$ Sim=1-\sqrt{\sum \limits_{i=1}^n{\omega}_i{\left({x}_{i,u}-{x}_{i,k}\right)}^2} $$
(2)

Where ωi is the weight of the ith feature, xi,u and xi,k are the ith feature value for the target user and neighbor user respectively. Weight is considered as the importance of each feature that is responsible for the progression of Parkinson’s disease. Fuzzy k-nearest neighbor classifier incorporates fuzzy set theory into k-nearest neighbor classifier to provide enhanced classification accuracy.

In fuzzy k-nearest neighbor classifier, each object belongs to multiple classes with different membership function is computed as follows:

$$ {u}_i(x)=\frac{\sum \limits_{j=1}^k{u}_{ij}\left(1/\parallel x-{x}_j{\parallel}^{2/\left(m-1\right)}\right)}{\sum \limits_{j=1}^k\left(1/\parallel x-{x}_j{\parallel}^{2/\left(m-1\right)}\right)} $$
(3)

Where ui(x) is the fuzzy membership of x in class i, uij is the fuzzy membership degree of the pattern xj from the training set to the class i, among the k nearest neighbors of x. The variables i = 1, 2, ..., C is the C number of classes i.e. Parkinson or healthy, j = 1, 2, ..., k is the predefined number of nearest neighbours and m is constant which determines the weight of each nearest neighbour in the calculation of fuzzy membership and always lies between 1 to infinity. Also ||x - xj|| is the Euclidean distance between x and its nearest neighbor xj.

Case adaption: Majority case is utilized to gain information and knowledge to solve the problem of the current case. In general, the retrieved case is reused to make some adjustment for a proper solution. Indeed, the process of adapting the solution retrieved from the CB library is called case reuse or case adaption. It estimates the difference between the target case and retrieved case to adopt the suggested solutions, and it can be done by professionals or clinicians.

Case revision: This phase is a trial and error phase where learning from failure occurs. The adopted solution is tested for accuracy and provides a legalized solution for the target case. If a solution generated by the reuse phase turns into incorrect, then it takes for learning, and the correct category is obtained by revising the solution through domain expert knowledge.

Case retention: This phase provides an opportunity to add the new successful case to the case base library. When a new case with a different problem finds its solution by retrieving existing case solution, and if it is successful to provide a solution, then that new case will be automatically stored in the case base library for the further learning process of the classifier. Now the number of case records increases by one.

Hybrid Case-based reasoning classifier is used for early detection of Parkinson’s disease and classification of the healthy user and Parkinson patient with greater accuracy. Similarity measurement is the major challenge of Case-based reasoning method to retrieve the similar cases effectively. Thus, we have adopted Fuzzy k-nearest neighbour (FKNN) algorithm to estimate the degree of similarity between target case and existing cases. FKNN incorporates Fuzzy set theory into KNN which assigns the fuzzy membership function to each vector. By assessing similarity score, closely related case records are retrieved from the case repository, and the case solution is reused by adapting suggestions from domain experts. Finally, successful revised solutions are retained into the repository for future reference.

3.6 Notification or alert generation

The proposed intelligent system is capable of automatically generating alerts or notifications to patients in different formats such as Mobile SMS or E-mails. If the patient’s health parameter exceeds the predefined threshold values, it notifies the patient or his/her family members regarding the situation. An alert can be sent to different end users depending on its programming settings and decisions like sending an alarm to emergency services or family members, sometimes to patient. To provide emergency service, a Global positioning system (GPS) enabled smartphone helps to identify the current location of the patient. Manual notification can also be generated when clinician needs to assess the patient’s health status by instructing the patient to perform a specific motor or non-motor test.

Initially, the patient’s voice sample or UPDRS score is assessed from the smartphone or sensor. If the measured range is less than the predefined threshold range, then the system indexes the patient’s health state as safe or normal. On the other hand, if the measured range is greater than the threshold range then system index the health state as unsafe and immediately generates a warning alert message to end users. The end users may be caregivers, professionals, family members, emergency service or even patient itself. Based on the situations, an alert is sent to corresponding end users. The algorithm given below describes the mechanism behind the alert or notification generation. It helps to assist the professionals in diagnosing the disease at an early stage so that by giving necessary precautionary treatment significantly reduces the serious consequences.

figure c

4 Experimental setup and performance evaluation

The main objective of the research is to evaluate the performance of proposed FKNN-CBR classifier employed to distinguish Parkinson patients from the normal healthy persons in the fog platform. The experiment was conducted in Intel(R) Core(TM) i7 processor with 16GB of RAM running 64-bit Windows 10 Operating system with MATLAB. We evaluated multiple classifiers for the same dysphonia dataset and compared their classification performance.

4.1 Dataset description

For the experimental evaluation, we used the Parkinson dataset from UCI Machine Learning Repository [48] formed by Max Little from Oxford University in a relationship with the National Centre for Voice and Speech, Denver, Colorado, USA. The Parkinson’s disease dataset comprises of 31 people among them 23 are Parkinson patients, and there are 195 voice recordings from these individuals, around six voice recordings per patient with an average age of 65.8 years. The first column of the dataset is identified as the name of the patient, and 23 other attributes are available, most of them are extracted from Multidimensional Voice Program (MDVP). The main goal of the dataset is to distinguish Parkinson patient from healthy individuals through influential voice features. According to the status of the dataset, 1 denotes the Parkinson patients, while 0 represents the healthy individuals. Other attributes such as Average (F0), Maximum (Fhi) and Minimum (Flo) represents vocal fundamental frequency. Jitter Percentage (%), Absolute Jitter (abs), Relative Average Perturbation (RAP), Pitch per Perturbation Quotient (PPQ), Differential Derivatives of Successive Period (DDP) are the measurements of frequency variations. Shimmer, Shimmer in decibel, Shimmer-APQ3 (3 point average Amplitude Perturbation Quotient), Shimmer-APQ5, MDVP-APQ, Differential Derivatives of Amplitude (Shimmer-DDA) are the measurements of variations in Amplitude. NHR and HNR are the ratios of harmonic and noise values. Recurrence Period Density Entropy (RPDE) and correlation dimension (D2) are dynamical complex measurements. DFA is signal fractal scaling exponent and Spread1, Spread2 and PPE are Pitch Period variations.

4.2 Classification evaluation metrics

To validate the performance of the proposed classifier, we used the 5-fold cross-validation method. Here, each feature set is randomly divided into 5 subsets where one subset is used for testing, and other 4 subsets are used to train the classifier. Likewise, the remaining 4 subsets are used for testing independently with the other 4 subsets as training sets.

The error rate is computed as follows:

$$ Error\kern0.17em rate=\frac{1}{N}\sum \limits_{i=1}^N{\left[{D}_{out}-{C}_{out}\right]}^2 $$
(4)

Where N is the total number of patients, Dout is the desired classification output, and Cout is the actual output for each test dataset. The classifier is trained to distinguish Parkinson from healthy individuals. Performance of the classifier is assessed using some of the evaluation metrics such as accuracy, precision, sensitivity, specificity, and f-measure. For the assessment, four measures were widely used for a two-class medical dataset which includes True positive, True Negative, False positive and False negative. Positive classification refers to a number of Parkinson patients, while negative classification denotes the total number of healthy individuals.

The accuracy of the classifier is estimated with the proportion of correct predictions with the total number of all kind of predictions. Accuracy gives good results when the dataset used is well balanced. However, in the case of the medical dataset with unbalanced instances, accuracy alone is not enough to evaluate the performance of the classifier. For instance, detection of 5 Parkinson patients from 100 healthy individuals is terrible. Accuracy is measured as follows,

$$ Accuracy=\frac{N_{TP}+{N}_{TN}}{N_{TP}+{N}_{FP}+{N}_{TN}+{N}_{FN}} $$
(5)

Where NTP is the total number of true positive instances (Parkinson patients), NTN is the total number of true negatives instances (healthy individual), while NFP and NFN are the number of false positive (predicted Parkinson as healthy) and false negative (predicted healthy as Parkinson) classification respectively. Precision is described as the proportion of true positive instances (NTP) to the positively predicted instances (sum of NTP and NFP).

Precision tells us about what proportion of predicted Parkinson patients are actually having Parkinson disease. Precision is given by

$$ Precision=\frac{N_{TP}}{N_{TP}+{N}_{FP}} $$
(6)

The sensitivity is used to compute the proportion of predicted Parkinson to the actual number of Parkinson patient which is given by the ratio of positively predicted instances and the sum of true positive and false negative instances. It is also called as true positive rate and can be defined as follows

$$ Sensitivity=\frac{N_{TP}}{N_{TP}+{N}_{FN}} $$
(7)

Where NTP is the total number of correctly predicted Parkinson patients and NFN is the number of healthy individuals who are wrongly predicted as Parkinson. It is clear that precision tells us about classifier performance with respect to false positives, while recall tells us about false negatives.

Likewise, specificity measures true negative rate defined as the proportion of true negatives and sum of true negative and false positive instances which is given as follows

$$ Specificity=\frac{N_{TN}}{N_{TN}+{N}_{FP}} $$
(8)

F-measure is the harmonic mean of recall and precision. Here recall and sensitivity are same, while precision is the positively predicted instances. F-measure is measured as follows

$$ F- measure=2\times \frac{\mathrm{Precision}\times \mathrm{Recall}}{\mathrm{Precision}+\mathrm{Recall}} $$
(9)

4.3 Efficiency of FKNN-CBR classifier

The efficiency of the proposed classifier is determined by how precisely the classifier categorizes the user into Parkinson and Healthy individuals. In the proposed system, FKNN-CBR classifier is used to distinguish Parkinson patient from healthy individuals based on non-motor features acquired from a smartphone. Various statistical measures such as sensitivity, specificity, precision, recall, f-measure, and accuracy are used to validate the classifier’s performance. Tables 3 and 4 present the confusion matrix for the Parkinson’s disease dataset which is used to compute statistical measures and its comparison with other classifiers respectively. Sensitivity is used to measure the True Positive Rate, i.e. the percentage of correctly predicted Parkinson patients, whereas Specificity also known as False Positive Rate is the percentage of incorrectly predicted Parkinson patients. Proposed FKNN-CBR classifier provides higher sensitivity value 97.28 and lower specificity value 87.50. Precision, recall, and F-measure are other statistical measure used to estimate the accuracy of the classifier. FKNN-CBR classifier provides the precision value as 95.97, recall as 97.28 and F-measure as 96.62. Higher the value of precision and recall, classification accuracy will be more i.e. here classification accuracy is 94.87. Hence, the statistical result shows that the proposed classifier is capable to efficiently classify the Parkinson patient from healthy individuals with high classification accuracy. Different classification techniques such as a random tree, J48, SVM, KNN-CBR, and Naive Bayes are utilized to compare the performance with the proposed FKNN-CBR classifier.

Table 3 Confusion matrix for detection of Parkinson patients
Table 4 Classification accuracy, sensitivity, and specificity of various classifiers

By adopting FKNN-CBR classifier, the combinatorial advantages of techniques such as Fuzzy set theory, k-nearest neighbour and case-based reasoning provides improved classification accuracy. The FKNN-CBR not only utilizes the domain experts’ knowledge and experience to resolve the problem but also employs fuzzy membership degree to retrieve the more relevant cases. The key advantages of FKNN-CBR approach are significant dimensionality reduction, minimized problem complexity and allows various indexing of target case.

4.4 Discussions and results

The identification of Parkinson patient using fog computing is a new way to enhance the quality of elderly people’s healthy lifestyle with limited medical cost and resources. We attempted to detect the Parkinson’s disease at an early stage so that medications could be given consequently to reduce the serious consequences. Though many works have been performed on early diagnosis of Parkinson’s disease using voice samples, i.e. Dysphonia, our method is reliable for remote patients using fog computing platform. Our proposed intelligent system uses fog computing to monitor and detect Parkinson’s disease efficiently. Preservation of voice records securely requires a large storage space which can be provided by the cloud server. Fog computing also provides mobility and location awareness. Our system takes advantages of both cloud and fog computing for local and centralized storage, data processing, data analysis, security, alert mechanism and the effective association between patients and professionals.

The framework of our proposed intelligent system uses fog layer to pre-process the acquired data and cloud storage for data analytics. Storage of massive health data with voice samples requires more secure and huge storage space that can be achieved by a cloud server. Cloud layer also facilitates easy communication between users and healthcare service providers, efficient classification and management. Elderly people who are suspect to have Parkinson’s disease can detect whether they are suffering from Parkinson or not through their voice samples. After registering with the web or mobile application he/she can record their voice samples and upload to the cloud via the internet. The classifier categorizes the user into either Parkinson or healthy by assessing their voice samples at any time and from anywhere. If the user is classified as Parkinson, then immediately alert will be generated to the patient’s mobile phone. Professionals or clinicians can remotely assess the voice samples from the cloud and prescribes the medication. Cloud database stores all the information about each user and serves as a warehouse for both healthcare service seekers and providers.

Our proposed intelligent system aims to take advantages of both cloud and fog computing like local data processing, alert generation, classification, data security, mobility, and centralized storage. In addition, Parkinson patients are distinguished by influential features of their voice samples through exploiting combinatorial approach of FKNN and CBR. FKNN-CBR classifier provides the best classification result when compared to various classifiers through voice samples. In our research, we used five classification approaches on Parkinson’s disease dataset acquired from UCI Machine Learning Repository such as J48, Naive Bayes, Support Vector Machine, Random tree and K-nearest neighbor algorithms for performance comparison. Figures 3, 4 and 5 denote the comparison chart of statistical measures such as classification accuracy, sensitivity, and specificity for proposed classifier with 5 other classifiers respectively.

Fig. 3
figure 3

Comparison of classification accuracy with other classifiers

Fig. 4
figure 4

Comparison chart of sensitivity with other classifiers

Fig. 5
figure 5

Comparison chart of specificity with other classifiers

The dataset utilized for classification consists of 195 voice recording, around 6 recordings for 31 peoples with 8 healthy individuals and 23 Parkinsons. The dataset is divided into two sets, one for training and other for testing. The statistical metrics used to evaluate the performance of the J48, Naïve Bayes, SVM, Random tree, KNN-CBR, and FKNN-CBR classifiers are sensitivity, specificity and accuracy. The classification accuracy produced by the proposed FKNN-CBR classifier on the Parkinson dataset is 94.87%. Figure 3 shows that the FKNN-CBR classifier yields higher classification accuracy than the other classification approaches on the same Parkinson dataset. Higher the sensitivity and lower the specificity, the classification accuracy will be more. Figures 4 and 5 shows the sensitivity and specificity comparison for all the classifiers. Though all the other classifiers produce good accuracy, they are lower than the proposed FKNN-CBR classifier.

5 Conclusion

Parkinson’s disease is the second notable neurodegenerative disorder next to Alzheimer disease. It weakens the body balance, damages the motor features and leads to speech disorder as it lacks dopamine. It cannot be cured completely by medications and treatment; indeed it causes life-threatening side effects. Therefore, controlling the progression of the disorder at an early stage can be an effective solution. In this research, we have developed a fog-assisted intelligent system for early detection of Parkinson disorder using FKNN-CBR classifier. The combinatorial advantage of Fuzzy k-nearest neighbor and case-based reasoning classifier helps to classify the Parkinson patients from healthy individuals using voice samples. We found that elderly people with minimum functional disability are likely to be classified as Parkinson by motor features. But 90% of the Parkinson patients are suffering from voice disorders. So we utilized voice samples for classification and detection of Parkinson. The performance of our proposed FKNN-CBR classifier is validated on the Parkinson dataset from the UCI repository. The experimental evaluation depicts the improved performance of FKNN-CBR with better classification accuracy and reduced misclassification rate. In future, the more influential vocal features will be used to reduce the dimensionality without compromising the classification accuracy. The study will be extended to the development of an efficient decision support system for medication and treatment recommendations. Also, we plan to utilize the expert’s knowledge to construct the rule base for the significant generation of improved suggestions for the management of Parkinson’s patients.