- Research
- Open Access
An experimental evaluation of the incidence of fitness-function/search-algorithm combinations on the classification performance of myoelectric control systems with iPCA tuning
https://doi.org/10.1186/1475-925X-12-133
© Camacho et al.; licensee BioMed Central Ltd. 2013
- Received: 28 May 2013
- Accepted: 18 December 2013
- Published: 27 December 2013
Abstract
Background
The information of electromyographic signals can be used by Myoelectric Control Systems (MCSs) to actuate prostheses. These devices allow the performing of movements that cannot be carried out by persons with amputated limbs. The state of the art in the development of MCSs is based on the use of individual principal component analysis (iPCA) as a stage of pre-processing of the classifiers. The iPCA pre-processing implies an optimization stage which has not yet been deeply explored.
Methods
The present study considers two factors in the iPCA stage: namely A (the fitness function), and B (the search algorithm). The A factor comprises two levels, namely A1 (the classification error) and A2 (the correlation factor). Otherwise, the B factor has four levels, specifically B1 (the Sequential Forward Selection, SFS), B2 (the Sequential Floating Forward Selection, SFFS), B3 (Artificial Bee Colony, ABC), and B4 (Particle Swarm Optimization, PSO). This work evaluates the incidence of each one of the eight possible combinations between A and B factors over the classification error of the MCS.
Results
A two factor ANOVA was performed on the computed classification errors and determined that: (1) the interactive effects over the classification error are not significative (F0.01,3,72 = 4.0659 > f AB = 0.09), (2) the levels of factor A have significative effects on the classification error (F0.02,1,72 = 5.0162 < f A = 6.56), and (3) the levels of factor B over the classification error are not significative (F0.01,3,72 = 4.0659 > f B = 0.08).
Conclusions
Considering the classification performance we found a superiority of using the factor A2 in combination with any of the levels of factor B. With respect to the time performance the analysis suggests that the PSO algorithm is at least 14 percent better than its best competitor. The latter behavior has been observed for a particular configuration set of parameters in the search algorithms. Future works will investigate the effect of these parameters in the classification performance, such as length of the reduced size vector, number of particles and bees used during optimal search, the cognitive parameters in the PSO algorithm as well as the limit of cycles to improve a solution in the ABC algorithm.
Keywords
- Artificial bee colony (ABC)
- Electromyography
- Individual principal component analysis (iPCA)
- Myoelectric control
- Particle Swarm optimization (PSO)
- Prosthesis
- Pattern recognition
Introduction
The loss of capabilities to manipulate objects with the hands is considered a high impact disease due to the physical, psychological and financial sequels related[1, 2]. A current technological aid for upper limb amputation and deficiency is represented by the use of a myoelectric hand prosthesis. This device overcomes the inability to grasp and manipulate objects[3] and in some cases to sense and explore the surrounding world[4]. A myoelectric prosthesis is composed of two main systems: (a) the prosthesis and (b) the Myoelectric Control System (MCS), which is the topic of this work. The electromyographic signals (EMG) are used as an input of the MCS, which classifies patterns of the EMG signals and operate actuators in the prosthesis.
The conventional MCS classifies the myoelectric patterns in movement classes. The processing in the MCS is composed of three stages: feature extraction, dimensionality reduction and classification. Recently, Hargrove et al.[5] proposed a complementary architecture which improves the performance of the conventional MCS. This new architecture mixes 3 components: (a) a high crosstalk level EMG acquisition system, (b) an individual Principal Component Analysis (iPCA) transformation stage and (c) the conventional myoelectric control system. The main disadvantage of the iPCA projection is the dimensionality increment of the electromyographic patterns, in which the pattern dimension N is incremented by a factor corresponding to the control system’s number of classes C.
To deal with the dimensionality increment it is possible to compute a reduced iPCA transformation that generates just the N1 most discriminative dimensions instead of the complete set C × N (with N1 < C × N). The reduced iPCA transformation is used in[5] and requires an optimization process that intends to find a subset of N1 elements from a given set of C × N channels, warranting the maximum discrimination information in the selected subset. The optimization is based on a search strategy and a fitness function, i.e. a function that measures the quantity of discriminative information in the selected subset of channels.
The optimization in myoelectric control systems with iPCA tuning is explored by the authors in[6], where the analysis is focused on the effects of factors A and B over the performance of myoelectric control systems with iPCA tuning; with A representing the fitness function factor with two levels (A1 classification error and A2 correlation factor) and B representing the search algorithm factor with three levels (B1 sequential forward selection (SFS), B2 sequential floating forward selection, B3 artificial bee colony (ABC)). Our paper presents new results that complete the investigation in[6]. Specifically, we evaluate a new level for the B factor: B4 particle swarm optimization (PSO) for a total of eight treatment alternatives.
The paper is organized as follows: Section 'Related works’ discusses previous works in this research area. Section 'Background’ describes the principal component analysis, the problem of channel optimization, the search algorithms and the fitness functions considered. In Section 'Methods’ we present the experimental methodology. In Section 'Results’ the simulation results are given. In Section 'Discussion’ the results are discussed, and finally the conclusions are presented in Section 'Conclusions’.
Related works
Different approaches for the control of myoelectric prostheses have been used. These can be grouped in two trends[7]: (a) coordinated control[8] and (b) sequential control which is the main topic of the current study. In the latter, the degrees of freedom are actuated one at a time, in a sequence, as one carries out a multifunction task. These systems are based on pattern recognition architectures where the patterns are represented by the EMG signal characteristics (x) and the classes are represented by the movements of the prosthesis (y).
Summary of the classification parameters and errors reached in the last years
Classifier | Channels | Classes | Features | Subjects | Error | Additional processing | Reference | Year |
---|---|---|---|---|---|---|---|---|
MLP | 2 | 4 | MAV, MAVS, ZC, SSC, WL. | 9 | 9.25% | [9] | 1993 | |
LDA, MLP | 5 | 4 | WPT. Transient | 16 | 6.25% | [30] | 1998 | |
PCA, LDA | 4 | 6 | WPT. Stationary | 11 | 6.80% | [13] | 2001 | |
LDA | 4 | 4 | TD. Stationary | 12 | 5% | Majority vote | [12] | 2003 |
GMM | 4 | 6 | AR6+RMS+TD. Stationary | 12 | 3.10% | Majority vote | [21] | 2005 |
Suppress interclass data | ||||||||
LDA | 8 | 7 | AR4+RMS. Stationary | 30 | 7.40% | Majority vote | [29] | 2007 |
Suppress interclass data | ||||||||
SVM | 4 | 5 | RMS +AR6. Stationary | 11 | 3% | Majority vote | [23] | 2008 |
Suppress interclass data | ||||||||
LDA | 10 | 11 | AR6 Stationary | 10 | 6.50% | [5] | 2009 | |
LDA | 10 | 11 | AR6 Stationary | 10 | 5% | iPCA Transformation | [5] | 2009 |
Optimization scheme used in the parameter configuration stage. W i is a PCA matrix transformation of size N × N for i = 1,…,C. Note that each W c (for c = 1,2,…C) matrix has a N × N size, then the projected vector s has an incremental size of C N × M.
In order to obtain a solution to the previous described disadvantages the authors propose and evaluate in[6], a set of novel configurations for the iPCA tuning, based on two factors: (A) fitness function and (B) search algorithm. The A factor with two levels: (A1) classification error and (A2) correlation factor. The B factor with three levels: (B1) sequential forward selection (SFS), (B2) sequential floating forward selection and (B3) artificial bee colony (ABC). In this context, this article evaluates a new level for the B factor: B4 particle swarm optimization (PSO). The overall results suggest an advantage on the use of the PSO algorithm with respect to other studied algorithms, with regard to the running time during the training stage.
Background
Principal Components Analysis
PCA is an orthogonal linear transformation used to convert a set of observations of possibly correlated variables into a set of values of uncorrelated variables called principal components. Given M observations of an N dimensional random vector z, the PCA transformation is performed by firstly subtracting the mean of the vector from z[5], x = z - E{z}, computing the N × N covariance matrix C x = E{x x T } and, then, applying s = W x, where s is the vector of the main component and W is the matrix in which each column is an eigenvector of C x . Usually the M observations would typically be samples taken from any C possible classes. This is known as universal PCA (uPCA) or global PCA[34]. This property of ignoring class information allows us to argue that PCA is suboptimal for classification purposes[35].
A recent variation, called individual PCA (iPCA)[34, 35], groups the M observations according to their class membership. Separate projection matrices W1,…,W C with size N × N are found for each class (see Figure1). This set of matrices can be interpreted as a unique C N × N size transformation matrix W iPCA formed by the concatenation of rows of the separate projection matrices. The iPCA method effectively “tunes” the data prior to classification and has been shown to improve classification accuracies for some pattern recognition problems[36]. The main drawback of this method is the linear increment of the dimensionality of the patterns with the number of classes C. To overcome this problem, a reduced iPCA transformation matrix W R is defined in[5]. This solution uses a transformation matrix with the best N1 basis of the W iPCA matrix (N1 < C N).
Channel optimization
The optimization task of finding a subset of N1 elements from a given set of CN channels can be interpreted as a discrete optimization problem (integer elements from the selected subset). The optimization scheme in Figure1 is used to carry out this task. In this scheme, a validation data set x v is projected with the W iPCA matrix. The projected pattern s is a C N × M size vector. The vector O′ is a subset of the CN dimensions in s and its components change at each iteration, following a specific strategy defined by the search algorithm. The fitness function evaluates the quality of an EMG pattern with regard to the discriminative information. The evaluated patterns by the fitness function are established by the rows of s which compose the O′ vector. When the stop conditions are reached, the scheme provides the selected channel subset O as output.
Search algorithms
The search algorithms treated in this study are the following: (a) Sequential Forward Selection (SFS), (b) Sequential Floating Forward Selection (SFFS), (c) Particle Swarm Optimization (PSO), and (d) Artificial Bee Colony (ABC); then, the same will be described.
Sequential Forward Selection (SFS)
This is one of the first developed search methods in the literature related to feature selection issue. The search procedure consists of the following steps: (a) compute the fitness function for each of the CN channels and then select the channel with the best value, and (b) form all possible two dimensional vectors that contain the winner from the previous step and compute the fitness for each of them, (c) select the vector with the best value, (d) continue the process until the N1 vector length has been completed. The main drawback of this algorithm is the nesting effect; that is, once a channel has been selected there is no possibility to discard it[32].
Sequential Floating Forward selection (SFFS)
This is a suboptimal search algorithm proposed by Pudil et al. in 1994[31] with the purpose of eliminating the nesting effects of the SFS algorithm. This algorithm begins the search with an initial subset of two channels. For each subsequent iteration, two tasks are necessary: (a) search the candidate channel which minimizes the fitness function and add it to the selected subset O′, (b) verify if the fitness function can be optimized by replacing a channel from the selected subset O′. Consequently, the SFFS search is performed dynamically, incrementing and decrementing the selected channels in the subset O′ until reach the target length N1. An efficient way to implement this algorithm is presented in[31, 37].
Particle Swarm Optimization (PSO)
where, i is the particle index for i ∈ 1,…,S; j is a specific dimension for j ∈ 1,…,N1; w is the inertia weight; r1, r2 and r3 are random numbers uniformly distributed in the range (0,1); c1 is a cognitive parameter; c2 and c3 are social parameters; r(.) is a rounding function used to adapt the original PSO for the discrete optimization problem[39, 40].
It is possible that the solution computed with the PSO algorithm contains repeated elements (i. e. that the vector O′ has repeated elements). This leads to EMG patterns with high level of redundancy and it does not benefit the localization of the global minimum on the considered fitness functions. To overcome this, a modification on the conventional PSO algorithm was added. Whenever the search process leads to a solution with repeated elements, then, that solution will be penalized with a high fitness value and without evaluating the fitness function. This will hinder the EMG patterns with high level of redundancy from being selected as the optimal solutions in the minimization problem.
Artificial Bee Colony (ABC)
This is an optimization technique proposed in 2005 by Karaboga[42]. In ABC, each solution to the optimization problem is called food source and is represented by a N1-dimensional vector. The colony of artificial bees contains three groups of bees: employed bees, onlookers and scouts. The first half of the colony consists of employed artificial bees and the second half are the onlookers. For each food source there is only one employed bee. Therefore, the number of employed bees is equal to the number of food sources. An employed bee whose food source has been exhausted becomes a scout. The ABC algorithm can be implemented in two steps[43].
-
Initialization step: the algorithm generates a random initial solution set of length S. Each solution x i (i = 1,2…,S) is a N1-dimensional vector. The employed bees measures the nectar amount of each solution, return to the hive and share the nectar information with the onlooker bees.
-
Iterative step: the solution set is submitted to repetitive search cycles. During these cycles, the bees change its memory contents, searching the food source with the best fitness. Each bee is able to remember just one food source localization x i . Each cycle is computed in three phases: (a) employed phase, at this phase each employed looks for a new food source v i around its current position x i using (6). If the nectar quantity of this new position improves the previous one, then the bee position is updated. Once each employed bee has finished this phase, a probability factor p i is computed (7). Using this factor indicates the nectar level at each x i food source. (b) Onlooker phase, at this phase the onlooker bees use the probability factor p i of each employed bee and select a x i food source. Afterwards, a new v i food source around the selected neighborhood localization is computed (6). Finally, if the fitness value of this new position improves the previous one, then the bee position is updated. (c) Scout phase, whenever the exploration of a x i food source does not finish with a solution improvement, a counter increments the number of trials of that food source. If the value in this counter is greater than a threshold C lim , this x i food source is discarded and a new food source is randomly selected by a scout bee.(6)
where f(.) represents the fitness function value and S represents the number of food sources.
Fitness functions
A fitness function is a particular type of function used to summarise, as a single figure of merit, how close a design solution is to achieving the setting aims. In this case, the aim is related with the maximum discrimination information in a subset of C × N channels obtained after the iPCA transformation. Two fitness functions have been used in this study: (a) Classification error, and (b) Correlation factor, which will be described here:
Classification error
Steps of the pattern recognition based myoelectric control system with iPCA tuning [5]. The dotted line shown in the figure is the conventional classification architecture for myoelectric control systems. The measured signal is represented by a generic vector x and the class label by a generic vector y.
Correlation factor
for p = 1,…,N; q = 1,…,N.
Myoelectric Control Systems with iPCA tuning
Figure2 depicts the myoelectric control scheme with iPCA tuning[5], which uses an iPCA transformation for tuning input patterns. This transformation is a variation of the PCA (Principal Component Analysis) that was initially used for improving the classification performance in problems of face recognition[34]. The purpose of the iPCA transformation is to generate a new signal space where the discriminative information related to the movement class is amplified, as long as other types of information are attenuated. However, there is a drawback: the patterns’ dimensions increase by a factor of C. Considering an input pattern corresponding to N EMG channels and a classification system with C classes, one has to use of a transformation matrix W iPCA with size C N × N. Therefore, the projection of the input signal results in a new dimension pattern CN (see Figure1)[5].
Methods
Sequence used to evaluate the classification error. Note that the blocks Computing iPCA Matrix and System Evaluation must run eight times, i.e. one iteration for each of the four search algorithms with the first fitness function (classification error) and one iteration for each of the four search algorithms with the second fitness function (correlation factor).
EMG signal acquisition
We used data collected by the University of New Brunswick - Canada, with authorization of Dr. Levis Hargrove. These data were acquired in an experiment approved by the University of New Brunswick’s Research Ethics Board[5]. The data were sampled from ten healthy subjects performing eleven motion classes. EMG signals were acquired from ten sites on the forearm using adhesive duotrodes manufactured by 3M. These signals were amplified to guarantee potentials in range [+5,-5]V and a bandwidth of 1Hz to 500Hz. Afterwards, the signals were sampled at 1KHz and quantized with a 16-bit resolution.
Experimental data were collected during eight trials. Each trial consists of two repetitions of eleven motion classes performed in sequential order, namely: (1) wrist pronation, (2) wrist supination, (3) wrist flexion, (4) wrist extension, (5) hand open, (6) key grip, (7) chuck grip, (8) power grip, (9) fine pinch grip, (10) tool grip, and (11) rest position or no movement.
Acquired signal with the sequence of movements from 1 to 11. Signals illustrated correspond to channel 3 during trials 6 to 8 and user 1. Dotted lines indicate the held time for the contraction (4 s). Note that the movements were evaluated in sequential ascending order for all trials.
In the present study, the EMG data recorded from trials 1 and 3 were used as a training data set. EMG data recorded from trials 2 and 4 were used as a test data set. And finally, EMG data recorded from trials 5 and 6 were used as a validation set to resolve the optimization problem defined in the Background Section. Otherwise, for all these sets, the inter-motion class delays were excluded such as reported in[5].
Computing the reduced iPCA matrix
Blocks for computing the reduced iPCA Transformation Matrix. (a) search of the reduced dimension vector O (b) building of the reduced iPCA transformation matrix W R . Note that this process is conducted during a configuration stage, before the classification.
In this case, for all search algorithms the N1 parameter was set to 30, such as recommended in[5]. This value provides good classification accuracy.
The SFS algorithm was configured with just one stop criterion, namely: length of the selected subset equal to N1.
PSO algorithm parameters
Symbol | Parameters | Value |
---|---|---|
ε | Minimum value of fitness function | 0 |
c 1 | Cognitive parameter | 2 |
c 2 | Social parameter | 2 |
c 3 | Social parameter | 1 |
w | Inertial weight | [0.8, 0.1] |
S | Swarm size | 10 |
[v m i n ,v m a x ] | Velocity limits | [-109, 109] |
[x m i n ,x m a x ] | Position limits | [1, 110] |
C m a x | Maximum number of iterations | 120 |
ABC algorithm parameters
Symbol | Parameter | Value |
---|---|---|
ε | Minimum value of fitness function | 0 |
S | Number of food sources | 10 |
[v min ,v max ] | Limit values | [1, 110] |
C max | Number of maximum cycles | 120 |
C lim | Limit of cycles to improve a solution | 6 |
For the PSO algorithm the minimum value of cost function (ε) was defined by the minimum possible value for the classification error and correlation factor (in this case equal to zero). The number of particles (S) was set to 10; for greater values, the search time was increased and the time for the experiments could exceed the available time (2 months to get experimental data), specially when the classification error were used as fitness function. For lower values, the search performance could be compromised due to the characteristics of population based stochastic optimization algorithms. The limit values (v min , v max , x min , x max ) were defined by the dimension of the search space: C × N, where C is the number of movement classes (C = 10) and N is the number of acquisition channels (N = 11). The maximum number of iterations C max was set to 120; this value showed good results for both fitness functions. The algorithm used similar values for cognitive and social parameters (c1, c2 and c3) allowing a neutral strategy, i.e. a strategy were the confidence in the experience of each particle is equal to the confidence in the experience of the swarm. The inertial weight w decreases linearly allowing that the particles polish the search in the last iterations; this configuration induces an effect of global search in the first iterations and local search at the last ones.
In the ABC algorithm the parameters were configured having two requirements in mind: (a) high performance in the optimal search, (b) assurance of conditions to make fair comparisons between bio-inspired algorithms. Then, the number of food sources (S) was configured to 10, equal than the number of particles in the PSO algorithm. The limit values (v min , v max ) were defined by the dimension of the search space: C × N. The number of maximum cycles (C max ) was set 120, equal that the maximum number of iterations in the PSO algorithm. The minimum value of the fitness function was set to 0, because this was the minimum value achievable by both fitness functions: classification error and correlation factor. The limit of cycles to improve a solution (C lim ) was configured to 6; this value showed good classifications performances and affordable times of search.
To compute the classification error fitness function, the processing scheme formed by the blocks inside the dotted line in Figure2, (i.e. the conventional myoelectric control system) has been used. The configuration was the following: overriding windowing feature extraction[12] with lengths of 150 ms and sliding windows of 25 ms, features conformed by the first 6 autoregressive coefficients (AR6)[18], dimensionality reduction method based on Uncorrelated LDA (ULDA)[29] and LDA (Linear Discriminant Analysis) classifier[46]. At this stage, each channel was independently used to train and, subsequently, to test the control system, such as presented in[5].
At the second task (row selection block in Figure5) we used equation (12) to compute the reduced iPCA transformation matrix corresponding to each pair fitness function/search algorithm. Note that, at the output, eight reduced transformation matrices were obtained as consequence of an optimization procedure computed eight times (the sub-indexes i, j indicate the fitness function and the search algorithm, respectively).
System evaluation
Blocks for system evaluation. The dotted line shown in the figure contains the test data classification tasks.
Results
The simulations proposed in this paper were performed on the Matlab platform and are based on the myoelectric control toolbox presented in[29]. Nevertheless, we have made some modifications and added some new functionalities to the myoelectric control toolbox presented in[29]. These modifications were necessary to appropriately parse the EMG data base that had a different structure than the used in[29]. The added functionalities were done for configuring and implementing all the iPCA related functions, namely: optimal search, transformation matrices computing projections and performance indicators computing. The resulting simulator is a powerful tool for experimentation with iPCA myoelectric control, designed on a modular fashion that permits evaluation of different approaches in each of the processing steps. Here we show results separated in two main stages: (a) first, the results registered during reduced iPCA transformation matrix computing, and secondly, (b) results registered during EMG pattern classification.
Comparison of search time used for each of the eight treatment alternatives evaluated during optimization. The search time was computed as the product between the number-of-iterations and the mean-iteration-running-time.
Comparison of the fitness value reached with each of the eight treatment alternatives during the optimization search. The sequence of algorithms in each figure was selected according to the descending order of fitness.
Comparison of number-of-iterations/mean-iteration-running-time for the eight treatment alternatives during optimization
Fitness function | SFS | SFFS | PSO | ABC |
---|---|---|---|---|
Class. error | 30/1282s | 64.9/1705s | 120/155s | 120/475s |
Corr. factor | 30/5.62s | 78.3/7.61s | 120/0.79s | 120/1.12s |
Comparison of the classification error reached with each of the eight treatment alternatives. The error bar represents one standard deviation of intersubject variability. The red line indicates the mean classifcation error obtained when the EMG patterns were classified without the iPCA transformation.
A two factor analysis of variances (ANOVA) was performed over the error classification results, which has determined the following behaviors: (a) there was no statistical evidence of the dependence between the interaction of both factors (i.e. search algorithm and fitness function) and the classification error (F0.01,3,72 = 4.0659 > f AB = 0.09), (b) there was statistical evidence of the dependence between the fitness function factor and the classification error (F0.02,1,72 = 5.0162 < f A = 6.56), and (c) there was no statistical evidence showing the dependence between the search algorithm factor and the classification error factor, (F0.01,3,72 = 4.0659 > f B = 0.08).
Discussion
The analysis of simulation results may be performed taking into account two major aspects: (a) the computational complexity of the search process, and (b) the overall classification accuracy, using a fitness function. The metric used to measure the computational complexity was the number of iterations and the computational time of each iteration (see Table4). The product of these two metrics defines the search time (i.e. the time necessary to find an optimal solution) and gives an estimate of the computational complexity. With regard to the number of iterations is important to mention that: (a) the bio-inspired algorithms used the maximum number of iterations (120) in each search and (b) the sequential algorithms never reached the maximum number of iterations (120). Therefore, the number of iterations is irrelevant to develop comparisons among bio-inspired algorithms; otherwise, the same is important to compare both sequential and bio-inspired algorithms. The search time in Figure7 shows that: (a) solutions founded with error classification fitness function are more susceptible to long search times. The data have shown a relation of 250:1 between the search time of the classification error fitness function and the search time of the correlation factor fitness function. This was already expected due to the complexity associated with the supervised and non-supervised fitness functions (see fitness functions in Background Section); (b) the major and minor search time of the algorithms, regardless of the fitness function, are for SFFS and PSO respectively. The difference between these two algorithms is significant and indicates that the SFFS algorithm consumes almost four times more iterations than the PSO algorithm, for the case of maximum number of iterations = 120. The PSO algorithm is 14 percent better than the ABC algorithm, when correlation factor was used as fitness function. The difference (with respect to SFS) reaches 31 percent when classification error is used as fitness function.
This advantage of PSO over the other evaluated search algorithms is consequence of the low number of evaluations of the fitness function in each iteration of the PSO algorithm. The fitness values shown in Figure8 indicate the following behaviors: (a) the fitness computed on the classification error fitness function was lower than that computed with correlation factor as fitness function; (b) the optimal solutions computed with sequential algorithms were closer to the global minimum than the ones computed with the bio-inspired algorithms. These results suggest a superiority of the solutions computed with sequential algorithms. In order to generalize that behavior, it is necessary to test the bio-inspired algorithms using other configuration parameters; (c) the fitness reached with the sequential algorithms SFS and SFFS are similar and, therefore, we can suggest that the nesting effect associated with the SFS algorithm is not significant in the considered fitness functions.
Figure9 shows the comparison of the performances reached when the patterns were tuned with the different transformation matrices (i = 1,2; j = 1,…,4). The results indicate the following aspects: (a) the classification rates are similar to the previous ones published in[5] and the classification error of the conventional myoelectric control architecture is superior to the classification error of the myoelectric control architecture with iPCA tuning; (b) there are similar levels of classification error when transformation matrices were used (i.e. transformation matrices computed with the i fitness function and each of the search algorithms); and (c) there are differences between classification errors when transformation matrix was used (i.e. transformation matrices computed with the j search algorithm and each of the fitness functions).
The response presented in (a) validates the superiority of the iPCA tuned architecture over the conventional myoelectric control architecture. Otherwise, the (b) response was not expected. Due to the superiority of fitness that was computed with sequential algorithms (see Figure8), greater differences between the classification errors were expected. For instance, that classification errors associated to transformation matrices computed with sequential algorithms ( with j = 1,2) were less than classification errors associated to transformation matrices computed with bio-inspired algorithms ( with j = 3,4). This suggests that finding of the minimal value for the fitness function is not a sufficient condition to guarantee minimal classification errors during the evaluation of the myoelectric control system.
Finally, the (c) response was expected, basically by two reasons: (i) the superiority of classification error over correlation factor in determining the discriminant information in the selected subsets. (ii) The superior fitness of computed solutions using systems with classification error fitness function (see Figure8).
The confusion matrices displayed in Additional file1: Table S5, Additional file2: Table S6, Additional file3: Table S7 and Additional file4: Table S8 provide a direct comparison between the optimization alternatives used. Additional file1: Table S5 and Additional file3: Table S7 compare classification accuracy when the transformation matrices were used (i.e. the transformation matrices computed with the correlation factor fitness function and the sequential and bio-inspired algorithms). Additional file2: Table S6 and Additional file4: Table S8 compare classification accuracy when the transformation matrices were used (i.e. the transformation matrices computed with the classification error fitness function and the sequential and bio-inspired algorithms).
In Additional file1: Table S5 and Additional file3: Table S7, the values in white (left columns) show processing with SFS algorithm and the values in gray (right columns) show the results with SFFS algorithm. In Additional file2: Table S6 and Additional file4: Table S8, the values in white (left columns) show processing with PSO algorithm and the values in gray (right columns) show the results with ABC algorithm.
The results along the main diagonal are correct classifications (accuracy) and those lying outside of the main diagonal are incorrect classifications. Empty cells correspond to an error of 0% and the accuracies were rounded to the nearest tenth of a percent. The values on these tables confirm two trends: (a) similar levels on classification error when transformation matrices were used and (b) differences between classification errors when transformation matrices were used.
Conclusions
This paper has presented and evaluated the use of bio-inspired optimization algorithms in the iPCA stage of Myoelectric Control Systems for hand prosthesis. The influence of fitness function and searching algorithms on myoelectric control systems with iPCA tuning were investigated in terms of optimization performance (e.g. running time, number of iterations, mean search time), solution fitness and classification performance. The alternatives considered for fitness functions were the following: classification error, correlation factor, and for search algorithms: SFS, SFFS, PSO and ABC. The experimental results suggest superiority on classification performance when reduced iPCA matrices computed with classification error fitness function were used. The results have also shown the independence of classification performance with regard to the search algorithm. However, a practical advantage was found in using PSO algorithm during the optimal search. This advantage is related to the computational time of the process during the parameter configuration stage and was corroborated for a particular set of configuration parameters in the algorithm. Future studies will be carried out to investigate other configuration parameters in the PSO algorithm as well as the effects of the selected subset length N1 on the classification performance.
Nomenclature
MCSs Myoelectric Control Systems
iPCA individual principal component analysis
PCA principal component analysis
ABC artificial bee colony
PSO particle swarm optimization
EMG electromyographic signals
SFS sequential forward selection
SFFS sequential floating forward selection
MLP multilayer perceptron
NNs neural networks
LDA linear discriminant analysis
ULDA uncorrelated linear discriminant analysis
GMMs Gaussian mixture models
HMMs hidden Markov models
SVMs support vector machines
TD Time Domain
MAV mean absolute value
MAVS mean absolute value slope
ZC zero crossings
SSC slope sign changes
WL wave length
AR autoregressive
STFT small time Fourier transform
WT Wavelet transform
WPT Wavelet packets transform
TDAR concatenated TD and AR features
x generic EMG signal
y vector of classes of movement
vector of predicted classes of movement
vector of predicted classes of movement computed with
e ij classification error of the system configured with the transformation matrix
x v validation data set of EMG signals
x tr training data set of EMG signals
x tst test data set of EMG signals
x i position vector of the i particle and position vector of the i food source in the PSO algorithm and ABC algorithm respectively
v i velocity vector of the i particle and new position vector around x i in the PSO algorithm and ABC algorithm respectively
best individual position for the i particle in the PSO algorithm
gfbest first best position explored so far in the PSO algorithm
w inertial weight in the PSO algorithm
gsbest second best position explored so far in the PSO algorithm
r1, r2 and r3 random numbers uniformly distributed in the range (0,1)
c1 cognitive parameter in the PSO algorithm
c2and c3 social parameters in the PSO algorithm
p i probability factor of each employed bee in the ABC algorithm
C lim limit of cycles to improve a solution in the ABC algorithm
C max maximum number of iterations and maximum number of cycles in the PSO algorithm and ABC algorithm respectively
ϕ ij random number in the range [-1,1] that controls the production of food source positions around x i in the ABC algorithm
s iPCA projected pattern from x
M number of observations of the EMG signal
O ′ vector of possible optimal set of channels
O vector of optimal set of channels
O ij vector of optimal set of channels computed with the i fitness function and the j search algorithm
ε minimum value of fitness function
C x cross correlation factor
R x correlation coefficient matrix
F c normalized correlation factor
j index for the search algorithm
i index for the fitness function
C number of classes of movement
N length of the pattern vector
N1 length of the reduced size vector
S the number of particles and bees used during optimal search with bio-inspired algorithms
W PCA transformation matrix
W c PCA transformation matrix for the c movement class
W iPCA iPCA transformation matrix
W R reduced iPCA transformation matrix
reduced iPCA transformation matrix computed with the i fitness function and the j search algorithm
Declarations
Acknowledgements
The Authors would like to thank Dr. Levi Hargrove from the Neural Engineering Center for Artificial Limbs at the Rehabilitation Institute of Chicago for providing us with the EMG data set, and Dr. A. D. C. Chan from the Department of Systems and Computing Engineering at Carleton University for providing us with the Matlab Library for myoelectric control. Additionally, thanks also to Daniel Muñoz from FGA-UnB for his help in the configuration of the bio-inspired algorithms.
Authors’ Affiliations
References
- Micera S, Carpaneto J, Raspopovic S: Control of hand prostheses using peripheral information. Biomed Eng, IEEE Rev 2010, 3: 48–68.View ArticleGoogle Scholar
- McGimpsey G, Bradford TC: Limb prosthetics services and devices. Critical unmet need: market analysis - white paper. Tech. rep., Bioengineering Institute Center for Neuroprosthetics - Worcester Polytechnic Institution 2011Google Scholar
- Edeer D, Martin CW: Upper limb prostheses - A review of the literature with a focus on myoelectric hands. Tech. rep., Richmond, BC: WorkSafeBC Evidence-Based Practice Group February 2011.http://worksafebc.com/health_care_providers/Assets/PDF/UpperLimbProstheses2011.pdf
- Yao J, Carmona C, Chen A, Kuiken T, Dewald J: Sensory cortical re-mapping following upper-limb amputation and subsequent targeted reinnervation: a case report. c, EMBC, 2011 Annual International Conference of the IEEE, Aug. 30 2011–Sept. 3 2011, pp. 1065–1068.http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6090248&isnumber=6089866
- Hargrove L, Li G, Englehart K, Hudgins B: Principal components analysis preprocessing for improved classification accuracies in pattern-recognition-based myoelectric control. Biomed Eng, IEEE Trans 2009, 56(5):1407–1414.View ArticleGoogle Scholar
- Camacho G, Llanos C, de A Berger P, Miosso C, da Rocha A: Evaluating different combinations of feature selection algorithms and cost functions applied to iPCA tuning in myoelectric control systems. Engineering in Medicine and Biology Society (EMBC), 2012 Annual International Conference of the IEEE, Aug. 28 2012–Sept. 1 2012, pp. 6508–6513.http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6347485&isnumber=6345844
- Merletti R, Parker P: Electromyography: Physiology, Engineering and Noninvasive Applications. 2004. http://dx.doi.org/10.1002/0471678384View ArticleGoogle Scholar
- Nielsen J, Holmgaard S, Jiang N, Englehart K, Farina D, Parker P: Simultaneous and proportional force estimation for multifunction myoelectric prostheses using mirrored bilateral training. Biomed Eng, IEEE Trans 2011, 58(3):681–688.View ArticleGoogle Scholar
- Hudgins B, Parker P, Scott R: A new strategy for multifunction myoelectric control. Biomed Eng, IEEE Trans 1993, 40: 82–94. 10.1109/10.204774View ArticleGoogle Scholar
- Tenore F, Ramos A, Fahmy A, Acharya S, Etienne-Cummings R, Thakor N: Decoding of individuated finger movements using surface electromyography. Biomed Eng, IEEE Trans 2009, 56(5):1427–1434.View ArticleGoogle Scholar
- Kelly M, Parker P, Scott R: The application of neural networks to myoelectric signal analysis: a preliminary study. Biomed Eng, IEEE Trans 1990, 37(3):221–230. 10.1109/10.52324View ArticleGoogle Scholar
- Englehart K, Hudgins B: A robust, real-time control scheme for multifunction myoelectric control. Biomed Eng, IEEE Trans 2003, 50(7):848–854. 10.1109/TBME.2003.813539View ArticleGoogle Scholar
- Englehart K, Hudgin B, Parker P: A wavelet-based continuous classification scheme for multifunction myoelectric control. Biomed Eng, IEEE Trans 2001, 48(3):302–311. 10.1109/10.914793View ArticleGoogle Scholar
- Chu JU, Moon I, Lee YJ, Kim SK, Mun MS: A supervised feature-projection-based real-time EMG pattern recognition for multifunction myoelectric hand control. Mechatronics, IEEE/ASME Trans 2007, 12(3):282–290.View ArticleGoogle Scholar
- Park SH, pil Lee S: EMG pattern recognition based on artificial intelligence techniques. Rehabil Eng, IEEE Trans 1998, 6(4):400–405. 10.1109/86.736154View ArticleGoogle Scholar
- Micera S, Sabatini AM, Dario P, Rossi B: A hybrid approach to EMG pattern analysis for classification of arm movements using statistical and fuzzy techniques. Med Eng Phys 1999, 21(5):303–311. http://www.sciencedirect.com/science/article/pii/S1350453399000557 10.1016/S1350-4533(99)00055-7View ArticleGoogle Scholar
- Chan F, Yang YS, Lam F, Zhang YT, Parker P: Fuzzy EMG classification for prosthesis control. Rehabil Eng, IEEE Trans 2000, 8(3):305–311. 10.1109/86.867872View ArticleGoogle Scholar
- Chan A, Englehart K: Continuous myoelectric control for powered prostheses using hidden Markov models. Biomed Eng, IEEE Trans 2005, 52: 121–124. 10.1109/TBME.2004.836492View ArticleGoogle Scholar
- Ajiboye A, Weir R: A heuristic fuzzy logic approach to EMG pattern recognition for multifunctional prosthesis control. Neural Syst Rehabil Eng, IEEE Trans 2005, 13(3):280–291. 10.1109/TNSRE.2005.847357View ArticleGoogle Scholar
- Khezri M, Jahed M: Real-time intelligent pattern recognition algorithm for surface EMG signals. BioMed Eng OnLine 2007, 6: 45. http://www.biomedical-engineering-online.com/content/6/1/45 10.1186/1475-925X-6-45View ArticleGoogle Scholar
- Huang Y, Englehart K, Hudgins B, Chan A: A Gaussian mixture model based classification scheme for myoelectric control of powered upper limb prostheses. Biomed Eng, IEEE Trans 2005, 52(11):1801–1811. 10.1109/TBME.2005.856295View ArticleGoogle Scholar
- Chu JU, Lee YJ: Conjugate-prior-penalized learning of gaussian mixture models for multifunction myoelectric hand control. Neural Syst Rehabil Eng, IEEE Trans 2009, 17(3):287–297.View ArticleGoogle Scholar
- Oskoei M, Hu H: Support vector machine-based classification scheme for myoelectric control applied to upper limb. Biomed Eng, IEEE Trans 2008, 55(8):1956–1965.View ArticleGoogle Scholar
- Liu YH, Huang HP, Weng CH: Recognition of electromyographic signals using cascaded kernel learning machine. Mechatronics, IEEE/ASME Trans 2007, 12(3):253–264.View ArticleGoogle Scholar
- Shenoy P, Miller K, Crawford B, Rao R: Online electromyographic control of a robotic prosthesis. Biomed Eng, IEEE Trans 2008, 55(3):1128–1135.View ArticleGoogle Scholar
- Khokhar ZO, Xiao ZG, Menon C: Surface EMG pattern recognition for real-time control of a wrist exoskeleton. BioMed Eng OnLine 2010, 9: 41. http://www.biomedical-engineering-online.com/content/9/1/41 10.1186/1475-925X-9-41View ArticleGoogle Scholar
- Graupe D, Salahi J, Kohn KH: Multifunctional prosthesis and orthosis control via microcomputer identification of temporal pattern differences in single-site myoelectric signals. J Biomed Eng 1982, 4: 17–22. http://www.sciencedirect.com/science/article/pii/0141542582900218 10.1016/0141-5425(82)90021-8View ArticleGoogle Scholar
- Kang WJ, Shiu JR, Cheng CK, Lai JS, Tsao HW, Kuo TS: The effect of electrode arrangement on spectral distance measures for discrimination of EMG signals. Biomed Eng, IEEE Trans 1997, 44(10):1020–1023. 10.1109/10.634653View ArticleGoogle Scholar
- Chan ADC, Green GC: Myoelectric control development toolbox. 30th Conference of the Canadian Medical & Biological Engineering Society, Toronto, Canada, Volume Paper M0100. 2007Google Scholar
- Kevin E: Signal representation for classification of the transient myoelectric signal. PhD thesis, University of New Brunswick, 1998Google Scholar
- Pudil P, Novovicova J, Kittler J: Floating search methods in feature selection. Pattern Recognit Lett 1994, 15(11):1119–1125. 10.1016/0167-8655(94)90127-9View ArticleGoogle Scholar
- Theodoridis S, Koutroumbas K: Pattern Recognition (Third Edition). San Diego: Academic Press; 2006.Google Scholar
- Karaboga D, Akay B: A survey: algorithms simulating bee swarm intelligence. Artif Intell Rev 2009, 31: 61–85. 10.1007/s10462-009-9127-4View ArticleGoogle Scholar
- Liu X, Chen T, Kumar B: Face authentication for multiple subjects using eigenflow. Pattern Recognit 2003, 36(2):313–328. 10.1016/S0031-3203(02)00033-XView ArticleGoogle Scholar
- Das K, Osechinskiy S, Nenadic Z: A classwise PCA-based recognition of neural data for brain-computer interfaces. Engineering in Medicine and Biology Society, 2007. EMBS 2007. 29th Annual International Conference of the IEEE, 22–26 Aug. 2007, pp 6519–6522.http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4353853&isnumber=4352185
- Das K, Nenadic Z: An efficient discriminant-based solution for small sample size problem. Pattern Recognit 2009, 42(5):857–866. 10.1016/j.patcog.2008.08.036View ArticleGoogle Scholar
- Karlsson S, Yu J, Akay M: Time-frequency analysis of myoelectric signals during dynamic contractions: a comparative study. Biomed Eng, IEEE Trans 2000, 47(2):228–238. 10.1109/10.821766View ArticleGoogle Scholar
- Eberhart R, Kennedy J: A new optimizer using particle swarm theory. Micro Machine and Human Science, 1995. MHS '95., Proceedings of the Sixth International Symposium on, 4–6 Oct 1995, pp. 39–43.http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=494215&isnumber=10679
- Khushaba R, Al-Ani A, Al-Jumaily A: Swarm intelligence based dimensionality reduction for myoelectric control. Intelligent Sensors, Sensor Networks and Information, 2007. ISSNIP 2007. 3rd International Conference on, 3–6 Dec. 2007, pp. 577–582.http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4496907&isnumber=4496790
- Jin J, Wang X, Zhang J: Optimal selection of EEG electrodes via DPSO algorithm. Intelligent Control and Automation, 2008. WCICA 2008, 7th World Congress on, 25–27 June 2008, pp. 5095–5099.http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=4593756&isnumber=4592780
- Forbes R, Nayeem Mohammad T: Particle swarm optimization on multi-funnel functions. http://www.cs.colostate.edu/~nayeem/papers/pso_paper.pdf
- Karaboga D: An idea based on honey bee swarm for numerical optimization. Tech. Rep. TR06, Erciyes University 2005Google Scholar
- Karaboga D, Basturk B: A powerful and efficient algorithm for numerical function optimization: artificial bee colony (ABC) algorithm. J Glob Optimization 2007, 39: 459–471. 10.1007/s10898-007-9149-xMathSciNetView ArticleGoogle Scholar
- Mogk JP, Keir PJ: Crosstalk in surface electromyography of the proximal forearm during gripping tasks. J Electromyography Kinesiol 2003, 13: 63–71. 10.1016/S1050-6411(02)00071-8View ArticleGoogle Scholar
- MATLAB: Version 7.10.0 (R2010a). Natick: The MathWorks Inc.; 2010.Google Scholar
- Hargrove L, Englehart K, Hudgins B: A comparison of surface and intramuscular myoelectric signal classification. Biomed Eng, IEEE Trans 2007, 54(5):847–853.View ArticleGoogle Scholar
Copyright
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.