Design of a Smart Sole with Advanced Fall Detection Algorithm

Fall has become the second leading cause of unintentional injury, death, after road traffic injuries, for the elderly in Europe. This proportion will increase in the next decades and become more than ever a real public health issue. France was selected by the World Health Organization to be the first country to implement a program that reduces the coverage of the dependence. Commercial automatic fall detection devices can help seniors get back on their feet faster by reducing the time of emergency procedure. Many seniors do not take advantage of this potentially life-saving technology mainly because of intrusiveness constraints. After having reminded the context and the challenges of fall detection systems, this paper presents an original device which is unobtrusive, comfortable and very effective. The hardware architecture embedded into the sole and a new fall detection algorithm based on acceleration and time thresholds are presented. The algorithm introduces a new concept of differential acceleration to eliminate some drawbacks of current systems. Tests were carried out under real life conditions by 6 young participants for different ADLs. The data were analyzed blindly. We compared the detected falls and found a 100% sensibility and more than 93% sensitivity for all participants and scenarios.


Journal of Sensor Technology
To bypass the problem, many researchers propose the use of mobile phone and its embedded sensors like accelerometers [16] as it would not force the user to carry an additional device and are nowadays provided with enough computing power to support the use of advanced signal analysis methods. Many kinds of system based on smartphone have recently been developed as presented in [7] [17] [18]. Those systems show excellent performance in terms of accuracy. Nevertheless, the user is sometimes forced to wear the phone according to a predefined orientation, or to place it in pockets of its trousers that can produce spurious movements [10]. Moreover, not all users wish to wear a device of the size of a smartphone, but being free to put their smartphones wherever they want [7].
Nowadays, researchers are trying to investigate new methods for wearable fall detection sensors, to overcome challenges of robust fall detection in the real world especially because some studies showed a glaring difference between laboratory results and results of testing commercial system in real world settings [19].
Ambient devices are non-wearable systems using embedded sensors in the user's environment [20]. These systems eliminate compliance issues because they are always on, so the user doesn't need to remember putting them on or charging. Different sensors have been used for fall detection such as Doppler radar [21], passive infrared sensors [22], sound sensors [23], Wi-Fi routers [24] and pressure sensors [25]. Most of the time, these devices use pressure sensors; it is very cost effective and less intrusive. However, it has a big disadvantage of sensing pressure of everything in and around the object and generating too many false alarms.
Camera based fall detection systems use normal cameras [26] or depth camera like "Microsoft Kinect" [27], and mix systems like depth camera with acoustic sensing [28], or depth camera with wearable accelerometer [29]. Many of these research report very good results and they are commonly deployed through elderly's houses or in public place. However, excessive costs, time required for installation and a lack of robustness represent limitations. Moreover, detection is strictly limited to the location equipped with cameras. The privacy of the user and his entourage is also greatly affected.
For all kinds of fall detection systems, two different approaches for fall detection have been proposed in the literature: rule-based methods that detect falls with domain knowledge like threshold-based algorithms as developed in [30], and machine learning that recognizes fall characteristics from sensor data as developed in [31].
To sum up, all wearable systems are characterized by good sensitivity and specificity values, the majority of them confirm the importance of posture information in fall detection systems. Nevertheless, they force the user to attach the device to his body in a rather unnatural way, so the user is forced to wear the device according to a predefined orientation (placing an additional burden on the DOI: 10.4236/jst.2019.94007 74 Journal of Sensor Technology user). To overcome this relevant problem, we have decided to place our system in a sole so the user is not forced to orient the device and to develop a thresholds algorithm. However the major drawback of these approaches is the lack of adaptability and flexibility of thresholds.
So the work presented in this paper proposes a new approach for improving detection fall accuracy. This approach is based on the idea of effectively identifying the specific patterns of fall signal into regular data acceleration. The idea was to integrate a small electronic device in an insole. The embedded algorithm is based on a differential acceleration and posture calculation from an accelerometer to reduce false alarms. This low power device uses an accelerometer and a Bluetooth Low Energy technology for communication and appears to be very comfortable, unobtrusive and without maintenance requirements.
The structure of the paper is as follows: in Section 2 we present some related works based on the same sensor technology. In Section 3 and 4 the material, architecture and the proposed algorithm for fall detection are presented. In Section 5 the test procedure and the results obtained are described. Finally in the last section a conclusion and the prospects are presented.

Related Works
The most common and simple methodology for fall detection is using a tri-axial accelerometer or/and gyroscope with threshold algorithms [30]. Such algorithms simply raise the alarm when the threshold value of acceleration is reached. Researchers using accelerometers give a lot of attention to the optimal sensor placement on the body because location affects the detection capabilities of the system [32]. A head-worn accelerometer provides excellent impact detection sensitivity, but its limitations are usability and user acceptance. A better option is a waist-worn accelerometer [32]. Nevertheless, El-Bendary et al. [11] insists that the use of wearable sensors might impact on the acceptance from users, especially when the position of the sensor or its visibility are perceived as a stigma associated with the primary function of fall detection [33]. As a consequence, footwear appears like an optimal backup solution.
While the initial necessity was purely to protect the feet, footwear acts as the interface between the ground and the wearer's foot. A lot of information can be gleaned from observing this interaction. In recent times, development of low power, wireless, unobtrusive and socially acceptable wearable computing systems, embedded in shoe or insole, has become an increasingly important research topic and industrial concern, aided by the exponential growth in the electronics industry [34]. Wiisel [44] has launched an intelligent insole to assess fall risk in elderly populations. Their system monitors continuously the gait. The data from the movement of the foot is sent to a mobile device where caregivers can follow the evolution of a patient's gait. So the sole detects changes in gait and balance in everyday life.
Sim et al. [45] have used acceleration sensors on the shoes with a Bluetooth module to transmit data in real time. They have proposed a prototype system which can run more than 5 hours. Their results show that the shoe-based fall detection system has relatively high sensitivity but the algorithm they have used was not very effective.
Majumder et al. [46] have implemented a real-time Smartshoe and smartphone-based fall risk prediction and prevention system. The smartphone contains four pressure sensors with a Wi-Fi communication module to unobtrusively collect data in any environment. By assimilating the Smartshoe and Smartphone sensors data, they performed an extensive set of experiments to evaluate normal and abnormal walking patterns. The smartphone generates an alert message to warn the user about the high-risk gait patterns and potentially save them from an imminent fall. The system was not very effective, they have suggested to further improve it for greater satisfaction.
Montanini et al. [47] propose a pair of instrumented insoles each one being equipped with 3 pressure sensors FSRs and a tri-axial accelerometer. They have tested several sampling rates (100 Hz, 50 Hz, 25 Hz). Obtained results show that chosen 100 Hz sampling rate produces better results. However their system presents some weaknesses; it is unable to distinguish between a fall and an unusual orientation of the foot maintained for a long period, and during a fall, if the subject ends up sitting, keeping the feet flat on the floor, the smart shoe is unable to recognize this condition. Finally, they have proposed the use of BLE technologies into a sole in the future.
Tao et al. [48] have designed a prototype with eight pairs FSRs and have pro- To solve the problem of lack of learning data to detect the direction of the fall, nearest neighbour approach is used, which learns the necessary pattern from abundant tilted standing data. The fall detection algorithm has two detection processes running simultaneously: fall detection and fall direction detection with learning based method. They obtain an overall correct classification rate of 75% but the validation tests are not sufficient to judge correctly this system. Among all described systems, the only commercial one is Wiisel insoles [44]. Now their challenge is to remove the need for taking out the insoles for energy charging purposes. All other systems are laboratory prototypes. Many of them do not have any call for help in case of fall. This will be the next step for footwear systems used in fall detection applications.
From the above mentioned systems, the one proposed by Doukas et al. [42] was the most accurate with 100% accuracy for fall detection. However, its validation is very bad and unsatisfactory with only three test subjects and does not prove the accuracy of this system. On the other hand, the system developed by Sim et al. [45] shows a low sensitivity of 81.5% due to errors in classification.
The accelerometer is the common sensing element of all sole systems, with optimal sampling frequency between 50 Hz and 120 Hz [47]. The accelerometer has proven itself to be an appropriate and viable mean for fall detection application. There are a lot of previous ambulatory systems using just accelerometers.
For example Karantonis et al. [49] adopted the use of a single tri-axial high power consumption accelerometer at the waist for the detection between periods of activity and rest, postural orientation, walking and falls. They have obtained an overall accuracy of 90.8%. Bourke et al. [50] have developed a threshold-based fall detection algorithm. They have observed peak acceleration profiles of fall events to normal activities of the ADLs. They showed that fall detection with a trunk mounted accelerometer was possible with a specificity of 100%. In addition to that, some researchers made one more step and used accelerometers for trying to recognize the impact and the posture after the fall [30]. Information concerning the orientation of the sensing device is used to infer user's posture and therefore to reduce the number of false alarms [49] [51]. But many fall detection applications require a predefined orientation of the device as presented in [51] [52]. The use of posture detection when the device orientation is unknown is an issue addressed by Curone et al. [53], but assumption cannot be applied in fall detection applications [10]. Gjoreski et al. [54] proved that the use of posture information increases accuracy of fall detection by +20%.
Finally, accelerometry has become a relatively non-intrusive means of application for the detection of falls [55] and we have based our development on the algorithm required from the accelerometer data.

Hardware Architecture
LAAS-CNRS has been conducting research on elderly monitoring systems since  [57], and has followed the evolution of the development of elderly monitoring systems. The monitoring systems were based on the instrumentation of the home environment with sensors. The spatiotemporal information was collected from human activity [58] with different type of wireless sensors [59].
A typical fall detection system has two major functional components: the detection component, which detects falls and the communication component that sends an alert to emergency contact after fall detections [60]. In this context, smart systems for elderly monitoring were developed [61], some of them were used in hospital of Toulouse in France on real patients [62].
A first prototype of a smart insole has been developed [63] in a living laboratory to promote healthy aging to frail elderly. The sole enables continuous monitoring with minimal invasiveness both at home and in outdoor environment.
Tests were realized in collaboration with gerontologists in the University Hospital. The smart sole was accepted by most of the elderly, they have indeed approved the unobtrusiveness of the device in the sole, the ease of use and especially the sole is considered effective and comfortable. Moreover, it doesn't need any maintenance.
On the other hand, a monitoring system was implemented in institution for elderly suffering from Alzheimer's disease [62]. The system includes a fall detection algorithm based on acceleration thresholds, results being incentives but not as good as expected. The limits of this algorithm were detected in the acceleration thresholds, so they have to be adjusted. Furthermore, the sum of acceleration was not really adapted to fall detection and finally the posture must be used and calculated otherwise.
To take advantage of the sole which has been developed, we have suggested and implemented a new fall detection algorithm based on acceleration and time thresholds with a new method. The algorithm was implemented in a small electronic module which is integrated in one sole.
Some medical specifications for the smart sole have been presented in [64].
However our fall detection system should respect many other requirements such as: automation of alarm sending without any user intervention, To meet all these requirements, we designed a portable device with a small shape factor. The electronic card is illustrated in Figure 1. This card has been The smart sole is a part of a global operational fall detection system illustrated in Figure 2 in which we use a support robot (PR 2) totally programmable using Robot Operating System. In this system, when a fall occurred, it will be detected by the smart sole which sends an alert signal with much other information to the robot. The robot will help the elderly person (first aid like giving him a phone or a drug) and inform his doctor, his hospital and his family in real time. The complete block chain was tested and validated in laboratory.

Signature Identification
We seek to identify specific signatures (temporal evolutions) of the fall in order to set thresholds on acceleration and time and to make the difference between a normal daily activity and a real fall.
From Figure 3, we can deduce that a fall is the succession of two actions: an impact on the ground followed by immobility in a particular position.

Calculation of Relevant Parameters
The most relevant parameters of our new fall detection algorithm based on thresholds are: -Sum of acceleration: Total sum acceleration V S containing both the dynamic and static acceleration components: We have done many tests and experiments using our threshold based-algorithm implemented in [62]. We have concluded that using sum acceleration induced always false alarms, caused by some fall-like activities of daily living (ADLs), such as sitting on a sofa or lying on a bed, doing sport. This parameter is therefore not exploitable as it is (or at least not alone). For this reason, we studied signals produced by fall-like ADLs and we have adopted a new approach of acceleration.
-Differential acceleration: The differential acceleration is the difference between the maximal and the minimal value of the acceleration's sum on a time window, and so allows measuring acceleration variation: Using this difference instead of the acceleration's sum (which is often noisy by the way) can be justified by analyzing the acceleration's sum itself; indeed negative peaks were observed when the person felt (reaction ground), then the maximum magnitude due to the impact will be observed. The first peak is so small that we will not be able to identify it. However, differential acceleration will be greatly and more significant as it contains more information about the fall (Figure 4).
The window, which is calculated on the maximal difference in acceleration, should be sufficiently large to be able to contain all the information relative to the fall, but not too long to limit false alarms. We have tested many lengths and 1.5s seem to be the optimal one. On the other hand, falls are unpredictable and can occur in various speeds, so the acquisition frequency is fixed to 80 Hz.
-Posture: when a person falls, its feet fall over with her. Various equations for posture have been studied, the following one allows to know immediately if the foot is in a normal position or not:    Figure 5 shows the two extreme cases: -Duration of differential acceleration peak: To be considered as a fall, the duration of differential acceleration peak must be greater than a minimal duration. -Inactivity duration on the ground: Minimal duration (after the peak of differential acceleration) in which the person has to stay on the ground (without movement or almost without movement) to consider that he really felt. In fact the person can fall, and get back on its feet just after. Figure 6 shows the typical signature of differential acceleration and posture signals obtained during falls and the process for deciding if a fall occurs.
Our new algorithm is based on thresholds of acceleration (threshold 1 and threshold 2) and of time, giving a good compromise between various requirements of a fall detection system such as performance, speed, reliability and energy consumption. The algorithm is totally flexible and configurable. The system consists of two cycles: -Acquisition Cycle: The system begins with the acquisition of the three accelerations with an optimal frequency of 80 Hz (12.5 ms), it calculates the sample of the sum acceleration, and stores it in a sliding table of 20 values (this corresponds to a range of 250 ms). Thus, each new sample replaces the oldest sample. So for each new sample, it calculates the average of these 20 samples and it obtains the average value of the acceleration. It stores these values in a sliding table of 120 values (1.5 s). At this stage, the differential acceleration is calculated on this window. The posture is calculated in the same way, the only difference is that we take the average value on the window of 120 values.   If the differential acceleration exceeds a maximal value AccMax (threshold 0) corresponding to the impact, a decision cycle will be activated.
-Decision Cycle: The decision cycle consists of two steps, each step corresponding to the validation of a threshold (two thresholds): 1) Threshold 1: If during a time interval range between Dura-tion_threshold1_Min and Duration_threshold1_Max (respectively the minimum and maximum accepted duration of differential acceleration peak), the differential acceleration remains greater than AccMax, then threshold1 is validated. At this moment, we test threshold 2 (to confirm or not the fall) as shown in Figure 7.  2) Threshold 2 (fall): validation of threshold 2 consists of testing the posture of the feet and the inactivity. So if at most, at Duration_threshold 2 (ground duration) we observe for consecutive Duration_Inactivity (necessary included in immobility duration) seconds a differential acceleration lower than AccMin (inactivity) and a foot posture between the minimal posture PosMin (typically 70˚) and the maximal posture PosMax (typically 120˚), so the threshold 2 is validated and thus alert "Fall" is sent. Figure 8 summarizes the algorithm.
-AccMin: the minimum differential acceleration that corresponds to the immobility, if value is below this threshold (during Duration_Inactivity) the person can be considered as inactive. -Duration_threshold 2: A maximum time during which the threshold 2 conditions must be validated to be considered as a fall, these conditions should be validated in consecutive Duration_Inactivity (Duration_Inactivity < Du-ration_threshold 2) seconds.

Configuration and Threshold Determination
Previous algorithm parameters (thresholds of acceleration and of time) are variable and depend on the user. To adapt our fall detection system, we have grouped these thresholds in a configuration file in the embedded module. We combined them to obtain a single variable that we call User Sensitivity "US", and in this way for every value of Sensitivity we associate specific thresholds.
The configuration file contains the US tables. Therefore, a US scale has been set from 1 to 100: -US = 1: very elderly person, frail and very little active.

Tests and Results
For tests purpose, a test version of program is implemented in the embedded module, the program store the cases of the fall in his flash memory each time it detects one (the FRAM is deleted in the final version of the module), so that tests can be done indoor or outdoor being not limited by the BLE range. At the end of the test, the data are recovered from the modules and analyzed. Test subjects were left in total freedom: they put the smart sole and they wander outdoor, in their home, or in the laboratory. Each time they made a fall, they noted it on a paper with the time and date. At the same time the module store in its memory every time it detects a fall with the corresponding date and time. When the subject returns, stored data are retrieved from the module by a BLE application that we have developed. By comparing this information with that noted by the subject, we can evaluate the performance of the sole and the algorithm.
In order to perform tests that are effective and as close as possible to reality, various ADLs and different possibilities of falls in daily life of elderly were taken up and analyzed. From that analysis we established six scenarios described as follows: 1) Controlled scenario without falling: doing custom motion activities for two hours without any fall. Activities are various like walking, climbing stairs up/down, open door, sitting on a chair, crossing legs, getting up, spreading legs on a coffee table, sleeping, getting up, walking quickly, sitting on the ground, sleeping on the ground, rolling on the ground, cycling, doing sports.
2) Controlled scenario with falls: doing custom activities like in 1, but with some interposed falls.
3) Free scenario without falling: doing free activities without any fall. 4) Free scenario with a single fall: doing free activities with only one fall. 5) Normal day scenario: normal free day with all usual ADLs. 6) Blind scenario by a third party: a third person wears the sole, doing falls at one or more times of the day, this person will note all the times when he fell, then we will analyze the results a posteriori.
6 subjects (25 -30 years) were chosen for these tests, the following parameters (thresholds) of our fall algorithm are fixed as indicated in Table 1. should be noted that we have asked some subjects to do ADLs with high activity to make tests more realistic and so to better evaluate the algorithm. False alarms (very low) are produced especially by some sportsmen and sometimes by throwing himself on the bed like a fall (simulated actions).
To confirm our results, we repeated the fall experience in post real time with the Human-Machine Interface (in a real public demonstration). We have confirmed that the device detects all the time falls with a sensitivity of 100%. We have demonstrated the satisfactory performance of the proposed algorithm and the smart sole by providing a maximum accuracy of sensibility.
To confirm our results, we repeated the experience in post real time with the Human-Machine Interface. We have confirmed that the device detects all the time falls with sensitivity of 100%. We have demonstrated the satisfactory performance of the proposed algorithm with maximum sensibility accuracy.

Conclusions
The aim of this paper is to design a smart sole for fall detection applications, using a minimum of sensors and giving a maximum of performance. In this context, we have developed a smart sole including an advanced fall detection algorithm based on a single tri-axial accelerometer. This algorithm is based on decision rules thanks to thresholds. These thresholds have been defined regarding acceleration, position and duration parameters. The system is comfortable, unobtrusive and has low power consuming hardware. It completes the systems and solutions proposed in literature as described in Section 2. The results demonstrate high sensitivity and specificity, so the algorithm is configurable and highly efficient.
Future developments will study the possibility of modeling detection sensitivity based on the person's profile. We are developing an application on smartphone to fix the sensitivity that the gerontologist will have defined for his patient.
Other work focuses on improving the sensitivity of the fall detection algorithm for maximum limitation of false alarms. On our side, we are already trying to add other conditions on the thresholds with promising first results. On the other hand, the insole could be used in other applications such as the measurement of the walking speed, the distance covered and the measurement of balance or weight.

Conflicts of Interest
The authors declare no conflicts of interest regarding the publication of this paper.