# State of Health Estimation of Lithium-Ion Battery Using Time Convolution Memory Neural Network

Authors: Chunxiang Zhu; Bowen Zheng; Zhiwei He; Mingyu Gao; Changcheng Sun; Zhengyi Bao
Journal: Mobile Information Systems
 (2021)

---

## Abstract

The accurate state of health (SOH) estimation of lithium-ion batteries enables users to make wise replacement decision and reduce economic losses. SOH estimation accuracy is related to many factors, such as usage time, ambient temperature, charge and discharge rate, etc. Thus, proper extraction of features from the above factors becomes a great challenge. In order to extract battery’s features effectively and improve SOH estimation accuracy, this article proposes a time convolution memory neural network (TCMNN), combining convolutional neural networks (CNN) and long short-term memory (LSTM) by dropout regularization-based fully connected layer. In experiment, the terminal voltage and charging current of the battery during charging process are collected, and input and output data sets are sorted out from the experimental battery data. Due to the limited equipment in the laboratory, only one battery can be charged and discharged at a time; the amount of battery data collected is relatively small, which will affect the extraction of features during the training process. Data augmentation algorithms are applied to solve the problem. Furthermore, in order to improve the accuracy of estimation, exponential smoothing algorithm is used to optimize output data. The results show that the proposed method can well extract and learn the feature relationship of battery cycle charge and discharge process in a long time span. In addition, it has higher accuracy than that of CNN, LSTM, Backpropagation (BP) algorithm, and Grey model-based neural network. The maximum error is limited to 3.79%, and the average error is limited to 0.143%, while the input data dimension is 514.


---

## Body

## 1. Introduction

Lithium batteries as a power source have received great attention. In the long-term development of batteries, lithium batteries have been able to stand out and gradually replace traditional power sources with the advantages of long cycle charge and discharge life and high energy density. The field of lithium batteries is honored to win the Nobel Prize in chemistry in 2019. However, the Battery Management System (BMS) is still a difficult problem worth studying [1, 2]. Typical BMS includes State of Charge (SOC) [3], State of Health (SOH), State of Function (SOF), and thermal management [4]. The SOH estimation of BMS is one of the most important techniques during the actual operation of batteries’ electrode clean production and manufacturing. At present, the battery’s SOH is characterized by the battery capacity, battery charge, and internal resistance, and the corresponding SOH definition is given from the following aspects [5–7]. In this article, SOH uses the proportional relationship between the current maximum storable capacity and the battery rated capacity [5], and the equation is as follows:(1)SOH=CagedCrated×100%,where Caged is the maximum battery capacity that the battery can currently store and Crated is the battery’s rated capacity. When the percentage drops to 70%, it is judged that the lithium-ion battery has failed [8]. Many studies have been conducted to estimate the SOH accurately. Such methods can be divided into the following three categories: direct measurement methods, model-based methods, and data-driven methods. For direct measurement methods, the SOH of battery is determined by its capacity loss and the increment of its internal resistance [9]. Those methods directly measure the actual discharge capacity of the battery during constant current discharge [10] then calculate the corresponding battery SOH through the battery SOH definition formula (1). The accuracy and reliability of those methods are relatively high and robust. However, the long discharge time greatly affects the actual working efficiency. Furthermore, the battery environment in real operation is very complicated, and the laboratory discharge condition is also different, which all affect the accuracy of the methods and make them impossible for online estimation. Model-based methods can achieve battery SOH estimation by obtaining battery model parameters. It analyzes and utilizes the physical characteristics and internal chemical characteristics of the battery then establish circuit equivalent model [11, 12] or electrochemical model [13]. Han et al. [14] give a comparative analysis of 12 battery models; then, a battery SOH estimation method combining the online model-based capacity estimation is proposed where regular calibration is needed. However, these are always ideal equivalents or empirical models. Furthermore, model-based SOH estimation, without considering the chemical reaction and aging mechanism inside the battery, makes the accuracy of the estimation results difficult to guarantee with the battery ages.From the above analysis, it can be concluded that the physical and chemical characteristics of the battery are very complicated. Different from model-based methods and direct measurement methods, data-driven methods do not need to consider these characteristics and directly start from the data collected in the battery aging experiment; then they conduct data mining and analysis of the information related to the battery health status and then establish the relationship between these features and the battery SOH by machine learning algorithms [15]. For example, a constant-current and constant-voltage protocol [16], the open circuit voltage [17], the peak values of IC curves [18], cycle number [19], incremental capacity [20], differential voltage [21], first 30% of aging trajectories, and candidate features in the voltage response under the current pulse test [22] are chosen as the features to describe the battery degradation. Then, the machine learning methods such as Support Vector Machine (SVM) [18], Support Vector Regression (SVR) [23], Gaussian Process Regression (GPR) [24], Grey Relational Analysis [20], and Radial Basis Function Neural Network (RBFNN) [25] are used to learn the nonlinear mapping from features to SOH.As is well known, the process of battery aging is complicated and there are many factors, such as usage time, the battery’s ambient temperature, charge and discharge rate, etc. These all have an impact on battery aging. However, the traditional data-driven methods present insufficient feature extraction, resulting in affecting the accuracy of battery SOH estimation and there are two key issues that deserve attention. One is the lack of many details when extracting the existing features from the charge and discharge curve, and the features relationship of battery parameters between different cycles during charge and discharge may be easily overlooked due to the large time span. Another is that feature extraction requires human intervention and cannot be done automatically, which will consume a lot of manpower and time. Recently, with the development of deep learning technology, such as convolutional neural network (CNN), deep neural network (DNN), recurrent neural network (RNN), and long short-term memory (LSTM), those networks have been widely used in pattern recognition applications, such as computer vision [26], fault diagnosis [27], and medicine [28]. The successful application in the above fields motivates researchers to apply these methods for SOH estimation. Zhang et al. [29] proposed a Nesterov Accelerated Gradient (NAG) algorithm-based Bidirectional Gated Recurrent Unit (Bi-GRU) network for the battery state of charge (SOC) estimation. Similarly, to overcome the short-term dependence problem of simple RNN, [30] used the variant LSTM to synthesize a data-driven battery RUL predictor. Recently, Fan et al. [31] presented a hybrid neural network called gate recurrent unit-convolutional neural network (GRU-CNN) to map the features from charging voltage, current, and temperature to battery SOH.Different from the mentioned methods above, this article proposes a novel SOH estimation method based on deep learning algorithm. The proposed method is based on the idea that the charging curve during constant current charging can reflect the SOH of battery. Our model combines CNN and LSTM networks into a new network model for SOH estimation, namely, time convolutional memory neural network (TCMNN). The convolutional block of CNN utilizes the shared weights structure to reduce the amount of weights and try to find the shared information from the measured voltage of charging data. For another, the LSTM block uses their internal state (memory) to learn features and time dependencies from the sequential data. In addition, data augmentation algorithms are applied to the training data for the better feature extraction, and exponential smoothing algorithm is used to optimize output data to improve the accuracy of estimation. By training the data collected in NASA [32] and testing the proposed model, the results present the high accuracy and strong feature extraction capabilities and can overcome the short-term dependence problem.The rest of this article is organized as follows. Section2 describes the process and structure of SOH estimation using time convolution memory neural network. Section 3 describes the lithium battery experiment process and data sets partitioning method; then, it applies data augmentation to extend data sets and exponential smoothing as noise reduction. The experiment results are given by the error curves to illustrate the effectiveness of the proposed model in Section 4. Finally, conclusion is given in Section 5.


## 2. Methodologies

### 2.1. Problem Definition

The goal of machine learning is to find and build a suitable model according to the given training samplesxi,yii=1N to get the mapping from training data to target output y, where x is the charge voltage of charging curves, N is the number of training samples, and y is the SOH of Li-ion battery. Thus, the nonlinear mapping f(·) can be established as follows:(2)yi=fxi.This article proposes an improved hybrid neural network named TCMNN to learn the nonlinear mapping shown in Figure1. Both the LSTM and CNN have been applied to deal with the time series prediction problem. This is mainly because the two networks are able to find the shared information (extract feature) and mine the time dependencies from the sequential data, respectively. It is obvious that the architecture is sequential streams. The CNN stream contains three temporal convolution blocks, which consist of a convolution layer, batch normalization, and ReLU activation function. A fully connected (Dense) layer is followed at the end of the CNN for dimension conversion. On the other hand, it contains a long short-term memory (LSTM) layer with dropout and a fully connected (Dense) layer. At the end of the LSTM architecture, the final output projected to the SOH.Figure 1
The time convolutional memory network structure.


### 2.2. CNN

Convolutional neural network is a kind of feedforward neural network, which not only contains convolution calculation function, but also has a certain depth structure. It is often used in computer vision, natural language processing, and other fields [33]. Convolutional neural networks are divided into input layer, hidden layer, and output layer [34, 35]. The schematic diagram of the convolutional neural network is shown in Figure 2. The hidden layer of CNN includes both a convolutional layer with a weighted convolution kernel, a pooling layer for filtering, and a tiled layer for connection, usually called a fully connected layer. In Figure 2, the convolutional layer and the pooling layer in the hidden layer present an alternating pattern.Figure 2
Structure of CNN.


#### 2.2.1. Convolutional Layer

The convolutional layer uses the internal convolution kernel to extract features from the input samples. There are three important parameters in the convolution kernel: the size of the convolution kernel, step size, and padding. These parameters together determine the size of the output feature map of the convolution layer. In the convolutional layer, the activation function is often used to help express the complex features of the input. CNN usually uses the ReLU function. The activation function is used after the convolution kernel, but it is not immutable. There are many types of activation functions, and they are not all used in the same location.


#### 2.2.2. Pooling Layer

After the convolutional layer, a feature map is obtained, and then the pooling layer is used to perform feature selection and information filtering on the feature map. The pooling layer also contains the pooling size, step size, and filling control parameters like the convolution kernel. But the difference from the convolution kernel for weighted sum is that the pooling layer only adjusts these parameters to extract the maximum or average value of the features. The pooling layer can also reduce the number of nodes in the fully connected layer and prevent overfitting.


#### 2.2.3. Fully Connected Layer

The fully connected layer is similar to the hidden layer in the BP neural network. Its structure and corresponding working principle are the same as the hidden layer in BP neural network. Its function is to perform a series of nonlinear combinations on the features extracted after convolutional pooling of the input sample to obtain the corresponding output.


### 2.3. LSTM

The convolutional neural network may be effective for a short-term battery charging and discharging process. But the entire life cycle of the battery is particularly large; it contains hundreds of thousands of cycles of charging and discharging experiments to achieve complete battery aging. The characteristic relationship of battery parameters between cycles may be easily ignored due to the large time span. Therefore, the long short-term memory (LSTM) is introduced. This network is more suitable for processing and predicting important events with long intervals and delays in the time series [36–38]. The long short-term memory network is a time cyclic neural network, which is an improved RNN network. The RNN network takes the data sequence as the input, and recursively recursive all nodes during the model training process [39, 40]. The structure of LSTM is shown in Figure 3. The LSTM network improves the hidden layer structure of the RNN network and makes it more complex to avoid the phenomenon of vanishing gradient. As shown in Figure 3, the LSTM network adds a more complex cell state structure on the basis of only a tanh layer structure. The improved RNN network has the advantage of avoiding gradient explosion in the process of long-term prediction. The core of LSTM consists of input gates, memory gates, and output gates. The memory gates added to the RNN network in the network structure have strong functions. Not only can it selectively forget the useless information in the input time series, but it can also save the valid input information and decide which information to output. This makes the model handle long time sequences well. The calculation formulas in the model structure are shown as follows: (3)it=σWi⋅yt−1,xt+bi,(4)ft=σWf⋅yt−1,xt+bf,(5)ot=σWo⋅yt−1,xt+bo,(6)C˜t=tanhWC⋅yt−1,xt+bC,(7)Ct=ft×Ct−1+it×C˜t,(8)yt=ottanhCt.Figure 3
Structure of LSTM.In above formulas,x and y represent the input samples and output samples of the network; it, f, and o represent the three gates mentioned above; C represents the cell state; and the matrices W and b indicate the weight parameter and the bias term, respectively; σ(·) is the activation function, which is a nonlinear function. Through the above formulas, the output value of the LSTM model can be calculated step by step, and then the function formulas shown in equations are used to update network data by calculating the error and weight of each LSTM neuron in the backpropagation process.(9)S=yt−yt∗2,(10)loss=−1N∑t=1NlnS.In the above formulas,N is the number of samples, yt is the predicted value, and yt∗ is the true value. The memory gate unit added in the LSTM network structure can make good use of long-term information. The door line restriction can timely find and feedback the situation with large data fluctuation. The newly added memory gate cooperates with the input gate and output gate in the traditional RNN to improve the robustness of the network model, which makes the model avoid gradient disappearance or explosion. Since the high utilization rate of LSTM network for long-term sequence, this article uses LSTM to estimate battery SOH.


### 2.4. SOH Estimation Based on TCMNN

The proposed architecture actual implementation is shown in Figure1. According to the capacity definition of battery SOH, the number of neurons of output layer is one. The input and output variables of each estimation model need to have a certain correlation. Through the previous analysis, this article takes the voltage data of the battery constant current charging process as the input variable of the model and combines CNN and LSTM to build a time-based convolutional memory network model for battery health estimation, which can be used to solve complex uncertain problems. The detailed estimation flowchart is shown in Figure 4.Figure 4
The estimation flowchart.Figure4 is the architecture of the estimation system, which consists of data preprocessing and a deep regression model for SOH estimation and the entire process can be described as follows:Step 1. Collect data from the charging process, and change it into the charging data to 258 ∗ 1 vector with equally spaced resample method. Then, normalize the data with min-max algorithm, and spilt data into training data and testing data. In addition, data augmentation algorithms are applied to the training data for better feature extraction, and exponential smoothing algorithm is used to optimize output data to improve the accuracy of estimation.Step 2. Set the channels of input layer; set the numbers of convolutional layers and the numbers of convolution kernel in each convolutional layer; set the size of LSTM layer; set the connection layer between convolutional layers and LSTM layer; set the hyperparameters of the model including the epochs, sequence length, batch size, and iteration; and select the optimization algorithm.Step 3. Apply the training data to obtain model parameters with Adam optimizer.Step 4. Apply the testing data to validate the model accuracy and evaluate the performance of the novel method.


## 2.1. Problem Definition

The goal of machine learning is to find and build a suitable model according to the given training samplesxi,yii=1N to get the mapping from training data to target output y, where x is the charge voltage of charging curves, N is the number of training samples, and y is the SOH of Li-ion battery. Thus, the nonlinear mapping f(·) can be established as follows:(2)yi=fxi.This article proposes an improved hybrid neural network named TCMNN to learn the nonlinear mapping shown in Figure1. Both the LSTM and CNN have been applied to deal with the time series prediction problem. This is mainly because the two networks are able to find the shared information (extract feature) and mine the time dependencies from the sequential data, respectively. It is obvious that the architecture is sequential streams. The CNN stream contains three temporal convolution blocks, which consist of a convolution layer, batch normalization, and ReLU activation function. A fully connected (Dense) layer is followed at the end of the CNN for dimension conversion. On the other hand, it contains a long short-term memory (LSTM) layer with dropout and a fully connected (Dense) layer. At the end of the LSTM architecture, the final output projected to the SOH.Figure 1
The time convolutional memory network structure.


## 2.2. CNN

Convolutional neural network is a kind of feedforward neural network, which not only contains convolution calculation function, but also has a certain depth structure. It is often used in computer vision, natural language processing, and other fields [33]. Convolutional neural networks are divided into input layer, hidden layer, and output layer [34, 35]. The schematic diagram of the convolutional neural network is shown in Figure 2. The hidden layer of CNN includes both a convolutional layer with a weighted convolution kernel, a pooling layer for filtering, and a tiled layer for connection, usually called a fully connected layer. In Figure 2, the convolutional layer and the pooling layer in the hidden layer present an alternating pattern.Figure 2
Structure of CNN.


### 2.2.1. Convolutional Layer

The convolutional layer uses the internal convolution kernel to extract features from the input samples. There are three important parameters in the convolution kernel: the size of the convolution kernel, step size, and padding. These parameters together determine the size of the output feature map of the convolution layer. In the convolutional layer, the activation function is often used to help express the complex features of the input. CNN usually uses the ReLU function. The activation function is used after the convolution kernel, but it is not immutable. There are many types of activation functions, and they are not all used in the same location.


### 2.2.2. Pooling Layer

After the convolutional layer, a feature map is obtained, and then the pooling layer is used to perform feature selection and information filtering on the feature map. The pooling layer also contains the pooling size, step size, and filling control parameters like the convolution kernel. But the difference from the convolution kernel for weighted sum is that the pooling layer only adjusts these parameters to extract the maximum or average value of the features. The pooling layer can also reduce the number of nodes in the fully connected layer and prevent overfitting.


### 2.2.3. Fully Connected Layer

The fully connected layer is similar to the hidden layer in the BP neural network. Its structure and corresponding working principle are the same as the hidden layer in BP neural network. Its function is to perform a series of nonlinear combinations on the features extracted after convolutional pooling of the input sample to obtain the corresponding output.


## 2.2.1. Convolutional Layer

The convolutional layer uses the internal convolution kernel to extract features from the input samples. There are three important parameters in the convolution kernel: the size of the convolution kernel, step size, and padding. These parameters together determine the size of the output feature map of the convolution layer. In the convolutional layer, the activation function is often used to help express the complex features of the input. CNN usually uses the ReLU function. The activation function is used after the convolution kernel, but it is not immutable. There are many types of activation functions, and they are not all used in the same location.


## 2.2.2. Pooling Layer

After the convolutional layer, a feature map is obtained, and then the pooling layer is used to perform feature selection and information filtering on the feature map. The pooling layer also contains the pooling size, step size, and filling control parameters like the convolution kernel. But the difference from the convolution kernel for weighted sum is that the pooling layer only adjusts these parameters to extract the maximum or average value of the features. The pooling layer can also reduce the number of nodes in the fully connected layer and prevent overfitting.


## 2.2.3. Fully Connected Layer

The fully connected layer is similar to the hidden layer in the BP neural network. Its structure and corresponding working principle are the same as the hidden layer in BP neural network. Its function is to perform a series of nonlinear combinations on the features extracted after convolutional pooling of the input sample to obtain the corresponding output.


## 2.3. LSTM

The convolutional neural network may be effective for a short-term battery charging and discharging process. But the entire life cycle of the battery is particularly large; it contains hundreds of thousands of cycles of charging and discharging experiments to achieve complete battery aging. The characteristic relationship of battery parameters between cycles may be easily ignored due to the large time span. Therefore, the long short-term memory (LSTM) is introduced. This network is more suitable for processing and predicting important events with long intervals and delays in the time series [36–38]. The long short-term memory network is a time cyclic neural network, which is an improved RNN network. The RNN network takes the data sequence as the input, and recursively recursive all nodes during the model training process [39, 40]. The structure of LSTM is shown in Figure 3. The LSTM network improves the hidden layer structure of the RNN network and makes it more complex to avoid the phenomenon of vanishing gradient. As shown in Figure 3, the LSTM network adds a more complex cell state structure on the basis of only a tanh layer structure. The improved RNN network has the advantage of avoiding gradient explosion in the process of long-term prediction. The core of LSTM consists of input gates, memory gates, and output gates. The memory gates added to the RNN network in the network structure have strong functions. Not only can it selectively forget the useless information in the input time series, but it can also save the valid input information and decide which information to output. This makes the model handle long time sequences well. The calculation formulas in the model structure are shown as follows: (3)it=σWi⋅yt−1,xt+bi,(4)ft=σWf⋅yt−1,xt+bf,(5)ot=σWo⋅yt−1,xt+bo,(6)C˜t=tanhWC⋅yt−1,xt+bC,(7)Ct=ft×Ct−1+it×C˜t,(8)yt=ottanhCt.Figure 3
Structure of LSTM.In above formulas,x and y represent the input samples and output samples of the network; it, f, and o represent the three gates mentioned above; C represents the cell state; and the matrices W and b indicate the weight parameter and the bias term, respectively; σ(·) is the activation function, which is a nonlinear function. Through the above formulas, the output value of the LSTM model can be calculated step by step, and then the function formulas shown in equations are used to update network data by calculating the error and weight of each LSTM neuron in the backpropagation process.(9)S=yt−yt∗2,(10)loss=−1N∑t=1NlnS.In the above formulas,N is the number of samples, yt is the predicted value, and yt∗ is the true value. The memory gate unit added in the LSTM network structure can make good use of long-term information. The door line restriction can timely find and feedback the situation with large data fluctuation. The newly added memory gate cooperates with the input gate and output gate in the traditional RNN to improve the robustness of the network model, which makes the model avoid gradient disappearance or explosion. Since the high utilization rate of LSTM network for long-term sequence, this article uses LSTM to estimate battery SOH.


## 2.4. SOH Estimation Based on TCMNN

The proposed architecture actual implementation is shown in Figure1. According to the capacity definition of battery SOH, the number of neurons of output layer is one. The input and output variables of each estimation model need to have a certain correlation. Through the previous analysis, this article takes the voltage data of the battery constant current charging process as the input variable of the model and combines CNN and LSTM to build a time-based convolutional memory network model for battery health estimation, which can be used to solve complex uncertain problems. The detailed estimation flowchart is shown in Figure 4.Figure 4
The estimation flowchart.Figure4 is the architecture of the estimation system, which consists of data preprocessing and a deep regression model for SOH estimation and the entire process can be described as follows:Step 1. Collect data from the charging process, and change it into the charging data to 258 ∗ 1 vector with equally spaced resample method. Then, normalize the data with min-max algorithm, and spilt data into training data and testing data. In addition, data augmentation algorithms are applied to the training data for better feature extraction, and exponential smoothing algorithm is used to optimize output data to improve the accuracy of estimation.Step 2. Set the channels of input layer; set the numbers of convolutional layers and the numbers of convolution kernel in each convolutional layer; set the size of LSTM layer; set the connection layer between convolutional layers and LSTM layer; set the hyperparameters of the model including the epochs, sequence length, batch size, and iteration; and select the optimization algorithm.Step 3. Apply the training data to obtain model parameters with Adam optimizer.Step 4. Apply the testing data to validate the model accuracy and evaluate the performance of the novel method.


## 3. Numerical Experiments

### 3.1. Data Collection

In this study, we used data sets from NASA Ames Prognostics Center of Excellence. For NASA data set, 28 cells (#5–7, 18; 25–28; 29–32; 33, 34, 36; 38–40; 41–44; 45–48; 49–52; and 53–56) are divided into 7 different test groups according to the different procedure. Four lithium-ion batteries (5#, 6#, 7#, and 18#) with a nominal capacity of 2Ah are used as the experimental objects and are tested loopily charging and discharging at a constant temperature of 24°C. The detailed experimental conditions of the batteries are shown in Table1. Figure 5 illustrates the diagram of the aging experiment. Batteries’ charging and discharging are implemented at a constant temperature of 20°C. The battery terminal voltage data and the battery life cycle capacity data were collected during the constant current charging process to get four data sets (5#, 6#, 7#, and 18#). Through data normalization processing, the data are divided into two groups: training data and testing data. Among them, the data of three batteries (6#, 7#, and 18#) are used as training data, and 5# is the testing data set.Table 1
Experimental conditions for batteries.
Battery numberDischarge current (A)Discharge temperature (°)Voltage upper (V)Voltage lower (V)Nominal capacity (Ah)B00052244.22.72B00062244.22.52B00072244.22.22B00182244.22.52Figure 5
NASA batteries degradation experiment.Figure6 shows the change of terminal voltage in aging process during battery constant current charging. It can be seen from Figure 7 that the overall trend of the battery terminal voltage change curve during each charging process of the battery is consistent. But after a number of charge and discharge cycles, the initial voltage value of the battery terminal voltage changes. Figure 7 also shows that the four initial battery terminal voltage is not on the same curve during the aging experiment. Then, it can be inferred that the terminal voltage curve of the battery during the constant current charging stage will also present certain features related to SOH.Figure 6
CC-CV charge mode.Figure 7
Terminal voltage change in aging process during battery constant current charging.


### 3.2. Data Augmentation

The battery aging experiment process takes a long time. Due to the limited equipment in the laboratory, only one battery can be charged and discharged at a time, so the amount of battery data collected is relatively small, and the small amount of data will affect the extraction of features during the training process, and small data set also might lead to overfitting. Therefore, data augmentation algorithms are often used to solve the problem of insufficient data. The diagram is shown in Figure8. The batteries are numbered as BatteryID, and the BatteryIDMAX is the last battery. cycleid are the cycles of each battery, and the last cycle is cycleidmax. Thus, build arrays as follows:(11)low=low0,…,lowidx,…,lowcycle_idmax,(12)high=high0,…,highidx,…,highcycle_idmax.Figure 8
Diagram of augmentation.In the arrays, [lowidx, highidx] are the upper and lower limits of augmentation interval, and low0 = high0 = 0. Generate randidx in [lowidx, highidx], and copy 1 to randidx from BatteryID to the end of existing data. If highidx > cycleidx, turn to next battery; else idx++, if BatteryID > BatteryIDMAX, algorithm is over, else idx = 0, and go to the next loop. Data augmentation results are shown in Figure 9.Figure 9
Data augmentation results.


### 3.3. Exponential Smoothing

In the original parameters, it can be found that there are many interference conditions in the measured environment, such as temperature and humidity. Therefore, there are many large pulses and glitches in the measured battery capacity data curve. Estimation tracking capabilities are full of loopholes. In order to reduce the noise and improve the accuracy of the prediction results, we choose exponential smoothing to optimize the output data. The exponential smoothing formula is as follows:(13)yt+1′=ayt+1−ayt′,where yt+1′ is the smooth value at time tyt+1′=ayt+1−ayt′,+ 1, yt is the actual value at time t, yt is the smooth value at time t, and a = 0.7 is the smoothing factor. Data smoothing results are shown in Figure 10.Figure 10
Battery capacity smoothing results.


## 3.1. Data Collection

In this study, we used data sets from NASA Ames Prognostics Center of Excellence. For NASA data set, 28 cells (#5–7, 18; 25–28; 29–32; 33, 34, 36; 38–40; 41–44; 45–48; 49–52; and 53–56) are divided into 7 different test groups according to the different procedure. Four lithium-ion batteries (5#, 6#, 7#, and 18#) with a nominal capacity of 2Ah are used as the experimental objects and are tested loopily charging and discharging at a constant temperature of 24°C. The detailed experimental conditions of the batteries are shown in Table1. Figure 5 illustrates the diagram of the aging experiment. Batteries’ charging and discharging are implemented at a constant temperature of 20°C. The battery terminal voltage data and the battery life cycle capacity data were collected during the constant current charging process to get four data sets (5#, 6#, 7#, and 18#). Through data normalization processing, the data are divided into two groups: training data and testing data. Among them, the data of three batteries (6#, 7#, and 18#) are used as training data, and 5# is the testing data set.Table 1
Experimental conditions for batteries.
Battery numberDischarge current (A)Discharge temperature (°)Voltage upper (V)Voltage lower (V)Nominal capacity (Ah)B00052244.22.72B00062244.22.52B00072244.22.22B00182244.22.52Figure 5
NASA batteries degradation experiment.Figure6 shows the change of terminal voltage in aging process during battery constant current charging. It can be seen from Figure 7 that the overall trend of the battery terminal voltage change curve during each charging process of the battery is consistent. But after a number of charge and discharge cycles, the initial voltage value of the battery terminal voltage changes. Figure 7 also shows that the four initial battery terminal voltage is not on the same curve during the aging experiment. Then, it can be inferred that the terminal voltage curve of the battery during the constant current charging stage will also present certain features related to SOH.Figure 6
CC-CV charge mode.Figure 7
Terminal voltage change in aging process during battery constant current charging.


## 3.2. Data Augmentation

The battery aging experiment process takes a long time. Due to the limited equipment in the laboratory, only one battery can be charged and discharged at a time, so the amount of battery data collected is relatively small, and the small amount of data will affect the extraction of features during the training process, and small data set also might lead to overfitting. Therefore, data augmentation algorithms are often used to solve the problem of insufficient data. The diagram is shown in Figure8. The batteries are numbered as BatteryID, and the BatteryIDMAX is the last battery. cycleid are the cycles of each battery, and the last cycle is cycleidmax. Thus, build arrays as follows:(11)low=low0,…,lowidx,…,lowcycle_idmax,(12)high=high0,…,highidx,…,highcycle_idmax.Figure 8
Diagram of augmentation.In the arrays, [lowidx, highidx] are the upper and lower limits of augmentation interval, and low0 = high0 = 0. Generate randidx in [lowidx, highidx], and copy 1 to randidx from BatteryID to the end of existing data. If highidx > cycleidx, turn to next battery; else idx++, if BatteryID > BatteryIDMAX, algorithm is over, else idx = 0, and go to the next loop. Data augmentation results are shown in Figure 9.Figure 9
Data augmentation results.


## 3.3. Exponential Smoothing

In the original parameters, it can be found that there are many interference conditions in the measured environment, such as temperature and humidity. Therefore, there are many large pulses and glitches in the measured battery capacity data curve. Estimation tracking capabilities are full of loopholes. In order to reduce the noise and improve the accuracy of the prediction results, we choose exponential smoothing to optimize the output data. The exponential smoothing formula is as follows:(13)yt+1′=ayt+1−ayt′,where yt+1′ is the smooth value at time tyt+1′=ayt+1−ayt′,+ 1, yt is the actual value at time t, yt is the smooth value at time t, and a = 0.7 is the smoothing factor. Data smoothing results are shown in Figure 10.Figure 10
Battery capacity smoothing results.


## 4. Results and Discussion

### 4.1. Implementation Details

The training of the temporal convolutional memory network model used in this article is complicated. Simple CPU environment or low-version GPU environment are difficult to support the training of the model. Thus, the training of the neural network in this article is carried out on a higher version with the GTX1080Ti (11 GB on-board memory) graphics card. GPU’s high-performance parallel computing effectively shortens the network training time and is a very suitable hardware platform for the model training in this article. All models were trained using the Keras library with the TensorFlow backend. The parameters of the network were optimized using Adam optimizer with a primary learning rate of 0.001, and the rules for increasing or decreasing the learning rate are as follows: when the number of iterations reaches 1000 times in the training process, the learning rate will be reduced by a multiplier of 0.1. Minibatches are of size 4, and the total number of epochs is 50. The software environment applies the tensorflow_gpu_1.5.0 version installed under the environment of CUDA7.0 and CUDnn9.1. After completing the configuration of the software environment, PyCharm is adopted as a GUI assistance software for code debugging. Table2 summarizes the mean computational times over the 10 runs.Table 2
Execution time of our proposal method and the comparison methods.
MethodsBPNNGrey modelCNNLSTMTCMNNTraining time(s)147.573234.45177.0081775.641512.136Testing time(s)0.280.370.942.0721.513To evaluate the performance of the novel model, maximum error (MAX), mean absolute error (MAE), and mean square error (MSE) are applied as shown below.(14)MAX=maxyi−yi′,(15)MAE=1N∑i=1Nyi−yi′,(16)MSE=1N∑i=1Nyi−yi′2,where yi and yi′ are the expected value and predicted value for a specific charging curve, respectively. N is the total amount of training samples.The training data set obtained above is used for model training, and the model is continuously optimized through the alternation of the forward and back propagation stages in the model training. In the training, the initial learning rate of training is set to 0.001. In the experiment, the batch size of the training process is set to 4, the initial error is set to 10−4, and the number of iterations of training is determined by the actual data set size. The mean square error (MSE) during the entire training iteration is shown in Figure 2. It can be seen from Figure 11 that the iteration error decreases exponentially at the initial stage and then presents a slightly smooth declining curve, which tends to zero overall. This shows that the model tends to convergence. The iterative error fluctuates from 0.02 to 0.1.Figure 11
Training MSE of model.


### 4.2. Experiment Result on Testing Data Set

To validate the performance of the proposed deep learning model based on the collected data set, another two existing SOH estimation algorithms belonging to machine learning are applied for comparison. One method is based on Backpropagation neural network (BP); another is Grey model-based neural network. In the BP neural network, the number of nodes in the two network layers of input and output have generally been determined according to actual needs, and the number of nodes in the hidden layer is generally 1–10. After experimental testing, the experimental effect is better when the number of hidden layer nodes is 7. The Grey model-based neural network is a series combination forecasting model of the Grey model and the BP neural network. It is a combination of the high-precision advantages of the Grey model in dealing with uncertain systems and the good nonlinear mapping of the BP neural network. In addition, to improve prediction accuracy, two features (battery constant current charging time and the initial jump value of terminal voltage during battery discharge) are extracted in advance as input to the above network.


#### 4.2.1. Results and Comparison of Different Methods

The results of model verification are shown in Figures12–16. It is distinct that SOH estimation curves of the five methods for the testing battery are similar to the expected value. In addition, the proposed method (TCMNN) achieves the smallest error, and the quantitive results are shown in Table 3. From the figures, as the number of cycles increases, the capacity of the battery is gradually declining. By simple calculation of the results of those methods, the MAX, MAE, and MSE of SOH estimation results are 0.0379, 0.00143, 0.0076, 0.0245, 0.0472, 0.0884, 0.0164, 0.0588, 0.0657, 0.0037, 0.0121, 0.0400, and 0.1, 0.046, 0.0297, 0.1732 for the TMCNN, BP, Grey model-based, CNN, and LSTM, respectively. In general, the performance of the proposed method is superior to the traditional BP and Grey model-based, but the difference between them is not far apart. That may be due to the success of the feature engineering, which is applied in our experiment. The result further certificates that the deep learning methods can predict the SOH accurately relying on charging curves in the absence of feature engineering, which is necessary to add another data collection program and increases the workload of data collection. Furthermore, the performance of the proposed method is superior to either CNN or LSTM, with a MAX decrease of 57.8% and 62.1%, respectively. Thus, the novel hybrid network combines the superiority of two single networks.Figure 12
BP network estimation (a) result and (b) error.
(a)(b)Figure 13
Grey model-based network estimation (a) result and (b) error.
(a)(b)Figure 14
CNN network estimation (a) result and (b) error.
(a)(b)Figure 15
LSTM network estimation (a) result and (b) error.
(a)(b)Figure 16
TCMNN estimation (a) result and (b) error.
(a)(b)Table 3
Error comparison of SOH estimation algorithms.
MethodMAX (%)MAE (%)MSE (%)TCMNN4.501.9311.14BP4.728.841.64Grey model-based6.570.371.21CNN104.602.97LSTM91.593.25


#### 4.2.2. Analysis of Different Input Data Dimension

The input data of the battery is a two-dimensional matrix composed of the number of cycles of charge and discharge of the battery and the selected voltage data. The selected voltage data dimensions are all 258 dimensions in the previous section, including 256-dimensional voltage data, 1-dimensional battery number, and 1-dimensional battery cycle. Different dimension is conducted to evaluate the effect on prediction results. The dimension is set to 130, 258, and 514, and the estimation results of changed dimensions are shown in Figures17 and 18. From the figures, the fluctuation range of the dimension 130 is −0.028∼0.067, the fluctuation range of the dimension 258 is −0.045∼0.018, and the fluctuation range of the dimension 514 is −0.037∼0.007. Obviously, the higher the dimension, the smaller the model estimation error fluctuation. Through the numerical comparison of the mean square error in Table 4, the estimation error of the model with dimension 514 is significantly less than that of the model with dimensions 130 and 258, indicating that the increase in dimension is indeed beneficial to improve the accuracy of model estimation degree. Note that the larger the dimension, the greater the amount of calculation. Thus, dimension should not be higher than 514.Figure 17
Estimation (a) result and (b) error of dimension 130.
(a)(b)Figure 18
Estimation (a) result and (b) error of dimension 514.
(a)(b)Table 4
Error of different dimensions.
DimensionMAX (%)MAE (%)MSE (%)2584.501.9311.141306.652.7791.685143.790.1430.76


## 4.1. Implementation Details

The training of the temporal convolutional memory network model used in this article is complicated. Simple CPU environment or low-version GPU environment are difficult to support the training of the model. Thus, the training of the neural network in this article is carried out on a higher version with the GTX1080Ti (11 GB on-board memory) graphics card. GPU’s high-performance parallel computing effectively shortens the network training time and is a very suitable hardware platform for the model training in this article. All models were trained using the Keras library with the TensorFlow backend. The parameters of the network were optimized using Adam optimizer with a primary learning rate of 0.001, and the rules for increasing or decreasing the learning rate are as follows: when the number of iterations reaches 1000 times in the training process, the learning rate will be reduced by a multiplier of 0.1. Minibatches are of size 4, and the total number of epochs is 50. The software environment applies the tensorflow_gpu_1.5.0 version installed under the environment of CUDA7.0 and CUDnn9.1. After completing the configuration of the software environment, PyCharm is adopted as a GUI assistance software for code debugging. Table2 summarizes the mean computational times over the 10 runs.Table 2
Execution time of our proposal method and the comparison methods.
MethodsBPNNGrey modelCNNLSTMTCMNNTraining time(s)147.573234.45177.0081775.641512.136Testing time(s)0.280.370.942.0721.513To evaluate the performance of the novel model, maximum error (MAX), mean absolute error (MAE), and mean square error (MSE) are applied as shown below.(14)MAX=maxyi−yi′,(15)MAE=1N∑i=1Nyi−yi′,(16)MSE=1N∑i=1Nyi−yi′2,where yi and yi′ are the expected value and predicted value for a specific charging curve, respectively. N is the total amount of training samples.The training data set obtained above is used for model training, and the model is continuously optimized through the alternation of the forward and back propagation stages in the model training. In the training, the initial learning rate of training is set to 0.001. In the experiment, the batch size of the training process is set to 4, the initial error is set to 10−4, and the number of iterations of training is determined by the actual data set size. The mean square error (MSE) during the entire training iteration is shown in Figure 2. It can be seen from Figure 11 that the iteration error decreases exponentially at the initial stage and then presents a slightly smooth declining curve, which tends to zero overall. This shows that the model tends to convergence. The iterative error fluctuates from 0.02 to 0.1.Figure 11
Training MSE of model.


## 4.2. Experiment Result on Testing Data Set

To validate the performance of the proposed deep learning model based on the collected data set, another two existing SOH estimation algorithms belonging to machine learning are applied for comparison. One method is based on Backpropagation neural network (BP); another is Grey model-based neural network. In the BP neural network, the number of nodes in the two network layers of input and output have generally been determined according to actual needs, and the number of nodes in the hidden layer is generally 1–10. After experimental testing, the experimental effect is better when the number of hidden layer nodes is 7. The Grey model-based neural network is a series combination forecasting model of the Grey model and the BP neural network. It is a combination of the high-precision advantages of the Grey model in dealing with uncertain systems and the good nonlinear mapping of the BP neural network. In addition, to improve prediction accuracy, two features (battery constant current charging time and the initial jump value of terminal voltage during battery discharge) are extracted in advance as input to the above network.


### 4.2.1. Results and Comparison of Different Methods

The results of model verification are shown in Figures12–16. It is distinct that SOH estimation curves of the five methods for the testing battery are similar to the expected value. In addition, the proposed method (TCMNN) achieves the smallest error, and the quantitive results are shown in Table 3. From the figures, as the number of cycles increases, the capacity of the battery is gradually declining. By simple calculation of the results of those methods, the MAX, MAE, and MSE of SOH estimation results are 0.0379, 0.00143, 0.0076, 0.0245, 0.0472, 0.0884, 0.0164, 0.0588, 0.0657, 0.0037, 0.0121, 0.0400, and 0.1, 0.046, 0.0297, 0.1732 for the TMCNN, BP, Grey model-based, CNN, and LSTM, respectively. In general, the performance of the proposed method is superior to the traditional BP and Grey model-based, but the difference between them is not far apart. That may be due to the success of the feature engineering, which is applied in our experiment. The result further certificates that the deep learning methods can predict the SOH accurately relying on charging curves in the absence of feature engineering, which is necessary to add another data collection program and increases the workload of data collection. Furthermore, the performance of the proposed method is superior to either CNN or LSTM, with a MAX decrease of 57.8% and 62.1%, respectively. Thus, the novel hybrid network combines the superiority of two single networks.Figure 12
BP network estimation (a) result and (b) error.
(a)(b)Figure 13
Grey model-based network estimation (a) result and (b) error.
(a)(b)Figure 14
CNN network estimation (a) result and (b) error.
(a)(b)Figure 15
LSTM network estimation (a) result and (b) error.
(a)(b)Figure 16
TCMNN estimation (a) result and (b) error.
(a)(b)Table 3
Error comparison of SOH estimation algorithms.
MethodMAX (%)MAE (%)MSE (%)TCMNN4.501.9311.14BP4.728.841.64Grey model-based6.570.371.21CNN104.602.97LSTM91.593.25


### 4.2.2. Analysis of Different Input Data Dimension

The input data of the battery is a two-dimensional matrix composed of the number of cycles of charge and discharge of the battery and the selected voltage data. The selected voltage data dimensions are all 258 dimensions in the previous section, including 256-dimensional voltage data, 1-dimensional battery number, and 1-dimensional battery cycle. Different dimension is conducted to evaluate the effect on prediction results. The dimension is set to 130, 258, and 514, and the estimation results of changed dimensions are shown in Figures17 and 18. From the figures, the fluctuation range of the dimension 130 is −0.028∼0.067, the fluctuation range of the dimension 258 is −0.045∼0.018, and the fluctuation range of the dimension 514 is −0.037∼0.007. Obviously, the higher the dimension, the smaller the model estimation error fluctuation. Through the numerical comparison of the mean square error in Table 4, the estimation error of the model with dimension 514 is significantly less than that of the model with dimensions 130 and 258, indicating that the increase in dimension is indeed beneficial to improve the accuracy of model estimation degree. Note that the larger the dimension, the greater the amount of calculation. Thus, dimension should not be higher than 514.Figure 17
Estimation (a) result and (b) error of dimension 130.
(a)(b)Figure 18
Estimation (a) result and (b) error of dimension 514.
(a)(b)Table 4
Error of different dimensions.
DimensionMAX (%)MAE (%)MSE (%)2584.501.9311.141306.652.7791.685143.790.1430.76


## 4.2.1. Results and Comparison of Different Methods

The results of model verification are shown in Figures12–16. It is distinct that SOH estimation curves of the five methods for the testing battery are similar to the expected value. In addition, the proposed method (TCMNN) achieves the smallest error, and the quantitive results are shown in Table 3. From the figures, as the number of cycles increases, the capacity of the battery is gradually declining. By simple calculation of the results of those methods, the MAX, MAE, and MSE of SOH estimation results are 0.0379, 0.00143, 0.0076, 0.0245, 0.0472, 0.0884, 0.0164, 0.0588, 0.0657, 0.0037, 0.0121, 0.0400, and 0.1, 0.046, 0.0297, 0.1732 for the TMCNN, BP, Grey model-based, CNN, and LSTM, respectively. In general, the performance of the proposed method is superior to the traditional BP and Grey model-based, but the difference between them is not far apart. That may be due to the success of the feature engineering, which is applied in our experiment. The result further certificates that the deep learning methods can predict the SOH accurately relying on charging curves in the absence of feature engineering, which is necessary to add another data collection program and increases the workload of data collection. Furthermore, the performance of the proposed method is superior to either CNN or LSTM, with a MAX decrease of 57.8% and 62.1%, respectively. Thus, the novel hybrid network combines the superiority of two single networks.Figure 12
BP network estimation (a) result and (b) error.
(a)(b)Figure 13
Grey model-based network estimation (a) result and (b) error.
(a)(b)Figure 14
CNN network estimation (a) result and (b) error.
(a)(b)Figure 15
LSTM network estimation (a) result and (b) error.
(a)(b)Figure 16
TCMNN estimation (a) result and (b) error.
(a)(b)Table 3
Error comparison of SOH estimation algorithms.
MethodMAX (%)MAE (%)MSE (%)TCMNN4.501.9311.14BP4.728.841.64Grey model-based6.570.371.21CNN104.602.97LSTM91.593.25


## 4.2.2. Analysis of Different Input Data Dimension

The input data of the battery is a two-dimensional matrix composed of the number of cycles of charge and discharge of the battery and the selected voltage data. The selected voltage data dimensions are all 258 dimensions in the previous section, including 256-dimensional voltage data, 1-dimensional battery number, and 1-dimensional battery cycle. Different dimension is conducted to evaluate the effect on prediction results. The dimension is set to 130, 258, and 514, and the estimation results of changed dimensions are shown in Figures17 and 18. From the figures, the fluctuation range of the dimension 130 is −0.028∼0.067, the fluctuation range of the dimension 258 is −0.045∼0.018, and the fluctuation range of the dimension 514 is −0.037∼0.007. Obviously, the higher the dimension, the smaller the model estimation error fluctuation. Through the numerical comparison of the mean square error in Table 4, the estimation error of the model with dimension 514 is significantly less than that of the model with dimensions 130 and 258, indicating that the increase in dimension is indeed beneficial to improve the accuracy of model estimation degree. Note that the larger the dimension, the greater the amount of calculation. Thus, dimension should not be higher than 514.Figure 17
Estimation (a) result and (b) error of dimension 130.
(a)(b)Figure 18
Estimation (a) result and (b) error of dimension 514.
(a)(b)Table 4
Error of different dimensions.
DimensionMAX (%)MAE (%)MSE (%)2584.501.9311.141306.652.7791.685143.790.1430.76


## 5. Conclusion

This article proposes a time convolutional memory neural network model for battery health estimation. By combining the traditional CNN and LSTM network and employing the data augmentation and exponential smoothing algorithm, a novel time convolutional memory network model is constructed. Furthermore, the training data and testing data are collected from NASA to train and test the combined model, respectively. In addition, the BP algorithm, Grey model-based neural networks, traditional CNN, and LSTM are employed to estimate SOH to compare with the proposed method. Experiment result shows that the proposed method is superior than the existing algorithms; the prediction maximum error is 3.79% and average error is 0.143%, while the input data dimension is 514. The accuracy of the estimation is analyzed to verify the time convolutional memory network model, which can be used to estimate battery health. Besides, the process of extraction of features, which is time-consuming and sometimes complexed, is not needed. Priorities for future work are simplifying the network structure without loss of accuracy, enabling the model to run in the embedded system, and realizing online SOH estimation in electric vehicles.



---

*Source: 4826409-2021-12-14.xml*