A calibration method, apparatus and related equipment for an accelerometer

In accelerometer calibration, the diversity-driven adaptive genetic algorithm (D-SAGA) solves the problem of traditional genetic algorithms easily getting trapped in local optima by using dynamic selection strategies and adaptive adjustment, thereby improving the accuracy and precision of accelerometer calibration.

CN121008062BActive Publication Date: 2026-03-10BEIJING UNIV OF CIVIL ENG & ARCHITECTURE
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-08-20
Publication Date
2026-03-10

AI Technical Summary

Technical Problem

Traditional genetic algorithms are prone to getting stuck in local optima during accelerometer calibration, resulting in low accuracy of mathematical mapping relationships.

Method used

A diversity-driven adaptive genetic algorithm (D-SAGA) is adopted. By selecting a suitable evolutionary strategy based on the current diversity value during the iterative evolution of the population, local optima are avoided and the accuracy of mathematical mapping relationships is improved.

Benefits of technology

It improves the accuracy of the mathematical mapping relationship for accelerometer calibration, enhances measurement precision, avoids premature convergence, and improves the stability and convergence of the genetic algorithm.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121008062B_ABST
    Figure CN121008062B_ABST
Patent Text Reader

Abstract

This application relates to the field of accelerometer calibration, and more particularly to an accelerometer calibration method, apparatus, and related equipment. The method includes: constructing a population comprising multiple individuals based on multiple parameters of the accelerometer to be calibrated; determining the current diversity value of the current population based on the current fitness value of each current individual in the current population during the current evolutionary process of the population's iterative evolution; determining the current evolutionary strategy of the current population based on the current diversity value; controlling the current population to evolve based on the current evolutionary strategy to obtain a target population; if the target population meets the termination condition of population evolution, determining the calibration values ​​of multiple parameters based on the candidate values ​​carried by the target individuals in the target population. This application can solve the technical problem that the accuracy of the determined mathematical mapping relationship of the accelerometer is low due to the problem that traditional genetic algorithms are prone to getting trapped in local optima.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of accelerometer calibration, and particularly relates to an accelerometer calibration method and device and related equipment. BACKGROUND

[0002] In the field of micro-inertial measurement, an accelerometer is a sensor for measuring the acceleration of an object, and is widely used in navigation, motion monitoring, vibration analysis and industrial control fields.

[0003] In actual applications, the measurement accuracy of an accelerometer is easily affected by errors such as scale factor error, zero bias error and non-orthogonal error, and therefore the accelerometer needs to be calibrated; the essence of calibration is to determine the mathematical mapping relationship between the measured value of acceleration output by the sensor and the true value of acceleration, so that when the real-time measured value is obtained in the actual use of the accelerometer, the true value of acceleration can be determined according to the mathematical mapping relationship.

[0004] In the prior art, a calibration method based on a genetic algorithm is usually used to calibrate the accelerometer, but the traditional genetic algorithm has problems such as being easy to fall into a local optimal solution, resulting in low accuracy of the determined mathematical mapping relationship. SUMMARY

[0005] Therefore, the purpose of the present application is to provide an accelerometer calibration method, device and related equipment to solve the technical problem of low accuracy of the determined mathematical mapping relationship about the accelerometer due to the traditional genetic algorithm being easy to fall into a local optimal solution.

[0006] In a first aspect, the present application provides an accelerometer calibration method, which comprises:

[0007] constructing a population comprising a plurality of individuals according to a plurality of parameters to be calibrated of an accelerometer;

[0008] Each of the individuals carries a set of alternative numerical values of the plurality of parameters and is configured with a fitness value, and the fitness value indicates the degree of excellence of the individual in the population;

[0009] In a current evolution process in an iterative evolution process of the population, a current diversity value of the current population is determined according to current fitness values of each current individual in the current population;

[0010] The current diversity value represents the diversity degree of the current population;

[0011] A current evolution strategy of the current population is determined according to the current diversity value;

[0012] evolve the current population based on the current evolution strategy to obtain a target population;

[0013] if the target population meets a termination condition of population evolution, determine the calibration values of the plurality of parameters according to the alternative numerical values carried by target individuals in the target population.

[0014] In a second aspect, the present application provides a calibration device for an accelerometer, the device comprising a population construction module, a population evolution module and a parameter value determination module;

[0015] The population construction module is configured to construct a population comprising a plurality of individuals according to a plurality of parameters of the accelerometer to be calibrated.

[0016] Each of the individuals carries a set of alternative numerical values of the plurality of parameters and is configured with a fitness value, which indicates the degree of excellence or inferiority of the individual in the population.

[0017] The population evolution module is configured to determine a current diversity value of the current population according to current fitness values of each of the current individuals in the current population in a current evolution process in an iterative evolution process of the population.

[0018] The current diversity value represents the diversity degree of the current population.

[0019] The population evolution module is configured to determine a current evolution strategy of the current population according to the current diversity value.

[0020] The population evolution module is configured to evolve the current population based on the current evolution strategy to obtain a target population.

[0021] The parameter value determination module is configured to, if the target population meets a termination condition of population evolution, determine the calibration values of the plurality of parameters according to the alternative numerical values carried by target individuals in the target population.

[0022] In a third aspect, the present application provides an electronic device, which comprises a processor and a memory, the memory being configured to store an application program, and the processor being configured to run or execute a software program stored in the memory, so that the electronic device implements the above-mentioned calibration method for an accelerometer.

[0023] In a fourth aspect, the present application provides a computer-readable storage medium, which is configured to store program codes executed by a processor, and the program codes are configured to implement the above-mentioned calibration method for an accelerometer.

[0024] Advantages:

[0025] The application provides a calibration method of an accelerometer, which comprises the following steps: constructing a population comprising a plurality of individuals according to a plurality of parameters to be calibrated of the accelerometer; wherein each individual carries a set of alternative values of the plurality of parameters and is configured with a fitness value, which indicates the degree of goodness or badness of the individual in the population; in a current evolution process in an iterative evolution process of the population, determining a current diversity value of the current population according to current fitness values of each current individual in the current population; wherein the current diversity value represents the diversity degree of the current population; determining a current evolution strategy of the current population according to the current diversity value; evolving the current population based on the current evolution strategy to obtain a target population; and determining calibration values of the plurality of parameters according to alternative values carried by a target individual in the target population if the target population meets a termination condition of population evolution.

[0026] In conclusion, in the population of the genetic algorithm provided by the application, a corresponding genetic strategy is selected according to the current diversity value of the current population in the evolution process; wherein in the process of calibrating the accelerometer based on the genetic algorithm, the current diversity degree of the current population is evaluated by determining the current diversity value of the current population, and then a current evolution strategy suitable for the current diversity degree is selected according to the current diversity value, so as to avoid the technical problems such as falling into a local optimal solution, thereby improving the accuracy of the determined mathematical mapping relationship of the accelerometer. BRIEF DESCRIPTION OF DRAWINGS

[0027] In order to more clearly illustrate the technical solutions of the embodiments of the application, the following will briefly introduce the drawings needed to be used in the embodiments of the application. The following drawings only show some embodiments of the application, and therefore should not be considered as limiting the scope. For those skilled in the art, other related drawings can also be obtained without creative labor on the basis of these drawings.

[0028] Figure 1 The flowchart of the calibration method of the accelerometer provided by the embodiments of the application is shown in the figure;

[0029] Figure 2 The contrast schematic diagram of the orthogonal coordinate system and the non-orthogonal coordinate system provided by the embodiments of the application is shown in the figure;

[0030] Figure 3(a) is a schematic diagram of the space posture of rotation around the axis in the static acceleration calibration test provided by the embodiments of the application;

[0031] Figure 3(b) is a schematic diagram of the space posture of rotation around the axis in the static acceleration calibration test provided by the embodiments of the application;

[0032] Figure 3(c) is a schematic diagram of the space posture of rotation around the axis in the static acceleration calibration test provided by the embodiments of the application;​​ Schematic diagram of spatial posture of shaft rotation;

[0033] Figure 4 Flowchart of adaptive genetic algorithm provided for the embodiments of the present application;

[0034] Figure 5 Structural schematic diagram of the accelerometer calibration device provided for the embodiments of the present application. DETAILED DESCRIPTION

[0035] To make the objectives, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions of the present application will be described below in detail with reference to the accompanying drawings. Obviously, the described embodiments are only some but not all of the embodiments of the present application. Based on the embodiments of the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of the present application.

[0036] First, the present application provides an accelerometer calibration method, as shown in Figure 1 Figure 1 Flowchart of the accelerometer calibration method provided for the embodiments of the present application, the method comprising: S100-S500, details as shown below:

[0037] S100: Construct a population comprising a plurality of individuals according to a plurality of parameters to be calibrated of the accelerometer.

[0038] Each individual carries a set of alternative numerical values of the plurality of parameters and is configured with a fitness value, which indicates the degree of goodness or badness of the individual in the population.

[0039] Specifically, in the embodiments of the present application, the purpose of calibrating the accelerometer is to determine the mathematical mapping relationship between the acceleration measurement value measured by the accelerometer and the acceleration true value, so as to compensate for errors such as zero offset, scale factor and installation error, and improve the measurement accuracy; after the mathematical mapping relationship is determined, in the actual use process of the accelerometer, when the acceleration measurement value is measured by the accelerometer, the acceleration correction value can be determined according to the acceleration measurement value and the mathematical mapping relationship, and the numerical value of the acceleration correction value should be the same as that of the acceleration true value.

[0040] In the embodiments of the present application, the error model of the accelerometer used is as shown below:

[0041] ;

[0042] ; ;

[0043] ;​ ;

[0044] In the formula, The object that the accelerometer measures The acceleration correction value in an orthogonal coordinate system reflects the non-gravitational acceleration of an object relative to free fall motion in an inertial reference frame, i.e., specific force acceleration. This represents the transformation matrix that converts a vector in a non-orthogonal coordinate system to an orthogonal coordinate system, such as... Figure 2 As shown, Figure 2 This is a comparative diagram of orthogonal and non-orthogonal coordinate systems provided in the embodiments of this application. , and In order to represent axis relative to Shaft error angle, axis relative to The error angle of the shaft and axis relative to The error angle of the shaft, "90- "90-" "and "90- "in order" axis relative to The actual angle of the axis axis relative to The actual angle of the axis and axis relative to The actual angle of the axis, , and The actual values ​​of acceleration are represented in sequence. axial direction, axial direction and The actual value of acceleration in the axial direction. , and The actual values ​​of acceleration are represented in sequence. axial direction, axial direction and The actual value of acceleration in the axial direction; This represents the scaling factor matrix, a linear transformation matrix used to implement coordinate scaling transformations. , and In order to represent Axis coordinates Axis coordinates and The scale factor corresponding to the axis coordinates; This represents the measured acceleration value. , and The objects measured by the accelerometer are listed in order. The acceleration measurement value is in axial direction, axial direction and The acceleration measurement value score in the axial direction; Represents static zero bias. , and In order, they represent zero bias at axial direction, axial direction and Zero offset value in the axial direction.

[0045] In the embodiments of this application, "multiple parameters to be calibrated" include at least the following: , , , , , , , and .

[0046] In this embodiment, the accelerometer is calibrated through a static acceleration calibration test. In the static acceleration calibration test, the accelerometer is controlled to be in different spatial attitudes, so that the accelerometer is only subjected to gravitational acceleration. Therefore, ideally, the three-axis output vector of the accelerometer in each spatial attitude should satisfy the unit magnitude constraint condition. Based on this property, a magnitude constraint model can be constructed for error parameter estimation.

[0047] In the static first In each spatial orientation 1, 2, … , , The accelerometer readings are positive integers; assuming the accelerometer readings are as follows:

[0048] ;

[0049] In the formula, Indicates the first Acceleration measurements under spatial attitude;

[0050] After considering the aforementioned accelerometer error model, the goal of accelerometer calibration is to ensure that the corrected acceleration value satisfies the following formula:

[0051] ; ;

[0052] In the formula, g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration;

[0053] g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration;

[0054] g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration;

[0055] g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration;

[0056] g represents the gravity acceleration; g represents the gravity acceleration;

[0057] g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration;

[0058] g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration;

[0059] g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration;

[0060] g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g represents the gravity acceleration; g

[0061] In existing technologies, genetic algorithms, as typical intelligent optimization methods, demonstrate excellent global search capabilities in solving high-dimensional and nonlinear optimization problems. However, traditional model calibration methods typically rely on objective function descent strategies, such as gradient descent or Newton's method. In practical applications, during static acceleration calibration experiments on accelerometers with nine parameters, improper initial values ​​can easily lead to local optima for gradient-based methods, resulting in significant calibration errors. To overcome this problem, this application provides an improved Diversity-Driven Self-Adaptive Genetic Algorithm (D-SAGA), which introduces a dynamic selection mechanism and adaptive operator adjustment strategy in its algorithm design, such as... Figure 4 As shown, Figure 4 This is a flowchart illustrating the adaptive genetic algorithm provided in an embodiment of this application.

[0062] In this embodiment of the application, after determining the nine parameters of the accelerometer to be calibrated, a population for the parameters to be calibrated can be constructed based on the diversity-driven adaptive genetic algorithm. The population includes multiple individuals, each carrying a set of candidate values ​​for multiple parameters and configured with a fitness value, which indicates the individual's superiority or inferiority in the population.

[0063] In this embodiment, to improve the convergence efficiency of the genetic algorithm, the search range of parameters needs to be reasonably set in the initial stage of the diversity-driven adaptive genetic algorithm. This embodiment obtains the candidate values ​​corresponding to the zero bias and scaling factor from a set of candidate values ​​carried by each individual through six-position coarse calibration, thereby determining the distribution range of the optimal solution. In actual operation, considering that the non-orthogonal error term is usually small and does not change much after calibration, this embodiment indirectly limits the range of non-orthogonal error by reasonably setting the search range of the zero bias and scaling factor (i.e., the range of values ​​of the candidate values ​​corresponding to the zero bias and scaling factor), thereby constructing a more compact search space.

[0064] The formulas for calculating the boundaries of the search intervals for zero bias and scaling factor in the six-position coarse calibration are as follows:

[0065] ;

[0066] ;

[0067] in, Indicates the scaling factor at the th Scale factor scores on each coordinate axis Indicates zero bias at the th Zero-biased fractions on each coordinate axis and respectively represent the score of the accelerometer measurement in the positive and negative directions of the accelerometer measurement in the first represents the acceleration of gravity.

[0068] S200: In a current evolutionary process in the iterative evolutionary process of the population, a current diversity value of the current population is determined according to the current fitness values of the current individuals in the current population.

[0069] The current diversity value represents the diversity degree of the current population.

[0070] Specifically, in the genetic algorithm, in the iterative evolutionary process of the population, a plurality of individuals need to be selected in each generation of the population based on a selection strategy, for further genetic operation on the selected individuals based on a genetic strategy to generate new individuals, and the subsequent new individuals will constitute a new population.

[0071] In the existing genetic algorithm, the selection strategy usually adopts the roulette method; since the fitness value indicates the degree of excellence of the individual in the population, the roulette method constructs a "probability roulette" based on the proportion of the fitness value of the individual, the individual with a higher fitness value occupies a larger roulette area, and the probability of being selected for genetic operation is also higher, which conforms to the natural selection principle of "survival of the fittest" and is intuitive and easy to code; in actual operation, the roulette method has obvious limitations, when a "superior individual" with a fitness value much higher than other individuals appears in a generation of population, it is easy to lead to the rapid dominance of the population by the individual, and then fall into local optimum; in addition, if the difference between the fitness values is too large or too small, it will lead to too extreme or average selection probability distribution, affecting the stability and convergence efficiency of the genetic algorithm; in addition, the existing genetic algorithm does not have an elite reservation mechanism, when the size of the population is small, the excellent individual may be randomly eliminated in the selection process, affecting the quality of the population.

[0072] To solve the above problems, the diversity-driven adaptive genetic algorithm provided by the embodiments of the present application has stronger stability and convergence than the traditional roulette method; in the diversity-driven adaptive genetic algorithm, the diversity degree of the population is first judged, then different selection strategies and genetic strategies are determined according to the judged diversity degree, and then the population is operated based on the selection strategy and the genetic strategy in turn.

[0073] In one implementation manner, S200 includes steps (1)~(2), details as follows:

[0074] Step (1): The current fitness mean value and the current difference value of the current population are determined according to the current fitness values of the current individuals in the current population. ​

[0075] The current difference value represents a difference degree of the current fitness values corresponding to all the current individuals included in the current population.

[0076] Specifically, in the embodiment of the present application, the diversity degree of the current population is determined by determining the current fitness mean value and the current difference value of the current population; in actual operation, the standard deviation of the current fitness values of all the individuals included in the population can be determined as the current difference value, and the standard deviation can represent the difference degree of the current fitness values corresponding to all the current individuals included in the current population.

[0077] Step (2): determining the current diversity value of the current population according to the current fitness mean value, the first weight corresponding to the current fitness mean value, the current difference value and the second weight corresponding to the current difference value.

[0078] Specifically, in the embodiment of the present application, the current diversity value indicates the diversity degree of the current population; the first weight corresponding to the current fitness mean value and the second weight corresponding to the current difference value can be determined according to experience, and in the embodiment of the present application, the numerical value of the first weight determined according to experience is 0.1, and the numerical value of the second weight is 0.5.

[0079] In the embodiment of the present application, the formula for determining the current diversity value of the current population is as follows:

[0080] ;

[0081] In the formula, represents the current diversity value; represents the first weight; represents the current fitness mean value; represents the second weight; represents the current difference value.

[0082] S300: determining the current evolution strategy of the current population according to the current diversity value.

[0083] Specifically, in the embodiment of the present application, the "target population" is the population obtained after the evolution of the current population; the "current evolution strategy" is the evolution strategy based on which the current population evolves, and after the evolution of the current population based on the current evolution strategy, the target population can be obtained; in actual operation, when the diversity value is determined, the current evolution strategy can be determined according to the current diversity value.

[0084] In the embodiments of the present application, the current evolution strategy is determined in multiple alternative evolution strategies, and different current diversity values correspond to different alternative evolution strategies. Therefore, after the current diversity value is determined, the current evolution strategy can be determined in the multiple alternative evolution strategies accordingly. When the diversity degree is high, that is, the current diversity value is large, that is, the comparison of the numerical size distribution of the current fitness values of the multiple current individuals in the population is uniform, genetic operation can be considered for most of the current individuals in the population to suppress the monopoly of the current individuals with high fitness values on the current population and maintain the global search ability. When the diversity degree is low, that is, the current diversity value is small, that is, the comparison of the numerical size distribution of the current fitness values of the multiple current individuals in the population is concentrated, genetic operation can be considered for a few of the current individuals in the population to ensure that the current optimal solution is not lost and to accelerate the convergence process of the genetic algorithm through stronger selection pressure.

[0085] In actual operation, the method of determining different current evolution strategies according to the current diversity value can effectively maintain the diversity of the population in the early stage of the genetic algorithm, prevent premature convergence, and enhance the local development ability in the later stage, thereby balancing global exploration and local optimization.

[0086] In an implementation manner, the evolution strategy includes a selection strategy and a genetic strategy. The selection strategy is used to screen multiple first target individuals from multiple individuals included in the current population. The type of the selection strategy includes a first alternative selection strategy and a second alternative selection strategy. The genetic strategy is used to perform genetic operation on the multiple first target individuals to obtain multiple second target individuals. S300 includes steps (3) to (5), which are as follows:

[0087] Step (3): determining a current dispersion value of the current population according to the current fitness values of the current individuals in the current population.

[0088] The current dispersion value represents the dispersion degree of the current fitness values corresponding to all the current individuals included in the current population.

[0089] Specifically, in the embodiments of the present application, the evolution strategy includes a selection strategy and a genetic strategy. The selection strategy is used to determine multiple first target individuals from multiple individuals included in the current population. The type of the selection strategy includes a first alternative selection strategy and a second alternative selection strategy. The genetic strategy is used to perform genetic operation on the multiple first target individuals to obtain multiple second target individuals.

[0090] In actual operation, the current selection strategy needs to be determined according to the diversity value, the current selection strategy being a selection strategy required to be executed by the current population, and then the current genetic strategy is determined according to the current selection strategy; if the current selection strategy is to be determined according to the current diversity value from the first alternative selection strategy and the second alternative selection strategy, the current discrete value needs to be determined first.

[0091] In the embodiments of the present application, the current discrete value represents the discrete degree of the current fitness values corresponding to all the current individuals included in the current population; in actual operation, the variance of the current fitness values of all the individuals included in the population can be determined as the current discrete value, and the variance can represent the discrete degree of the current fitness values corresponding to all the current individuals included in the current population.

[0092] Step (4): if the current discrete value is greater than the current diversity value, the first alternative selection strategy is determined as the current selection strategy.

[0093] The first alternative selection strategy indicates that the current fitness values of the current individuals in the current population are adjusted, and then genetic operation is performed based on the current genetic strategy.

[0094] Step (5): if the current discrete value is less than or equal to the current diversity value, the second alternative selection strategy is determined as the current selection strategy.

[0095] The second alternative selection strategy indicates that the multiple current individuals included in the current population are screened, and then genetic operation is performed based on the current genetic strategy.

[0096] Specifically, in the embodiments of the present application, if the current discrete value is greater than the current diversity value, it is considered that the diversity degree of the current population is high, and the genetic algorithm is in the global search stage; in order to avoid the monopoly of individuals with high fitness values, the first alternative selection strategy is determined as the current selection strategy to enhance the explorability of the population; if the current discrete value is less than or equal to the current diversity value, it is considered that the diversity degree of the current population is low, and the difference is reduced and tends to converge; the first alternative selection strategy is determined as the current selection strategy to accelerate local development and prevent loss of optimal solution.

[0097] In actual operation, by introducing a dynamic selection strategy selection mechanism, smooth transition is realized from diversity-driven selection to convergence-oriented selection, the premature convergence phenomenon of the genetic algorithm is effectively inhibited, and the overall search stability and optimization precision are improved.

[0098] S400: controlling the current population to evolve based on the current evolution strategy to obtain a target population.

[0099] Specifically, in the embodiments of the present application, after the current genetic strategy is determined, the current population evolution can be controlled according to the current genetic strategy to obtain a target population, and then the calibration values of the plurality of parameters can be determined according to the candidate values carried by the target individuals in the target population.

[0100] In an implementation manner, S400 comprises steps (6) and (7), details of which are shown as follows.

[0101] Step (6): If the first candidate selection strategy is determined as the current selection strategy, the current fitness values of each current individual in the current population evolution are adjusted according to the preset adjustment coefficient, the current fitness mean value and the current difference value to obtain a first target population.

[0102] Specifically, in the embodiments of the present application, the first candidate selection strategy is an improved genetic algorithm selection strategy, which aims to alleviate the problem of excessive selection pressure caused by the roulette wheel method when the difference between the fitness values is large; the first candidate selection strategy adjusts by introducing the fitness mean value and the standard deviation, so as to balance the exploration and utilization ability and prevent the "extremely excellent individual" from rapidly monopolizing the population in the early evolution.

[0103] In actual operation, the basic idea of the first candidate selection strategy is to linearly adjust the fitness value of each current individual; wherein the formula for linearly adjusting the fitness value of the current individual is as follows:

[0104] ;

[0105] In the formula, denotes the adjusted current adjustment fitness value of the i th current individual; denotes the current fitness value of the i th current individual; denotes the preset adjustment coefficient, in actual operation, the value of can be set to 1-2.

[0106] ​​​​In actual operation, unlike roulette directly allocating selection probability in proportion to current fitness value, the first alternative selection strategy dynamically adjusts the "selectability" of individuals according to the fluctuation of the overall fitness of the current population, for better maintaining population diversity while maintaining selection pressure; wherein, by adjusting the current fitness value, the advantage of the current individual with high fitness value is appropriately weakened, and the survival opportunity of the current individual with medium or low fitness value is relatively improved, thereby avoiding premature convergence due to the excessively extreme distribution of fitness value in the early stage; in addition, to avoid negative selection probability, the adjusted current adjusted fitness value takes the non-negative maximum value; the first alternative selection strategy is most effective when the population is in the exploration stage, that is, when diversity is high; by limiting the influence of extreme fitness on the selection process, the first alternative selection strategy can improve the global search capability and lay the foundation for subsequent rapid convergence.

[0107] In the embodiment of the application, when the current fitness values of the plurality of current individuals included in the current population are adjusted, a plurality of first target individuals are obtained, and the population composed of the plurality of first target individuals is the first target population.

[0108] Step (7): performing genetic operation on the first target population based on the current genetic strategy to obtain a second target population.

[0109] Specifically, in the embodiment of the application, when the first target population is determined, genetic operation can be performed on the first target population based on the current genetic strategy to obtain a second target population.

[0110] In one implementation, step (7) includes steps (7.1) to (7.8), details of which are shown as follows:

[0111] Step (7.1): dividing the plurality of current individuals included in the first target population into a plurality of crossover groups.

[0112] The crossover group includes a first to-be-crossed individual and a second to-be-crossed individual.

[0113] Specifically, in the existing genetic algorithm, the crossover probability and mutation probability required to be used in the genetic algorithm are fixed hyperparameters, but it is difficult to take into account the differentiated needs of the genetic algorithm in the global exploration and local development stages with fixed values; in order to improve search efficiency and convergence quality, the embodiment of the application dynamically adjusts the crossover probability and mutation probability based on the self-adaptive strategy of the current fitness value of the individual and the population evolution generation number, enhancing the robustness and adaptability of the genetic algorithm.

[0114] In actual operation, the application embodiment introduces a nonlinear adjustment mechanism based on hyperbolic tangent function (tanh), encourages crossover and suppresses mutation in early stage to enhance global search ability, gradually increases mutation probability in later stage to improve local optimization precision and avoid premature convergence.

[0115] In the application embodiment, the individual in the first target population needs to be sequentially subjected to crossover operation and mutation operation; before the crossover operation, a plurality of crossover pairs need to be determined; wherein the crossover pair includes a first to-be-crossed individual and a second to-be-crossed individual.

[0116] Step (7.2): For each crossover pair, a crossover probability threshold corresponding to the first to-be-crossed individual is determined.

[0117] Specifically, in the application embodiment, the crossover probability threshold can be determined according to actual needs, which is not limited in the application.

[0118] Step (7.3): According to the preset crossover probability limit value, the current fitness maximum value of the first target population, the current evolution round of the current population, the evolution number limit value of the current population, and the current fitness value of the second to-be-crossed individual, the current crossover probability of the first to-be-crossed individual in each crossover pair is determined.

[0119] Among them, the current fitness maximum value of the first target population indicates that in the plurality of current fitness values corresponding to the first target population, the current fitness value with the highest value and the lowest value.

[0120] Specifically, in the application embodiment, the "crossover probability limit value" is pre-set, and in actual operation, the value of the crossover probability limit value can be set to 1; the "current fitness maximum value of the first target population" refers to the maximum current fitness value and / or the minimum current fitness value among the current fitness values respectively corresponding to the plurality of first target individuals included in the first target population; the "current evolution round" refers to the order of the evolution process being performed by the current population, for example, if the population has performed 4 evolution processes, the current evolution round is 5; the "evolution number limit value of the current population" refers to the maximum value of the evolution number of the population, when the number of the population reaches the "evolution number limit value of the current population", the population stops evolution.

[0121] In the application embodiment, the formula for determining the crossover probability of the first to-be-crossed individual is as follows:

[0122] ;

[0123] In the formula, represents the crossover probability threshold of the first to-be-crossed individual; , represent the maximum and minimum values of the crossover probability, which are collectively referred to as the crossover probability limit value; represent the current fitness value of the second individual to be crossed; 、 represent the maximum and minimum values of the current fitness, which are collectively referred to as the current fitness extreme value; represent the current evolution round; represent the evolution limit value; The function ensures that the probability changes smoothly and has the curve characteristics of early flatness, middle rapid change, and late convergence.

[0124] Step (7.4): If the current crossover probability of the first individual to be crossed is greater than the corresponding crossover probability threshold value, the first individual to be crossed and the corresponding second individual to be crossed are crossed to obtain two crossed individuals corresponding to the crossover combination.

[0125] Specifically, in the embodiments of the present application, the first individual to be crossed and the corresponding second individual to be crossed are crossed only when the current crossover probability of the first individual to be crossed is greater than the corresponding crossover probability threshold value, so as to ensure the stability of population evolution and improve the accuracy of evolution.

[0126] Step (7.5): For each crossed individual, determine the mutation probability threshold value corresponding to the crossed individual.

[0127] Specifically, in the embodiments of the present application, the mutation probability threshold value can be determined according to actual needs, which is not specifically limited in the present application.

[0128] Step (7.6): According to the preset mutation probability limit value, the current fitness extreme value of the first target population, the current evolution round of the current population, the evolution limit value of the current population, and the current fitness value of the crossed individual, determine the current mutation probability corresponding to the crossed individual.

[0129] Specifically, in the embodiments of the present application, the formula for determining the current mutation probability of the crossed individual is as follows:

[0130] ;

[0131] In the formula, Pmut represents the current mutation probability of the crossed individual; represent the corresponding current probability threshold value of the crossed individual; 、 represent the maximum and minimum values of the mutation probability, which are collectively referred to as the mutation probability limit value; represent the current fitness value of the crossed individual.

[0132] Step (7.7): If the current mutation probability of the crossover individual is greater than the corresponding mutation probability threshold, the crossover individual is subjected to mutation processing to obtain a second target individual corresponding to the crossover individual.

[0133] Specifically, in the embodiments of the present application, the purpose of subjecting the crossover individual to mutation processing when the current mutation probability of the crossover individual is greater than the corresponding mutation probability threshold is to ensure the stability of population evolution and improve the accuracy of evolution.

[0134] Step (7.8): The second target individuals corresponding to the respective crossover individuals are combined into a second target population.

[0135] Specifically, in the embodiments of the present application, after the second target individuals are obtained by subjecting the crossover individuals to mutation processing, the plurality of second target individuals are combined into a second target population.

[0136] In actual operation, the genetic strategy provided by the embodiments of the present application, which includes a selection strategy and a mutation strategy, measures the relative advantages and disadvantages of individuals by the normalized difference of fitness values, and drives the change of operation probability by fitness values, so as to realize the regulation principle of "stable evolution of superior individuals and high mutation of inferior individuals". With the iteration advancing, The function further adjusts the probability change trend, so that the crossover operation is more concentrated in the early stage, and the mutation operation is more inclined to the later stage, and the global exploration and local development are taken into account.

[0137] In one implementation manner, S400 includes steps (8) to (13), which are shown in detail as follows:

[0138] Step (8): If the second alternative selection strategy is determined as the current selection strategy, the current fitness values respectively corresponding to all the current individuals in the current population are arranged in descending order.

[0139] Specifically, in the embodiments of the present application, the second alternative selection strategy adopted directly retains the superior individuals in the current population to the next generation population, so as to ensure that the superior solutions are not mistakenly deleted due to random operation. The second alternative selection strategy significantly improves the stability and convergence accuracy of the genetic algorithm, and especially shows stronger local development capability in the later evolution stage.

[0140] In actual operation, in order to select the superior individuals in the current population, the current fitness values respectively corresponding to all the current individuals in the current population are arranged in descending order.

[0141] Step (9): The current individuals corresponding to the first preset number of current fitness values located in the front row among the plurality of current fitness values obtained after the arrangement are determined as first to-be-combined individuals.

[0142] Specifically, in the embodiment of the present application, the values of the current fitness values are arranged in descending order, and the first preset number of current individuals corresponding to the first preset number of current fitness values are determined as the first to-be-combined individuals, i.e., the individuals with excellent performance in the current population; wherein the formula for determining the first to-be-combined individuals is as follows:

[0143] ;

[0144] In the formula, f (xi) represents the current fitness value of the current individual xi, is a positive integer; and xi represents the first to-be-combined individual.

[0145] Step (10): determining a to-be-screened combination including the second preset number of current individuals from the current individuals remaining in the current population after removing the first to-be-combined individual.

[0146] Specifically, in the embodiment of the present application, after determining the first to-be-combined individual, the to-be-screened combination including the second preset number of current individuals without repetition can be randomly determined from the current individuals remaining in the current population after removing the first to-be-combined individual.

[0147] Step (11): determining the current individual with the highest current fitness value in the to-be-screened combination as the second to-be-combined individual.

[0148] Specifically, in the embodiment of the present application, the current individual with the highest current fitness value in the to-be-screened combination is also considered as an individual with excellent performance worth preserving, and therefore the current individual with the highest current fitness value in the to-be-screened combination is determined as the second to-be-combined individual; the second to-be-combined individual is used for combining with the first to-be-combined individual to obtain the first target population.

[0149] Step (12): repeating the step of determining the to-be-screened combination including the second preset number of current individuals from the current individuals remaining in the current population after removing the first to-be-combined individual until the third preset number of second to-be-combined individuals are obtained.

[0150] Specifically, in the embodiment of the present application, the steps (10) to (11) need to be repeated for the third preset number of times until the third preset number of second to-be-combined individuals are obtained; wherein the formula for determining the to-be-screened combination is as follows:

[0151] ;

[0152] In the formula, f (xi) represents the current fitness value of the current individual xi,​​​​​​ Indicates the first The combinations to be screened are obtained from the second combination; Indicates the first The combination to be screened obtained from the combination of the first combination is the first one. The current individual;

[0153] Furthermore, the formula for determining the current individual with the highest fitness value in each combination to be screened is as follows:

[0154] ;

[0155] In the formula, This represents the current individual with the highest fitness value in each of the selected combinations.

[0156] Step (13): Combine the first preset number of first individuals to be combined and the third preset number of second individuals to be combined into the first target population.

[0157] Step (14): Based on the current genetic strategy, perform genetic operations on the first target population to obtain the second target population.

[0158] Specifically, in practice, the second alternative selection strategy has the advantages of preserving the optimal solution, increasing selection pressure, strong anti-interference ability, and adjustable parameters. When the population fitness variance decreases and individuals gradually converge, activating the second alternative selection strategy can accelerate the concentrated evolution process of high-quality genes, which can significantly improve the quality of solutions and search efficiency, and reduce the risk of getting trapped in local optima.

[0159] S500: If the target population meets the termination conditions of population evolution, determine the calibration values ​​of multiple parameters based on the alternative values ​​carried by the target individuals in the target population.

[0160] Specifically, in this embodiment of the application, the termination condition is that when the number of evolutionary cycles of the population reaches the current limit of the number of evolutionary cycles of the population, the evolution of the population is stopped.

[0161] In this embodiment of the application, the candidate values ​​carried by the second target individual with the highest current fitness value among the multiple second target individuals included in the second target population after the second target population has stopped evolving are determined as the calibration values ​​of multiple parameters.

[0162] Second, this application provides a calibration device for an accelerometer, such as... Figure 5 As shown, Figure 5 This is a schematic diagram of the structure of the accelerometer calibration device provided in the embodiments of this application. The device includes: a population construction module 100, a population evolution module 200, and a parameter value determination module 300.

[0163] The population constructing module 100 is configured to construct a population including a plurality of individuals according to a plurality of parameters to be calibrated of the accelerometer;

[0164] Each individual carries a set of alternative values of the plurality of parameters and is configured with a fitness value indicating a degree of goodness or badness of the individual in the population;

[0165] The population evolution module 200 is configured to determine a current diversity value of the current population according to the current fitness values of the current individuals in the current population in a current evolution process in an iterative evolution process of the population;

[0166] The current diversity value represents a diversity degree of the current population;

[0167] The population evolution module 200 is further configured to determine a current evolution strategy of the current population according to the current diversity value;

[0168] The population evolution module 200 is further configured to evolve the current population based on the current evolution strategy to obtain a target population;

[0169] The parameter value determination module 300 is configured to determine a calibration value of the plurality of parameters according to the alternative values carried by the target individuals in the target population if the target population meets a termination condition of the population evolution.

[0170] In an implementation manner, the population evolution module 200 is further configured to determine a current fitness mean value and a current difference value of the current population according to the current fitness values of the current individuals in the current population;

[0171] The current difference value represents a difference degree of the current fitness values corresponding to all the current individuals included in the current population;

[0172] The population evolution module 200 is further configured to determine the current diversity value of the current population according to the current fitness mean value, a first weight corresponding to the current fitness mean value, the current difference value and a second weight corresponding to the current difference value.

[0173] In an implementation manner, the evolution strategy includes a selection strategy and a genetic strategy. The selection strategy is used to select a plurality of first target individuals from the plurality of individuals included in the current population. The type of the selection strategy includes a first alternative selection strategy and a second alternative selection strategy. The genetic strategy is used to perform a genetic operation on the plurality of first target individuals to obtain a plurality of second target individuals. The population evolution module 200 is further configured to determine a current dispersion value of the current population according to the current fitness values of the current individuals in the current population;

[0174] The current dispersion value represents a dispersion degree of the current fitness values corresponding to all the current individuals included in the current population;

[0175] The population evolution module 200 is also used to determine the first alternative selection strategy as the current selection strategy if the current discrete value is greater than the current diversity value;

[0176] The first alternative selection strategy indicates that the current fitness value of each current individual in the current population is adjusted before genetic operations are performed based on the current genetic strategy.

[0177] The population evolution module 200 is also used to determine the second alternative selection strategy as the current selection strategy if the current discrete value is less than or equal to the current diversity value.

[0178] The second alternative selection strategy indicates that after screening multiple current individuals included in the current population, genetic operations are performed based on the current genetic strategy.

[0179] In one implementation, the population evolution module 200 is further configured to, if the first alternative selection strategy is determined to be the current selection strategy, adjust the current fitness value of each current individual in the current population evolution according to the preset adjustment coefficient, the current fitness mean and the current difference value, so as to obtain the first target population.

[0180] The population evolution module 200 is also used to perform genetic operations on the first target population based on the current genetic strategy to obtain the second target population.

[0181] In one implementation, the population evolution module 200 is further configured to, if the second alternative selection strategy is determined to be the current selection strategy, arrange the current fitness values ​​of all current individuals in the current population in descending order;

[0182] The population evolution module 200 is also used to determine the current individuals corresponding to the first preset number of current fitness values ​​that are in the top of the multiple current fitness values ​​obtained after arrangement as the first individuals to be combined;

[0183] The population evolution module 200 is also used to determine, from the remaining individuals in the current population after removing the first individual to be combined, a selection combination including a second preset number of current individuals.

[0184] The population evolution module 200 is also used to identify the current individual with the highest current fitness value among the combinations to be selected as the second individual to be combined.

[0185] The population evolution module 200 is also used to repeatedly execute the step of determining the selection combination including a second preset number of current individuals from the remaining current individuals after removing the first individual to be combined in the current population, until a third preset number of second individuals to be combined are obtained.

[0186] The population evolution module 200 is further configured to combine the first preset number of first to-be-combined individuals and the third preset number of second to-be-combined individuals into the first target population.

[0187] The population evolution module 200 is further configured to perform genetic operation on the first target population based on a current genetic strategy to obtain a second target population.

[0188] In an implementation manner, the population evolution module 200 is further configured to divide a plurality of current individuals included in the first target population into a plurality of crossover groups.

[0189] The crossover group includes the first to-be-crossed individual and the second to-be-crossed individual.

[0190] The population evolution module 200 is further configured to determine, for each crossover group, a crossover probability threshold corresponding to the first to-be-crossed individual.

[0191] The population evolution module 200 is further configured to determine, according to a preset crossover probability limit value, a current fitness maximum value of the first target population, a current evolution round of the current population, an evolution number limit value of the current population, and a current fitness value of the second to-be-crossed individual, a current crossover probability of the first to-be-crossed individual in each crossover group.

[0192] The current fitness maximum value of the first target population indicates that, among a plurality of current fitness values corresponding to the first target population, the current fitness values with the highest and lowest values.

[0193] The population evolution module 200 is further configured to, if the current crossover probability of the first to-be-crossed individual is greater than the corresponding crossover probability threshold, perform crossover processing on the first to-be-crossed individual and the corresponding second to-be-crossed individual to obtain two crossover individuals corresponding to the crossover group.

[0194] In an implementation manner, the population evolution module 200 is further configured to determine, for each crossover individual, a mutation probability threshold corresponding to the crossover individual.

[0195] The population evolution module 200 is further configured to determine, according to a preset mutation probability limit value, a current fitness maximum value of the first target population, a current evolution round of the current population, an evolution number limit value of the current population, and a current fitness value of the crossover individual, a current mutation probability corresponding to the crossover individual.

[0196] The population evolution module 200 is further configured to, if the current mutation probability of the crossover individual is greater than the corresponding mutation probability threshold, perform mutation processing on the crossover individual to obtain a second target individual corresponding to the crossover individual.

[0197] The population evolution module 200 is further configured to combine the second target individuals corresponding to the crossover individuals into the second target population.

[0198] Thirdly, the application further provides an electronic device, comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the steps of S100-S500 provided by the above-mentioned embodiments.

[0199] Fourthly, the application further provides a computer readable storage medium, wherein the computer readable storage medium stores a computer program, and the computer program is executable on the processor to execute the steps of S100-S500 of the above-mentioned embodiments.

[0200] Fifthly, the computer program product provided by the application comprises a computer readable storage medium storing program codes, and the instructions included in the program codes are used to execute the method in the above-mentioned method embodiments. The specific implementation can refer to the steps of S100-S500 of the method embodiments, and will not be described here.

[0201] In the embodiments provided by the present application, it should be understood that the disclosed device and method can be implemented in other ways. The device embodiments described above are only schematic. For example, the division of the units is only a logical function division, and there can be another division manner in actual implementation. For example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the displayed or discussed mutual couplings or direct couplings or communication connections between the units can be indirect couplings or communication connections through some interfaces, devices or units, and can be electrical, mechanical or in other forms.

[0202] In addition, the units described as separate components can or can not be physically separate, and the components displayed as units can or can not be physical units, i.e. can be located in one place, or can be distributed on a plurality of network units. According to actual needs, some or all of the units can be selected to achieve the purpose of the embodiments.

[0203] Furthermore, each functional module in each embodiment of the present application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0204] It should be noted that, if the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present application can be embodied in the form of a software product in essence or in the form of a part or the technical solutions of the present application that make contributions to the prior art. The computer software product is stored in a storage medium, includes a plurality of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application. The foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a magnetic disk or an optical disk, and various media that can store program codes.

[0205] In this document, relational terms such as first and second and the like can be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions.

[0206] The above only describes the embodiments of the present application and is not used to limit the protection scope of the present application. For those skilled in the art, the present application can have various modifications and changes. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

Claims

1. A method of calibrating an accelerometer, characterized by, The method comprises: constructing a population comprising a plurality of individuals according to a plurality of parameters to be calibrated of an accelerometer; wherein each of the individuals carries a set of alternative values of the plurality of parameters and is configured with a fitness value indicating a degree of goodness or badness of the individual in the population; in a current evolution process in an iterative evolution process of the population, determining a current diversity value of the current population according to current fitness values of each of the current individuals in the current population; wherein the current diversity value represents a diversity degree of the current population; determining a current evolution strategy of the current population according to the current diversity value; controlling the current population to evolve to obtain a target population based on the current evolution strategy; if the target population meets a termination condition of population evolution, determining a calibration value of the plurality of parameters according to alternative values carried by target individuals in the target population; The evolution strategy comprises a selection strategy and a genetic strategy; the selection strategy is used for screening a plurality of first target individuals from a plurality of individuals included in the current population, and a type of the selection strategy comprises a first alternative selection strategy and a second alternative selection strategy; the genetic strategy is used for performing genetic operations on a plurality of the first target individuals to obtain a plurality of second target individuals; the determining of the current evolution strategy of the current population according to the current diversity value comprises: determining a current dispersion value of the current population according to the current fitness values of each of the current individuals in the current population; wherein the current dispersion value represents a dispersion degree of the corresponding current fitness values of all the current individuals included in the current population; if the current dispersion value is greater than the current diversity value, determining the first alternative selection strategy as a current selection strategy; wherein the first alternative selection strategy indicates that the current fitness values of each of the current individuals in the current population are adjusted, and then genetic operations are performed based on a current genetic strategy; if the current dispersion value is less than or equal to the current diversity value, determining the second alternative selection strategy as the current selection strategy; wherein the second alternative selection strategy indicates that the plurality of the current individuals included in the current population are screened, and then genetic operations are performed based on the current genetic strategy.

2. The method of claim 1, wherein, The determining of the current diversity value of the current population according to the current fitness values of each of the current individuals in the current population comprises: determining a current fitness mean value and a current difference value of the current population according to the current fitness values of each of the current individuals in the current population; wherein the current difference value represents a difference degree of the corresponding current fitness values of all the current individuals included in the current population; determining the current diversity value of the current population according to the current fitness mean value, a first weight corresponding to the current fitness mean value, the current difference value and a second weight corresponding to the current difference value.

3. The method of claim 2, wherein, The controlling of the current population to evolve to obtain a target population based on the current evolution strategy comprises: If the first alternative selection strategy is determined as the current selection strategy, the current fitness values of each current individual in the current population evolution are adjusted according to a preset adjustment coefficient, the current fitness mean value and the current difference value, to obtain a first target population; Based on the current genetic strategy, the first target population is subjected to genetic operation to obtain a second target population.

4. The method of claim 2, wherein, The controlling the current population to evolve to obtain a target population based on the current evolution strategy comprises: If the second alternative selection strategy is determined as the current selection strategy, the current fitness values of all the current individuals in the current population are arranged in descending order; The first preset number of current individuals corresponding to the first preset number of current fitness values in the front row are determined as first-to-be-combined individuals. The remaining current individuals in the current population after removing the first-to-be-combined individuals are determined as a to-be-screened combination including a second preset number of current individuals. The current individual with the highest current fitness value in the to-be-screened combination is determined as a second-to-be-combined individual. The step of determining a to-be-screened combination including a second preset number of current individuals from the remaining current individuals in the current population after removing the first-to-be-combined individuals is repeatedly executed until a third preset number of second-to-be-combined individuals are obtained. The first preset number of first-to-be-combined individuals and the third preset number of second-to-be-combined individuals are combined as a first target population. Based on the current genetic strategy, the first target population is subjected to genetic operation to obtain a second target population.

5. The method of claim 3 or claim 4, wherein, The genetic operation of the first target population based on the current genetic strategy to obtain a second target population comprises: The plurality of current individuals included in the first target population are divided into a plurality of cross groups. The cross group includes a first-to-be-crossed individual and a second-to-be-crossed individual. For each cross group, a cross probability threshold value corresponding to the first-to-be-crossed individual is determined. The current cross probability of the first-to-be-crossed individual in each cross group is determined according to a preset cross probability limit value, a current fitness maximum value of the first target population, a current evolution round of the current population, an evolution number limit value of the current population and the current fitness value of the second-to-be-crossed individual. The current fitness maximum value of the first target population indicates that the current fitness values corresponding to the first target population have the highest and lowest values. If the current cross probability of the first-to-be-crossed individual is greater than the corresponding cross probability threshold value, the first-to-be-crossed individual and the corresponding second-to-be-crossed individual are subjected to cross processing to obtain two cross individuals corresponding to the cross group.

6. The method of claim 5, wherein, After the first individual to be crossed and the corresponding second individual to be crossed are crossed to obtain two crossed individuals corresponding to the cross combination, the method further comprises: For each of the crossed individuals, a mutation probability threshold corresponding to the crossed individual is determined; According to a preset mutation probability limit value, a current fitness maximum value of the first target population, a current evolution round of the current population, an evolution limit value of the current population, and the current fitness value of the crossed individual, a current mutation probability corresponding to the crossed individual is determined; If the current mutation probability of the crossed individual is greater than the corresponding mutation probability threshold, the crossed individual is mutated to obtain a second target individual corresponding to the crossed individual; The second target individuals corresponding to each of the crossed individuals are combined into the second target population.

7. A calibration device for an accelerometer, characterized by The device comprises a population construction module, a population evolution module, and a parameter value determination module; The population construction module is configured to construct a population comprising a plurality of individuals according to a plurality of parameters of an accelerometer to be calibrated; Each of the individuals carries a set of alternative numerical values of the plurality of parameters and is configured with a fitness value, which indicates the degree of excellence of the individual in the population; The population evolution module is configured to determine a current diversity value of the current population according to current fitness values of each of the current individuals in the current population in a current evolution process in an iterative evolution process of the population; The current diversity value represents the diversity of the current population; The population evolution module is configured to determine a current evolution strategy of the current population according to the current diversity value; The population evolution module is configured to evolve the current population based on the current evolution strategy to obtain a target population; The parameter value determination module is configured to determine a calibration value of the plurality of parameters according to alternative numerical values carried by a target individual in the target population if the target population meets a termination condition of population evolution; The evolution strategy comprises a selection strategy and a genetic strategy; the selection strategy is used to screen a plurality of first target individuals from a plurality of individuals included in the current population; the type of the selection strategy comprises a first alternative selection strategy and a second alternative selection strategy; the genetic strategy is used to perform genetic operations on a plurality of the first target individuals to obtain a plurality of second target individuals; The population evolution module is specifically configured to determine a current dispersion value of the current population according to the current fitness values of each of the current individuals in the current population; the current dispersion value represents the dispersion degree of the current fitness values corresponding to all the current individuals included in the current population; If the current dispersion value is greater than the current diversity value, the first alternative selection strategy is determined as a current selection strategy; the first alternative selection strategy indicates that the current fitness values of each of the current individuals in the current population are adjusted, and then genetic operations are performed based on a current genetic strategy. If the current discrete value is less than or equal to the current diversity value, the second alternative selection strategy is determined as the current selection strategy; wherein the second alternative selection strategy indicates that a plurality of the current individuals included in the current population are screened, and then genetic operation is performed based on the current genetic strategy.

8. An electronic device, comprising: The electronic device includes a processor and a memory, the memory is used to store an application program, the processor runs or executes a software program stored in the memory, so that the electronic device implements the accelerometer calibration method in any one of claims 1-6.

9. A computer-readable storage medium, characterized in that, The computer readable storage medium is used to store program code executed by the processor, and the program code is used to implement the accelerometer calibration method in any one of claims 1-6.

Citation Information

Patent Citations

  • Turntable-free calibration method for accelerometer based on genetic algorithm

    CN106597020A

  • Image segmentation method based on differential evolution algorithm of clustering division and OTSU algorithm

    CN116883672A