A modified Genetic Algorithm for continuous estimation of CPR quality parameters from wrist-worn inertial sensor data

10/11/2019 ∙ by Christian Lins, et al. ∙ 0

Cardiopulmonary resuscitation (CPR) is the most important emergency intervention for sudden cardiac arrest. In this paper, a robust sinusoidal model fitting method based on a modified Genetic Algorithm for CPR quality parameters - naming chest compression frequency and depth - as measured by an inertial sensor placed at the wrist is presented. Once included into a smartphone or smartwatch app, the proposed algorithm will enable bystanders to improve CPR (as part of a continuous closed-loop support-system). By evaluating the precision of the model with both, simulated data and data recorded by a Laerdal Resusci Anne mannequin as reference standard, a variance for compression frequency of +-3.7 cpm has been found for the sensor placed at the wrist. Thereby, this previously unconsidered position and consequently the use of smartwatches was shown to be a suitable alternative to the typical placement of phones in the hand for CPR training.



There are no comments yet.


page 11

This week in AI

Get the week's most popular data science and artificial intelligence research sent straight to your inbox every Saturday.

1 Introduction

Sudden cardiac arrest (SCA) is one of the most prominent diseases (350,000-700,000 individuals a year in Europe are affected Berdowski2010 ; Grasner2011 ; Grasner2013 ). SCA can significantly affect the independent living of the victims if medical treatment is not available within a few minutes Perkins2015 ; DeMaio2003 . In case of a cardiac arrest, the transport of oxygen and glucose to the cells of the human body stops immediately due to the disrupted heart function. This results in irreparable cell damage if the blood circulation is not re-established quickly e.g. via cardiopulmonary resuscitation (CPR). In case of prolonged paused blood circulation, the cells of the nervous system including the brain decrease functionality after 10 seconds (i.e., loss of consciousness) Schmidt2011 . The death of the cells begins after about 3 minutes Schmidt2011 .

Medical personnel such as paramedics are trained in Advanced Life Support (ALS) Soar2015 methodology that includes CPR. Unfortunately, paramedics are usually not immediately available if a cardiac arrest occurs in the field. The typical median reaction time of paramedics is about 5-8 minutes Perkins2015 and with every minute the chances of survival of the victims without CPR decrease. Thus, victims rely on the initial CPR support of bystanders within the first so-called golden minutes after cardiac arrest to prevent long-term adverse effects. Since these bystanders can offer essential initial resuscitation support, corresponding technical solutions to support them with online feedback regarding the quality of CPR are beneficial.

Figure 1: Basic Life Support Algorithm. AED is automated external defibrillator.

For the following discussion, the optimal Basic Life Support (BLS) Perkins2015 procedure (the methodology aiming for non-specialists) is worthwhile to be briefly recapitulated (see Figure 1): In case of a cardiac arrest, it is essential to ensure sufficient oxygenation of the nerve cells via correctly conducted cardiac massages (chest compressions) as the most critical countermeasure. During this cardiac massage, the heart is compressed by orthogonal pressure onto the breastbone. In order to sustain a minimal blood circulation to carry oxygen to the nerve cells, a chest compression frequency (CCF) of the cardiac massage should range within 100-120 compressions per minute (cpm), and a chest compression depth (CCD) of 5-6 cm is required. Ideally (but not necessarily) the procedure is combined with rescue breathing, to improve the chance of survival and reduce neurological deficits Perkins2015 .

While typical bystanders can develop a sufficient feeling of semi-ideal compression depth, the constant application of the correct compression frequency and depth is challenging, especially for extended periods of cardiac massage with the associated muscle-fatigue and mental pressure. Thus, instant feedback regarding the correct execution (regarding CCD and CCF) during cardiac arrest will be beneficial for untrained bystanders. Such feedback could be derived from monitoring the quality of the cardiac massage online from the vertical acceleration as measured by inertial measurement units (IMUs) and giving continuous feedback (and adjustment hints) regarding CCD and CCF. Corresponding smartphone applications have been shown to be well suited for this purpose due to their high availability Kalz2014 ; Ahn2016 . Their general benefit regarding CCF/CCD has been confirmed by Renshaw et al. for the BHF PocketCPR who recognized an improved performance (from 66 to 91 cpm) and increased confidence of bystanders Renshaw2017 . However, for such CPR training apps, a highly accurate CPR information (regarding CCF and CCD) is an essential requirement Ahn2016 which is achieved partially by the existing implementations (as summarized in Table 1).

Position Algorithm / System CCF Error [cpm] CCD Error [mm] Reference System Year
On chest Spectral techniques on short acceleration intervals 1.5 2 photoelectric distance sensor 2014 Gonzalez-Otero2014
On chest Butterworth HP filter, 2x integration, manual reset - 1.6 (within 95%) mannequin potentiometer 2002 Aase2002
On chest Weighted smoothing, double 2x (transient component emphasizing + integration), peak detection (U-CPR) - 1.43 mean (SD 1.04) mannequin potentiometer 2015 Song2015
On chest PocketCPR, method unknown - 1.01 mean (SD 0.74) mannequin potentiometer 2015 Song2015
On chest Spectral analysis of acceleration 0.9 median 1.3 median displacement sensor 2016 DeGauna2016
Wrist SamCPR, method unknown - - - 2015 samcpr
Wrist Smart-watch life saver App - - - 2015 Gruenerbl2015
Table 1: Accuracies of existing on-body chest-compression algorithms.

Most of these approaches use Fast Fourier Transformation (FFT) to determine the regular frequencies from the inertial data and identifying the main frequencies from the frequency spectrum via peak detection. While being straightforward, this approach is susceptible for erroneous peak selection and a resulting frequency shift of the CCFs by orders of magnitudes. Also, the double-integration of the acceleration signal –- a common processing step for the determination of the displacement-vector as a preprocessing step for the CCD – is challenging due to the signal drift if the accelerometer is not perfectly aligned with the gravity axis

ladetto2000foot . Consequently, the typical integration process is inherently unstable and leads to relevant errors unless boundary conditions are applied for each compression cycle (e.g. in very short windows) DeGauna2016 .

Figure 2: Basic approach of a sinusoid model for CPR quality parameter estimation.

In contrast, the use of a robust sinusoidal model, i.e., sine curve, might cover such phenomena and its subsequent effects on the derived CPR parameters more robustly (see Figure 2), due to its implicit periodic accordance with the CPR. A concept that has successfully proven itself for depth-image based motion capture of CPR movements Lins2018 ; Lins2019 , but still needs to be confirmed for use with acceleration data recorded directly via IMUs at rescuers.

Furthermore, the discussed algorithms have been mainly evaluated for the use of IMUs in a grasp-in-hand use (i.e., the sensor or smartphone is held between the back of the lower hand and the palm of the upper hand during the procedure). A position that has been reported to be a rather uncomfortable and disturbing positioning for bystanders Park2016 , which as well might mislead them into learning incorrect postures Park2017 . To overcome this drawback, Park et al. Park2016 proposed the fixation of smartphones via an armband on the dorsum manus or at the arm and had shown an increased convenience in comparison to the common grasp-in-hand approach. However, they reported a reduced sensitivity, which they explained with the amplified inertial forces resulting from the additional device’s swing. Similarly Ruiz de Gauna et al. Gauna2015 compared sensor placement at the dorsum manus with one fixed to the forearm 7 cm above the wrist and confirmed a significantly increased error for the forearm placement.

Consequently, while IMUs have generally proven to be a precise and practical approach to measuring chest compression depth and frequency during CPR, user-friendliness via smartphones is a challenging task as it affects the quality of CPR for bystanders. In contrast, smartwatches hold benefits over the use of smartphones regarding usability and could be expected to achieve higher reliability towards arm-movements because they are potentially less affected by hand movements. Furthermore, they overcome challenging aspects of reduced tactile pressure sensation at the hands. However, the use of IMUs on alternative placements was repetitively found challenging for sufficient accuracy, and the suitability of smartwatches for CPR training and online-support regarding the sensitivity of CCD and CCF detection has yet to be investigated.

Our approach is the combination of wrist-worn IMUs with a sinusoidal model. Thereby, evolutionary methods are used which have already proven to be suitable for a similar approach: Lins et al. Lins2019 use a Differential Evolution (DE) algorithm to fit optical motion capture data to a sinusoidal model. Herein, the DE is used repeatedly for window-based curve-fitting of the model. The article at hand builds up onto this work and proposes a Genetic Algorithm (GA) for the continuous model-fitting (i.e., without complete reinitialization of the population) with IMU data. Consequently, in this study we aim to investigate the following two research questions:

  1. How suitable are wrist-worn inertial sensors (e.g. smartwatches) for the online detection of the chest compression during CPR regarding the accuracy of resulting CCF and CCD parameters in comparison to both the Resusci Anne training mannequin and the typical hand-holding as gold standard?

  2. How suitable is the modified Genetic Algorithm for fitting a sinusoidal model of the chest compression during CPR regarding the accuracy of resulting CCF and CCD parameters for the considered sensor placements in comparison to the Resusci Anne training mannequin as reference system?

Thereby, in Section 2 our system approach for inertial data, the study design, and applied evaluation methodology are introduced. In Section 3 the results of the study are presented and discussed. The article is concluded in Section 4.

2 Materials and Methods

2.1 System Approach

Figure 3: System concept overview of the proposed method.

In the proposed system, the curve of a chest compressions during CPR are (Figure 3) analyzed from data of a wrist-worn (and hand held as reference) three dimensional inertial sensor containing accelerometer, gyroscope, and magnetometer (9DOF). The accelerometer signal contains earth gravity as a constant component, which is distributed among all three accelerometer, depending on the sensor orientation. For fitting the model function, only the acceleration caused by the orthogonal pressure on the patient’s chest is actually relevant. Unfortunately, the orientation of the sensor, when placed on the wrist, is never perfectly orthogonal to the chest, i.e., the earth’s gravity is distributed over all three axis in different parts. A simple approach to handle this is to consider only the total acceleration, i.e. as the Euclidean distance over all axes and subtract the constant gravity from the total acceleration, which is one-dimensional (see Equation 1).


This approach holds the disadvantage that the more the compression direction of the bystander deviates from the orthogonality, the pressure movement is no longer completely converted into compression of the thorax. Thus, the model assumption becomes inaccurate.

Axis Accelerometer Gyroscope Magnetometer
Table 2:

This table shows the noise characteristics of our sensor. The noise is normal distributed in all axis on all sensors. Due to gravitation the mean in the z-axis of the accelerometer is quite small. The mean and the deviation is largest in the magnetometer data, since magnetometers are prone to noise.

A more suitable approach is achieved by considering also gyroscope and magnetometer data to determine the orientation of the sensor in world coordinates. Thereby, the acceleration component in gravitational direction can be determined even if the bystander reanimates very tilted and not orthogonally. Here, the extended Kalman Filter (eKF) is used to determine the orientation

McGee1962 . For using a standard Kalman Filter (KF) two assumptions must hold Kalman1960

: (1) the noise of the sensor must be normal distributed and (2) the input must be linear. The used sensor shows a Gaussian distributed noise with a small offset, as identified in experiments, where the sensor was rigidly attached to a flat surface without any movement. The noise characteristics are summarized in Table

2. In order to estimate the orientation of the IMU, angles and rotational data has to be considered. Due to those angles the input to the KF is not linear anymore or – in other words – the relationship between measurement and the process is non-linear. Hence, an ordinary KF is inapplicable in the given condition, because the KF is dependend on Gaussians and if a non-linear function is fed to the Gaussian function the result is not Gaussian anymore. Here, the eKF has to be used. Unlike the ordinary KF the extended version is applicable to non-linear system. The non-linear function is approximated by a first order Taylor Series. The first order term is included to have the same slope in the approximation as in the function. In mathematical terms where is the linear approximation function and the point where it is approximated. Using this linearization we can apply a common linear KF. So, the equations of the eKF and KF are looking very similar except for the Jacobian’s for the partial derivatives. The basic equations were adapted from Kalman1960 and McGee1962 . The equations for the estimated state and the measurement are:




In contrast to the ordinary KF it is sufficient to assume for predicting the state and for predicting the measurement are differentiable so that Taylor Series can be used. Considering the linearization and the corresponding Jacobian’s the predict equations are as follows:


where denotes the estimate of at time with previous observation time . The predicted covariance estimate is:


and the update equations are defined as follows:

measurement error
residual covariance
Kalman gain
updated state estimation
updated covariance estimation

The model fitting algorithm does abstract from the considered type of acceleration (either absolute acceleration or the acceleration determined via an eKF in gravitational direction), since both return a one-dimensional acceleration vector. These one-dimensional time-series data are window-based (window length ) fitted to a sinusoidal functional model. A modified Genetic Algorithm is used for this purpose. The fitting generates adapted models per seconds, from which the CPR parameters frequency (CCF) and compression depth (CCD) can be derived (recap Figure 3).

2.2 From accelerometer data to model

The approach is to fit the time series of the accelerometer readings to a sinusoidal function. This is possible because of the periodic nature of CPR (see Figure 4). The sought CPR quality parameters can then be read directly from the parameters of the sinusoidal function. The generic parameterized sine function can be written as follows:

Figure 4: Fitting of the sinusoid model to the accelerometer data.

Parameter A and are of primary interest here: is the amplitude, the angular frequency ( is the vertical displacement, the phase shift). Assuming that the arms of a person performing CPR are orthogonal (and rigid) on the patient’s chest, the relative movements of the rescuer’s arms are equal to the chest compression depth. It is also assumed that the chest is completely relieved after each compression (full chest recoil as recommended by BLS guidelines). Additionally, the frequency of low to high to low compression depth represents one compression cycle. Since it is not applicable to fit the accelerometer data (total acceleration or eKF-filtered vertical acceleration) directly to the sine curve (see Equation 1) and derive the displacement of the arm from it, the accelerometer must be integrated twice to determine the vertical displacement ( acceleration velocity displacement). However, the double integration of the acceleration values induces errors since the accelerometer can not be assumed to be perfectly calibrated, so this is rarely a practicable way. To avoid this integration errors, we use the second derivative of the sine function as a model function. Thus, the analytical solution of the double integration is already known (, see Equation 6):


On a fitted function, parameter is the CPR frequency, is the compression depth. To fit the function , we minimize the root mean squared error (RMSE). Thus, we formulate the minimization problem as follows:


In the equation, is the vector of accelerometer measurements (total acceleration or vertical acceleration), is length of the vector , i.e., its number of elements. is derived from the window length (e.g., with 100 Hz ), which has been optimized in Lins2019 .

2.3 Evolutionary fitting of the model function

In order to fit the sinusoidal models an Evolutionary Algorithm is applied. EA search and evaluate a parameter space in parallel and find multiple near-optimal but distinct solutions for a problem. In order to solve the three variables

of a sinusoidal curve (Equation 8), herein a modified Genetic Algorithm (see Algorithm 1) is applied. As most evolutionary algorithms, the algorithm is population-based and optimizes the population throughout several generations (in the style of a simplified ()-Evolutionary-Strategy Simon2013 ):


is a 3-dimensional vector of individual for generation . In every generation individuals are generated (and optimized) up to generations. Every individual represents a possible solution to the minimization problem (see Equation 9). The optimization is done between a transition from one generation to the next generation . Within each transition from one generation to the next, the GA comprise the steps mutation, crossover, and selection, which are discussed in the next sections.

Algorithm 1 is continuously applied on long data windows.

Data: Timeseries of accelerometer data with 100 Hz sampling rate
Result: A, ,
1 if first start then
2      initialize population on first run;
4      re-initialize fraction of the population;
5 end if
6Evaluate all individuals;
7 while  convergence  do
8       Create random individual ;
9       Mutate to ;
10       Create offspring to ;
11       Evaluate all individuals;
12       Remove worst individuals from population;
14 end while
return A, , of
Algorithm 1 Modified Genetic Algorithm

In the following subsections the initialization of the population and then the steps mutation, crossover, and selection are explained.

2.3.1 Initialization of the Parameter Space

At the first start, the population is initialized with a uniform random distribution over the entire parameter space (exploration). In the process of optimization, individual solutions will move closer and closer to the optimum, the variance within the population will decrease (exploitation). Initially every individual of the population is initialized taking random variables from a uniform distribution to foster the exploitation of the parameter space. For the specific task of fitting a sinusoidal function, the interval can be restricted to the bounds of the problem. Table

3 summarizes the parameter space over all dimensions for the given task of fitting the CPR sinusoidal model.

Individual Function Parameter Interval CCF/CCD
CCD is in cm
CCF is in cpm
only used for model fitting
Table 3: Parameter limits for every dimension used for initialization.

2.3.2 Mutation

Mutation is an essential part of evolutionary optimization. In the given applied approach, mutation occurs in two ways. Initially, in each generation the currently best individual is mutated minimally and forms the second child of the current generation. The first child is simply a newly generated random individual. The following offspring are created as follows (with constant ):


2.3.3 Crossover

The crossover step is used to transfer information, i.e., possible solutions, from the current generation to the next generation and to recombine it. In the approach chosen here, 3 offspring per generation are generated from 2 randomly selected parent individuals.


This crossover method corresponds to the blended crossover (or BLX-

or heuristic crossover) with

houckgenetic ; herrera1998tackling .

2.3.4 Selection

The selection step determines which individuals are passed to the next generation by evaluating them against the cost function. Herein, the RMSE are summed up for every solution candidate as cost function:


with being a -length vector of samples (accelerometer data) and the parameterized sinusoidal function of individual . After the steps mutation and crossover individuals exist. The population is therefore reduced to the fittest individuals after the evaluation of the population. Once the GA optimization is finalized, i.e. when was reached, the individual with the lowest RMSE represent the parameter of the sinusoid model (). From these parameters, the CCF and CCD can be obtained with cpm and cm.

2.4 Archiving the population

In the approach described here, the GA is initially only executed for a small window of 3 seconds () of IMU data. Once a subsequent data-window is available (next 3s with 2s overlap ), the algorithm is executed for a new fitting run. In a previous approach Lins2019 , evolutionary optimization was performed with a completely new population. Possible solutions that are very similar to the current solutions must always be found and optimized anew. In contrast, herein a part of the population is retained and only one fraction is completely reinitialized. On the one hand, a large diversity of the initialized population can be ensured and on the other hand, good solutions from the past are retained in the hope that they will also fit the current data window with a few adjustments. Fraction

is being optimized in the hyperparameter optimization step.

2.5 Experimental setup

Initially, the favorable hyperparameters of the GA () are determined based on simulated data of sinuoidal curves. With these specific hyperparameters, the Genetic Algorithm is then evaluated within a study with human participants.

2.5.1 Evaluation with simulated data

For the simulation-based optimization, periodic acceleration data for ten random frequencies were generated within [1, 3] Hz (60-180 cpm). For each frequency, a three-second sample was generated using the model function (see Equation 8) and normal-distributed Gaussian noise was applied. The amplitude of the function was randomly selected from [0.01, 0.05] m. This one test round with ten random frequencies was considered as one individual for a meta evolution using the Differential Evolution (DE) algorithm (Python/scipy implementation).

A cost function was chosen that considers the number of individuals and the maximum number of generations (less is better):


with being the number of model predictions and and the random frequency and depth values. The DE algorithm was optimized with a population size of 100 and 100 iterations.

2.5.2 Evaluation with human participants

The Laerdal Resusci Anne Simulator mannequin was used as a reference system and was placed on the floor (see Figure 3). Within the Resusci Anne simulator, sensors measure the depth of thorax compression and decompression, the frequency of the compressions, and the volume of ventilation.

Figure 5: Resusci Anne training mannequin.

In addition, two IMU sensors have been applied (see Figure 6), one was placed at the left wrist of the participant with a bracelet, and the other one was placed between the hands of the participant (between the back of the hand of the first hand and the palm of the second hand). The participants were asked to wear the sensor on the left wristband, otherwise no specific arm or upper body posture was explicitly required. The sensors, as well as the Resusci Anne, were collecting data which was synchronized manually after the recording via visual inspection of the accelerometer signal.

Figure 6: IMU sensor used in the study unpacked (left) and with bracelet (right).

The 9DOF-IMU sensor contains a Bosch BMA180 triaxial accelerometer with sensitivity ranges from 1G up to 16G. A sampling rate of 100 Hz was selected, which is considered a typical sampling rate on smartwatches.

The participants were asked to place themselves on any side of the training mannequin and to perform the CPR on the training mannequin at a self chosen pace. During the resuscitation session, the training mannequin recorded the compression movements with its internal sensors. The recording continued for two minutes.

2.6 Evaluation processing steps

The genetic algorithm was implemented in Python/3.6. For every compression cycle recognized by the reference system, a 3-second window () of the sensor data is used to fit the sinus model every second () as recommended by Lins et al. Lins2019 . Here, it is , so the used datasets are interleaved (see Figure 7).

Figure 7: How model predictions and reference values are compared.

Also, one Resusci Anne event (a complete compression/decompression cycle) may be smaller, equal, or larger than so that we must combine one or more model predictions before comparing it with (Equation 18). Thereby, the weighted mean of subsequent model predictions within each interval is calculated with the overlap ratio representing the weight:


For each compression event , a corresponding prediction is determined according to Equation 18. The error is then the absolute difference between prediction CCF/CCD and reference CCF/CCD. All errors are then combined using the median.

3 Results

3.1 Simulation Data Results

The meta-optimization of the hyper parameters using the DE algorithm produced the near optimal values shown in Table 4. Since the results of heuristic algorithms are subject to random fluctuations, the meta-optimization was performed 100 times in total and the deviations were noted. Table 4 gives mean and median deviations of the optimizations.

Parameter min_conv
Mean [Min-Max] 404 [39-956] 8 [5-24] 0.5 [0.0-1.0] 0.05 [0.0-0.1]
Median [SD] 334 [242] 7 [3] 0.5 [0.28] 0.5 [0.03]
Table 4: Results of the hyperparameter optimization, Monte-Carlo-Simulations

Based on the results of Monte Carlo simulations, we select , , , as suitable hyperparameters for the further evaluation with human participants.

3.2 Human Data Results

We performed the study with 15 participants, aged 21-48 (median 33), 11 male, 4 female. The participants were recruited within students and staff of the University of Oldenburg. The study received an ethics approval no. “Drs.EK/2018/31” of the ethics committee of the University of Oldenburg.

Table 5

contains number of compressions performed, median and inter-quartile range (IQR) values for both CCF (in cpm) and CCD (in m) for each participant.

Participant Compr. CCF Median (min, max) CCF IQR CCD Median (min, max) CCD IQR
1 175 113 (109-120) 3 4.9 (4.3-5.8) 0.3
2 189 117 (110-126) 2 5.7 (4.8-6.5) 0.4
3 190 118 (66-135) 6 5.2 (1.4-6.3) 0.5
4 194 111 (104-120) 3 4.4 (3.3-5.3) 0.5
5 220 125 (110-134) 5 4.4 (2.9-5.4) 0.8
6 221 126 (110-134) 3 4.6 (3.1-5.6) 0.7
7 174 105 (90-121) 12 4.7 (3.6-5.5) 0.4
8 196 120 (109-132) 7.25 6.1 (4.4-6.5) 0.425
9 151 97 (90-110) 3.5 4.5 (1.5-6.5) 0.7
10 232 125 (105-134) 8 4.8 (3.1-5.8) 0.6
11 203 107 (101-123) 5 5.7 (2.5-6.2) 0.5
12 197 107 (73-116) 12 5.8 (4.3-6.4) 0.5
13 159 104 (77-110) 2 5.6 (1.0-6.2) 0.6
14 193 117 (97-130) 10 4.4 (2.5-5.2) 0.5
15 156 104 (79-116) 3 5.9 (1.0-6.4) 0.3
Table 5: Overview of the observed Resusci Anne reference CCF and CCD values for each participant.

3.3 Model Prediction Results

We obtained sensor data from two different locations (between hands and on the wrist), used this data to fit sinusoidal models and compared the predictions of these models to the internal sensor of the Resusci Anne reference system. For both sensor locations (hand and wrist) the total acceleration (see Equation 1) and the eKF-filtered vertical acceleration was used as input.

Participant Hand (eKF) Hand (total Acc.) Wrist (eKF) Wrist (total Acc.)
1 5.3 cpm 2.2 cpm 51.0 cpm 4.4 cpm
2 2.9 cpm 2.6 cpm 3.3 cpm 2.7 cpm
3 2.7 cpm 4.5 cpm 5.0 cpm 4.8 cpm
4 3.1 cpm 2.1 cpm 4.0 cpm 2.0 cpm
5 4.1 cpm 9.9 cpm 42.6 cpm 6.2 cpm
6 2.4 cpm 6.3 cpm 3.5 cpm 13.6 cpm
7 4.0 cpm 2.4 cpm 6.3 cpm 2.7 cpm
8 4.2 cpm 5.7 cpm 5.6 cpm 6.9 cpm
9 4.8 cpm 2.0 cpm 18.3 cpm 1.8 cpm
10 2.7 cpm 5.7 cpm 3.5 cpm 3.0 cpm
11 2.4 cpm 1.7 cpm 4.5 cpm 8.0 cpm
12 7.9 cpm 4.9 cpm 10.7 cpm 4.4 cpm
13 2.0 cpm 1.6 cpm 5.6 cpm 2.0 cpm
14 5.1 cpm 3.3 cpm 57.3 cpm 2.3 cpm
15 2.7 cpm 2.3 cpm 12.8 cpm 2.3 cpm
Median 3.1 cpm 3.5 cpm 6.3 cpm 3.7 cpm
Table 6: Median prediction error (CCF) for all participants with system parameters and .

Table 6 shows the differences between model and Resusci Anne reference for CCF predictions.

Participant Hand (eKF) Hand (total Acc.) Wrist (eKF) Wrist (total Acc.)
1 1.04 cm 1.61 cm 1.99 cm 1.46 cm
2 1.08 cm 1.80 cm 2.01 cm 1.72 cm
3 1.17 cm 1.10 cm 1.94 cm 1.10 cm
4 0.56 cm 1.49 cm 1.32 cm 0.37 cm
5 1.13 cm 1.02 cm 1.47 cm 1.29 cm
6 1.17 cm 1.15 cm 1.45 cm 0.99 cm
7 0.57 cm 0.69 cm 1.41 cm 0.96 cm
8 1.28 cm 1.40 cm 2.37 cm 1.78 cm
9 1.21 cm 0.75 cm 0.63 cm 0.95 cm
10 1.26 cm 1.01 cm 1.58 cm 1.16 cm
11 0.84 cm 2.11 cm 1.97 cm 1.65 cm
12 1.03 cm 2.05 cm 2.10 cm 1.25 cm
13 0.49 cm 1.26 cm 1.92 cm 1.15 cm
14 0.96 cm 1.09 cm 1.43 cm 0.82 cm
15 1.01 cm 1.25 cm 2.48 cm 0.74 cm
Median 1.00 cm 1.27 cm 1.70 cm 1.10 cm
Table 7: Median prediction error (CCD) for all participants with system parameters and .

Table 7 shows the differences between model and Resusci Anne reference for CCF predictions.

Figure 8: Differences against mean CCF measurements
Figure 9: Differences against mean CCD measurements

4 Discussion

In this study, the following two research questions have been investigated:

  1. How suitable are smartwatch-like inertial sensors for the online detection of the chest compression during CPR regarding the accuracy of resulting CCF and CCD parameters in comparison to the measurements of the Resusci Anne and the typical hand-holding as reference systems?

  2. How applicable is the Genetic Algorithm for curve-fitting of the chest compression during CPR regarding the accuracy of resulting CCF and CCD parameters for the considered two sensor placements in comparison to the Resusci Anne as reference system?

Regarding the suitability of a smartwatch-like wrist-worn IMU sensor to derive CPR parameters (the first research question), the following promising findings have been made. The wrist sensor was with an error of 3.7 (total acceleration) cpm lightly less accurate regarding CCF compared to an error of 3.1 cpm (eKF-filtered) for the common grasp-in-hand use. Both errors remain in the same order of magnitude – confirming the general robustness of the GA. Consequently, we could confirm the high suitability of the smartwatch-related wrist positioning for CCF calculation. The error for the CCD prediction for the wrist sensor is with 1.1 cm in the same range as the one of the common grasp-in-hand use (1.1 cm). Nevertheless, even with the relatively high error of the wrist sensor, a fundamental qualitative statement can be made about the compression depth, since relevant deviations from the optimal compression depth of 5-6 cm (e.g., too low compression depths of 3 cm) might be still detectable. However, it should be noted that the CCD prediction errors are still too high for quantitative statements.

With regard to the second research question, the results show that the use of the GA is a suitable alternative. With an error of 3.7 cpm in the prediction of the CCF, it is slightly higher than the range given in the literature. Even though Ruiz de Gauna et al. DeGauna2016 reported a lower median error of 0.9 cpm, differences among both studies can be as well be effected by variations among reference system (photoelectric sensor) and IMU sensor (ADXL330, Analog Devices, USA) and thereby might not be related only to the algorithmic specifics. In any case, the error of 3.7 cpm is far below the critical target range of 100-120 cpm and thereby does not affect the practical applicability of the algorithm.

In comparison to the related approaches, the achieved CCF accuracies are in within the magnitude of the other approaches and well within the requirements of cpm of the ERC guidelines Perkins2015

. In contrast, the CCD results are inconclusive: While the results of some participants are promising, there is much variance in the results (see Figure 6 for a comparison of best-case and worst-case). The use of eKF filtering to determine wrist tilt during application did not significantly improve fitting results. For the hand position slightly better results were achieved (CCD 1.00 cm vs 1.27 cm), for the wrist the error doubled partially (CCF 6.3 cpm vs 3.7 cpm). However, it might be possible to reduce the error further by applying noise and outlier filters. Consequently, we could confirm that with wrist-worn devices sufficiently accurate predicting the CCF. The CCD can only be predicted with limitations discussed below. Smartwatches are a well suited unobtrusive and high available alternative platform for giving CPR feedback for bystanders in emergency situations.

4.1 Limitations

It is worth discussing the limitations of the presented approach.

Study Design

The 15 participants in the study were not beforehand trained in CPR or instructed to train with a particular CCF or CCD. During their training, participants were corrected by an expert if the CCD and CCF deviated too much from the guidelines. However, interruptions were intentionally reduced to a minimum so as not to interrupt the training session.

Online capabilities

The approach presented here of modeling the CPR on a sinusoidal model was developed with the application in an online system, but it was not tested for explicit suitability in an online system. Due to its iterative nature, the sinus model fitting can probably be used well on (mobile) embedded devices, whereas the population-based optimization of the GA is well suited for parallelization on multi/many-core systems, which will be more common on mobile devices in the future. Nevertheless, further investigations are necessary here in order to be able to make solid statements.

5 Conclusion

We presented an approach to use sensor data from a wrist-worn IMU and a modified Genetic Algorithm (GA) to dynamically fit a sinusoidal model that can predict frequency and depth parameters for cardiopulmonary resuscitation training or in realistic environments. We optimized the hyperparameters of the GA, evaluated the approach with 15 participants, and tested the IMU placement at the wrist and hand for its suitability to derive the parameters. The feasibility of the sinusoidal model created from accelerometer data using GA was confirmed. The chest compression frequency (CCF) could be predicted with a median error of 3.7 cpm and the compression depth (CCD) with a median error of 1.1 cm. Although the CCD leaves room for further improvement, both CCF and CCD can be predicted with sufficient sensitivity for online feedback applications. Thus, our work represents an initial step towards complete and precise modeling of the CPR using mobile sensors. While focusing on the algorithmic aspects of the detection of the CPR parameters, the general feasibility of smartwatches for CPR feedback (e.g. via a full-featured smartwatch application) has further to be investigated. However, we assume that it is possible to implement the GA in a smartwatch app. The GA can be dynamically adapted to the performance of the hardware with variable generations and individuals and thus delivers a result even in an overload situation of the hardware, albeit not with the highest precision. The corresponding development of an app and subsequent usability studies is intended.


This work was supported by the funding initiative Niedersächsisches Vorab of the Volkswagen Foundation and the Ministry of Science and Culture of Lower Saxony as a part of the Interdisciplinary Research Centre on Critical Systems Engineering for Socio-Technical Systems II.