Lithium-Ion Batteries State of Charge Prediction of Electric Vehicles Using RNNs-CNNs Neural Networks

In order to achieve the safe and efficient energy use in the electric vehicle, the continuous and accurate monitoring of lithium-ion batteries (LIBs) has become a long-standing research hot spot. However, existing researches of LIBs state of charge (SOC) prediction are at the cost of unrefined vector representation and inadequate feature extraction, which have been unable to meet prediction requirements of LIBs SOC. Complementarily, in this study, a deep learning-based SOC prediction model is proposed to ensure reliable vector representation and sufficient feature extraction. In order to improve battery data representation, a recursive neural networks (RNNs)-based method is proposed. Then, aiming to fully extract feature information, a multi-channel extended convolutional neural networks (CNNs)-based method, which is fed with the well-trained vector representation, is proposed to accurately predict LIBs SOC. Based on the reliable vector representation and sufficient feature extraction, the proposed method can provide improved SOC prediction performance. Merits of the proposed method are verified using simulation test, which shows that the proposed method gives improved prediction performance of 4.3% and 11.3% compared with recurrent neural networks and Ah counting method, respectively.


I. INTRODUCTION
The past years have witnessed the significant development of electric vehicle industries, which have played a significant role in improving the natural environment [1]. Lithium-ion batteries (LIBs) are widely preferred in electric vehicles [2], [3]. Battery management system (BMS) [4] can improve energy efficiency and prolong the remaining service life of batteries by supervising and controlling LIBs' operation appropriately [5], which ensures the normal work of the battery within a safe range. The working mechanism of LIBs in electric vehicles is shown in FIGURE 1. It illustrates the simplified structure of LIBs, which are composed of the positive material of the battery, the cathode material of the battery, electrolyte, diaphragm and battery case. It also describes The associate editor coordinating the review of this manuscript and approving it for publication was Min Xia . the charging and discharging process of LIBs, which clearly marks out the movement direction of lithium ions and electrons.
The key function of BMS is to monitor the state of batteries and ensure the safe operation of batteries. It is worth mentioning that state of charge (SOC) [6], [7] is considered as battery's energy gauge which is one of the uppermost states of BMS [4]. SOC reflects the ratio of the battery's utilizable capacity to its nominal capacity and can be written as follows: SOC = C r C I , where C r denotes the remaining capacity of the battery, and C I denotes the capacity of the battery when it is discharged at a constant current I . Accurate SOC estimation is essential, and techniques for battery SOC estimation could be achieved by various methods such as Ampere-hour (Ah) counting method, open-circuit voltage (OCV) method, extended kalman filter (EKF) method and deep neural networks (DNNs) method.  Ah counting, also called Coulomb counting method [8], is one of the most straightforward approaches of SOC prediction, in which SOC is determined by integrating charging and discharging currents during operating period. However, Ah method suffers from poor precision owing to accumulation of the current sensor error [9]. Another rational method of SOC estimation is OCV method [10] where voltage of the battery is directly correlated with charging status of the battery. However, this method needs to disconnect loads, and the open-circuit voltage can only be measured after the battery is stationary for a long time. Another technique for battery SOC estimation is EKF method, which is usually used in non-linear systems. EKF method uses partial derivatives and first order Taylor series expansion to linearize the battery model. This method can often produce good battery SOC estimation, but it causes problem such as bad application in real-time, as well. Thus, it raises urgencies of exploring other alternatives regarding SOC prediction of LIBs.
In order to address these above-mentioned impediments, a simple and effective optimization technique based on deep neural networks (DNNs) is proposed. DNNs have been successfully applied to various perceptual domains, including computer vision and natural language processing. Moreover, DNNs-based techniques are showing impressive performance in new domains such as medicine and finance. Success in non-perceptual domains suggests that DNNs-based techniques could be successfully used to develop BMS so as to monitor SOC of LIBs [11], [12]. Therefore, the DNNs-based SOC prediction method has been a growing research field in recent years. Among the various fields of DNNs, recursive neural networks (RNNs) perform well in natural language processing, and convolutional neural networks (CNNs) are better than most existing models in image recognition. RNNs store sequential information in hidden memory to properly process, represent, and store information. CNNs extract abstract feature information like points, lines, and faces of the input data, and preserve the relationship between the input data.
In recent years, many researchers have conducted to extract features by combining RNNs and CNNs. LIBs SOC prediction problem also deals with the correlation between multivariate variables. Most classical methods only use some features and only model single feature information for LIBs SOC prediction. Since RNNs model battery data and map battery information into separable space and CNNs are used to remove noise and to extract feature information between multivariate variables, RNNs-CNNs model is chosen to predict LIBs SOC.
Motivated by the aforementioned observations, in this paper, a RNNs-CNNs neural network combining RNNs and CNNs is proposed to predict LIBs SOC. Due to the inadequate vector representation of battery data, an adaptive vector representation model based on RNNs is proposed. Then, in order to fully extract feature information, the well-trained VOLUME 8, 2020 vectors are integrated into multi-channel extended CNNs to realize accurate SOC prediction.
Main contributions of this paper are stated below: • To improve battery data representation, LIBs data is fully represented by establishing the RNNs-based data representation model. The model provides the refined vector representation of battery data for subsequent SOC prediction, which ensures validity and stability of SOC prediction.
• To fully extract feature information, a multi-channel extended CNNs-based model, which is fed with the well-trained battery vector representation, is proposed to extract the unknown feature information hidden in battery vector.
• Extensive simulation using LIBs subject to dynamic current profiles, dynamic voltage profiles and change in temperature, is conducted. Simulation results demonstrate that, in terms of mean absolute error, our scheme improves 4.3% and 11.3% compared with recurrent neural networks and Ah counting method, respectively. The rest of this paper is organized as follows: Section II gives an overview of related work. Section III presents the problem and challenges. Section IV analyzes the method of SOC estimation of LIBs. In Section V, the experimental results are presented. Finally, Section VI concludes the paper.

II. RELATED WORK
In this section, the most relevant works with regard to LIBs SOC estimation are briefly presented, and differences between our research and existing researches are identified.
Many researches of battery SOC estimation, each with its own advantages and limitations, were proposed [13]. The most commonly used estimation models include electrochemical mechanism model [14], Ah counting model [15], equivalent circuit model (ECM) [16], neural network model [17] and other SOC estimation models.
A detailed review of electrochemical mechanism models is presented in [18]. Since electrochemical model can analyse the battery mechanism, the model is increasingly popular. However, since battery parameters have relationship with the structure, dimensions and materials of batteries, the model is too complicated to estimate LIBs SOC efficiently. Ah counting method is trivial to be implemented, which is often used in the battery SOC prediction [19]. In practice, due to uncertain disturbances, Ah counting method may induce accumulated estimation errors. In addition, the method requires a known initial value to estimate LIBs SOC adaptively, but it is quite challenging to determine the initial SOC value. ECM has advantages of intuitive structure and low computational requirement [20]; hence, the model has been widely used in the SOC estimation. However, since ECM mimics the input-output behavior by electric components such as resistors and capacitors, it cannot accurately characterize electrochemical dynamics. Different from the above systems, neural network model can show the nonlinear relationship between SOC and its influencing factors. Many intelligent approaches, such as artificial neural networks (ANNs) model [12], fuzzy logic model [21], RNNs model [22] and support vector regression (SVR) model [23], were proposed to establish SOC estimation models. This type of methods have the powerful function of approximating nonlinear function, which can often provide good SOC estimation [24].
Recently, the idea of battery uncertainties online estimation has been introduced to achieve higher precision in the LIBs SOC estimation. With the development of neural network technologies, a radial basis function (RBF) neural network is provided to solve the estimation uncertainty in the online training [25]. To be more specific, a RBF neural network-based nonlinear observer is designed to estimate LIBs SOC. Then, following Lyapunov stability analysis, it is proved that battery's SOC estimation error is ultimately bounded and the error bound can be arbitrarily small. In [26], a more accurate method using ANNs is investigated for SOC estimation. More specifically, a state observer based on electrochemical principles is designed, and this electrochemical observer is simulated using ANNs. The result from undertaking this research provided more accurate SOC estimation of real-time applications. In summary, compared with other kinds of models, neural network-based models are the most suitable models of LIBs SOC estimation.

III. PROBLEM DESCRIPTION AND CHALLENGES
In this section, the problem of existing models is presented. And then, the challenges faced by the system are summarized.

A. PROBLEM DESCRIPTION
In the battery control system, SOC is one of the most critical parameters. The estimation of battery remaining capacity is mainly achieved by SOC prediction. SOC plays an important role in managements of battery energy use, which prevents the batteries from overcharging and overdischarging [27], [28]. In addition, the estimation performance of the battery remaining capacity has a significant influence on driving safety of electric vehicles. Therefore, a welldeveloped model plays a crucial role in accurate SOC prediction. However, existing methods of LIBs SOC prediction are at the cost of unrefined vector representation and inadequate feature extraction, which have been unable to meet prediction requirements of LIBs SOC.

B. CHALLENGES
Aiming to make prediction performance of LIBs SOC achieve a certain level of accuracy, a number of problems need to be solved in the deep learning-based SOC prediction model. That is, how the model implements a refined vector representation of battery data, and how the model realizes sufficient feature extraction for accurate SOC prediction of LIBs. The challenges can be summarized as follows: • It is difficult to obtain a sufficient vector representation of LIBs information owing to the incomplete expression of the relationship between multiple statuses.
• The CNNs-based model is a promising way to solve the low accuracy of SOC prediction. However, a huge challenge remains on the transmission of feature information within a network-such as only using single channel to extract feature information. We note that a refined vector representation of battery data is the prerequisite for accurate SOC prediction. Before improving predictive performance, the refinement vector representation of battery data is first realized.

IV. THE METHOD OF STATE OF CHARGE PREDICTION
In this section, a DNNs-based SOC observer is proposed to accurately predict LIBs SOC. More specifically, a data representation model based on RNNs is presented to obtain the fine vector representation. Then, a multi-channel extended CNNs-based model is proposed to extract feature information hidden in vectors.

A. A RECURSIVE NEURAL NETWORKS-BASED VECTOR REPRESENTATION MODEL
The implementation details of data representation model include two parts. Firstly, a data representation model is constructed. Secondly, the vector space model is trained to realize the sufficient vector representation.

1) THE FUNDAMENTALS OF RECURSIVE NEURAL NETWORKS
RNNs have the rich expressive power and deterministic internal dynamics, which provide a computationally attractive alternative. Now the example of RNNs training is considered. Assume that there is a parse tree (h 2 (h 1 xy)z) where x, y and z show inner vector representations. The representation of a parent node is computed in a bottom up manner. In order to compute the parent node, a neural network containing the weight matrix W 1 ∈ O n×n for left children and the weight matrix W 2 ∈ O n×n for right children, is used. For every parent node h, a vector representation h i is assumed. h 1 is computed as follows: where f is an activation function (e.g., sigmoid or tanh), W 1 is the weight matrix for left children, W 2 is the weight matrix for right children, x and y are child nodes, and b is a bias vector. Next, h 2 can be computed, moving a level up in the hierarchy. The representation of parent node is given as follows: where z is the child node. The process is continued until the root node is reached. RNNs are used to parse text into a structured tree. The nodes in the tree represent interdependence of words in the text. That is, larger feature is divided into a number of small features, each of which exists on the basis of their internal correlations.

2) THE VECTOR REPRESENTATION MODEL
In order to obtain the appropriate vector representation of battery data, building the data representation model is an important yet challenging task. The data representation model is expected to remove redundant information to meet the demands of subsequent SOC prediction. At dealing with the structured representations of LIBs data, the compact vector representations are expected to provide, but the compact vector representations are difficult to obtain directly. To address the above-mentioned impediment, a novel RNNs-based data representation model is proposed.
In the RNNs-based vector representation model, battery state values such as temperature, voltage and current are vectorized. The model obtains LIBs state data and then maps n × 1 dimension data into the vector space of n × m dimen- T represents the temperature value, V represents the voltage value, and C represents the current value.) Here, the dimension n of the data is equal to 3. Analogously, when the input is temperature and voltage, the dimension n of the data is equal to 2. Hence, a input is X 2×1 = T V . RNNs requires the vector representation of the input original data as output. Moreover, the correlation between battery data is saved to the vector space due to the powerful logic analysis advantage of neural networks. When the network inputs are temperature, voltage and current, the network output is Here, the range of i is 1 < i ≤ m, t i represents the ith data vector of temperature, v i represents the ith data vector of voltage, and c i represents the ith data vector of current. The process provides the refined vector representation of battery data for later SOC prediction, which ensures correctness and stability of SOC prediction. Construction steps of the vector representation model are as following: Step 1: Build the RNNs-based vector representation model in Matlab 2016a.
Step 2: Train the vector representation model by adjusting model parameters to realize the refined vector representation.

3) TRAINING VECTOR SPACE MODEL
The experiment platform is installed on high performance server and operated in Matlab environment. At first, environment and GCC are updated. Next, Java running environment is built. Meanwhile, mathematical processing tools: Numpyscipytheano and Pylearn2, are installed. Then, DNNs kit: Scikit-neural network, Java test tool and some dependence, is installed. Afterwards, the display environment is initialized. Finally, the vector space model is trained.
Training steps of the model are as follows: Step 1: Input 80% of the collected data into RNNs model.  Step 2: Training the RNNs-based vector space model in Java environment.
Step 3: Observe training errors, and adjust model parameters.
Step 4: Terminate training within the error range.
Step 5: Input the remaining 20% data to validate model performance.
Step 6: If the error is not less than 0.02, keep the vector space dimension unchanged, adjust model parameters, and repeat Step 1-Step 5 to continue training. FIGURE 2 shows the training process of the RNNs-based vector representation model where X-axis represents the number of iterations, Y-axis represents the number of training, and Z-axis represents the training error (namely mean absolute error). Mean absolute error is to calculate the absolute value of the error between the output value and the true value. The training process shows that the initial learning rate is large resulting in faster convergence of the model. When the training error changes more gently and the error is less than 0.02, the training process is completed. It will take 1536 seconds for one-time training process.
LIBs data is mapped by RNNs, and one-dimensional data of voltage and temperature is mapped to the high-dimensional space of 40 dimensions. LIBs data is represented refinedly, and the non-linear evolution of LIBs data is described in detail. FIGURE 3 shows that voltage and temperature of the first batch are respectively intercepted in the 3d vector space. Note that colors in the FIGURE 3, such as green, blue and cyan, represent the state information of LIBs under a SOC value. As shown in FIGURE 3, coordinates of voltage and temperature data are distributed in −1.0 ∼ 1.0. In the same SOC, voltage and temperature map to different positions in the vector space; in the different SOC, the distribution of voltage and temperature in vector space is fused with each other; in the same coordinate space region, there are voltage and temperature under different SOC. This indicates that SOC of LIBs is affected by state information such as temperature and voltage.

B. THE MULTI-CHANNEL EXTENDED CONVOLUTIONAL NEURAL NETWORKS-BASED FEATURE EXTRACTION MODEL
In this section, the operation steps of the CNNs-based feature extraction model are shown below. Firstly, a feature extraction model is constructed. Secondly, benefiting from the performance characteristic of CNNs, the training operation of the model is performed to accurately predict LIBs SOC.

1) THE INTRODUCTION OF CONVOLUTIONAL NEURAL NETWORKS
CNNs are a kind of feed-forward neural networks, which are equipped with convolution layers interleaved with pooling layers. Convolution layers include a number of computation units, and every unit takes small region vectors as input. The nonlinear activation function be applied to every vector component. This study makes use of Rectified Linear Unit (namely, ReLU). CNNs with ReLU train several times faster than its equivalents with sigmoid.
Pooling layers take convolution layers' output as input. In order to make top layer obtain more abstract and more global feature vectors, pooling layers substantially reduce  dimensions of input by incorporating neighboring region vectors. Pooling layers are composed of a number of pooling units, and every pooling unit has a connection with small region vectors. Top layer makes use of these feature vectors to make prediction [29], [30], and then the output layer of networks exports results.
Different from most neural networks, CNNs are marked by local connection [31], weight sharing [32] and pooling [33]. Firstly, local connection decreases parameters of hidden layers and simplifies the complexity of the model. Secondly, weight sharing is another striking feature of CNNs, which makes the model obtain translation invariance and enhances the generalization ability. In addition, weight sharing also reduces parameters of hidden layers. Thirdly, pooling is another important concept of CNNs. The goal of the pooling operation is to condense a certain dimension of feature vectors into a feature vector. Existing pooling methods are divided into average pooling method and max pooling method, which respectively calculates mean value and maximum value of each region feature vector [34], [35].

2) THE FEATURE EXTRACTION MODEL
The feature extraction model based on CNNs is composed of three parts: training module, validation module and test module, as shown in Alg. 1. In order to fully extract feature information, the model transmits the well-trained vectors by multiple channels, which realizes the accurate prediction of LIBs SOC, as shown in FIGURE 4. In the prediction model, the convolution operation uses single-step convolution, and the pooling operation uses average pooling. The implementation details of the prediction model are shown in FIGURE 4. The inner representation of the convolutional operation is given by where temp represents the convolutional operation, I is input of the convolutional layer, and KA is the convolution kernel of the convolutional layer. C represents output of the convolutional layer, with C defined as follows where f is an activation function (eg., tanh, sigmoid or ReLU), η is the learning rate, and b1 is a bias vector. Pool represents the pooling operation, and Pool is computed as follows Having computed Pool, then S can be computed as follows where S is output of the pooling layer, and b2 is a bias vector. SOC is the output label, the dimension of which is n × 1. SOC n×1 is defined as follows where W is a weight vector, S is output of the pooling layer, and b3 is a bias vector. VOLUME 8, 2020

3) TRAINING FEATURE EXTRACTION MODEL
The rich vector representation learned during RNNs training facilitates further training of CNNs. In the training process of CNNs, firstly, the residual is calculated layer by layer, and then the layer error is inversely derived. Next, combined with the learning rate, the weight and the bias of each layer are updated by the derivative of the activation function. Finally, model training is realized.
The specific training process is as follows: firstly, the residual of the output layer is calculated as follows δ n×1 = tarSOC n×1 − SOC n×1 (8) where, δ n×1 is the residual of the output layer, tarSOC n×1 is the target output (namely, the true measured SOC value), and SOC n×1 is the actual output of the prediction model. Let the j th submatrix of the l th layer be where, a, b, c and d are elements inside the matrix. Set the size of the pooling area to 2 × 2, upsample the above matrix, and expand each row and column of the matrix by 1 where the matrix is filled with 0. Obtain the following new matrix In this paper, average pooling is adopted to average the pooled area (namely 2 × 2), and the new matrix is expressed as  These above formulas (9) (10) (11) are upsample processes. After the pooling operation, the formula for calculating the feedback error of the network is described by where J is the error, ω is a weight vector, σ is an activation function, and Input l is the l th input. Hence, the network can obtain the first reverse input of convolution. Then, in the backpropagation process, the formula solving the convolutional error is expressed as where, rot180 represents rotating the shared matrix ω 180 degrees, σ represents the derivative of the activation function, and Input l−1 represents the (l − 1) th input. Finally, the gradient descent algorithm is used to continuously update parameters to obtain the optimal solution of the error function. Gradients of the shared weight ω and the bias term b are calculated by the error function, and then the weight and the bias term are updated. In this way, the error function J (ω, b) updates parameters as follows where ω k is a weight of the k th neuron, ω k is the updated weight of the k th neuron, η is the learning rate, ∂J (ω,b) ∂ω k means that the error function takes the partial derivative of the weight. Similarly, b l is a bias of the l th neuron, b l is the updated bias of the l th neuron, ∂J (ω,b) ∂b l means that the error function takes the partial derivative of the bias. Equation (14) and Equation (15) FIGURE 5 (a) has smaller error fluctuation, in which the error is lower in most cases. Clearly, increasing current parameters does not improve model performance when raw data is used as input. Moreover, neither of them is strictly monotonous, and the error is relatively high which is all above 0.6. Thus, the model which is trained directly with the raw data cannot meet the effective SOC prediction. Besides, FIGURE 5 (b) and FIGURE 5 (d) are relation diagrams of the error rate, the number of iterations and training times in the training process. In order to obtain feature vectors (namely, TV − Vec and TVC − Vec), the raw battery data is trained by RNNs. Then, the learned vectors are integrated into the CNN-based prediction model. From FIGURE 5 (b) and FIGURE 5 (d), the error is less than 0.02. In the case of adding a current parameter, the model needs to be iterated 500 times approximately to converge the optimal value, as shown in FIGURE 5 (d). Why does the excess current parameter  increase the number of iterations? The reason is that adding the current parameter increases computational complexity, which in turn increases computational resource consumption. In addition, the consumption of computing resources affects the logical reasoning ability of DNNs model, which in turn affects the prediction performance of the model to some extent.
In TABLE 1, we note that in the vector space (namely TV − Vec or TVC − Vec), mean absolute error is 0.019 or 0.037; nevertheless, in the non-vector space (namely TV or TVC), mean absolute error is 0.109 or 0.139. Based on these observations, we find that the prediction ability in the vector space is obviously stronger than that in the non-vector space. Mean absolute error in the non-vector space is greater than 0.13 (such as 0.139), which is difficult to meet prediction requirements of LIBs SOC. Compared with non-vector space, simulation results demonstrate that vector space improves 12% in prediction performance. In addition, training time of TVC is more than that of TV . Analogously, training time of TVC − Vec is more than that of TV − Vec. The reason is that the additional current data adds computational burden of the computer, wastes computational resources and leads to impaired model performance ultimately. Moreover, training time in the vector space is obviously greater than that in the non-vector space. The reason is that the data dimension in vector space is larger, which means the data representation is more complex, so the model needs more time to train. It is worth mentioning that in both vector space and non-vector space, the number of iterations is 900.
The whole data set can be randomly divided into training set (70%), validation set (10%) and testing set(20%). Training set is used to update weights and biases; validation set is able to adjust hyperparameters; testing set is employed to evaluate model performance. In terms of hyper-parameter setting, batch-size and hidden layers of CNNs are optimized manually through 50-fold cross-validation. Keeping other parameters unchanged, CNNs runs 50 epoches setting batch-size to 256, 512, 1024, 2048, 4096 and 8192. The average loss function values of each batch-size during 50 epoches are regarded as the evaluating indicators. FIGURE 6 (a) shows that the loss function value of batch-size=2048 is lower than that of other batch-size; hence batch-size of CNNs to be optimized is set as 2048. Then, keeping batch-size=2048 and remaining parameters unchanged, the setting of hidden layer number is given as 1, 2, 3, 4, 5, 6, 7, 8, 9, 10. FIGURE 6 (b) indicates the best setting of hidden layers is 7 under the condition of batch-VOLUME 8, 2020 size=2048. We find that the depth of hidden layers improves model performance. The reason is that the more hidden layers is, the more feature information the model extracts. However, as the number of hidden layers increases, the model becomes more and more complex, which adds computational burden of the computer, wastes computational resources and leads to impaired model performance ultimately. Note that since the loss function was convergent during 60 epoches, epoches are set as 50. In addition, dropout remains to be 0.1 because there is no overfitting phenomenon in the training process.

V. SIMULATION RESULTS
In this section, simulation is conducted to illustrate validity of the proposed SOC prediction algorithm.

A. DATASET
Dataset collected by relevant scholars is derived from Red Star X1 electric vehicles, which are produced by Do -Fluoride Chemicals Co., Ltd. The electric vehicle uses LIBs as the power battery. Battery specification is 111V, 192Ah, battery capacity is 21.3Kwh, energy density is greater than 120 wh/kg, and maximum mileage is 190Km. 20 cell monomers, which are the same capacity (namely C I ), are connected in series. The temperature and voltage of 20 cell monomers, the total current and the true measured SOC value (that is, twenty temperature values, twenty voltage values, one total current value and one true measured SOC value) are collected in one batch.
In order to collect LIBs SOC in the dataset, firstly, the standard charging method is adopted to charge the lithium battery with constant current, so that SOC of the lithium battery is 100%. Then, the lithium battery is discharged, and the current is taken once every 5 seconds with a high-precision current meter. Finally, SOC is calculated by Ah counting method. The formula for calculating SOC by Ah counting method can be expressed as where SOC k+1 represents the SOC value at time k + 1, which is also the SOC value to be calculated; SOC k represents the SOC value at time k; C I represents the capacity of the battery when it is discharged at a constant current I ; i represents current; k+5 k idt is the integral of current i over time t (Note that owing to small fluctuations in the current, it is collected by a high-precision current meter every 5 seconds.); C r k denotes the remaining capacity of the battery at time k; C r k+1 denotes the remaining capacity of the battery at time k + 1.
The true measured SOC value in the dataset is compared with the predictive SOC value of the proposed model to verify the predictive ability of the proposed model. Note that when cell monomers with the same capacity are connected in series, the voltage increases, but the capacity remains the same (namely C I ). In addition, since the remaining capacity of the battery (namely C r ) can be obtained by Ah counting method, SOC for a LIBs pack can be obtained as well. Sampling period is 15 seconds, sampling time is 24 hours, and total acquisition batches are 60. Thus, 24 × 3600 ÷ 15 × 42 × 60 = 14515200 pieces of data were collected, which is regarded as a corpus to make simulation.
Taking the first batch of data as an example, the data space composed of voltage, temperature, current and SOC of 20 cell monomers is shown in FIGURE 7. In FIGURE 7 (a), the temperature of LIBs varies complicated during the collection period, and the temperature of each cell monomer is different. This indicates that the working environment of the electric vehicle is complex, and the temperature change of LIBs is affected by the running state of the electric vehicle. In FIGURE 7 (b), the current appears to break out in a steady state. Due to the small number of sudden changes in the whole collection cycle, it could be the high current generated by electric cars when they start. In FIGURE 7 (c), the voltage of LIBs shows a trend of decreasing step by step during the collection period. In addition, the voltage of each cell monomer is inconsistent at the same time. In FIGURE 7 (d), given the spatial relationship between current, temperature and voltage, it can be seen that the relationship between them is complicated. In FIGURE 7 (e), SOC decreases with the increase of collecting time. In FIGURE 7 (f), the lower the voltage is, the less SOC of LIBs is, but the overall is neither in direct proportion nor a smooth surface, thus the temperature has some influence on SOC.

B. PERFORMANCE EVALUATION
The prediction model based on CNNs is applied to LIBs SOC prediction. From above training models, the model with the least error is selected for SOC prediction. In FIG-URE 8, the true value is represented by the red curve, and the predicted output value is represented by the blue curve. During the test process, the true value is represented by the red ''o'', and the predicted output value is represented by the blue ''*''. Observing the distance between the red ''o'' and the blue ''*'' during the test process, the predictive performance of the model can be obtained, as shown in FIGURE 8. FIGURE 8 shows predicted performance of different types of input data. In FIGURE 8 (a), the raw data of the temperature and the voltage is used for model input. That is, the prediction ability in the vector space is obviously stronger than that in the non-vector space. TABLE 2 shows the relationship between mean absolute error and resource allocation in the prediction process. (Note that, in TABLE 2, the input length is represented by N and MAE means mean absolute error.) In the case of using the raw data as input, mean absolute error is relatively high (e.g., 0.135), which cannot meet accuracy requirement of the prediction model. However, under the vector space, mean absolute error is less than 0.036. Analogously, adding current parameters increases memory consumption and overhead of computing resources (namely CPU), which affects model performance. In a nutshell, using feature vectors of the VOLUME 8, 2020  temperature and voltage as input (namely TV − Vector) can obtain better prediction performance where the optimal value is 0.009. The simulation results demonstrate that, compared with the non-vector space (namely TV and TVC), the vector space (namely TV − Vec and TVC − Vec) improves 12.6% in prediction performance. TABLE 3 shows mean absolute error of our model in comparison with baseline methods. The first thing to note is that the best-performing recursive-NNs+CNNs method outperforms baseline methods on all dataset, which demonstrates effectiveness of our method. After affirming effectiveness of our model in comparison with Ah counting method [8], OCV method [10], recurrent neural networks [12] and CNNs [36], TABLE 3 summarizes experimental results of different algorithms. (Note that in TABLE 3, t represents time, OCV represents open-circuit voltage, Recurrent − NNs represents recurrent neural networks, and our scheme represents recursive neural networks + CNNs.) When input of DNNs-based methods (such as recurrent neural networks and CNNs) is the raw data (namely TV and TVC), Ah counting method and OCV method outperform DNNs-based methods. However, compared with Ah counting method and OCV method, performance of DNNs-based methods is greatly improved on vector space (namely TV − Vector and TVC − Vector). Moreover, our scheme outperforms recurrent neural networks and CNNs on all dataset, which demonstrates effectiveness of our method. Simulation results demonstrate that, in terms of mean absolute error, our proposed method improves 4.3% compared with recurrent neural networks. By comparision with classical methods such as Ah counting method, our proposed method improves 11.3% in terms of mean absolute error.

VI. CONCLUSION AND FUTURE WORK
To improve battery data representation and extract sufficient feature information hidden in battery vector, a novel DNNs-based method is proposed, which aims to improve the prediction performance of LIBs SOC. To be more specific, a RNNs-based data representation model is designed to obtain the appropriate vector representation of battery data, and then a multi-channel extended CNNs-based model, which is fed with the well-trained battery vector, is proposed. By integrating these well-trained vectors into multi-channel extended CNNs, it is proved that this practice can improve battery's SOC prediction performance obviously. Extensive simulation over real dataset is conducted, and our method is compared with some state-of-the-art methods. Simulation results demonstrate that our method improves prediction performance of 4.3% and 11.3% compared with recurrent neural networks and Ah counting method, respectively. With the development of Edge Computing, it is possible for our proposed RNNs-CNNs method to work in a real-time environment. In real-time environment, battery information is collected and sent to the edge platform where high-performance servers are deployed for our algorithm strategy, and then the calculation results are returned to the vehicle platform. In the implementation of the real-time environment, how to ensure the timely upload of data and how to upload large amounts of data with minimal resource overhead remain an open question that we hope to pursue in our further work.