Battery state of health estimation method, device, and storage medium
Patent Information
- Application Number
- CN202611186165.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-06
- Publication Date
- 2026-10-09
AI Technical Summary
[0003]目前相关技术中,上述方法一般包括三类约束组件:无约束的纯数据驱动模型(如多层感知机模型MLP)、基于经验方程的约束模型(比如改进的Verhulst模型)、基于神经网络的约束模型等,但上述模型常存在如下问题:(1)类似于无约束的纯数据驱动模型,其往往忽略电池的物理特性,导致数据干扰或数据缺失时精度达不到要求;(2)类似于改进的Verhulst模型,其模型形式过于简化,无法捕捉电池老化的复杂非线性动态特性;(3)类似于基于神经网络的约束模型,其模型结构过于复杂,容易出现过拟合现象,且由于模型自身的黑盒特性,其可解释性较差
[0015]本申请的有益效果是:本申请实施方式中的电池健康状态估计方法,单独将遗传编程作为一种可插拔的符号动力学约束应用于物理信息神经网络,可以灵活适配不同的电池健康状态估计架构,而且上述遗传编程兼具结构简洁性和复杂非线性拟合能力,有效避免过拟合,同时利用初始约束函数为显式数学表达式这一特点,能够为电池退化机制、优化电池管理策略提供明显具有可解释性的直观依据。
Smart Images

Figure CN122882994A_ABST
Abstract
Description
Technical Field
[0001] This application relates to a battery health state estimation method, an electronic device, and a computer-readable storage medium, belonging to the field of battery management technology. Background Technology
[0002] Physics-Informed Neural Network (PINN) is a mainstream physical-data fusion modeling method in the field of current battery state of health (SOH) estimation. It has been widely used in conventional battery modeling by embedding physical prior knowledge to constrain the solution space of the neural network.
[0003] In current related technologies, the above methods generally include three types of constraint components: unconstrained pure data-driven models (such as multilayer perceptron models MLP), constraint models based on empirical equations (such as improved Verhulst models), and constraint models based on neural networks. However, the above models often have the following problems: (1) Similar to unconstrained pure data-driven models, they often ignore the physical characteristics of the battery, resulting in insufficient accuracy when data is interfered with or missing; (2) Similar to improved Verhulst models, their model form is too simplified and cannot capture the complex nonlinear dynamic characteristics of battery aging; (3) Similar to constraint models based on neural networks, their model structure is too complex and prone to overfitting. Moreover, due to the black-box characteristics of the model itself, its interpretability is poor. Summary of the Invention
[0004] This application discloses a battery health state estimation method, an electronic device, and a computer-readable storage medium.
[0005] The battery health state estimation method in this application includes the following steps: Based on a pre-built battery health status feature dataset, an initial data fitting model is constructed using a multilayer perceptron network, wherein the initial data fitting model has a corresponding global gradient information matrix. Based on the global gradient information matrix, an initial constraint function and an initial genetic programming population are constructed using genetic programming. Based on the initial genetic programming population and the corresponding fitness parameters, the initial constraint function and the initial genetic programming population are updated to train the initial data fitting model and determine the data fitting model. Based on the data fitting model, the battery health status characteristics of the battery under test are determined according to the time series data of the full cycle charge and discharge of the battery under test, so as to achieve the estimation of the battery health status.
[0006] In some implementations, the step of constructing a data fitting model based on a multilayer perceptron network according to a pre-built battery health state feature dataset includes: Based on the data format of the standardized battery health state features included in the battery health state feature dataset, the multilayer perceptron network is initialized, and the response multilayer perceptron network model is determined. Based on the standardized battery health status features and corresponding battery health status labels included in the battery health status feature dataset, the response multilayer perceptron network model is pre-trained to determine the initial data fitting model.
[0007] In some implementations, the step of constructing an initial constraint function and an initial genetic programming population based on the global gradient information matrix and genetic programming includes: Based on the global gradient information matrix, configure the global hyperparameter set for genetic programming; Based on the global hyperparameter set of genetic programming, single-tree recursion is performed to determine the initial genetic programming population; Based on the global gradient information matrix and the initial genetic programming population, and based on the output gradient of the multilayer perceptron network, the fitness parameter and the initial constraint function corresponding to the initial genetic programming population are determined.
[0008] In some implementations, updating the initial constraint function and the initial genetic programming population based on the initial genetic programming population and the corresponding fitness parameters to train the initial data fitting model and determine the data fitting model includes: Based on the initial genetic programming population and the corresponding fitness parameters, a tournament selection process is performed to determine the parent syntax tree individuals. Based on the parent syntax tree individuals and the preset crossover probability, perform size-free matching subtree crossover to determine the child syntax tree set, wherein the child syntax tree set includes random uncrossed parent syntax tree individuals and child syntax tree individuals obtained by crossover. Based on the individual child syntax trees, perform data mutation according to one of a set of preset mutation methods, and update the set of child syntax trees. Based on the updated set of offspring syntax trees and the corresponding fitness parameters, update the initial constraint function and the initial genetic programming population; Based on the updated initial constraint function, the initial genetic programming population, and the battery health status feature dataset, a forward iteration is performed to generate loss and a backpropagation is performed to update weight biases, thereby training the initial data fitting model to determine the data fitting model.
[0009] In some implementations, the step of performing tournament selection to determine parent syntax tree individuals based on the initial genetic programming population and corresponding fitness parameters includes: Based on preset tournament size parameters, and according to the initial genetic programming population, multiple syntax tree individuals included therein are obtained; Based on the fitness parameters corresponding to the multiple individual syntax trees, the individual syntax tree whose fitness parameters satisfy a first preset condition is selected as the parent syntax tree individual.
[0010] In some implementations, the step of performing size-free subtree crossover based on the parent syntax tree individuals and a preset crossover probability to determine the child syntax tree set includes: Based on the crossover probability, a portion of the parent syntax tree individuals are selected, and size-free matching subtree crossover is performed to determine the child syntax tree individuals obtained through the crossover. The random, uncrossed parent syntax tree individuals and the crossed child syntax tree individuals are determined as the child syntax tree set.
[0011] In some implementations, updating the set of child syntax trees by performing data mutation based on a random one of a preset set of mutation methods for each child syntax tree individual includes: Based on the individual child syntax trees, an execution data mutation is randomly selected from operator mutation, leaf mutation, and subtree mutation to update the set of child syntax trees.
[0012] In some implementations, the step of training the initial data fitting model by performing forward iteration to generate loss and backpropagation to update weight biases based on the updated initial constraint function, the initial genetic programming population, and the battery health state feature dataset, to determine the data fitting model, includes: Based on the initial data fitting model, and according to the battery health status feature dataset, the battery health status prediction label is determined. Based on the battery health status prediction label, the battery health status label included in the battery health status feature dataset, and the updated initial constraint function, construct the total loss function; Based on the total loss function, forward iteration is performed to generate the loss and backpropagation is performed to update the weight biases in order to train the model that fits the initial data. If the initial data fitting model satisfies the second preset condition, or the number of training iterations satisfies the third preset condition, the data fitting model and the corresponding genetic programming constraint function are determined.
[0013] The electronic device in this application includes a memory and a processor. The memory stores a computer program, which, when executed by the processor, implements the battery health state estimation method described above.
[0014] The computer-readable storage medium in the embodiments of this application stores a computer program that, when executed by one or more processors, implements the battery health state estimation method in the above embodiments.
[0015] The beneficial effects of this application are as follows: The battery health state estimation method in the embodiments of this application applies genetic programming as a pluggable symbolic dynamic constraint to the physical information neural network, which can flexibly adapt to different battery health state estimation architectures. Moreover, the genetic programming has both structural simplicity and complex nonlinear fitting capabilities, effectively avoiding overfitting. At the same time, by utilizing the characteristic that the initial constraint function is an explicit mathematical expression, it can provide a clear and interpretable intuitive basis for battery degradation mechanisms and optimization of battery management strategies. Attached Figure Description
[0016] Figure 1 This is one of the flowcharts illustrating the battery health state estimation method in the embodiments of this application; Figure 2 This is the second flowchart illustrating the battery health state estimation method in the embodiments of this application; Figure 3 This is the third flowchart illustrating the battery health state estimation method in the embodiments of this application; Figure 4 This is the fourth flowchart illustrating the battery health state estimation method in the embodiments of this application. Detailed Implementation
[0017] Please see Figure 1 The battery health status estimation method in the embodiments of this application includes: Step 01: Based on the pre-built battery health status feature dataset, construct an initial data fitting model using a multilayer perceptron network. The data fitting model has a corresponding global gradient information matrix.
[0018] Specifically, the battery health state estimation method in this application mainly aims to construct and train a data fitting model that can infer the battery health state (hereinafter referred to as SOH) of the battery under test based on the full-cycle charge and discharge time series data of the battery under test. The data basis for constructing the above data fitting model is a pre-constructed battery health state feature dataset, and the model is based on a multilayer perceptron network (hereinafter referred to as MLP network).
[0019] In some examples, the construction method for the battery health status feature dataset mentioned above is as follows: Using NCA batteries (such as Li) 0.86 Ni 0.86 Co 0.11 Mn 0..03 The battery is an O2 battery with a rated capacity of 3.5Ah and a cutoff voltage of 2.65V-4.2V. The specific charging and discharging process, temperature differences under four operating conditions, and differences in charging rate are shown in Table 1 and Table 2.
[0020] Table 1 Charge / Discharge Process Data
[0021] Table 2 Operating conditions of constant current charging
[0022] Among them, Table 2 x That is, corresponding to Table 1 x This refers to the rate of constant current charging under different operating conditions.
[0023] Based on the four stages and four different operating conditions of the full-cycle charge-discharge process shown in Tables 1 and 2, time-series data of the NCA battery arranged chronologically during the full-cycle charge-discharge process can be obtained. This time-series data reflects the real-time status of the NCA battery's attribute parameters and electrical state during the full-cycle charge-discharge process, including at least real-time voltage, current, and state of equilibrium (SOH). Then, based on this time-series data, the data corresponding to any operating condition code is divided into three parts: a test set, a training set, and a validation set. For example, the partitioning strategy can be as follows: files with a preset file extension are assigned to the test set, and the remaining files are assigned to the training set and validation set according to a preset ratio. For instance, 80% of the remaining files are assigned to the training set, and 20% to the validation set.
[0024] Then, for all data in the training, test, and validation sets mentioned above, feature extraction, feature filtering, noise removal, and normalization are performed respectively. For example, for feature extraction, for the NCA battery corresponding to each set of data, the [V] during the constant current charging stage is extracted. end -0.2,V end The voltage range and the 0.1A~0.5A current range during the constant voltage charging stage are specified in Table 1. The voltage V corresponding to the charging termination condition is shown in Table 1. end The voltage is 4.2V. Then, based on the voltage and current ranges mentioned above, multiple voltage characteristics of the constant current charging stage and multiple current characteristics of the constant voltage charging stage are extracted, as shown in Table 3.
[0025] Table 3 Summary of Extracted Features
[0026] Based on Table 3, a 16-dimensional feature vector can be obtained for each NCA battery.
[0027] Next, for the feature selection process, the Pearson correlation coefficient can be used, with a threshold set to r > 0.7. Based on the time-series data of each NCA battery, the correlation coefficients between each extracted feature and the SOH are calculated sequentially for all time-series data, and then the features with the highest correlation are selected according to the aforementioned threshold. Subsequently, the union of the feature sets obtained from all time-series data is taken to determine the selected feature set.
[0028] Then, noise removal is performed based on the aforementioned feature set. Each row of the feature set includes all features from a full charge-discharge cycle, and all data in each row is defined as a sample. The noise removal process is as follows: First, for all samples, if any data point contains infinity, that sample is directly removed to prevent infinity from corrupting the calculation of the mean and variance. Then, the mean and standard deviation of each sample are calculated, and then statistical methods are applied... Criteria, defining a reasonable range If a sample is outside the reasonable range mentioned above for any feature dimension, it will be removed. After the above removal, the original battery health status feature dataset is obtained. Finally, normalization is performed on the original battery health status feature dataset to limit the data to the range [-1, 1], thereby obtaining the battery health status feature dataset in the above implementation.
[0029] For the construction of the initial data fitting model, please refer to [link / reference]. Figure 2 In some embodiments, step 01 further includes: Step 011: Based on the data format of the standardized battery health state features included in the battery health state feature dataset, initialize the multilayer perceptron network and determine the response multilayer perceptron network model; Step 012: Based on the standardized battery health status features and corresponding battery health status labels included in the battery health status feature dataset, perform pre-training on the response multilayer perceptron network model to determine the initial data fitting model.
[0030] Specifically, based on the above implementation method, according to the data format of the standardized battery health state features included in the battery health state feature dataset constructed based on the above process, and combined with the structure of the multilayer perceptron network itself, the following basic components of the multilayer perceptron can be initialized and constructed to obtain the response multilayer perceptron network model: the input layer dimension is 16-dimensional, with 5 layers of neurons, and the initial weights follow a normal distribution. The initial bias is 0, forming a multilayer perceptron network, in which The input dimension of a multilayer perceptron network can be represented by, for example, as a descriptor. The value is 17, meaning that in addition to the aforementioned 16 features, a time dimension or an auxiliary variable for operating conditions is reserved to expand the dimension. This represents the output dimension of the multilayer perceptron network. The specific structure of the 5 layers of neurons described above can be configured as follows: - Linear(17, 60) + sine function - Linear(60, 60) + sine function + Dropout(0.2) - Linear(60, 32) + Dropout(0.2) - Linear(32, 32) + sine function - Linear(32, 1) The Dropout(0.2) function resets 20% of neurons to zero during training, while the activation function is uniformly a sine function to improve nonlinear fitting ability.
[0031] Next, standardized battery health state features and corresponding battery health state labels are extracted from the training set included in the battery health state feature dataset. The extracted data is then used as input data for the aforementioned response multilayer perceptron network model, thus achieving pre-training of the response multilayer perceptron network model. For example, in the pre-training process, the Adam optimizer is selected, using pre-warm-up cosine annealing learning rate scheduling, and the number of pre-training epochs is set to 30. The training process involves generating a loss function during each forward propagation, followed by backpropagation based on the loss function, ultimately completing the pre-training of the response multilayer perceptron network model and obtaining the initial data-fitted model. During training, gradient information and target labels corresponding to all samples in the training set are collected. This allows for the construction of a global gradient information matrix for genetic programming. .in The standardized battery health state features are input into the response multilayer perceptron network model. For battery cycle time variables, In response to the predicted SOH output by the multilayer perceptron network model, The above-mentioned predicted SOH is relative to the standardized battery health state characteristics. Automatic gradients, and target labels The above-mentioned predicted SOH relative to battery cycle time variables The partial derivative of SOH is the fitting target of the genetic programming evolution process, which aims to make the subsequently constructed initial constraint function approximate the differential rate of change of SOH as it decays over time.
[0032] In this way, only data fitting is performed in multiple rounds of pre-training without introducing genetic programming, and gradient information is cached for subsequent calculation of the genetic programming syntax tree fitness.
[0033] Please continue reading. Figure 1 The battery health state estimation method in the embodiments of this application further includes: Step 02: Based on the global gradient information matrix, construct the initial constraint function and the initial genetic programming population using genetic programming.
[0034] Specifically, based on the above implementation method, the global gradient information matrix corresponding to the model is fitted based on the initial data. The process then proceeds to initialize the pluggable genetic programming constraint components, with the goal of constructing initial constraint functions and an initial genetic programming population. Step 02 sets up genetic programming as an independent constraint component, allowing for flexible adaptation to different battery health estimation architectures.
[0035] In some implementations, please refer to Figure 3 Step 02 further includes: Step 021: Configure the global hyperparameter set for genetic programming based on the global gradient information matrix; Step 022: Based on the global hyperparameter set of genetic programming, perform single-tree recursion to determine the initial genetic programming population; Step 023: Based on the global gradient information matrix and the initial genetic programming population, determine the fitness parameters and initial constraint functions corresponding to the initial genetic programming population based on the output gradient of the multilayer perceptron network.
[0036] Specifically, for the construction process of the initial constraint function and the initial genetic programming population, for example, it is first based on the global gradient information matrix in the above implementation. Configure the global hyperparameter set for genetic programming as follows: Based on the aforementioned global gradient information matrix The data structure and configured global hyperparameter set for genetic programming include three parts: population size, operator set, and terminal set. The population size generally represents the number of syntax trees included in the initial genetic programming population to be constructed; for example, it can be set to 100 trees. The maximum depth of the syntax trees can be adjusted according to the actual situation; for example, it can be set to 4. The operator set includes binary operators, including addition (+), subtraction (-), multiplication (×), and division ( / ), as well as unary operators, including exponential functions (exp), logarithmic functions (log), and sine functions (sin). The terminal set includes multiple feature variables; the specific number is determined based on the output of the initial data fitting model mentioned above; for example, it can be set to 34-dimensional feature variables, meaning the terminal set includes... ~ It has a total of 34 components to reserve space for expansion of multiple features.
[0037] The configuration process is as follows: when the current depth of the syntax tree is 0, that is, the current depth is the initial depth, function nodes are forcibly generated, and one of the seven operators in the operator set is randomly selected as the root node. Then, the left branch node and the right branch node are created based on the root node. Finally, the depth is increased by 1 and the recursive process is entered.
[0038] Next, the single tree recursion is executed in a fixed order of "left branch first → left branch terminates → backtracks to parent node → right branch is generated" to create all branch nodes. The specific execution method depends on the case, as follows: Scenario A: If the current depth of the syntax tree at the current node is less than the maximum value, then a function node or a terminal node is randomly selected with equal probability. (1) If a function node is generated, an operator is randomly selected from the operator set as the node value. If the selected operator is a binary operator, the left child node is generated first, and the left branch is recursively entered. After the left branch is completely traversed and terminated, the current node is backtracked, the right child node is generated, and the right branch is recursively entered. If the selected operator is a unary operator, only the left child node is generated, and the left branch is recursively entered. There is no right branch. Finally, the current depth at the node is incremented by 1, and the recursion is backtracked to the parent node to continue execution. (2) If a terminal node is generated, a node value is randomly selected from the terminal set and the preset constant pool. If there are no child nodes after the current branch, the branch terminates and automatically backtracks to the parent node to continue generating the remaining branches of the parent node. The preset constant pool can be selected and set according to the actual situation. For example, the constant pool can be {-2.8, 2.4, -4.7, -2.2, 1.4}. This application does not make specific limitations on the setting of the constant pool. The above constant pool is only an example.
[0039] Scenario B: If the current depth of the syntax tree at the current node is the maximum value, then a terminal node is forcibly generated. A node value is randomly selected from the terminal set and the preset constant pool. The branch is forcibly terminated and automatically backtracks to the parent node to continue generating the remaining branches of the parent node.
[0040] The node generation process described above is repeated until all branches have generated terminal node positions, at which point the recursive process for a single tree ends. Repeating this recursive process multiple times will yield an equal number of syntax trees. For example, repeating the recursive process 100 times according to the population size will result in 100 syntax trees, forming the initial genetic programming population. Assuming a maximum depth of 3 for the above recursive process, the following is a specific generation example: The root node (depth 0) is randomly selected as '+'.
[0041] Randomly select a node from the left subtree (depth 1) that generates a function, and choose '×'.
[0042] The left subtree of the left subtree (depth 2) randomly selects and generates terminal nodes, choosing ' '.
[0043] The right subtree of the left subtree (depth 2) is randomly selected to generate a terminal node, with a constant value of '1.4'.
[0044] Randomly select a node with the '+' symbol from the right subtree (depth 1) that generates the function.
[0045] Randomly select a terminal node from the left subtree of the right subtree (depth 2), and choose ' '.
[0046] Randomly select the generating function node in the right subtree of the right subtree (depth 2) and choose '×'.
[0047] The left subtree of this node (depth 3, already reached maximum depth) is forced to become a terminal node; select ' '.
[0048] The right subtree of this node (with a depth of 3, which has reached the maximum depth) is forced to be a terminal node, and the constant '1.4' is selected.
[0049] The expression corresponding to the above example process is: .
[0050] Finally, based on the initial genetic programming population and the global gradient information matrix described above... First, taking the SOH degradation trend corresponding to the output gradient of the multilayer perceptron network in the above embodiment as the fitting target, the fitness parameters of each syntax tree in the initial genetic programming population are calculated. For example, the fitness parameters can be the root mean square error (RMSE). Then, preliminary evolutionary screening is performed based on the RMSE of each syntax tree, and the globally optimal syntax tree obtained by screening is parsed into an explicit mathematical constraint function. (Corresponding to the initial constraint function), and freeze the function and its corresponding syntax tree to serve as background parameters for subsequent training of the model to fit the initial data.
[0051] Please continue reading. Figure 1 The battery health state estimation method in the embodiments of this application further includes: Step 03: Based on the initial genetic programming population and the corresponding fitness parameters, update the initial constraint function and the initial genetic programming population to train the initial data fitting model and determine the data fitting model.
[0052] Specifically, based on the above implementation method, the constructed genetic programming constraint components are then iterated to train the initial data fitting model, thereby determining the final data fitting model that can be applied. The fitness parameter corresponding to the initial genetic programming population is the same as in the above implementation method, which is the RMSE corresponding to each syntax tree included in the population.
[0053] In some implementations, please refer to Figure 4 Step 03 further includes: Step 031: Based on the initial genetic programming population and the corresponding fitness parameters, perform tournament screening to determine the parent syntax tree individuals; Step 032: Based on the individual parent syntax trees and the preset crossover probabilities, perform size-free subtree crossover to determine the set of child syntax trees. The set of child syntax trees includes random, uncrossed parent syntax trees and child syntax trees obtained through crossover. Step 033: Based on the individual child syntax trees, perform data mutation according to one of the preset mutation methods, and update the set of child syntax trees; Step 034: Update the initial constraint function and the initial genetic programming population based on the updated set of offspring syntax trees and the corresponding fitness parameters; Step 035: Based on the updated initial constraint function, the initial genetic programming population, and the battery health status feature dataset, perform forward iteration to generate loss and backpropagation to update weight bias, train the initial data fitting model, and determine the data fitting model.
[0054] Specifically, the iterative training process of the data fitting model will be explained below. First, step 031 further includes the following steps: Based on the preset tournament size parameters, and according to the initial genetic programming population, obtain multiple syntax tree individuals included therein; Based on the fitness parameters corresponding to multiple syntax tree individuals, select the syntax tree individual whose fitness parameters satisfy the first preset condition as the parent syntax tree individual.
[0055] Specifically, a tournament selection process is first performed to select parent trees. For example, a tournament size parameter is first set, such as 3, meaning that 3 syntax trees are randomly selected from the initial genetic programming population each time for the tournament selection. The selection process involves comparing the RMSE values of the selected syntax trees and selecting the syntax tree with the smallest RMSE value as the parent syntax tree (corresponding to the first preset condition). Notably, the above tournament selection process is generally performed an even number of times, so that the resulting parent syntax trees can be paired up for crossbreeding.
[0056] Next, step 032 further includes the following steps: Based on the crossover probability, select a portion of the parent syntax tree individuals and perform size-free matching subtree crossover to determine the child syntax tree individuals obtained through the crossover. The set of child syntax trees is determined by the random, uncrossed parent syntax tree individuals and the child syntax tree individuals obtained by crossing.
[0057] Specifically, the next step is to randomly select a portion of the selected parent syntax tree individuals based on a preset crossover probability, perform size-free subtree crossover, and then organize the crossover-generated child syntax tree individuals and the uncrossed parent syntax tree individuals into a child syntax tree set. The crossover probability can be set to 0.8, for example, and the specific value of the crossover probability can be adjusted according to actual circumstances; this application does not impose specific limitations.
[0058] For the specific crossover process, for example, the two parent syntax trees participating in the crossover each randomly select any node as the crossover root, and directly swap nodes without restricting attributes such as subtree depth, size, or structural matching (i.e., corresponding to crossover of subtrees without size matching), thereby generating new child syntax trees. In this way, by utilizing the above-mentioned crossover of subtrees without size matching, the search space is broadened, overfitting is effectively avoided, and due to fewer constraints, the genetic programming process has a simple structure. Combined with the MLP network structure of the initial data fitting model mentioned above, it has a strong ability to fit complex nonlinearities and can avoid local optima.
[0059] Then, for step 033, it further includes the following steps: Based on the individual child syntax trees, randomly select one of the following execution data mutations: operator mutation, leaf mutation, and subtree mutation, and update the child syntax tree set.
[0060] Specifically, the next step involves taking the child syntax tree set from the above implementation and performing mutations on the individual child syntax trees obtained through cross-fertilization. This allows for fine-tuning of the model's search direction and improving its convergence speed. Exemplarily, the mutation methods generally include three categories: operator mutation, leaf mutation, and subtree mutation. Operator mutation involves randomly selecting any non-terminal node in the child syntax tree and replacing its operator with another random operator from the operator set. Leaf mutation involves randomly selecting a terminal node in the child syntax tree and replacing its value with a new value from the terminal set or a preset constant pool. Subtree mutation involves randomly selecting any node in the child syntax tree and replacing it and its entire subtree with a newly generated random subtree that satisfies the maximum depth limit. Each time mutation is performed, one of the three mutation methods is randomly and evenly selected for execution. Furthermore, for any individual child syntax tree in the child syntax tree set, the probability of performing mutation is predetermined, for example, 0.1. This means that for any given child syntax tree, the probability of performing mutation is 0.1. This allows for fine-tuning of the search range while preserving the appearance of the original child syntax tree set as much as possible. After mutation, the updated child syntax tree set is obtained, and its size can be controlled to be consistent with the parent syntax tree set.
[0061] Further, regarding step 034, specifically, based on the above steps, the initial constraint function and the initial genetic programming population are updated based on all parent syntax tree individuals and the updated set of child syntax trees obtained through mutation, thereby realizing the update of the initial constraint function and the initial genetic programming population. For example, for all parent syntax tree individuals and all child syntax tree individuals included in the updated set of child syntax trees, the RMSE corresponding to each individual is uniformly calculated. Then, all individuals are sorted according to the size of the RMSE, including the half of the individuals with the smaller RMSE as the updated initial genetic programming population. Simultaneously, the syntax tree individual with the smallest RMSE is extracted, and the initial constraint function is updated based on this syntax tree. This ensures that the global optimal constraint is not lost during the update process, thus solving the problem that genetic programming is prone to losing the optimal solution.
[0062] Then, for step 035, it further includes the following steps: Based on the initial data fitting model, the battery health status prediction label is determined according to the battery health status feature dataset. The total loss function is constructed based on the battery health status prediction label, the battery health status label included in the battery health status feature dataset, and the updated initial constraint function. Based on the total loss function, forward iteration is performed to generate the loss and backpropagation is performed to update the weight biases in order to train the model to fit the initial data. If the initial data fitting model meets the second preset condition, or the number of training iterations meets the third preset condition, then determine the data fitting model and the corresponding genetic programming constraint function.
[0063] Specifically, based on the above implementation method, that is, based on the updated initial constraint function and the initial genetic programming population, the next step is to start iterative training of the initial data fitting model. First, based on the MLP network structure of the initial data fitting model, prediction is performed based on the training set in the battery health state feature dataset to obtain a series of predicted SOH labels. Specifically, the label information corresponding to the predicted SOH obtained in the pre-training process of the above implementation method can be used.
[0064] Next, based on the predicted SOH labels mentioned above, and combined with the actual SOH labels corresponding to each sample in the battery health state feature dataset, and the updated initial constraint function, Based on the output, construct the total loss function, as shown in Formula 1: ... Formula 1 in For the total loss function, The data fitting loss is specifically the mean squared error between the predicted SOH label and the actual SOH, used to ensure the accuracy of SOH estimation. The symbolic dynamics constraint loss is specifically the pre-updated initial constraint function output from the initial data fitting model mentioned above. The mean square error between them forces the model's output to conform to physical laws. These are constraint weights used to balance the data fitting loss and the symbolic dynamics constraint loss.
[0065] By using the total loss function described above, both prediction accuracy and the physical degradation law of the battery can be constrained simultaneously, thereby solving the problem of some pure data models having no physical constraints and poor generalization performance.
[0066] Next, based on the total loss function described above, the training set portion of the battery health state feature dataset is used as the input to the model for initial data fitting, combined with the updated initial constraint function. The process involves forward iteration to generate the loss and backpropagation to update the weights and biases. Forward propagation involves obtaining the predicted SOH labels from the training set data and calculating the total loss using Equation 1. Then, backpropagation of the gradient is performed. It's important to note that backpropagation only updates the weights and biases of the multilayer perceptron network, resulting in an updated initial constraint function. It remains unchanged. Each iteration performs one forward propagation and one backward propagation, thereby iteratively updating the total loss, weights, and biases, which is to say, training the model to fit the initial data.
[0067] During the multiple iterations, after accumulating a certain number of iterations, steps 031 to 034 of the above implementation are re-executed to update the initial constraint function again. Then, the iteration continues. In this way, the interval update strategy balances training speed and constraint accuracy, eliminating the need to update the initial constraint function in every iteration, thus significantly reducing computational cost. The cumulative number of iterations can be adjusted according to actual needs; for example, it can be set to 20 steps. This application does not impose a specific limit on the exact number.
[0068] At the end of each iteration, the initial data fitting model after that iteration is validated using the validation set portion of the battery health state feature dataset. Specifically, the validation RMSE is calculated for the entire validation set. If the RMSE of the validation set does not decrease at the end of multiple consecutive iterations, it indicates that the initial data fitting model has converged, and the iteration ends. The initial data fitting model and its corresponding initial constraint function obtained at this point are the final data fitting model and its corresponding genetic programming constraint function. Alternatively, an upper limit on the number of iteration steps can be set. If the above-mentioned iteration termination condition is not met, but the number of iteration steps has reached the upper limit, the iteration also ends, and the initial data fitting model and its corresponding initial constraint function obtained at this point are determined as the final data fitting model and its corresponding genetic programming constraint function.
[0069] Please refer to further information. Figure 1 The battery health state estimation method in the embodiments of this application further includes: Step 04: Based on the data fitting model, determine the battery health status characteristics of the battery under test according to the time series data of the full cycle charge and discharge of the battery under test, so as to achieve the estimation of the battery health status.
[0070] Specifically, based on the above implementation method, the data fitting model obtained by iterative training takes the time series data of the full-cycle charge and discharge of the NCA battery under test as input. The data fitting model can directly output the SOH prediction value of the battery under test, and can also output the corresponding genetic programming constraint function. On the one hand, the output SOH prediction value directly represents the current SOH estimate of the battery under test. On the other hand, the corresponding genetic programming constraint function can provide engineers with the opportunity to analyze the aging pattern of the battery under test, thereby ensuring the interpretability of the SOH prediction process.
[0071] The electronic device in this application includes a memory and a processor. The memory stores a computer program, which, when executed by the processor, implements the battery health state estimation method described above.
[0072] The computer-readable storage medium in the embodiments of this application stores a computer program that, when executed by one or more processors, implements the battery health state estimation method in the above embodiments.
[0073] Thus, the battery health state estimation method in this application applies genetic programming as a pluggable symbolic dynamic constraint to the physical information neural network, which can flexibly adapt to different battery health state estimation architectures. Moreover, the genetic programming has both structural simplicity and complex nonlinear fitting capabilities, effectively avoiding overfitting. At the same time, by utilizing the characteristic that the initial constraint function is an explicit mathematical expression, it can provide a clear and interpretable intuitive basis for battery degradation mechanisms and optimization of battery management strategies.
[0074] The above description is merely a preferred embodiment of this application and is not intended to limit this application in any way. Although this application has disclosed the preferred embodiment as above, it is not intended to limit this application. Any person skilled in the art can make some modifications or alterations to the above-disclosed technical content to create equivalent embodiments without departing from the scope of the technical solution of this application. Any simple modifications, equivalent substitutions, and improvements made to the above embodiments without departing from the technical solution of this application, based on the technical essence of this application and within the spirit and principles of this application, shall still fall within the protection scope of the technical solution of this application.
Claims
1. A method for estimating battery health status, characterized in that, The method includes: Based on a pre-built battery health status feature dataset, an initial data fitting model is constructed using a multilayer perceptron network, wherein the initial data fitting model has a corresponding global gradient information matrix. Based on the global gradient information matrix, an initial constraint function and an initial genetic programming population are constructed using genetic programming. Based on the initial genetic programming population and the corresponding fitness parameters, the initial constraint function and the initial genetic programming population are updated to train the initial data fitting model and determine the data fitting model. Based on the data fitting model, the battery health status characteristics of the battery under test are determined according to the time series data of the full cycle charge and discharge of the battery under test, so as to achieve the estimation of the battery health status.
2. The method according to claim 1, characterized in that, The step of constructing a data fitting model based on a pre-built battery health state feature dataset and a multilayer perceptron network includes: Based on the data format of the standardized battery health state features included in the battery health state feature dataset, the multilayer perceptron network is initialized, and the response multilayer perceptron network model is determined. Based on the standardized battery health status features and corresponding battery health status labels included in the battery health status feature dataset, the response multilayer perceptron network model is pre-trained to determine the initial data fitting model.
3. The method according to claim 1, characterized in that, The step of constructing an initial constraint function and an initial genetic programming population based on the global gradient information matrix and genetic programming includes: Based on the global gradient information matrix, configure the global hyperparameter set for genetic programming; Based on the global hyperparameter set of genetic programming, single-tree recursion is performed to determine the initial genetic programming population; Based on the global gradient information matrix and the initial genetic programming population, the fitness parameters and the initial constraint function corresponding to the initial genetic programming population are determined based on the output gradient of the multilayer perceptron network.
4. The method according to claim 1, characterized in that, The step of updating the initial constraint function and the initial genetic programming population based on the initial genetic programming population and the corresponding fitness parameters to train the initial data fitting model and determine the data fitting model includes: Based on the initial genetic programming population and the corresponding fitness parameters, a tournament selection process is performed to determine the parent syntax tree individuals. Based on the parent syntax tree individuals and the preset crossover probability, perform size-free matching subtree crossover to determine the child syntax tree set, wherein the child syntax tree set includes random uncrossed parent syntax tree individuals and child syntax tree individuals obtained by crossover. Based on the individual child syntax trees, perform data mutation according to one of a set of preset mutation methods, and update the set of child syntax trees. Based on the updated set of offspring syntax trees and the corresponding fitness parameters, update the initial constraint function and the initial genetic programming population; Based on the updated initial constraint function, the initial genetic programming population, and the battery health status feature dataset, a forward iteration is performed to generate the loss and a backpropagation is performed to update the weight bias, thereby training the initial data fitting model to determine the data fitting model.
5. The method according to claim 4, characterized in that, The step of performing tournament selection based on the initial genetic programming population and corresponding fitness parameters to determine the parent syntax tree individuals includes: Based on preset tournament size parameters, and according to the initial genetic programming population, multiple syntax tree individuals included therein are obtained; Based on the fitness parameters corresponding to the multiple individual syntax trees, the individual syntax tree whose fitness parameters satisfy a first preset condition is selected as the parent syntax tree individual.
6. The method according to claim 4, characterized in that, The step of performing size-free subtree crossover based on the parent syntax tree individuals and preset crossover probabilities to determine the child syntax tree set includes: Based on the crossover probability, a portion of the parent syntax tree individuals are selected, and size-free matching subtree crossover is performed to determine the child syntax tree individuals obtained through the crossover. The random, uncrossed parent syntax tree individuals and the crossed child syntax tree individuals are determined as the child syntax tree set.
7. The method according to claim 4, characterized in that, The step of updating the set of child syntax trees by performing data mutation based on the individual child syntax trees, using a random one of a preset set of mutation methods, includes: Based on the individual child syntax trees, an execution data mutation is randomly selected from operator mutation, leaf mutation, and subtree mutation to update the set of child syntax trees.
8. The method according to claim 4, characterized in that, The step of training the initial data fitting model based on the updated initial constraint function, the initial genetic programming population, and the battery health state feature dataset, including forward iteration to generate loss and backpropagation to update weight bias, to determine the data fitting model, includes: Based on the initial data fitting model, and according to the battery health status feature dataset, the battery health status prediction label is determined. Based on the battery health status prediction label, the battery health status label included in the battery health status feature dataset, and the updated initial constraint function, construct the total loss function; Based on the total loss function, forward iteration is performed to generate the loss and backpropagation is performed to update the weight biases in order to train the model that fits the initial data. If the initial data fitting model satisfies the second preset condition, or the number of training iterations satisfies the third preset condition, the data fitting model and the corresponding genetic programming constraint function are determined.
9. An electronic device, characterized in that, The electronic device includes a memory and a processor, the memory storing a computer program that, when executed by the processor, implements the battery health state estimation method as described in any one of claims 1-8.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by one or more processors, implements the battery health state estimation method as described in any one of claims 1-8.