Path planning method and device combining adaptive difference with local search optimization
By combining adaptive differential and local search optimization in path planning, the problem of imbalance between global exploration and local development in robot autonomous navigation is solved, the quality and efficiency of path planning are improved, and optimized path generation is realized in complex environments.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- JILIN JIANZHU UNIVERSITY
- Filing Date
- 2026-04-17
- Publication Date
- 2026-05-29
AI Technical Summary
In existing technologies, differential evolution algorithms for robot autonomous navigation and path planning struggle to balance global exploration and local development in complex environments, resulting in poor convergence performance, robustness, and overall path quality, as well as insufficient adaptability.
A path planning method combining adaptive difference and local search optimization is adopted. By initializing the evolutionary population in the search space formed by the coordinates of the path control points, adaptive mutation, crossover and boundary constraint processing are performed. Combined with local fine search, parameters and strategies are dynamically adjusted to generate and optimize candidate paths.
It achieves a dynamic balance between global exploration and local development in path planning under complex environments, improves path length, smoothness and safety, enhances the robustness and convergence efficiency of the algorithm, and reduces the dependence on manual parameter tuning.
Smart Images

Figure CN122108156A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of artificial intelligence technology, and in particular to a path planning method and apparatus that combines adaptive differential and local search optimization. Background Technology
[0002] In the field of artificial intelligence technology for autonomous navigation and path planning in robots, conventional methods often employ intelligent optimization algorithms such as differential evolution to search for feasible paths from the starting point to the destination. However, standard differential evolution algorithms typically use fixed control parameters and mutation strategies, making it difficult to dynamically adjust the search behavior when facing complex environments. This leads to an imbalance between global exploration and local development capabilities, making it prone to getting stuck in local optima, and the planned paths are not optimal in terms of length, smoothness, and safety.
[0003] In the prior art, parameter adaptive adjustment technology can be used to solve the above problems, but its design is complex and it is difficult to take into account the needs of different evolutionary stages. Multiple mutation strategies can also be introduced and dynamically selected, but the effectiveness of the strategy is not well matched with environmental changes, and the robustness of the adaptive mechanism is insufficient. Differential evolution can also be combined with other local search algorithms, but improper timing and method of fusion of the two algorithms will affect the overall efficiency and convergence.
[0004] However, existing technical solutions still have shortcomings such as imperfect parameter and strategy adaptation mechanisms, difficulty in automatically balancing global exploration and local development, and lack of efficient and precise local search mechanisms. These shortcomings lead to poor convergence performance, robustness, and path integration quality of the algorithm in complex environments, as well as suboptimal path planning performance due to insufficient adaptive capabilities. Summary of the Invention
[0005] In view of this, embodiments of this application provide a path planning method and apparatus that combines adaptive difference and local search optimization to solve the problems of poor convergence performance, robustness and path integration quality, and insufficient adaptive ability of existing algorithms in complex environments, which lead to suboptimal path planning performance.
[0006] In view of this, embodiments of the present disclosure provide a path planning method and apparatus that combines adaptive differential and local search optimization to solve the problem of poor path planning performance caused by insufficient adaptive capability in the prior art.
[0007] A first aspect of this disclosure provides a path planning method combining adaptive differential and local search optimization, comprising: An evolutionary population is initialized within the search space consisting of the coordinates of the path control points. The evolutionary population consists of multiple individuals, each of which is a multidimensional vector. Each multidimensional vector corresponds one-to-one with a candidate path and is used to represent a candidate path defined by a series of control points. Using each individual in the current evolutionary population as the target vector, adaptive mutation, crossover, and boundary constraint processing are performed to generate experimental vectors corresponding to each target vector. The fitness values corresponding to the target vector and the test vector are calculated separately. The current preferred individual is updated based on the individual corresponding to the smaller fitness value. The fitness value is used to comprehensively evaluate the length, smoothness and safety of the candidate path. A local fine search is performed based on the preferred individuals to obtain finely optimized individuals, and the current evolutionary population is updated based on these finely optimized individuals. The process of performing adaptive mutation, crossover, and boundary constraint processing to generate trial vectors and conduct a local fine search is repeated until the iteration termination condition is met. Based on the multi-dimensional vectors corresponding to the best individuals in each generation of the current evolutionary population, the optimal candidate path is determined and output.
[0008] A second aspect of this disclosure provides a path planning apparatus that combines adaptive differential and local search optimization, comprising: The population initialization module is used to initialize the evolutionary population in the search space consisting of the coordinates of the path control points. The evolutionary population consists of multiple individuals, each of which is a multi-dimensional vector. The multi-dimensional vector corresponds one-to-one with the candidate path and is used to represent the candidate path defined by a series of control points. The mutation and crossover module is used to perform adaptive mutation, crossover, and boundary constraint processing on each individual in the current evolutionary population as the target vector, and generate experimental vectors corresponding to each target vector. The fitness calculation and selection module is used to calculate the fitness values corresponding to the target vector and the trial vector respectively, and update the current preferred individual based on the individual corresponding to the smaller fitness value. The fitness value is used to comprehensively evaluate the length, smoothness and safety of the candidate path. The local search module performs a local fine-grained search based on the preferred individuals to obtain finely optimized individuals, and then updates the current evolutionary population based on these finely optimized individuals. The iterative control and output module is used to cyclically control the mutation and crossover module, fitness calculation and selection module, and local search module to perform corresponding operations until the preset iteration termination condition is met. Based on the multi-dimensional vector corresponding to the best individual in each generation of the current evolutionary population, the optimal candidate path is determined and output.
[0009] A third aspect of this disclosure provides an electronic device including 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 the method described above.
[0010] A fourth aspect of this disclosure provides a readable storage medium storing a computer program that, when executed by a processor, implements the steps of the above-described method.
[0011] Compared with the prior art, the beneficial effects of this disclosed embodiment are as follows: This solution transforms the path planning problem into a numerical optimization problem based on path control points, and constructs a full-process path planning system including initial population generation, adaptive mutation and crossover, fitness-selective update, and local fine-tuning search. It integrates the adaptive adjustment mechanism of parameters and strategies into the core operation of differential evolution, and introduces local fine-tuning optimization to achieve a dynamic balance between global exploration and local development capabilities. It effectively solves the problems of poor convergence and easy getting trapped in local optima caused by fixed parameters and strategies in traditional algorithms. It can autonomously adjust the search behavior according to the evolutionary state and environmental complexity, and plan the optimal candidate path with better overall performance in terms of length, smoothness and safety in complex dynamic and static obstacle environments. At the same time, it improves the robustness and convergence efficiency of the algorithm and reduces the dependence on manual parameter tuning.
[0012] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and do not limit this application. Attached Figure Description
[0013] To more clearly illustrate the technical solutions in the embodiments of this application, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0014] Figure 1 This is a schematic diagram illustrating an application scenario of an embodiment of this disclosure; Figure 2 This is a flowchart illustrating a path planning method combining adaptive differential and local search optimization provided in an embodiment of this disclosure. Figure 3 This is a flowchart illustrating another path planning method combining adaptive differential and local search optimization provided in this embodiment of the disclosure; Figure 4 This is a schematic diagram of the optimal path generated after 20 iterations in a static obstacle avoidance test provided by an embodiment of this disclosure; Figure 5 This is a schematic diagram of the optimal path generated after 100 iterations in a static obstacle avoidance test provided by an embodiment of this disclosure; Figure 6 This is a schematic diagram of the optimal path generated after 160 iterations in a static obstacle avoidance test provided by an embodiment of this disclosure; Figure 7 This is a schematic diagram of the optimal path generated after 200 iterations in a static obstacle avoidance test provided by an embodiment of this disclosure; Figure 8 This is a schematic diagram of an obstacle avoidance path in a dynamic or static obstacle environment provided in an embodiment of this disclosure; Figure 9 This is a schematic diagram of a dynamic obstacle movement trajectory provided in an embodiment of this disclosure; Figure 10 This is a schematic diagram of the optimal path generated after 30 iterations in a dynamic obstacle avoidance test provided by an embodiment of this disclosure; Figure 11 This is a schematic diagram of the optimal path generated after 100 iterations in a dynamic obstacle avoidance test provided by an embodiment of this disclosure; Figure 12 This is a schematic diagram of the optimal path generated after 200 iterations in a dynamic obstacle avoidance test provided by an embodiment of this disclosure; Figure 13 This is a schematic diagram of the optimal path generated after 290 iterations in a dynamic obstacle avoidance test provided by an embodiment of this disclosure; Figure 14 This is a schematic diagram of the structure of a path planning device that combines adaptive differential and local search optimization according to an embodiment of this disclosure; Figure 15 This is a schematic diagram of the structure of an electronic device provided in an embodiment of this disclosure. Detailed Implementation
[0015] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.
[0016] The following will describe in detail, with reference to the accompanying drawings, a path planning method and apparatus combining adaptive differential and local search optimization according to embodiments of this application.
[0017] Figure 1 This is a schematic diagram illustrating an application scenario according to an embodiment of this application. The application scenario may include a first terminal device 101, a second terminal device 102, a third terminal device 103, a server 104, and a network 105.
[0018] The first terminal device 101, the second terminal device 102, and the third terminal device 103 can be hardware or software. When the first terminal device 101, the second terminal device 102, and the third terminal device 103 are hardware, they can be various electronic devices with displays and supporting communication with the server 104, including but not limited to smartphones, tablets, laptops, and desktop computers. When the first terminal device 101, the second terminal device 102, and the third terminal device 103 are software, they can be installed on the aforementioned electronic devices. The first terminal device 101, the second terminal device 102, and the third terminal device 103 can be implemented as multiple software programs or software modules, or as a single software program or software module; this application embodiment does not impose any limitations on this. Furthermore, various applications can be installed on the first terminal device 101, the second terminal device 102, and the third terminal device 103, such as data processing applications, instant messaging tools, social platform software, search applications, shopping applications, etc.
[0019] Server 104 can be a server that provides various services, such as a backend server that receives requests sent by terminal devices with which it has established communication connections. This backend server can receive and analyze the requests sent by the terminal devices and generate processing results. Server 104 can be a single server, a server cluster consisting of several servers, or a cloud computing service center. This application embodiment does not limit this.
[0020] It should be noted that the server 104 can be either hardware or software. When the server 104 is hardware, it can be various electronic devices that provide various services to the first terminal device 101, the second terminal device 102, and the third terminal device 103. When the server 104 is software, it can be multiple software programs or software modules that provide various services to the first terminal device 101, the second terminal device 102, and the third terminal device 103, or it can be a single software program or software module that provides various services to the first terminal device 101, the second terminal device 102, and the third terminal device 103. This application embodiment does not impose any limitations on this.
[0021] Network 105 can be a wired network using coaxial cable, twisted pair, and fiber optic connection, or it can be a wireless network that enables interconnection of various communication devices without wiring, such as Bluetooth, Near Field Communication (NFC), and Infrared. This application embodiment does not limit this.
[0022] Users can establish a communication connection with the server 104 via the network 105 through the first terminal device 101, the second terminal device 102, and the third terminal device 103 to receive or send information, etc.
[0023] It should be noted that the specific types, quantities, and combinations of the first terminal device 101, the second terminal device 102, the third terminal device 103, the server 104, and the network 105 can be adjusted according to the actual needs of the application scenario, and this application embodiment does not impose any restrictions on this.
[0024] It should be noted that the acquisition, storage, use, and processing of data in this application embodiment all comply with the relevant provisions of national laws and regulations.
[0025] Furthermore, it should be noted that certain software, components, models, and other existing solutions in the industry may be mentioned in the embodiments of this application. These should be considered as exemplary, and their purpose is only to illustrate the feasibility of implementing the technical solution of this application. However, it does not mean that the applicant has used or necessarily used the solution.
[0026] The following describes in detail, with reference to the accompanying drawings, a path planning method and apparatus combining adaptive differential and local search optimization provided by the present disclosure.
[0027] Figure 2 This is a flowchart illustrating a path planning method combining adaptive differential and local search optimization provided in this disclosure. This method can be executed by a processor of an electronic device or a processor of a server, or by... Figure 1 Executed by the terminal device, such as Figure 2 As shown, a path planning method combining adaptive difference and local search optimization may include the following steps: Step S1: Initialize the evolutionary population within the search space defined by the coordinates of the path control points.
[0028] The evolutionary population consists of multiple individuals, each of which is a multidimensional vector. Each multidimensional vector corresponds one-to-one with a candidate path and is used to represent a candidate path defined by a series of control points.
[0029] This step is the initial stage of path planning, and its core is to construct the initial solution set for algorithm iterative optimization, laying the foundation for the subsequent adaptive evolutionary process. Path control points are coordinate points used to define the geometry of candidate paths. By connecting control points sequentially, a continuous path trajectory can be formed. They are the core elements of path parameterization. The search space is the solution space composed of the range of coordinate values of all possible path control points. Its boundary is determined by factors such as the physical range of the robot's working environment and motion constraints, used to limit the search range of the algorithm and ensure that the generated path control points are within the feasible region. The evolutionary population, generated after initialization and before the start of algorithm iteration, is a set of candidate solutions. Each member in the evolutionary population is an individual, and each individual corresponds to a candidate path. The number of individuals is the population size.
[0030] Specifically, this step can be implemented as follows: Step S11: In the search space composed of the coordinates of the path control points, for two-dimensional planar path planning, generate the corresponding two-dimensional initial population based on the horizontal coordinate, vertical coordinate and the preset number of control points; Step S12: For three-dimensional spatial path planning, generate the corresponding three-dimensional initial population based on the horizontal coordinate, vertical coordinate, vertical coordinate and the preset number of control points; Step S13: Determine the two-dimensional initial population and / or the three-dimensional initial population as the initial evolutionary population.
[0031] Before performing the above steps, it is necessary to determine the search space boundaries and planning dimensions. Based on the robot's working environment map, physical movement range, and task requirements, the upper and lower bound vectors l and u of the search space (where l is the lower bound vector and u is the upper bound vector) should be determined, along with the spatial dimension of the path planning (two-dimensional planar planning or three-dimensional spatial planning). For example, in a two-dimensional planar path planning scenario, the map range can be set as X∈[0,20] and Y∈[0,20], and the corresponding upper and lower bound vectors of the search space are l=[0,0] and u=[20,20], respectively.
[0032] For two-dimensional planar path planning, the vector dimension of each individual is twice the number of control points (each control point includes x and y coordinates). For three-dimensional spatial path planning, the vector dimension of each individual is three times the number of control points (each control point includes x, y, and y coordinates). The position of each individual is generated according to a random uniform distribution rule, and the calculation formula is: ;in, Representing the Individual, The first representing the individual One dimension, The representative indicated the first The first individual Each dimension. The lower and upper bound vectors of the search space are represented by N, the population size is m, the individual dimension is r, and the initial state of the entire population is presented in matrix form, where each row of the matrix represents an individual and each column represents a dimension of the individual.
[0033] It should be noted that the coordinates of the robot's start and end points are fixed parameters and are not included in the individual's variable vector. All candidate paths for each individual are forcibly connected to the start and end points to ensure that each candidate path in the initialized evolutionary population satisfies the basic start and end point constraints. Through step S13, the generated two-dimensional initial population and / or three-dimensional initial population are integrated to obtain the initialized evolutionary population.
[0034] As an application example, in a warehouse robot path planning scenario, the robot needs to be controlled to travel from the warehouse entrance (starting point coordinates are (2,2)) to shelf area B (ending point coordinates are (18,18)). There are 10 sets of static shelf obstacles distributed in the environment. The search space is determined as X∈[0,20] and Y∈[0,20] based on the warehouse map boundary. The planning dimension is two-dimensional planar planning. The preset number of control points is 8, and the population size is N=50. A two-dimensional initial population is generated according to the above steps. Each individual is a 16-dimensional vector (8 control points, each control point corresponds to 2 coordinates). The vector elements are the X and Y coordinates of each control point. All individuals are forcibly connected to the starting point and the ending point. The 50 randomly generated individuals cover a variety of candidate paths from the starting point to the ending point, providing a sufficient diversity basis for subsequent evolutionary iterations.
[0035] By explicitly defining the path control points and search space for initializing the evolutionary population, the parameterized expression of candidate paths is realized, transforming the complex path planning problem into a quantifiable numerical optimization problem. By distinguishing between two-dimensional and three-dimensional planning scenarios to generate corresponding initial evolutionary populations, the algorithm's scenario adaptability is improved, meeting the navigation needs of different devices such as ground robots and drones. The generation of the evolutionary population based on random uniform distribution ensures that the individuals included in the initialized evolutionary population are evenly distributed in the search space, providing sufficient diversity for subsequent evolutionary iterations and effectively reducing the probability of prematurely getting trapped in local optima. Fixed start and end coordinates focus the search on optimizing intermediate candidate paths, reducing invalid computations and improving the targeting and efficiency of the evolutionary population initialization process.
[0036] Step S2: Using each individual in the current evolutionary population as the target vector, perform adaptive mutation, crossover, and boundary constraint processing to generate experimental vectors corresponding to each target vector.
[0037] This step is the core of the algorithm's adaptive adjustment. It aims to generate diverse and feasible new candidate paths (i.e., trial vectors) by dynamically adjusting the mutation strategy and parameters, thus providing high-quality material for the evolution of the population. The target vector refers to the individual in the current population undergoing mutation and crossover operations, representing a candidate path to be optimized. The trial vector is a new individual generated after performing mutation, crossover, and boundary constraint processing on the target vector, representing a new candidate path with optimized perturbation. Adaptive mutation and crossover mean that the mutation strategy, mutation parameters (scaling factors), and crossover parameters (crossover probabilities) are dynamically adjusted based on historical evolutionary experience, rather than using fixed values, to adapt to the search needs of different evolutionary stages.
[0038] This step can be implemented as follows: Step S21: Based on the historical success rate of each mutation strategy recorded within the preset learning period, dynamically select a mutation strategy for the current target vector from the strategy pool containing multiple mutation operation methods. Step S22: Obtain the scaling factor values corresponding to the better offspring individuals successfully generated in the previous iteration, form a successful scaling factor set, update the first mean parameter of the scaling factor distribution according to the successful scaling factor set, and randomly sample from the updated scaling factor distribution to generate the current scaling factor. Step S23: Obtain the crossover probability values corresponding to the better offspring individuals successfully generated in the previous iteration, form a successful crossover probability set, update the second mean parameter of the crossover probability according to the successful crossover probability set, and randomly sample from the updated crossover probability distribution to generate the current crossover probability. Step S24: For each target vector, based on the selected mutation strategy and the generated current scaling factor, select multiple different individuals from the current evolutionary population to perform difference operations and generate a mutation vector corresponding to the target vector. Step S25: For each target vector, perform a crossover operation between the target vector and the mutation vector according to the generated current crossover probability to obtain the initial test vector; Step S26: For each target vector, the dimensional components in the initial test vector that exceed the search space boundary are truncated so that they are within the preset upper and lower bounds of the search space, and the truncated vector is used as the generated test vector.
[0039] Furthermore, as one embodiment, step S21 can be specifically implemented as follows: Step S211: Within the preset learning period, record the number of times each mutation strategy in the strategy pool successfully generates better offspring individuals and the number of times it fails to generate better offspring individuals. Step S212: For each mutation strategy, calculate the proportion of successful attempts to the total number of attempts of the mutation strategy based on the number of successful attempts and the number of failed attempts, and obtain the historical success rate of the mutation strategy within the learning period. Step S213: Calculate the selection probability of each mutation strategy based on the historical success rate of each mutation strategy, where the selection probability is positively correlated with the historical success rate. Step S214: Based on the selection probability of each mutation strategy, determine the mutation strategy with the highest probability from the strategy pool as the mutation strategy used by the current target vector.
[0040] The policy pool can contain at least 5 mutation policies, for example: From the current evolutionary population, three distinct individuals are randomly selected. Using the first random individual as the basis vector, the difference vectors of the other two random individuals are multiplied by the current scaling factor and then superimposed onto the basis vector to generate a mutation vector; and / or, From the current best individual, and randomly select two distinct individuals from the current evolutionary population, using the best individual as the basis vector, multiply the difference vectors of the two random individuals by the current scaling factor and then superimpose them onto the basis vector to generate a mutation vector; and / or, Using the current target vector as the basis vector, multiply the difference vector between the current optimal individual and the current target vector by the current scaling factor and then superimpose it onto the basis vector. Then, multiply the difference vectors of two randomly selected individuals by the current scaling factor and superimpose them onto the basis vector to generate the mutation vector; and / or, From the current best individual, and randomly select four distinct individuals from the current evolutionary population, using the best individual as the basis vector, multiply the difference vectors of the first two random individuals by the current scaling factor, and then multiply the difference vectors of the last two random individuals by the current scaling factor, and successively add them to the basis vector to generate a mutation vector; and / or, Five distinct individuals are randomly selected from the current evolutionary population. The first random individual is used as the basis vector. The difference vectors of the second and third random individuals are multiplied by the current scaling factor, and the difference vectors of the fourth and fifth random individuals are multiplied by the current scaling factor and then superimposed onto the basis vector to generate the mutation vector.
[0041] For example, in embodiments of this disclosure, different mutation strategies (such as DE / rand / 1 excelling at exploration, and DE / current-to-best / 1 excelling at development) perform differently at different stages of path planning. The probability of selecting a strategy is dynamically adjusted by learning the historical success rate of each mutation strategy. The at least five mutation strategies provided in the strategy pool in this disclosure can be represented, for example, as follows: ,in, This represents the first mutation strategy. This indicates the second mutation strategy. This represents the third mutation strategy. This represents the fourth mutation strategy. The fifth mutation strategy can be represented by the following expressions, where, Let represent the mutation vector of the i-th individual. , , , , For the first, second, third, fourth, and fifth randomly selected individuals, Indicates the scaling factor. The optimal individual with the lowest fitness value in the current population represents the baseline optimal path in the mutation strategy. For the current individual; in, :DE / rand / 1, Both the basis vectors and the difference individuals are randomly selected; DE / best / 1, Using the current best individual as the basis vector; :DE / current-to-best / 1, The current individual learns from the best individual while incorporating random perturbations; DE / best / 2, Two difference vectors are used to generate mutations around the optimal individual; :DE / rand / 2, Two difference vectors are used to enhance random perturbations.
[0042] A learning cycle LP (e.g., 5 generations) can be set, and the number of successes for each strategy can be recorded in step S211 within each learning cycle. and number of failures The success rate of the strategy is calculated in step S212, and its expression is as follows: Then, the selection probability of each mutation strategy is calculated in step S213, and its expression is: ;in, It is a mutation strategy In recent Success rate within a generation It is the next generation of mutation strategy The probability of being selected is then determined in step S214, which identifies the mutation strategy with the highest probability of selection from the strategy pool as the target mutation strategy (i.e., the mutation strategy used by the current target vector), so that the mutation strategy with a higher success rate has a higher probability of being selected.
[0043] Furthermore, as one embodiment, step S22 can be specifically implemented as follows: Step S221: In the previous iteration, record the scaling factor values corresponding to all successful generation of better offspring individuals, and form the set of successful scaling factors for the current generation. Step S222: When the set of successful scaling factors is not empty, calculate the ratio of the sum of squares of all scaling factor values in the set of successful scaling factors to the sum of all scaling factor values to obtain the Lemaire mean. Step S223: Based on the preset learning rate, the first mean parameter from the previous iteration is weighted and calculated with the calculated Leme mean to obtain the updated first mean parameter. Step S224: Using the updated first mean parameter as the center position of the Cauchy distribution, controlling the distribution width with a preset scale parameter, and randomly sampling a value from the Cauchy distribution as the current scaling factor.
[0044] Specifically, the scaling factor value F is used to control the step size of the difference vector of the candidate path. In step S221, the scaling factor values of all those that successfully generated better offspring individuals in the previous iteration are recorded, forming a set of successful scaling factors. ,when When the value is not empty, calculate the corresponding Lemès mean in step S222. The calculation formula is as follows: ; Then, in step S223, based on the preset learning rate c (usually 0.1), the first mean parameter of the previous generation is adjusted. The updated first mean parameter is obtained by weighting it with the Lemès mean, and the process can be expressed as follows: ; ; in, This represents the value of the i-th scaling factor. This represents the i-th learning rate. Indicates the number of iterations. This represents the Lemma mean.
[0045] In step S224, the updated first mean parameter is used as the center position of the Cauchy distribution, and the distribution width is controlled by a scale parameter of 0.1. The current scaling factor is randomly sampled from the Cauchy distribution and constrained to the interval [0,1]. If empty, the preset initial value is used as the first mean parameter for random sampling to obtain the current scaling factor.
[0046] Furthermore, as one embodiment, step S23 can be specifically implemented as follows: Step S231: In the previous iteration, record the crossover probability values corresponding to all individuals that successfully generated better offspring, and form the set of successful crossover probabilities for the current generation. Step S232: When the set of successful crossover probabilities is not empty, calculate the arithmetic mean of all crossover probability values in the set of successful crossover probabilities. Step S233: Based on the preset learning rate, the second mean parameter of the previous generation is weighted and calculated with the arithmetic mean to obtain the updated second mean parameter. Step S234: Use the updated second mean parameter as the mean of the normal distribution, control the distribution width with the preset standard deviation, and randomly sample a value from the normal distribution as the current crossover probability.
[0047] Specifically, the crossover probability CR is used to control the proportion of new candidate paths inheriting the parameters of the mutated path. In step S231, the crossover probability values of all those that successfully generated better offspring individuals in the previous iteration are recorded to form a successful crossover probability set. ;when When the set is not empty, calculate the arithmetic mean of the success crossover probability set in step S232. Then, in step S233, based on the preset learning rate c, the second mean parameter from the previous iteration is adjusted. The updated second mean parameter is obtained by weighting it with the arithmetic mean, and the process can be expressed as follows: ; ;in, This represents a random number generator based on a normal (Gaussian) distribution. It is the mean of a normal distribution, used to control the central location of the distribution. It is the standard deviation, which controls the degree of dispersion of the distribution. Therefore, From Sampling is performed within a normal distribution centered at the origin. It is the set of successful crossover probabilities, that is, the set of probabilities of successfully generating better candidate paths. A set of values that records instances where better offspring individuals were successfully produced. value, The learning rate (usually 0.1) controls the update step size and determines the degree of influence of historical information on the new second mean parameter. For the set of successful crossover probabilities Find the arithmetic mean. Therefore, It is the excellence extracted from successful experiences. The central trend of the value, if a certain experimental path Compared to the original path Better, meaning the new path is shorter or safer, then the one that generated it... That is success. It will gradually move towards success The values are converging.
[0048] In step S234, the updated second mean parameter is used as the mean of the normal distribution, and the distribution width is controlled with a standard deviation of 0.1. The current crossover probability is randomly sampled from the normal distribution and constrained within the interval [0,1]. If the value is empty, the preset initial value is used as the second mean parameter for sampling to obtain the current crossover probability.
[0049] In step S24, for each target vector, based on the mutation strategy selected in step S21 and the scaling factor generated in step S22, multiple different individuals that meet the requirements of the mutation strategy are selected from the current evolutionary population, and a difference operation is performed to generate a mutation vector V. i For example, when a mutation strategy is employed, three distinct individuals are randomly selected from the current evolutionary population. The first random individual is used as the basis vector, and the difference vectors of the other two random individuals are multiplied by the current scaling factor and then superimposed onto the basis vector to generate the mutation vector. The formula for calculating the mutation vector is: ; in, , , Three distinct individuals are randomly selected from the evolutionary population, and F is the current scaling factor.
[0050] In step S25, based on the crossover probability generated in step S23, the target vector and the mutation vector are cross-crossed. The calculation formula is as follows: ; in, Represents the test vector The dimensional components, Represents the mutation vector The Dimensional components (new path parameters generated by the mutation operation). Represents the current target vector The Dimensional components (parameters of the original path). Indicates that for the first A random decimal generated by dimension. This represents the crossover probability constant, which typically ranges from [0,1]. This represents a randomly selected dimension index to ensure that at least one dimension of the experimental vector comes from the mutated vector, and then the initial experimental vector is obtained through the corresponding crossover operation.
[0051] In step S26, for each target vector, a truncation strategy is used to impose boundary constraints on the initial test vector to ensure that all dimensional components are within the upper and lower bounds of the search space. The calculation formula is as follows: ; in, It is the updated individual state after boundary constraints. and These are the upper and lower bound vectors of the j-th dimension of the search space, respectively. Components exceeding the boundaries are corrected to obtain feasible experimental vectors.
[0052] As an application example, continuing the aforementioned warehouse robot scenario, adaptive mutation, crossover, and boundary constraint processing are performed on each target vector in the current population during the iteration process. For instance, for a target vector (representing a candidate path that is not precise enough in obstacle avoidance), the historical success rate of each mutation strategy in the strategy pool is queried. It is found that the mutation strategy of using the current target vector as the basis vector, multiplying the difference vector between the current best individual and the current target vector by the current scaling factor and then superimposing it onto the basis vector, and then multiplying the difference vectors of two randomly selected individuals by the current scaling factor and then superimposing it onto the basis vector, has a success rate of 80% in the last 5 generations. Therefore, this mutation strategy is determined to be the mutation strategy for the current target vector. Subsequently, the Lemaire mean is calculated to be 0.6 from the set of successful scaling factors. After updating the first mean parameter of the Cauchy distribution using the formula, the current scaling factor F is sampled to be 0.58. At the same time, the arithmetic mean of the set of successful crossover probabilities is calculated to be 0.45. After updating the mean parameter of the normal distribution, the crossover probability CR is sampled to be 0.42. Based on the selected mutation strategy and F value, the current best individual, the target vector, and two random individuals are selected from the evolutionary population and subjected to difference operations to generate a mutation vector. Then, the target vector and the mutation vector are intersected according to the CR value to obtain the initial test vector. The coordinates of each control point in the test vector are checked, and the X coordinate of a control point that exceeds the search space boundary X=20 is corrected to 20 to obtain the test vector. The candidate path corresponding to this test vector is optimized in terms of obstacle avoidance path and turning angle.
[0053] This application embodiment achieves adaptive matching between search strategies and evolutionary stages by constructing a multi-strategy pool and dynamically selecting mutation strategies based on historical success rates. In the early stages of evolution, highly exploratory strategies can be automatically selected to expand the search range, while in the late stages, highly exploitative mutation strategies can be automatically selected to finely optimize candidate paths. In the adaptive generation mechanism of scaling factors and crossover probabilities, the long-tail characteristic of Cauchy distribution allows the scaling factor to occasionally generate large values, helping the algorithm escape local obstacle traps. The central characteristic of normal distribution ensures the stability of crossover probabilities. The smooth update of the two parameters ensures the robustness of the algorithm. The combined operation of mutation, crossover, and boundary constraints ensures both the diversity of new candidate paths and the feasibility of experimental vectors, providing high-quality candidate individuals for subsequent optimization updates of the evolutionary population, effectively improving the search efficiency and optimization effect of the algorithm.
[0054] Step S3: Calculate the fitness values corresponding to the target vector and the trial vector respectively, and update the current preferred individual based on the individual corresponding to the smaller fitness value.
[0055] This step is the core link in realizing population evolution in this embodiment of the disclosure. By constructing a multi-objective comprehensive evaluation system (fitness function), the merits of each candidate path are quantitatively evaluated, and the best individuals are selected based on the evaluation results, thereby promoting the evolutionary population to evolve in a better direction.
[0056] Among them, the fitness value is a quantitative indicator used to comprehensively evaluate the quality of candidate paths. The smaller the value, the better the overall quality of the path. Its calculation covers three core dimensions of candidate path length, smoothness, and safety, and can comprehensively reflect the actual use value of candidate paths. The fitness value corresponding to the target vector is called the first fitness value, and the fitness value corresponding to the test vector is called the second fitness value. Individual selection can be achieved by comparing the two.
[0057] As one implementation method, this step can be specifically implemented as follows: Step S31: For the multidimensional vector of the target vector and the multidimensional vector of the test vector, extract the coordinates of each control point on the candidate path represented by each vector, and sum the straight-line distances between all adjacent control points on each candidate path to obtain the path length cost of the target vector and the path length cost of the test vector. Step S32: Based on the coordinates of each control point on each candidate path, determine each intermediate control point and the turning angle formed by adjacent path segments at the intermediate control point. Sum the absolute values of the turning angles at all intermediate control points on each candidate path to obtain the path smoothness cost of the target vector and the path smoothness cost of the test vector. Step S33: For each candidate path, calculate the shortest distance from the path segment of each candidate path to the outline of each obstacle in the preset obstacle set. If each shortest distance is less than a preset safety threshold, accumulate the penalty value determined based on the shortest distance to obtain the path safety cost of the target vector and the path safety cost of the test vector. Step S34: Based on the preset weight coefficients, the path length cost, path smoothness cost, and path safety cost of the target vector are weighted and summed to determine the first fitness value of the target vector and the second fitness value of the test vector, respectively. Step S35: The vector corresponding to the smaller value between the first fitness value and the second fitness value is determined as the preferred individual.
[0058] Furthermore, the formula for calculating the path length cost corresponding to step S31 can be expressed as: ;in, Let be the j-th control point on the candidate path, and m be the total number of control points. The path length cost is used to measure the shortness of the candidate path; the smaller the value, the shorter the path. The path length cost can be obtained by extracting the coordinates of each control point on the candidate path corresponding to the target vector and the test vector, substituting them into the above formula, and summing the straight-line distances between all adjacent control points.
[0059] In step S32, the formula for calculating the path smoothness cost can be expressed as: ; in, The path smoothness cost is the turning angle of the candidate path at the j-th intermediate control point. A smaller turning angle indicates a smoother candidate path. The path smoothness cost is used to satisfy the robot's kinematic constraints and reduce the impact of sharp turns on motion stability. Based on the coordinates of each control point on the candidate path, the turning angle formed by adjacent path segments at each intermediate control point is determined. Substituting these values into the above formula and summing them, the path smoothness costs of the target vector and the test vector are obtained respectively.
[0060] In step S33, the formula for calculating the path security cost can be expressed as: ;in, This represents the shortest distance from the j-th path segment in the candidate path to the contours of each obstacle. Let be the penalty function, when ≥ ( The penalty value is 0 when the preset safety threshold is met. < The penalty value increases sharply (e.g., exponentially) as the distance decreases, thus ensuring that the candidate path stays away from obstacles. For each candidate path, the shortest distance from the path segment to the contour of each obstacle is calculated. The penalty value is determined based on the relationship between the shortest distance and a preset safety threshold and is accumulated to obtain the path safety cost for the target vector and the test vector, respectively.
[0061] In step S34, the formula for calculating the fitness value can be expressed as: ;in, , , The preset weighting coefficients satisfy... + =1, which can be adjusted according to actual needs, for example, it can be increased in environments with dense obstacles. With an emphasis on security, the cost terms obtained in steps S31-S33 are substituted into the above formula and summed with weights to obtain the first fitness value of the target vector. and the second fitness value of the test vector .
[0062] In step S35, the population update rule can be expressed as: ; in, For individuals in the next generation of the population, For the test vector, Given the target vector, compare the first fitness value with the second fitness value, and determine the vector with the smaller fitness value as the preferred individual.
[0063] As an application example, in a robot path planning scenario, a mobile robot is controlled to move from area A to area B in a warehouse. The environment contains static obstacles such as shelves and pillars. The current evolutionary population contains multiple candidate paths encoded by control point coordinate sequences. For the target vector to be evaluated and its corresponding trial vector, their first and second fitness values are calculated. Fitness values can be calculated using a weighted sum, assigning appropriate weights (e.g., w1=0.3, w2=0.2, w3=0.5) to the three cost terms: path length, smoothness, and safety. To calculate the path length cost, the control point sequence is decoded from the vector, and the Euclidean distance between every two adjacent control points is calculated sequentially. All segmented distances are summed to obtain the total length cost; for example, the length cost of the target vector is 28.5, and the length cost of the trial vector is 26.3. To calculate the path smoothness cost, each intermediate control point is examined sequentially, and the path segments before and after that intermediate control point are calculated. The turning angle formed by the line segment is calculated, and the absolute values of the turning angles of all intermediate points are summed. For example, the smoothness cost of the target vector is 156°, and the smoothness cost of the test vector is 132°. To calculate the path safety cost, the distance between the coordinates of each control point and the known obstacle contour can be calculated to find the shortest distance. If the shortest distance is less than the preset safety threshold (0.5) set for the robot, a penalty value is calculated according to the inverse relationship. The penalty values generated by all control points are accumulated to obtain the safety cost. For example, the safety cost of the target vector is 100, and the safety cost of the test vector is 0. After the above calculation is completed, the three cost items are multiplied by their respective weights and then added together. For example, the first fitness value of the target vector is 0.3×28.5+0.2×156+0.5×100=89.75, and the second fitness value of the test vector is 0.3×26.3+0.2×132+0.5×0=34.29. Since the second fitness value is smaller, the test vector is determined as the current preferred individual.
[0064] Step S4: Perform a local fine search based on the preferred individuals to obtain finely optimized individuals, and update the current evolutionary population based on the finely optimized individuals.
[0065] This step is a key step in the algorithm to make up for the lack of local development capabilities. By exploring the iterative process of movement and pattern movement, a local fine search is performed in the neighborhood of the current historical best individual. It does not require gradient information of the objective function, is simple to implement and has high search efficiency. The finely optimized individual refers to the better individual obtained through local search, and the quality of its corresponding candidate path is better than the current best candidate path before the search.
[0066] This step can be specifically implemented as follows: Step S41, select the preferred individual as the current optimized individual and set the initial search step size; Step S42, for each dimension of the current optimized individual, move along the positive and negative directions with the initial search step size to obtain positive and negative exploration individuals in each dimension; calculate the fitness values of the positive exploration individuals, negative exploration individuals, and the current optimized individual, and select the optimized individual with the smallest fitness value as the moving reference individual for this round of local fine exploration; Step S43, compare the fitness values of the moving reference individual and the current optimized individual. If the fitness value of the moving reference individual is less than the fitness value of the current optimized individual, the exploration movement is determined to be successful, and step S44 is executed; otherwise, the exploration movement is determined to be unsuccessful, and step S46 is executed; Step S44, based on the current moving reference individual, move along the moving reference individual... The quasi-individual continues to move forward one search step along each dimension relative to the success direction of the current optimized individual, resulting in a set of pattern-moving individuals. If the fitness value of a pattern-moving individual is less than that of the moving baseline individual, the pattern-moving individual is used as the new moving baseline individual, and this step is repeated to continue pattern-moving in the same direction until the fitness value of the pattern-moving individual is no longer less than that of the current moving baseline individual, at which point the pattern-moving stops. In step S45, the current moving baseline individual at the time of stopping the pattern-moving is used as the updated optimized individual. In step S46, the search step size is reduced, and the updated current optimized individual is used as the new current optimized individual, returning to step S42. When the search step size is reduced to below the preset minimum step size threshold, the local search is stopped, and the current optimized individual is output as the refined optimized individual.
[0067] In step S41, the preferred individual is selected as the current optimized individual X, and the initial search step size is set. (e.g., 0.1), step size decay coefficient ( ∈(0,1), such as 0.5) and minimum step size threshold (e.g., 0.01), used to control the range and precision of the local search.
[0068] In step S42, the generation formulas for positive exploration individuals and negative exploration individuals are as follows: ; ;in, yes The j-th element, All other elements are 0. Indicates to The individual being explored after a positive movement in the j-dimensional direction. Indicates to Negative exploration individuals after negative shifting in dimension j.
[0069] Calculate the fitness values of the individual exploring forward, the individual exploring backward, and the currently optimized individual. Select the optimized individual with the lowest fitness value as the starting point for this round of exploration. .
[0070] In step S43, the moving reference individuals are compared. Compared with the current optimized individual The fitness value, if If the exploration and movement are successful, proceed to step S44; if If the movement fails, proceed to step S46.
[0071] In step S44, based on the moving baseline individual, the individual is moved one search step length along each dimension of the success direction to obtain a set of pattern moving individuals. If a pattern moving individual exists... The fitness value is less than that of the moving baseline individual. The fitness value, i.e. If the pattern-moving individual is used as the new base individual, the pattern-moving process is repeated until the fitness value of the pattern-moving individual is no longer less than the fitness value of the current base individual, at which point the pattern-moving process stops.
[0072] In step S45, the current moving baseline individual during the stop mode movement is used as the updated current optimized individual.
[0073] In step S46, if the exploration movement fails, the search step size is directly reduced. If the pattern move is successful, decrease the search step size after the pattern move stops. The adjusted step size is compared with the minimum step size threshold. To make a comparison, if If the search is successful, stop the local search and output the current moving baseline individual as the fine-tuned individual; otherwise, return to step S42 and continue the exploratory movement.
[0074] The fitness values of the finely optimized individuals are compared with those of all individuals in the current evolutionary population, and the best individuals are selected and recorded based on their fitness values, thus realizing the feedback of local search results to the evolutionary population.
[0075] Using the current best individual (fitness value 41.9) as the current optimal individual, set the initial search step size Δ=0.1, the step size decay coefficient β=0.5, and the minimum step size threshold. =0.01. An exploratory move is performed on the 16 dimensions (X and Y coordinates of 8 control points) of the current optimized individual. It is found that moving the Y coordinate of the 5th control point by 0.1 in the positive direction yields a positive exploratory individual with a fitness value of 41.2, which is less than the current optimized individual's 41.9. This individual is then used as the baseline for the move. Subsequently, a pattern move is performed in the positive direction, resulting in a pattern-moved individual with a fitness value of 40.8. The move continues in this direction until the fitness value of the pattern-moved individual reaches 41.0. The pattern-moved individual with the previous fitness value of 40.8 is then used as the updated current optimal individual, and the step size is reduced to 0.05. The exploratory and pattern moves are repeated until the step size is reduced below 0.01, at which point the local search stops, and the fitness value of the refined optimized individual is 39.8.
[0076] The local search process in this step is similar to Figure 3 (The path planning process combining adaptive difference and local search) is compatible. Figure 3 It demonstrates the timing and execution logic of local search intervention, and forms a two-layer optimization system of global exploration and local development by combining global search through differential evolution with local fine-grained search.
[0077] This application embodiment performs local search based on preferred individuals, focusing optimization on the neighborhood of the historical best individual, significantly increasing the probability of finding a better individual. The gradient-free nature of pattern search reduces the implementation difficulty of the algorithm, adapting to the nonlinear and multi-constraint characteristics of path planning problems. The combined operation of exploration movement, pattern movement, and step size adaptation enables fine mining of the neighborhood of the historical best individual. Exploration movement comprehensively explores the optimization potential in all directions, pattern movement accelerates the search along the optimal direction, and step size adaptation gradually narrows the search range, allowing for precise adjustment of the coordinates of path control points, further improving the smoothness and safety of candidate paths. This allows for the feedback of finely optimized individuals to the evolutionary population, improving the overall quality of the evolutionary population and driving the algorithm to continue converging towards the global optimum.
[0078] Step S5: Repeat steps S2 to S4 until the iteration termination condition is met. Based on the multi-dimensional vectors corresponding to the best individuals in each generation of the current evolutionary population, determine and output the optimal candidate path.
[0079] This step is the iterative control and result output stage of the algorithm. By cyclically scheduling the core evolutionary steps, the quality of the evolutionary population is continuously optimized until the globally optimal candidate path is found and output.
[0080] Among them, the iteration termination condition is the criterion for stopping the algorithm's iteration. It can be either reaching the preset maximum number of iterations or the change in the optimal fitness value of each generation being less than a preset threshold. Alternatively, a single condition or a combination of conditions can be selected according to actual needs. The optimal individual in each generation refers to the individual with the smallest fitness value that has appeared in all iterations. Its corresponding candidate path is the optimal candidate path. Recording the optimal individuals in each generation can avoid the loss of high-quality individuals due to fluctuations in the population during later evolution.
[0081] This step can be implemented as follows: Step S51, cyclically execute steps S2 to S4, and continuously call steps S2 (adaptive mutation and crossover to generate experimental vectors), S3 (fitness calculation and population update), and S4 (local fine search). After each loop, first update the record of the best individual in each generation, and then execute the iteration termination condition determination; Step S52, determine the iteration termination condition, and check whether the current iteration number has reached the preset maximum iteration number (e.g., 500 times), or whether the change in the fitness value corresponding to the best individual in each generation is less than the preset threshold (e.g., 10). -6 If any one of these conditions is met, the iteration termination condition is met, and the process proceeds to step S53; otherwise, the process returns to step S2 and continues to the next iteration. In step S53, the optimal candidate path is determined by extracting the multi-dimensional vector corresponding to the individual with the smallest fitness value from the records of the best individuals in each generation. This vector is then decoded to obtain the coordinate sequence of the path control points. The robot's starting point, the decoded path control points, and the ending point are connected in sequence to form a complete optimal candidate path. In step S54, the optimal candidate path is output by sending the optimal candidate path determined in step S53 to the robot's motion control module or storing it in a specified storage medium. The path output format can be selected as a control point coordinate sequence, continuous trajectory equation, etc., according to requirements.
[0082] As an application example, in the path planning scenario of a port container handling robot, the robot needs to travel from the container stacking area (starting point coordinates (3,3)) to the dock loading and unloading area (ending point coordinates (17,17)). The environment contains 6 sets of static container obstacles and 2 sets of dynamic operation vehicle obstacles (dynamic obstacles travel in a loop along a fixed trajectory). Steps S2 to S4 are executed in a loop: In the 1st to 20th generation iterations, the minimum fitness value of the evolutionary population rapidly decreases from 85.6 to 52.3, and the path obstacle avoidance ability is significantly improved (corresponding to...). Figure 10 (Candidate paths iterated 30 times in a dynamic obstacle environment); From generation 21 to 80, the minimum fitness value slowly decreases to 41.9, and the best individuals in each generation of the evolutionary population gradually stabilize; From generation 81 to 140, the fitness value decreases from 41.9 to 38.2, and by generation 140, the change in the fitness value of the best individuals in each generation is less than 10. -6If the iteration termination condition is met, extract the multi-dimensional vector corresponding to the fitness value of 38.2 from the records of the best individuals in each generation. Decode the coordinate sequence of 8 control points: (4.2, 4.5), (5.8, 7.2), (7.5, 9.8), (9.2, 12.3), (11.5, 13.8), (13.2, 15.5), (15.8, 16.2), (16.5, 17.0). Connect the starting point, control points, and ending point in sequence to form the optimal candidate path (corresponding to...). Figure 13 The optimal candidate path is obtained by iterating through 290 times in a dynamic obstacle environment. The coordinate sequence of the optimal candidate path is output to the robot motion control module so that the robot can travel along the optimal candidate path and successfully avoid all dynamic and static obstacles.
[0083] This application embodiment ensures that the algorithm can fully explore the optimization potential of the solution space by cyclically scheduling the core evolutionary steps, continuously driving the evolutionary population to evolve in a better direction, avoiding insufficient optimization of candidate paths due to insufficient iterations. The setting of iteration termination conditions prevents the waste of computational resources caused by infinite iterations, while ensuring the optimization quality of candidate paths, achieving a balance between convergence and efficiency. Recording and extracting the best individuals in each generation effectively avoids the loss of high-quality individuals caused by fluctuations in the later evolutionary population, ensuring that the output candidate path is the globally best individual in the entire search process. The output optimal candidate path can simultaneously meet the comprehensive requirements of shortest length, highest smoothness, and strongest safety, and can be directly used to guide the robot's autonomous navigation in complex environments.
[0084] The embodiments of this application are fully demonstrated in simulation verification. The parameters of static obstacles and combined static and dynamic obstacles are shown in Table 1 and Table 2, respectively. Table 1 includes the center coordinates, threat radius, and safety margin of 10 sets of static obstacles, and Table 2 includes the relevant parameters of 4 sets of static obstacles and 3 sets of dynamic obstacles (dynamic obstacles include preset running trajectories and speeds).
[0085] In the static obstacle environment in Table 1, the candidate paths after 20 iterations are as follows: Figure 4 As shown, there are still problems such as insufficient obstacle avoidance and large turning angles. With iteration, the evolutionary population gradually eliminates inferior individuals through selective updates. By the 100th iteration, the optimal candidate path has been generated. The paths after 100, 160, and 200 iterations are shown below. Figure 5 , Figure 6 , Figure 7 As shown, it always maintains its optimal state; in the dynamic and static combined obstacle environment in Table 2, the obstacle avoidance path and the dynamic obstacle movement trajectory are as follows: Figure 8 and Figure 9 As shown, the paths for iterations of 30, 100, 200, and 290 are as follows: Figure 10 , Figure 11 , Figure 12 , Figure 13 As shown, by continuously calculating fitness and updating the evolutionary population, the optimal candidate path is generated in the 200th iteration, and dynamic obstacles can be avoided in real time.
[0086] The test parameters for the static obstacle threat model are shown in Table 1. Table 1 Parameters of Static Barrier Threat Model
[0087] Secondly, the test parameters for the dynamic and static combined obstacle threat model are shown in Table 2: Table 2 Parameter Table for Dynamic and Static Combined Obstacle Threat Model
[0088] This application embodiment achieves a comprehensive quantitative evaluation of the quality of candidate paths by constructing a multi-objective fitness function covering length, smoothness, and safety. This avoids the defects caused by single-objective optimization (such as pursuing only the shortest path while ignoring safety). The calculation logic of each cost term is simple and efficient, and can be completed based on the coordinates of the path control points, which is suitable for the iterative calculation requirements of the algorithm. At the same time, the penalty value provides a hard constraint on path safety, ensuring that the planned candidate paths can effectively avoid obstacles. Based on the optimization update rule of fitness value, the best individuals are obtained, thereby improving the overall quality of the evolutionary population through iteration and driving the algorithm to converge to the optimal solution. Simulation results in static and dynamic-static combined obstacle environments have verified the effectiveness and adaptability of this application embodiment.
[0089] In summary, this scheme transforms the path planning problem into a numerical optimization problem based on path control points. It constructs a complete path planning process, including population initialization, adaptive mutation and crossover, fitness-based updates, and local fine-tuning search. The adaptive adjustment mechanism of parameters and mutation strategies is integrated into the core operation of differential evolution. At the same time, local fine-tuning optimization is introduced to achieve a dynamic balance between global exploration and local development capabilities. This effectively solves the problems of poor convergence and easy getting trapped in local optima caused by fixed parameters and strategies in traditional algorithms. It can autonomously adjust its search behavior according to the evolutionary state and environmental complexity, and plan candidate paths that are better in terms of length, smoothness, and safety in complex dynamic and static obstacle environments. It also improves the robustness and convergence efficiency of the algorithm and reduces the dependence on manual parameter tuning.
[0090] All of the above-mentioned optional technical solutions can be combined in any way to form optional embodiments of this disclosure, and will not be described in detail here.
[0091] The following are embodiments of the apparatus disclosed herein, which can be used to execute embodiments of the method disclosed herein. For details not disclosed in the apparatus embodiments of this disclosure, please refer to the embodiments of the method disclosed herein.
[0092] Figure 14 This is a schematic diagram of a path planning device combining adaptive differential and local search optimization provided in an embodiment of this disclosure. Figure 14 As shown, the path planning device combining adaptive differential and local search optimization includes: The population initialization module 1401 is used to initialize the evolutionary population in the search space composed of the coordinates of the path control points. The evolutionary population includes multiple individuals, each of which is a multi-dimensional vector. The multi-dimensional vector corresponds one-to-one with the candidate path and is used to represent the candidate path defined by a series of control points. The mutation and crossover module 1402 is used to perform adaptive mutation, crossover and boundary constraint processing on each individual in the current evolutionary population as the target vector, and generate experimental vectors corresponding to each target vector. The fitness calculation and selection module 1403 is used to calculate the fitness values corresponding to the target vector and the test vector respectively, and update the current preferred individual according to the individual corresponding to the smaller fitness value. The fitness value is used to comprehensively evaluate the length, smoothness and safety of the candidate path. The local search module 1404 is used to perform a local fine search based on the preferred individuals to obtain finely optimized individuals, and to update the current evolutionary population based on the finely optimized individuals; The iterative control and output module 1405 is used to cyclically control the mutation crossover module, fitness calculation and selection module and local search module to perform corresponding operations until the preset iteration termination condition is met. Based on the multi-dimensional vector corresponding to the best individual in each generation of the current evolutionary population, the optimal candidate path is determined and output.
[0093] In some embodiments, the population initialization module 1401 is specifically used for: Within the search space defined by the coordinates of the path control points, for two-dimensional planar path planning, a corresponding two-dimensional initial population is generated based on the x-coordinate, y-coordinate, and the preset number of control points; for three-dimensional spatial path planning, a corresponding three-dimensional initial population is generated based on the x-coordinate, y-coordinate, y-coordinate, and the preset number of control points; the two-dimensional initial population and / or the three-dimensional initial population are determined as the initial evolutionary population.
[0094] In some embodiments, the fitness calculation and selection module 1403 is specifically used for: For the multidimensional vectors of the target vector and the multidimensional vectors of the test vector, the coordinates of each control point on the candidate path represented by each vector are extracted. The straight-line distances between all adjacent control points on each candidate path are summed to obtain the path length cost of the target vector and the path length cost of the test vector. Based on the coordinates of each control point on each candidate path, each intermediate control point is determined, and the turning angle formed by adjacent path segments at the intermediate control point is determined. The absolute values of the turning angles at all intermediate control points on each candidate path are summed to obtain the path smoothness cost of the target vector and the path smoothness cost of the test vector. For each candidate path, calculate the shortest distance from the path segment of each candidate path to the outline of each obstacle in the preset obstacle set. If each shortest distance is less than a preset safety threshold, accumulate the penalty value determined based on the shortest distance to obtain the path safety cost of the target vector and the path safety cost of the test vector. Based on the preset weight coefficients, the path length cost, path smoothness cost, and path safety cost of the target vector are weighted and summed to determine the first fitness value of the target vector and the second fitness value of the test vector, respectively. The vector corresponding to the smaller of the first fitness value and the second fitness value is determined as the preferred individual.
[0095] In some embodiments, the mutation crossover module 1402 is specifically used for: Based on the historical success rate of each mutation strategy recorded within a preset learning period, a mutation strategy is dynamically selected for the current target vector from a strategy pool containing multiple mutation operation methods. Obtain the scaling factor values corresponding to the better offspring individuals successfully generated in the previous iteration, form a successful scaling factor set, update the first mean parameter of the scaling factor distribution based on the successful scaling factor set, and randomly sample from the updated scaling factor distribution to generate the current scaling factor. Obtain the crossover probability values corresponding to the better offspring individuals successfully generated in the previous iteration, form a successful crossover probability set, update the second mean parameter of the crossover probability distribution according to the successful crossover probability set, and randomly sample from the updated crossover probability distribution to generate the current crossover probability. For each target vector, based on the selected mutation strategy and the generated current scaling factor, multiple different individuals are selected from the current evolutionary population for difference operations to generate a mutation vector corresponding to the target vector; For each target vector, based on the generated current crossover probability, the target vector and the mutation vector are cross-operated to obtain the initial test vector; For each target vector, the dimensional components in the initial test vector that exceed the search space boundary are truncated, and the truncated vector is used as the generated test vector.
[0096] In some embodiments, the mutation crossover module 1402 is further configured to: within a preset learning period, record the number of times each mutation strategy in the policy pool successfully generates a better offspring individual and the number of times it fails to generate a better offspring individual; for each mutation strategy, calculate the proportion of the number of successful attempts to the total number of attempts of the mutation strategy based on the number of successful attempts and the number of failures, to obtain the historical success rate of the mutation strategy within the learning period; calculate the selection probability of each mutation strategy based on the historical success rate of each mutation strategy, wherein the selection probability is positively correlated with the historical success rate; and determine the mutation strategy with the highest selection probability in the policy pool as the mutation strategy used by the current target vector based on the selection probability of each mutation strategy.
[0097] In some embodiments, the mutation crossover module 1402 is further configured to: record the scaling factor values corresponding to all successfully generated better offspring individuals in the previous iteration, forming a successful scaling factor set for the current generation; when the successful scaling factor set of the previous generation is not empty, calculate the ratio of the sum of squares of all scaling factor values in the successful scaling factor set to the sum of all scaling factor values to obtain the Lemaire mean; calculate the weighted average of the first mean parameter of the previous generation and the Lemaire mean according to a preset learning rate to obtain the updated first mean parameter; use the updated first mean parameter as the center position of the Cauchy distribution, control the distribution width with a preset scale parameter, and randomly sample a value from the Cauchy distribution as the current scaling factor.
[0098] In some embodiments, the mutation crossover module 1402 is further configured to: record the crossover probability values corresponding to all successfully generated better offspring individuals in the previous iteration process, forming a successful crossover probability set for the current generation; when the crossover probability set of the previous generation is not empty, calculate the arithmetic mean of all crossover probability values in the successful crossover probability set; according to a preset learning rate, perform a weighted calculation on the second mean parameter in the previous iteration process and the calculated arithmetic mean to obtain an updated second mean parameter; use the updated second mean parameter as the mean of the normal distribution, control the distribution width with a preset standard deviation, and randomly sample a value from the normal distribution as the current crossover probability.
[0099] In some embodiments, the policy pool includes the following mutation policy: randomly selecting three distinct individuals from the current evolutionary population, using the first random individual as the basis vector, multiplying the difference vectors of the other two random individuals by the current scaling factor, and then superimposing them onto the basis vector to generate a mutation vector; and / or, The optimal individual with the best fitness value is determined from the current evolutionary population. Then, two distinct individuals are randomly selected from the current population. Using the optimal individual as a basis vector, the difference vectors of the two random individuals are multiplied by the current scaling factor and then superimposed onto the basis vector to generate a mutation vector; and / or, Using the current target vector as the basis vector, multiply the difference vector between the current optimal individual and the current target vector by the current scaling factor and then superimpose it onto the basis vector. Then, multiply the difference vectors of two randomly selected individuals by the current scaling factor and superimpose them onto the basis vector to generate the mutation vector; and / or, From the current best individual, and randomly select four distinct individuals from the current evolutionary population, using the best individual as the basis vector, multiply the difference vectors of the first two random individuals by the current scaling factor, and then multiply the difference vectors of the last two random individuals by the current scaling factor, and successively add them to the basis vector to generate a mutation vector; and / or, Five distinct individuals are randomly selected from the current evolutionary population. The first random individual is used as the basis vector. The difference vectors of the second and third random individuals are multiplied by the current scaling factor, and the difference vectors of the fourth and fifth random individuals are multiplied by the current scaling factor and then superimposed onto the basis vector to generate the mutation vector.
[0100] In some embodiments, the local search module 1404 is specifically used for: selecting the preferred individual as the current optimized individual and setting an initial search step size; for each dimension of the current optimized individual, moving along the positive and negative directions with the initial search step size to obtain positive exploration individuals and negative exploration individuals in each dimension; calculating the fitness values of the positive exploration individuals, negative exploration individuals, and the current optimized individual, and selecting the optimized individual with the smallest fitness value as the moving reference individual for this round of local fine exploration; comparing the fitness values of the moving reference individual and the current optimized individual, if the fitness value of the moving reference individual is less than the fitness value of the current optimized individual, then using the pattern moving individual as the new moving reference individual, and repeating this step to continue pattern moving along the same direction until... The process of stopping pattern movement occurs when the fitness value of the pattern-moving individual is no longer less than the fitness value of the current moving baseline individual; otherwise, the exploration movement is deemed a failure, the search step size is reduced, and the updated current optimized individual is used as the new current optimized individual. For each dimension of the current optimized individual, movement is performed along the positive and negative directions with the initial search step size to obtain positive and negative exploration individuals in each dimension. The fitness values of the positive exploration individual, negative exploration individual, and current optimized individual are calculated respectively, and the optimized individual with the smallest fitness value is used as the moving baseline individual for this round of local fine-tuning exploration. When the search step size is reduced to below the preset minimum step size threshold, the local search is stopped, and the current optimized individual is output as the fine-tuning optimized individual.
[0101] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0102] Figure 15 This is a schematic diagram of the electronic device 15 provided in an embodiment of this application. Figure 15 As shown, the electronic device 15 of this embodiment includes: a processor 1501, a memory 1502, and a computer program 1503 stored in the memory 1502 and executable on the processor 1501. When the processor 1501 executes the computer program 1503, it implements the steps in the various method embodiments described above. Alternatively, when the processor 1501 executes the computer program 1503, it implements the functions of each module / unit in the various device embodiments described above.
[0103] Electronic device 15 may be a desktop computer, laptop, handheld computer, cloud server, or other electronic device. Electronic device 15 may include, but is not limited to, processor 1501 and memory 1502. Those skilled in the art will understand that... Figure 15 This is merely an example of electronic device 15 and does not constitute a limitation on electronic device 15. It may include more or fewer components than shown, or different components.
[0104] The processor 1501 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
[0105] The memory 1502 can be an internal storage unit of the electronic device 15, such as a hard disk or RAM of the electronic device 15. The memory 1502 can also be an external storage device of the electronic device 15, such as a plug-in hard disk, Smart Media Card (SMC), Secure Digital (SD) card, FlashCard, etc., equipped on the electronic device 15. The memory 1502 can also include both internal and external storage units of the electronic device 15. The memory 1502 is used to store computer programs and other programs and data required by the electronic device.
[0106] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0107] If integrated modules / units are implemented as software functional units and sold or used as independent products, they can be stored in a readable storage medium (e.g., a computer-readable storage medium). Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program may include computer program code, which may be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable storage medium may include: any entity or device capable of carrying computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc.
[0108] The above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.
Claims
1. A path planning method combining adaptive difference and local search optimization, characterized in that, include: Step S1: Initialize the evolutionary population in the search space formed by the coordinates of the path control points. The evolutionary population includes multiple individuals, each of which is a multi-dimensional vector. The multi-dimensional vector corresponds one-to-one with the candidate path and is used to represent the candidate path defined by a series of control points. Step S2: Using each individual in the current evolutionary population as the target vector, perform adaptive mutation, crossover, and boundary constraint processing to generate experimental vectors corresponding to each target vector; Step S3: Calculate the fitness values corresponding to the target vector and the test vector respectively, and update the current preferred individual according to the individual corresponding to the smaller fitness value. The fitness value is used to comprehensively evaluate the length, smoothness and safety of the candidate path. Step S4: Perform a local fine search based on the preferred individuals to obtain finely optimized individuals, and update the current evolutionary population based on the finely optimized individuals; Step S5: Repeat steps S2 to S4 until the iteration termination condition is met. Based on the multi-dimensional vectors corresponding to the best individuals in each generation of the current evolutionary population, determine and output the optimal candidate path.
2. The method according to claim 1, characterized in that, The initialization of the evolutionary population within the search space defined by the coordinates of the path control points includes: Step S11: In the search space formed by the coordinates of the path control points, for two-dimensional planar path planning, generate a corresponding two-dimensional initial population based on the horizontal coordinate, vertical coordinate and the preset number of control points. Step S12: For three-dimensional spatial path planning, generate the corresponding three-dimensional initial population based on the horizontal coordinate, vertical coordinate, vertical coordinate and the preset number of control points; Step S13: Determine the two-dimensional initial population and / or the three-dimensional initial population as the evolutionary population.
3. The method according to claim 1, characterized in that, The step of calculating the fitness values corresponding to the target vector and the test vector respectively, and updating the current preferred individual based on the individual corresponding to the smaller fitness value, includes: Step S31: For the multidimensional vector of the target vector and the multidimensional vector of the test vector respectively, extract the coordinates of each control point on the candidate path represented by each, and sum the straight-line distances between all adjacent control points on each candidate path to obtain the path length cost of the target vector and the path length cost of the test vector. Step S32: Based on the coordinates of each control point on each candidate path, determine each intermediate control point, and determine the turning angle formed by adjacent path segments at the intermediate control point. Sum the absolute values of the turning angles at all intermediate control points on each candidate path to obtain the path smoothness cost of the target vector and the path smoothness cost of the test vector. Step S33: For each candidate path, calculate the shortest distance from the path segment of each candidate path to the outline of each obstacle in the preset obstacle set. If each shortest distance is less than a preset safety threshold, accumulate the penalty value determined based on the shortest distance to obtain the path safety cost of the target vector and the path safety cost of the test vector. Step S34: Based on preset weight coefficients, the path length cost, path smoothness cost, and path safety cost of the target vector are weighted and summed to determine the first fitness value of the target vector and the second fitness value of the test vector, respectively. Step S35: The vector corresponding to the smaller value between the first fitness value and the second fitness value is determined as the preferred individual.
4. The method according to claim 1, characterized in that, The process of using each individual in the current evolutionary population as a target vector, performing adaptive mutation, crossover, and boundary constraint processing to generate experimental vectors corresponding to each target vector includes: Step S21: Based on the historical success rate of each mutation strategy recorded within the preset learning period, dynamically select a mutation strategy for the current target vector from the strategy pool containing multiple mutation operation methods. Step S22: Obtain the scaling factor values corresponding to the better offspring individuals successfully generated in the previous iteration, form a successful scaling factor set, update the first mean parameter of the scaling factor distribution according to the successful scaling factor set, and randomly sample from the updated scaling factor distribution to generate the current scaling factor. Step S23: Obtain the crossover probability values corresponding to the better offspring individuals successfully generated in the previous iteration, form a successful crossover probability set, update the second mean parameter of the crossover probability distribution according to the successful crossover probability set, and randomly sample from the updated crossover probability distribution to generate the current crossover probability. Step S24: For each target vector, according to the selected mutation strategy and the generated current scaling factor, select multiple different individuals from the current evolutionary population to perform difference operations and generate a mutation vector corresponding to the target vector. Step S25: For each target vector, according to the generated current crossover probability, perform a crossover operation between the target vector and the mutation vector to obtain an initial test vector; Step S26: For each target vector, the dimensional components of the initial test vector that exceed the search space boundary are truncated, and the truncated vector is used as the generated test vector.
5. The method according to claim 4, characterized in that, The method of dynamically selecting a mutation strategy for the current target vector from a strategy pool containing multiple mutation operation methods, based on the historical success rates of each mutation strategy recorded within a preset learning period, includes: Step S211: Within a preset learning period, record the number of times each mutation strategy in the strategy pool successfully generates a better offspring individual and the number of times it fails to generate a better offspring individual. Step S212: For each mutation strategy, calculate the proportion of the number of successful attempts to the total number of attempts of the mutation strategy based on the number of successful attempts and the number of failed attempts, and obtain the historical success rate of the mutation strategy within the learning period; Step S213: Calculate the selection probability of each mutation strategy based on the historical success rate of each mutation strategy, wherein the selection probability is positively correlated with the historical success rate; Step S214: Based on the selection probability of each mutation strategy, determine the mutation strategy with the highest selection probability in the strategy pool as the mutation strategy used by the current target vector.
6. The method according to claim 4, characterized in that, The process of obtaining the scaling factor values corresponding to the better offspring individuals successfully generated in the previous iteration, forming a successful scaling factor set, updating the first mean parameter of the scaling factor distribution based on the successful scaling factor set, and randomly sampling from the updated scaling factor distribution to generate the current scaling factor includes: Step S221: In the previous iteration, record the scaling factor values corresponding to all successfully generated better offspring individuals, and form a set of successful scaling factors. Step S222: When the set of successful scaling factors is not empty, calculate the ratio of the sum of squares of all scaling factor values in the set of successful scaling factors to the sum of all scaling factor values to obtain the Lemaire mean. Step S223: Based on the preset learning rate, the first mean parameter in the previous iteration process is weighted and calculated with the Leme mean to obtain the updated first mean parameter; Step S224: Using the updated first mean parameter as the center position of the Cauchy distribution, controlling the distribution width with a preset scale parameter, and randomly sampling a value from the Cauchy distribution as the current scaling factor.
7. The method according to claim 4, characterized in that, The process of obtaining the crossover probability values corresponding to the better offspring individuals successfully generated in the previous iteration, forming a successful crossover probability set, updating the second mean parameter of the crossover probability distribution based on the successful crossover probability set, and randomly sampling from the updated crossover probability distribution to generate the current crossover probability includes: Step S231: In the previous iteration, record the crossover probability values corresponding to all individuals that successfully generated better offspring, and form the successful crossover probability set in the previous iteration. Step S232: When the set of successful crossover probabilities is not empty, calculate the arithmetic mean of all crossover probability values in the set of successful crossover probabilities. Step S233: Based on the preset learning rate, the second mean parameter from the previous iteration is weighted and calculated with the arithmetic mean to obtain the updated second mean parameter. Step S234: Using the updated second mean parameter as the mean of the normal distribution, controlling the distribution width with a preset standard deviation, and randomly sampling a value from the normal distribution as the current crossover probability.
8. The method according to claim 5, characterized in that, The policy pool includes the following mutation policies: Three distinct individuals are randomly selected from the current evolutionary population. Using the first random individual as the basis vector, the difference vectors of the other two random individuals are multiplied by the current scaling factor and then superimposed onto the basis vector to generate a mutation vector; and / or, The optimal individual with the best fitness value is determined from the current evolutionary population. Two distinct individuals are randomly selected from the current evolutionary population. Using the optimal individual as a basis vector, the difference vectors of the two random individuals are multiplied by the current scaling factor and then superimposed onto the basis vector to generate a mutation vector; and / or, Using the current target vector as the basis vector, multiply the difference vector between the current optimal individual and the current target vector by the current scaling factor and then superimpose it onto the basis vector. Then, multiply the difference vectors of two randomly selected individuals by the current scaling factor and superimpose them onto the basis vector to generate a mutation vector; and / or, Determine the current optimal individual, and randomly select four distinct individuals from the current evolutionary population. Using the optimal individual as the basis vector, multiply the difference vectors of the first two random individuals by the current scaling factor, and then multiply the difference vectors of the last two random individuals by the current scaling factor, and successively add them to the basis vector to generate a mutation vector; and / or, Five distinct individuals are randomly selected from the current evolutionary population. The first random individual is used as the basis vector. The difference vectors of the second and third random individuals are multiplied by the current scaling factor, and the difference vectors of the fourth and fifth random individuals are multiplied by the current scaling factor and then superimposed onto the basis vector to generate a mutation vector.
9. The method according to claim 1, characterized in that, The step of performing a local fine-grained search based on the preferred individual to obtain a finely optimized individual includes: Step S41: Select the preferred individual as the current optimized individual and set the initial search step size; Step S42: For each dimension of the current optimized individual, move along the positive and negative directions with the initial search step size to obtain positive exploration individuals and negative exploration individuals in each dimension; calculate the fitness values of the positive exploration individuals, the negative exploration individuals and the current optimized individual respectively, and take the optimized individual with the smallest fitness value as the moving benchmark individual for this round of local fine exploration; Step S43: Compare the fitness values of the moving baseline individual and the current optimized individual. If the fitness value of the moving baseline individual is less than the fitness value of the current optimized individual, the exploration movement is determined to be successful, and step S44 is executed; otherwise, the exploration movement is determined to be unsuccessful, and step S46 is executed. Step S44: Based on the current moving baseline individual, move the moving baseline individual forward by one search step length along each dimension of the success direction relative to the current optimized individual to obtain a set of pattern moving individuals; if the fitness value of the pattern moving individual is less than the fitness value of the moving baseline individual, then use the pattern moving individual as the new moving baseline individual, and repeat this step to continue moving in the same direction until the fitness value of the pattern moving individual is no longer less than the fitness value of the current moving baseline individual, then stop the pattern moving; Step S45: Use the current movement baseline individual during stop mode movement as the updated optimized individual; Step S46: Reduce the search step size and use the updated current optimized individual as the new current optimized individual, then return to step S42; when the search step size is reduced to below the preset minimum step size threshold, stop the local search and output the current optimized individual as the fine-tuned optimized individual.
10. A path planning device combining adaptive difference and local search optimization, characterized in that, include: The population initialization module is used to initialize an evolutionary population in a search space composed of the coordinates of path control points. The evolutionary population includes multiple individuals, each of which is a multi-dimensional vector. The multi-dimensional vector corresponds one-to-one with a candidate path and is used to represent a candidate path defined by a series of control points. The mutation and crossover module is used to take each of the individuals in the current evolutionary population as the target vector, perform adaptive mutation, crossover and boundary constraint processing, and generate experimental vectors corresponding to each of the target vectors; The fitness calculation and selection module is used to calculate the fitness values corresponding to the target vector and the test vector respectively, and update the current preferred individual according to the individual corresponding to the smaller fitness value. The fitness value is used to comprehensively evaluate the length, smoothness and safety of the candidate path. The local search module performs a local fine search based on the preferred individuals to obtain finely optimized individuals, and updates the current evolutionary population based on the finely optimized individuals; The iterative control and output module is used to cyclically control the mutation crossover module, the fitness calculation and selection module, and the local search module to perform corresponding operations until the preset iteration termination condition is met. Based on the multi-dimensional vector corresponding to the best individual in each generation of the current evolutionary population, the optimal candidate path is determined and output.