Non-uniform trajectory length differential evolution iterative learning control method for robotic fish
By using a differential evolution algorithm to optimize the non-uniform trajectory length iterative learning control method, the problem of slow trajectory tracking speed and high energy consumption of robotic fish in unstructured environments is solved, achieving fast and effective trajectory tracking and cost savings.
Patent Information
- Application Number
- CN202211585293.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-09
- Publication Date
- 2026-03-03
- Estimated Expiration
- 2042-12-09
AI Technical Summary
Existing iterative learning control law methods suffer from slow convergence speed, high iteration count, and high energy consumption in robotic fish motion control, especially in unstructured environments where they struggle to achieve fast trajectory tracking and have insufficient anti-interference capabilities.
A non-uniform trajectory length differential evolution iterative learning control method is adopted. The control gain is optimized through differential evolution algorithm, and combined with open-loop control, missing control information is quickly compensated to achieve fast trajectory tracking of the robotic fish.
It improves the robotic fish's ability to track trajectories in unstructured environments, reduces system uptime and energy consumption, and lowers engineering costs.
Smart Images

Figure CN116149179B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of motion mechanics, and specifically relates to a differential evolutionary iterative learning control method for non-uniform trajectory length of robotic fish. Background Technology
[0002] Marine robots, also known as underwater robots and remotely operated vehicles (ROVs), are primarily designed to assist humans in exploring ocean areas. Since 1960, marine robots have been an important tool for ocean exploration. They can perform tasks such as water quality monitoring, biological research, and oceanographic surveying. Common traditional marine robots include non-autonomous and autonomous robots, which are expanding into ocean exploration, scientific research, and commercial applications. Among all underwater robots, fish-shaped robots (i.e., robotic fish) are characterized by high efficiency and low noise. Although robotic fish have achieved some success in propulsion mechanisms, actuation, and mechanical structures, these successes are not yet sufficient for them to operate freely in unstructured environments. One of the challenges is how to control these robotic fish.
[0003] To date, research on the motion control of robotic fish has mainly focused on two aspects: 1) the trajectory of the robotic fish; and 2) whether the robotic fish's motion conforms to expectations. The former explores the coordinated motion of the robotic fish's actuators, while the latter focuses on controlling the movement of the fish's entire body. From the perspective of control theory, its swimming motion can be divided into motion-based methods and biomimetic methods. The motion-based method aims to mimic the body motion of a fish through discrete mechanical multi-links connected by rotary joints, while the biomimetic method uses a generator to convert the fish's undulating body motion into the joint motion of the robotic fish. Both methods are open-loop, and although they can play a certain role, some desired movements are still unattainable.
[0004] In practice, many applications may require robotic fish to swim along a pre-specified speed and trajectory and repeatedly perform tasks. Furthermore, the output of the controlled system must strictly track the desired output trajectory. Remote and precise control of robotic fish is a challenging engineering task. Because the trajectory length of the robotic fish can vary, it may terminate prematurely or delayed, causing the trajectory length to deviate from the expected length, leading to numerous difficulties in actual operation. In practical applications, without an accurate model of the system, most mainstream control algorithms based on time-domain control information cannot achieve precise tracking control. Controlling the control gain of the control system is also a significant challenge. Existing traditional techniques include iterative learning control laws such as P-type, PD-type, and PID-type. Since the output is in a non-uniform range, traditional iterative learning control laws suffer from slow convergence speeds, high iteration counts, high energy consumption, and inability to compensate for missing information. Therefore, in situations requiring rapid convergence for trajectory tracking and high anti-interference capabilities, traditional iterative learning control laws are difficult to apply. Summary of the Invention
[0005] In view of the above-mentioned deficiencies of the prior art, the purpose of this invention is to provide a non-uniform trajectory length differential evolution iterative learning control method for robotic fish, characterized by comprising the following steps:
[0006] 1) Obtain the desired velocity sequence by sampling the desired velocity curve;
[0007] 2) By applying the control input thrust to the robotic fish, the actual speed curve is obtained, and then the actual speed sequence is obtained by sampling it;
[0008] 3) An error sequence is formed by comparing the expected velocity sequence of the robotic fish with the actual velocity sequence;
[0009] 4) The optimized control gain and the current control input thrust sequence are obtained by optimizing the control gain through error sequence and differential evolution algorithm;
[0010] 5) Apply the current control input thrust sequence as the control input thrust sequence for iterative learning control to the robotic fish to obtain the actual velocity sequence of the robotic fish;
[0011] 6) An error sequence is formed by combining the actual and expected velocity sequences of the robotic fish;
[0012] 7) Substitute the error sequence, the current control input thrust sequence, and the optimized control gain into the control law (7) to obtain the next control input thrust sequence;
[0013] 8) Repeat steps 5-7 until the error index is less than the allowable range, then stop the iterative learning control.
[0014] Modeling the robotic fish involves the following steps: The robotic fish model is constructed as a discrete system, as shown below:
[0015]
[0016] Where k∈{0,1,2,...} represents the iteration number, and t∈[0,T] k ] indicates time, M f The quality of the robotic fish, M f =0.4kg; ξ is the water resistance coefficient, ξ = 165.7056kg / m; V k F(t) represents the swaying speed of the robotic fish at time t in the k-th iteration. k (t) represents the control input thrust generated by the movement of the tail of the robotic fish at time t in the k-th iteration; let the sampling interval T be... s =0.1s, the swing speed V of the robotic fish k (t) is used to obtain the sampling sequence V of the oscillation velocity. k (n·T s ), For the control input thrust F k (t) is used to obtain the sampling sequence F of the control input thrust. k (n·T s Let the oscillation velocity sampling sequence V k (n·T s ) represents the system state x k (n), control input thrust sampling sequence F k (n·T s ) is the system control input u k (n), using the definition of the derivative, we have:
[0017]
[0018] The robotic fish model in equation (1) can be modeled as the following discrete dynamic system:
[0019]
[0020] in A f =-ξ·T s / M f B f =T s / M f ,T s =0.1s,M f =0.4kg;
[0021] Let equation (2) include the nonlinear part of the system state. The general form of the discrete nonlinear dynamic system is obtained as follows:
[0022]
[0023] Where B(n) = B f C(n) = 1, T s =0.1s,M f =0.4kg, k∈{0,1,2,...} represents the number of iterations. x represents the number of discrete time points. k (n)∈R,u k (n)∈R and y k (n)∈R represent the system state, control input, and system output, respectively; B(n)∈R and C(n)∈R are the system input coefficients and output coefficients, respectively, and f(·)∈R is the system state function; for y d (n)=C(n)x d (n) represents the expected output, where x d (n) represents the corresponding desired state; e k (n)=y d (n)-y k (n) represents the tracking error sequence of the system at the k-th iteration.
[0024] The control law (7) is a general form for the discrete nonlinear dynamic system:
[0025]
[0026] Where B(n) = B f C(n) = 1, T s =0.1s,M f =0.4kg, k∈{0,1,2,...} represents the number of iterations. x represents the number of discrete time points. k (n)∈R,u k (n)∈R and y k (n)∈R represent the system state, control input, and system output, respectively; B(n)∈R and C(n)∈R are the system input coefficients and output coefficients, respectively, and f(·)∈R is the system state function; for y d (n)=C(n)x d (n) represents the expected output, where x d (n) represents the corresponding desired state; e k (n)=y d (n)-y k(n) represents the tracking error sequence of the system at the k-th iteration; the following non-uniform trajectory length iterative learning control method is proposed:
[0027]
[0028] Where P, D, and L are control gains.
[0029] In step 4, the differential evolution algorithm is used to optimize the control gain in the non-uniform trajectory length iterative learning control law (7) to reduce the number of iterations required for system convergence.
[0030] The following four assumptions are proposed for the discrete nonlinear dynamic system (3):
[0031] Assumption 1: For all iterations, the initial state of system (3) satisfies the following equation:
[0032] x k (0)=x d (0) (4)
[0033] Assumption 2: The nonlinear function f(·) of system (3) satisfies the global Lipschitz condition, that is, for
[0034]
[0035] Among them l z >0 represents the Lipschitz constant;
[0036] Assumption 3: C(n)B(n)≠0;
[0037] Assumption 4: Assume that the desired output trajectory is reachable, i.e., there exists a unique control input u. d (n) makes
[0038]
[0039] For the discrete nonlinear dynamic system (3), the following non-uniform trajectory length iterative learning control method is proposed:
[0040]
[0041] Where P, D, and L are control gains, for system (3), under the conditions of satisfying assumptions 1-4, the control law (7) is applied, and the control gains P, D, and L are selected to satisfy the following equation:
[0042] 1-(P+D)·q k (n+1)·C(n+1)·B(n)<1 (8)
[0043] The tracking error of the system (3)
[0044] The discrete dynamic system, through the sampled expected output sequence and the actual output sequence y k (n), yielding the tracking error sequence, and the discretized tracking error trajectory length variation:
[0045] e k (n)=y d (n)-y k (n)
[0046]
[0047] Where λ k (n) is a Bernoulli variable that takes values of 0 and 1, with an expected value E{λ}. k (n)}=q k (n);
[0048] When T k <T d hour,
[0049]
[0050] When T k >T d hour,
[0051]
[0052] In step 4, the method for optimizing the control gain using the differential evolution algorithm includes:
[0053] 1) Initialize the population and parameters of the differential evolution algorithm; generate the initial values of the solution to the problem. According to the characteristics of the intelligent selection non-uniform trajectory length iterative learning control method of the robotic fish, the population of the differential evolution algorithm is initialized. There are three control gains that need to be optimized, namely P, D, and L. According to the convergence condition (8), the ranges of the three control gains to be optimized are [0.6, 0.7], [0.4, 0.5] and [0.3, 0.4]. Assuming the population size I = 30, 30 random numbers located in these intervals are randomly selected as the initial population using a heuristic method, which helps the algorithm to converge quickly.
[0054] 2) Calculate the fitness of each individual in the population;
[0055] 3) Mutation operation; randomly select 3 individuals from the population. And all three individuals are different; the mutation operation is as follows: Where T h (t+1) represents the offspring generated after the mutation, and F is the mutation probability, F = 0.3;
[0056] 4) Cross operation; the specific operation is as follows:
[0057]
[0058] Among them rand l h The random decimal number is between [0,1], and CR is the crossover probability. CR = 0.7. The randomly generated decimal number is compared with the crossover probability. When the random decimal number is less than or equal to the crossover probability, the mutated individual is output as the new generation individual. When the random decimal number is greater than the crossover probability, the parent output is used as the new generation individual.
[0059] 5) Selection operation: Compare the individuals remaining after the crossover operation with the evaluation function, and retain the best individual. To determine λ... h Whether (t) becomes a member of the next generation, trial vector V h (t+1) and the target vector λ h (t) Compare the fitness functions:
[0060]
[0061] 6) Calculate the fitness value of an individual.
[0062] This invention provides a differential evolutionary iterative learning control method for non-uniform trajectory length of robotic fish, which has the following beneficial effects:
[0063] By introducing the differential evolution algorithm, the control gain in the non-uniform trajectory length iterative learning control method is optimized, resulting in faster convergence than traditional iterative learning control methods. Traditional iterative learning control methods cannot compensate for missing control information during the experiment; however, by introducing open-loop control, the originally missing control information is compensated by information from previous cycles, enabling rapid tracking and convergence of the desired trajectory. In practical applications, this algorithm can be applied to situations requiring rapid trajectory tracking, reducing system runtime, improving engineering efficiency, avoiding energy consumption, and significantly saving engineering costs. Attached Figure Description
[0064] Figure 1 This is a block diagram of the intelligent optimization non-uniform trajectory length iterative learning control method for the robotic fish of this invention.
[0065] Figure 2 This is a flowchart of the method for optimizing control gain using the differential evolution algorithm of the robotic fish according to the present invention.
[0066] Figure 3 This is the variable trajectory diagram of the system output obtained by applying the iterative learning control method for optimizing control gain when k=7 and k=27 according to the present invention.
[0067] Figure 4 This is a convergence curve of the sum of absolute errors SE(k) of the present invention at different iteration numbers.
[0068] Figure 5 This is a convergence curve of the maximum absolute error ME(k) of this invention at different iteration numbers. Detailed Implementation
[0069] The embodiments of the present invention will be described in detail below. The embodiments described below are implemented based on the technical solution of the present invention, and detailed implementation methods and specific operation processes are given. However, the protection scope of the present invention is not limited to the embodiments described below.
[0070] The purpose of this invention is to provide a differential evolutionary iterative learning control method for non-uniform trajectory length of robotic fish, characterized by the following steps:
[0071] 1) Obtain the desired velocity sequence by sampling the desired velocity curve;
[0072] 2) By applying the control input thrust to the robotic fish, the actual speed curve is obtained, and then the actual speed sequence is obtained by sampling it;
[0073] 3) An error sequence is formed by comparing the expected velocity sequence of the robotic fish with the actual velocity sequence;
[0074] 4) The optimized control gain and the current control input thrust sequence are obtained by optimizing the control gain through error sequence and differential evolution algorithm;
[0075] 5) Apply the current control input thrust sequence as the control input thrust sequence for iterative learning control to the robotic fish to obtain the actual velocity sequence of the robotic fish;
[0076] 6) An error sequence is formed by combining the actual and expected velocity sequences of the robotic fish;
[0077] 7) Substitute the error sequence, the current control input thrust sequence, and the optimized control gain into the control law (7) to obtain the next control input thrust sequence;
[0078] 8) Repeat steps 5-7 until the error index is less than the allowable range, then stop the iterative learning control.
[0079] Modeling the robotic fish involves the following steps: The robotic fish model is constructed as a discrete system, as shown below:
[0080]
[0081] Where k∈{0,1,2,...} represents the iteration number, and t∈[0,T] k ] indicates time, M f The quality of the robotic fish, M f =0.4kg; ξ is the water resistance coefficient, ξ = 165.7056kg / m; V k F(t) represents the swaying speed of the robotic fish at time t in the k-th iteration. k (t) represents the control input thrust generated by the movement of the tail of the robotic fish at time t in the k-th iteration; let the sampling interval T be... s =0.1s, the swing speed V of the robotic fish k (t) is used to obtain the sampling sequence V of the oscillation velocity. k (n·T s ), For the control input thrust F k (t) is used to obtain the sampling sequence F of the control input thrust. k (n·T s Let the oscillation velocity sampling sequence V k (n·T s ) represents the system state x k (n), control input thrust sampling sequence F k (n·T s ) is the system control input u k (n), using the definition of the derivative, we have:
[0082]
[0083] The robotic fish model in equation (1) can be modeled as the following discrete dynamic system:
[0084]
[0085] in A f =-ξ·T s / M f B f =T s / M f ,T s =0.1s,M f =0.4kg;
[0086] Let equation (2) include the nonlinear part of the system state. The general form of the discrete nonlinear dynamic system is obtained as follows:
[0087]
[0088] Where B(n) = B f C(n) = 1, Ts =0.1s,M f =0.4kg, k∈{0,1,2,...} represents the number of iterations. x represents the number of discrete time points. k (n)∈R,u k (n)∈R and y k (n)∈R represent the system state, control input, and system output, respectively; B(n)∈R and C(n)∈R are the system input coefficients and output coefficients, respectively, and f(·)∈R is the system state function; for y d (n)=C(n)x d (n) represents the expected output, where x d (n) represents the corresponding desired state; e k (n)=y d (n)-y k (n) represents the tracking error sequence of the system at the k-th iteration.
[0089] The control law (7) is a general form for the discrete nonlinear dynamic system:
[0090]
[0091] Where B(n) = B f C(n) = 1, T s =0.1s,M f =0.4kg, k∈{0,1,2,...} represents the number of iterations. x represents the number of discrete time points. k (n)∈R,u k (n)∈R and y k (n)∈R represent the system state, control input, and system output, respectively; B(n)∈R and C(n)∈R are the system input coefficients and output coefficients, respectively, and f(·)∈R is the system state function; for y d (n)=C(n)x d (n) represents the expected output, where x d (n) represents the corresponding desired state; e k (n)=y d (n)-y k (n) represents the tracking error sequence of the system at the k-th iteration; the following non-uniform trajectory length iterative learning control method is proposed:
[0092]
[0093] Where P, D, and L are control gains.
[0094] In step 4, the differential evolution algorithm is used to optimize the control gain in the non-uniform trajectory length iterative learning control law (7) to reduce the number of iterations required for system convergence.
[0095] The following four assumptions are proposed for the discrete nonlinear dynamic system (3):
[0096] Assumption 1: For all iterations, the initial state of system (3) satisfies the following equation:
[0097] x k (0)=x d (0) (4)
[0098] Assumption 2: The nonlinear function f(·) of system (3) satisfies the global Lipschitz condition, that is, for
[0099]
[0100] Among them l z >0 represents the Lipschitz constant;
[0101] Assumption 3: C(n)B(n)≠0;
[0102] Assumption 4: Assume that the desired output trajectory is reachable, i.e., there exists a unique control input u. d (n) makes
[0103]
[0104] For the discrete nonlinear dynamic system (3), the following non-uniform trajectory length iterative learning control method is proposed:
[0105]
[0106] Where P, D, and L are control gains, for system (3), under the conditions of satisfying assumptions 1-4, the control law (7) is applied, and the control gains P, D, and L are selected to satisfy the following equation:
[0107] 1-(P+D)·q k (n+1)·C(n+1)·B(n)<1 (8)
[0108] The tracking error of the system (3)
[0109] The discrete dynamic system, through the sampled expected output sequence and the actual output sequence y k (n), yielding the tracking error sequence, and the discretized tracking error trajectory length variation:
[0110] e k(n)=y d (n)-y k (n)
[0111]
[0112] Where λ k (n) is a Bernoulli variable that takes values of 0 and 1, with an expected value E{λ}. k (n)}=q k (n);
[0113] When T k <T d hour,
[0114]
[0115] When T k >T d hour,
[0116]
[0117] In step 4, the method for optimizing the control gain using the differential evolution algorithm includes:
[0118] 1) Initialize the population and parameters of the differential evolution algorithm; generate the initial values of the solution to the problem. According to the characteristics of the intelligent selection non-uniform trajectory length iterative learning control method of the robotic fish, the population of the differential evolution algorithm is initialized. There are three control gains that need to be optimized, namely P, D, and L. According to the convergence condition (8), the ranges of the three control gains to be optimized are [0.6, 0.7], [0.4, 0.5] and [0.3, 0.4]. Assuming the population size I = 30, 30 random numbers located in these intervals are randomly selected as the initial population using a heuristic method, which helps the algorithm to converge quickly.
[0119] 2) Calculate the fitness of each individual in the population;
[0120] 3) Mutation operation; randomly select 3 individuals from the population. And all three individuals are different; the mutation operation is as follows: Where T h (t+1) represents the offspring generated after the mutation, and F is the mutation probability, F = 0.3;
[0121] 4) Cross operation; the specific operation is as follows:
[0122]
[0123] Among them rand l hThe random decimal number is between [0,1], and CR is the crossover probability. CR = 0.7. The randomly generated decimal number is compared with the crossover probability. When the random decimal number is less than or equal to the crossover probability, the mutated individual is output as the new generation individual. When the random decimal number is greater than the crossover probability, the parent output is used as the new generation individual.
[0124] 5) Selection operation: Compare the individuals remaining after the crossover operation with the evaluation function, and retain the best individual. To determine λ... h Whether (t) becomes a member of the next generation, trial vector V h (t+1) and the target vector λ h (t) Compare the fitness functions:
[0125]
[0126] 6) Calculate the fitness value of an individual.
[0127] This invention provides the following technical solution: a differential evolutionary iterative learning control method for non-uniform trajectory length of robotic fish, comprising the following steps:
[0128] The robotic fish model is modeled as a discrete system, as follows:
[0129]
[0130] Where k∈{0,1,2,...} represents the iteration number, and t∈[0,T] k ] indicates time, M f The quality of the robotic fish, M f =0.4kg; ξ is the water resistance coefficient, ξ = 165.7056kg / m; V k F(t) represents the swaying speed of the robotic fish at time t in the k-th iteration. k (t) represents the control input thrust generated by the movement of the tail of the robotic fish at time t in the k-th iteration. Let the sampling interval T be... s =0.1s, the swing speed V of the robotic fish k (t) is used to obtain the sampling sequence V of the oscillation velocity. k (n·T s ), For the control input thrust F k (t) is used to obtain the sampling sequence F of the control input thrust. k (n·T s ).
[0131] Let the oscillation velocity sampling sequence V k (n·T s ) represents the system state x k (n), control input thrust sampling sequence Fk (n·T s ) is the system control input u k (n), using the definition of the derivative, we have:
[0132]
[0133] Therefore, the robotic fish model in equation (1) can be modeled as a discrete dynamic system as follows:
[0134]
[0135] in A f =-ξ·T s / M f B f =T s / M f ,T s =0.1s,M f =0.4kg.
[0136] Let equation (2) include the nonlinear part of the system state. The general form of the discrete nonlinear dynamic system can be easily obtained as follows:
[0137]
[0138] Where B(n) = B f C(n) = 1, T s =0.1s,M f =0.4kg, k∈{0,1,2,...} represents the number of iterations. x represents the number of discrete time points. k (n)∈R,u k (n)∈R and y k (n)∈R represent the system state, control input, and system output, respectively. B(n)∈R and C(n)∈R are the system's input and output coefficients, respectively, and f(·)∈R is the system's state function. For y d (n)=C(n)x d (n) represents the expected output, where x d (n) represents the corresponding desired state. k (n)=y d (n)-y k (n) represents the tracking error sequence of the system at the k-th iteration.
[0139] The following four assumptions are proposed for discrete nonlinear dynamic systems (3):
[0140] Assumption 1: For all iterations, the initial state of system (3) satisfies the following equation:
[0141] x k (0)=x d (0) (4)
[0142] Assumption 2: The nonlinear function f(·) of system (3) satisfies the global Lipschitz condition, that is, for
[0143]
[0144] Among them l z >0 represents the Lipschitz constant.
[0145] Assumption 3: C(n)B(n)≠0.
[0146] Assumption 4: Assume that the desired output trajectory is reachable, i.e., there exists a unique control input u. d (n) makes
[0147]
[0148] For discrete nonlinear dynamic systems (3), we propose the following non-uniform trajectory length iterative learning control method:
[0149]
[0150] Where P, D, and L are control gains, for system (3), under the condition of satisfying assumptions 1-4, the non-uniform trajectory length iterative learning control law (7) is applied. If the control gains P, D, and L are chosen to satisfy the following equation:
[0151] 1-(P+D)·q k (n+1)·C(n+1)·B(n)<1 (8)
[0152] The tracking error of system (3)
[0153] By sampling the expected output sequence and the actual output sequence y k (n), yielding the tracking error sequence, and the discretized tracking error trajectory length variation:
[0154] e k (n)=y d (n)-y k (n)
[0155]
[0156] Where λ k(n) is a Bernoulli variable that takes values of 0 and 1, with an expected value E{λ}. k (n)}=q k (n).
[0157] When T k <T d hour,
[0158]
[0159] When T k >T d hour,
[0160]
[0161] The asymptotic convergence of the proposed method is presented above. As is well known, the control gain has a significant impact on convergence performance. Next, the control gain in the non-uniform trajectory length iterative learning control law (7) is optimized using the differential evolution algorithm to reduce the number of iterations required for system convergence.
[0162] Differential evolution is an intelligent optimization algorithm that simulates the biological evolution process to obtain the optimal solution. It mainly includes the following parts:
[0163] 1) Encoding strategy. The encoding strategy represents the real problem as a set of codes, enabling the computer to recognize and perform the corresponding calculations.
[0164] In iterative learning of the control law over the non-uniform trajectory length, the control gain to be optimized is a real number (P). v D v and L v (v = 1, 2, ..., N)), therefore, real-number encoding is used to represent the control gain. The variable vector λ ∈ R is used. 1×3N As a control gain element, the encoding strategy for the control gain element is expressed as follows:
[0165] λ=[P1 P2 ... P N D1 D2 ... D N L1 L2 ... L N (9)
[0166] 2) Group Initialization and Individual Evaluation. Based on the characteristics of the problem to be solved, design appropriate initialization operations to initialize all individuals in the group. Evaluate the individual's strength within the group based on the designed fitness function.
[0167] Based on the convergence condition (8), the control gain P can be determined. v D v and L vThe range of values for (v = 1, 2, ..., N) is used to generate the initial population. Let I represent the population size; without loss of generality, assume I is an even number. The variable vector of individual h in the population is represented as:
[0168]
[0169] Its corresponding initialization vector is On the other hand, for variable λ h Let Y h (n,λ h Let h be the output of the h-th control gain element at time n. To evaluate the fitness of the control gain element, a fitness function fit for the control gain element h is established. h (λ h )∈R as follows:
[0170] fit h (λ h ) = AE h (λ h (11)
[0171] Where A is a sufficiently large constant, and E h (λ h The sum of the absolute values of the tracking errors is:
[0172]
[0173] Based on the fitness function (11) and initial variables The initial fitness value fit of individual h is obtained. ini ∈R I as follows:
[0174]
[0175] Further construct the initial population pop ini ∈R I×3N for:
[0176]
[0177] The initial variables of the population are:
[0178]
[0179] 3) Mutation operator. The mutation operator is used to mutate the parent individual to generate a new individual.
[0180] Mutation operation: Randomly select 3 individuals from the population. And all three individuals are different; the mutation operation is as follows:
[0181]
[0182] Where T h (t+1) represents the mutated individual. Let F be the differential vector, and F be the mutation probability, where F = 0.3;
[0183] 4) Crossover operator. Based on the crossover probability, it determines whether a new individual needs to undergo a crossover operation, thereby retaining the better individual.
[0184] Cross operation: The specific operation is as follows:
[0185]
[0186] Among them rand l h CR is a random decimal number between [0,1], and CR is the crossover probability, CR = 0.7.
[0187] 5) Selection operation. Select the best individual after mutation and crossover and keep it.
[0188] The individuals remaining after the crossover operation are compared against the evaluation function, and the best individual is retained. To determine λ... h Whether (t) becomes a member of the next generation, trial vector V h (t+1) and the target vector λ h (t) Compare the fitness functions:
[0189]
[0190] 6) Termination condition. If the termination condition is met, the differential evolution algorithm ends, and the optimal individual, i.e., the optimal solution to the problem, is obtained based on the value of the fitness function.
[0191] The differential evolution algorithm is set to iterate 100 times, and the iteration ends when the number of iterations exceeds 100. Finally, the optimal individual generated by the differential evolution algorithm contains the optimal control gain.
[0192] The expected output trajectory of the system is:
[0193] y d (t)=0.016·[1+sin(2πt / M-π / 2)] (19)
[0194] Where M = 99, t ∈ [0, 10];
[0195] The sampling time is set to T s =0.1s, discretize the desired trajectory:
[0196] y d(n)=0.016·[1+sin(2πT s [n / M-π / 2)] (20)
[0197] Where M = 99,
[0198] To evaluate the tracking performance of the system, the following error evaluation metrics are used:
[0199] 1. The sum of absolute errors SE(k)
[0200]
[0201] 2. Maximum absolute error ME(k)
[0202]
[0203] The optimal control gain obtained by running the differential evolution algorithm 10 times (when N=1) is shown in Table 1. The average values of the optimal control gain obtained by the differential evolution algorithm, P=0.6545, D=0.4497 and L=0.3450, are applied to the non-uniform trajectory length iterative learning control law (7). When k=7 and k=27, the variable trajectory output by the system is shown in the attached figure. Figure 3 As shown in the figure. A simulation experiment was also conducted on the traditional iterative learning control method, with control gains of P = 0.4, D = 0.4, and L = 0.3. (See attached figure for details.) Figure 4 , Figure 5 The sum of absolute errors SE(k) and the maximum absolute error ME(k) corresponding to the two control methods were compared.
[0204] Table 1: Optimal control gain obtained after running the differential evolution algorithm 10 times.
[0205]
[0206] From the attached figures Figure 4 and Figure 5 In the comparison, we can clearly see that the differential evolution iterative learning control method for non-uniform trajectory length of robotic fish proposed in this invention, compared with the traditional iterative learning control method, can optimize the control gain in the iterative learning control law through differential evolution algorithm. In the experiment, the original missing control information is compensated by the information of the previous running cycle, which can quickly track the desired trajectory and has a faster convergence speed.
[0207] This invention provides a differential evolutionary iterative learning control method for the non-uniform trajectory length of robotic fish. This method offers the following advantages:
[0208] By introducing the differential evolution algorithm, the control gain in the non-uniform trajectory length iterative learning control method is optimized, resulting in faster convergence than traditional iterative learning control methods. Traditional iterative learning control methods cannot compensate for missing control information in the experiment. However, by introducing open-loop control, the original missing control information in the experiment is compensated by information from previous running cycles, enabling rapid tracking of the desired trajectory and convergence. In some practical applications, this algorithm can also be applied to situations requiring rapid trajectory tracking, reducing system runtime, improving engineering efficiency, avoiding energy consumption, and significantly saving engineering costs.
[0209] The preferred embodiments of the present invention have been described in detail above. It should be understood that those skilled in the art can make numerous modifications and variations based on the concept of the present invention without creative effort. Therefore, all technical solutions that can be obtained by those skilled in the art based on the concept of the present invention through logical analysis, reasoning, or limited experimentation on the basis of existing technology should be within the scope of protection defined by the claims.
Claims
1. A differential evolutionary iterative learning control method for non-uniform trajectory length of robotic fish, characterized in that, Includes the following steps: 1) Obtain the desired velocity sequence by sampling the desired velocity curve; 2) By applying the control input thrust to the robotic fish, the actual speed curve is obtained, and then the actual speed sequence is obtained by sampling it; 3) An error sequence is formed by comparing the expected velocity sequence of the robotic fish with the actual velocity sequence; 4) The optimized control gain and the current control input thrust sequence are obtained by optimizing the control gain through error sequence and differential evolution algorithm; 5) Apply the current control input thrust sequence as the control input thrust sequence for iterative learning control to the robotic fish to obtain the actual velocity sequence of the robotic fish; 6) An error sequence is generated by combining the actual and expected velocity sequences of the robotic fish; 7) Substitute the error sequence, the current control input thrust sequence, and the optimized control gain into the control law (7) to obtain the next control input thrust sequence; 8) Repeat steps 5-7 until the error index is less than the allowable range, then stop the iterative learning control; The control law (7) is a general form for discrete nonlinear dynamic systems: (3) in , Indicates the number of iterations. Represents the number of discrete time points. and These represent the system status, control input, and system output, respectively. and These are the system's input coefficients and output coefficients, respectively. Let be the state function of the system; for , Indicates the expected output, where This represents the corresponding desired state; Indicates the first The tracking error sequence of the system during the next iteration; the following non-uniform trajectory length iterative learning control law is proposed: (7) in To control the gain.
2. The non-uniform trajectory length differential evolutionary iterative learning control method for robotic fish according to claim 1, characterized in that, Modeling the robotic fish involves the following steps: The robotic fish model is constructed as a discrete system, as shown below: (1) in, Indicates the number of iterations. Indicates time, The quality of the robotic fish ; It is the water resistance coefficient. ; This represents the swaying speed of the robotic fish at time t in the k-th iteration. Let the control input thrust generated by the movement of the robot's tail at time t in the k-th iteration be denoted as ; let the sampling interval be denoted as . The swing speed of the robotic fish Sampling was performed to obtain the sampling sequence of the oscillation velocity. , ; control input thrust Sampling is performed to obtain a sampling sequence of control input thrust. Let the oscillation velocity sampling sequence System status Control input thrust sampling sequence For system control input Using the definition of the derivative, we have: , The robotic fish model in equation (1) can be modeled as the following discrete dynamic system: (2) in , ; Let equation (2) include the nonlinear part of the system state. This yields the general form of discrete nonlinear dynamic systems.
3. The non-uniform trajectory length differential evolutionary iterative learning control method for robotic fish according to claim 1, characterized in that, In step 4, the differential evolution algorithm is used to optimize the control gain in the non-uniform trajectory length iterative learning control law (7) to reduce the number of iterations required for system convergence.
4. The non-uniform trajectory length differential evolutionary iterative learning control method for robotic fish according to claim 2, characterized in that, The following four assumptions are proposed for the discrete nonlinear dynamic system (3): Assumption 1: For all iterations, the initial state of system (3) satisfies the following equation: (4) Assumption 2: The state function of system (3) The global Lipschitz condition is satisfied, that is, for , (5) in It is the Lipschitz constant; Assumption 3: ; Assumption 4: Assume that the desired output trajectory is reachable, i.e., there exists a unique control input. Make (6)。 5. The non-uniform trajectory length differential evolution iterative learning control method for robotic fish according to claim 4, characterized in that, The discrete nonlinear dynamic system (3) proposes the following non-uniform trajectory length iterative learning control law: (7) in To control the gain, for system (3), under the condition that assumptions 1-4 are satisfied, the control law (7) is applied to select the control gain. Satisfy the following formula: (8)。 6. The non-uniform trajectory length differential evolutionary iterative learning control method for robotic fish according to claim 5, characterized in that, The tracking error of the system (3) is .
7. The non-uniform trajectory length differential evolutionary iterative learning control method for robotic fish according to claim 6, characterized in that, The discrete dynamic system, through the sampled expected output sequence and actual output sequence The tracking error sequence is obtained, and the discretized tracking error trajectory length change is shown below: in It is a Bernoulli variable that takes values of 0 and 1, and its expected value is... ; when hour, when hour, 。 8. The non-uniform trajectory length differential evolutionary iterative learning control method for robotic fish according to claim 5, characterized in that, In step 4, the method for optimizing the control gain using the differential evolution algorithm includes: 1) Initialize the population and differential evolution algorithm parameters; generate initial values for the problem solution. Based on the characteristics of the robotic fish intelligent optimization non-uniform trajectory length iterative learning control method, initialize the population for the differential evolution algorithm. There are three control gains that need to be optimized, namely... According to the convergence condition (8), the ranges of the three control gains to be optimized are [0.6, 0.7], [0.4, 0.5], and [0.3, 0.4], respectively. Assuming the population size... Using a heuristic method to randomly select 30 random numbers located in these intervals as the initial population helps the algorithm converge quickly. 2) Calculate the fitness of each individual in the population; 3) Mutation operation; randomly select 3 individuals from the population. , , And since all three individuals are different, the mutation operation is as follows: ,in F represents the offspring individuals generated after the mutation, and F is the mutation probability, F=0.3; 4) Cross operation; the specific operation is as follows: rand The random decimal number is between [0,1], and CR is the crossover probability. CR=0.
7. The randomly generated decimal number is compared with the crossover probability. When the random decimal number is less than or equal to the crossover probability, the mutated individual is output as the new generation individual. When the random decimal number is greater than the crossover probability, the parent output is used as the new generation individual. 5) Selection operation; compare the individuals remaining after the crossover operation with the evaluation function, and retain the best individual; in order to determine Whether to become a member of the next generation, experimental vector and target vector Compare the fitness functions: 6) Calculate the fitness value of an individual.
Citation Information
Patent Citations
High-order iterative self-learning control method and device for robotic fish and storage medium
CN113311705A
Non-uniform interval feedback high-order iterative learning control method for single-connecting-rod mechanical arm
CN115437249A