Motor optimization design method and system based on multi-target mucus algorithm
By improving the multi-objective slime mold algorithm and combining the elite strategy and adaptive selection mechanism, the problems of difficulty in balancing simulation accuracy and efficiency, insufficient optimization ability and imbalance between exploration and development in the optimization design of brushless DC motors are solved, and efficient and objective motor optimization results are achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- ZHEJIANG UNIV OF TECH
- Filing Date
- 2026-03-27
- Publication Date
- 2026-04-24
AI Technical Summary
Existing brushless DC motor optimization design methods suffer from several problems when dealing with highly nonlinear, multi-objective optimization problems. These problems include difficulty in balancing simulation accuracy and efficiency, insufficient optimization capabilities, and an imbalance between exploration and development. Consequently, the optimization results are subject to subjective influences and fail to fully cover the high-performance design space.
An improved multi-target slime mold algorithm is adopted. By introducing an elite strategy and an adaptive selection mechanism, an elite pool and an external archive are constructed to dynamically balance exploration and development. Non-dominated solutions are screened using crowding distance, and the exploration mode is adaptively selected to guide the optimal design of the motor.
It improves the optimization ability and objectivity of the motor optimization method, enhances the robustness and engineering applicability of the optimization results, and significantly improves computational efficiency and the diversity of optimization results.
Smart Images

Figure CN121920250A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of motor optimization design technology, and in particular to a motor optimization design method and system based on a multi-objective slime mold algorithm. Background Technology
[0002] Brushless DC motors are the core power components of drones, and their combined performance in terms of efficiency, cogging torque, and output torque directly affects the drone's endurance and control stability. Optimization of this type of motor involves several key parameters, such as permanent magnet thickness and pole arc coefficient. These parameters are strongly coupled, leading to a highly nonlinear optimization problem. However, existing brushless DC motor optimization design methods still have significant shortcomings in addressing this problem, mainly in the following three aspects:
[0003] 1. Traditional analysis methods relying on the finite element method are caught in a dilemma where accuracy and efficiency are difficult to balance.
[0004] Motor optimization relying solely on finite element analysis requires multiple iterations of "design-simulation-adjustment". Due to the high cost of high-fidelity multiphysics simulation and the significant time required for each parameter adjustment, the model is often simplified to shorten the cycle, resulting in a decrease in simulation accuracy and reliability.
[0005] 2. Traditional multi-objective optimization algorithms have fundamental limitations in terms of optimization ability and objectivity.
[0006] Traditional algorithms have two drawbacks when applied to motor design: First, they often rely on manually setting weights to transform multiple objectives into a single objective, which leads to the optimization results being influenced by subjective experience and makes it difficult to objectively reveal the trade-offs between objectives; Second, when dealing with strong nonlinear coupling between parameters, they are prone to prematurely converging to local optima, and the obtained Pareto solution set has poor distribution and cannot fully cover the high-performance design space.
[0007] 3. Traditional intelligent optimization strategies suffer from an imbalance between the exploration and development phases.
[0008] "Exploration" and "development" are the core behaviors of intelligent optimization algorithms, describing two different strategies employed when searching the solution space. An ideal optimization process dynamically and adaptively adjusts the proportion of exploration and development at different stages of algorithm execution. Traditional intelligent optimization algorithms have fixed search mechanisms, making it difficult to adapt to the complex coupling relationships—strongly nonlinear, high-dimensional, and multi-peak—that exist between brushless DC motor parameters.
[0009] In some existing studies, such as Chinese invention patent with publication number CN115828708A, a "method for optimizing brushless DC motors based on multi-objective gray wolf algorithm" is disclosed. Although this method can achieve simple and fast optimization of the performance of brushless DC motors, it always searches for unexplored or unexposed areas in the search space, which will lead to an imbalance between the exploration and development phases. Summary of the Invention
[0010] To overcome the aforementioned problems in the existing technology, this invention proposes an optimization method that can utilize historical high-quality solutions to provide stable and high-quality guidance for population evolution during the optimization iteration process, thereby smoothly and efficiently obtaining the optimal solution set of non-dominated solutions and directly serving the precise design of motors.
[0011] Therefore, the first objective of this invention is to provide a motor optimization design method based on a multi-objective slime mold algorithm, comprising the following steps:
[0012] Determine the optimization objective of the motor and the design variables that are mapped to the optimization objective;
[0013] Construct an objective function vector based on the mapping relationship between the optimization objective and the design variables;
[0014] Iterative optimization is performed based on an improved multi-target slime mold algorithm, which includes the following steps:
[0015] The position coordinates of slime mold individuals are constructed and initialized based on design variables;
[0016] Obtain the location coordinates of individual slime molds, calculate the objective function vector value, filter out non-dominated solutions from the objective function vector value, and store and update the pre-built external archive;
[0017] Extract non-dominated solutions from external archives, filter non-dominated solutions based on crowding distance, store and update a pre-built elite pool, and filter out guide individuals from the non-dominated solutions in the elite pool;
[0018] The position of the slime mold individual is updated based on the guiding individual and the exploration mode adaptively selected according to the iteration progress.
[0019] Determine if the maximum number of iterations has been reached. If so, output all solutions in the elite pool as the optimal solution set to guide the precise design and manufacturing of the motor; otherwise, continue iterative optimization.
[0020] This invention introduces an elite strategy and constructs an elite pool on the basis of the traditional multi-objective slime mold algorithm, realizing the targeted retention and utilization of historical high-quality solutions. This not only avoids the loss of high-quality solutions in random search, but also provides a stable reference direction for algorithm evolution. It effectively solves the common problems of local convergence or objective imbalance in multi-objective optimization, such as the output torque not meeting the standard due to the one-sided pursuit of efficiency. It improves the optimization ability and objectivity of the motor optimization method, improves the optimization efficiency, and enhances the robustness and engineering practicality of the optimization results.
[0021] Preferably, the adaptive selection of exploration modes includes: selecting exploration modes with different position update change magnitudes based on the comparison results of weights dynamically calculated in the iterative process and random numbers.
[0022] Based on the current iteration count of each slime mold individual, different exploration modes are adaptively and randomly selected to balance global exploration and local development, while always converging towards the optimal region with multi-objective equilibrium.
[0023] Preferably, the improved multi-target slime mold algorithm is configured with a grid mechanism for external archives. The grid mechanism is used to remove redundant solutions from the external archives, including the following steps:
[0024] The objective space is divided into a multi-dimensional grid based on the dimension of the objective function vector;
[0025] Select the grid with the most non-dominated solutions;
[0026] Filter and remove the non-dominated solutions with the smallest crowding distance from the grid with the most non-dominated solutions.
[0027] Preferably, the method for storing and updating a pre-built external archive includes:
[0028] The new objective function vector value is compared with the original objective function vector values in the external archive one by one for domination judgment;
[0029] If the new objective function vector value is dominated by at least one existing objective function vector value in an external archive, the new objective function vector value will not be archived; otherwise, it will be archived.
[0030] If the original objective function vector value in the external archive is dominated by at least one new objective function vector value, then delete the original objective function vector value in the external archive.
[0031] Preferably, the construction of the objective function vector includes: transforming the objective to be maximized into a minimization problem, and directly taking the objective to be minimized as the minimization problem, thereby unifying the optimization direction of all objectives.
[0032] Preferably, the guiding individual includes at least one elite individual selected from the elite pool and an optimal individual, wherein the optimal individual is the one with the largest crowding distance among the selected elite individuals.
[0033] The second objective of this invention is to provide a motor optimization design system based on a multi-objective slime mold algorithm, characterized by comprising:
[0034] The input and modeling module is configured to determine the optimization objective of the motor and the design variables that have a mapping relationship with the optimization objective, and to construct an objective function vector based on the mapping relationship;
[0035] The improved multi-target slime mold algorithm optimization module, configured to perform iterative optimization, includes:
[0036] The initialization unit is configured to construct and initialize the position coordinates of the slime mold population based on the design variables;
[0037] The external archive management unit is configured to calculate the objective function vector value of the slime mold population, filter non-dominated solutions based on dominance relationships, store them, and update the external archive.
[0038] The elite pool management unit is configured to periodically retrieve non-dominated solutions from the external archive, filter out non-dominated solutions based on crowding distance to store and update the elite pool, and filter out guiding individuals from the elite pool.
[0039] The adaptive position update unit is configured to adaptively select an exploration mode for each slime mold individual based on the current iteration progress, and update the position coordinates of the slime mold individual based on the selected mode and the guiding individual;
[0040] The iterative control unit is configured to control the iterative loop and output the solution set in the elite pool as the optimal solution set when the termination condition is met.
[0041] Preferably, the adaptive position update unit performs the adaptive selection by: dynamically calculating a weight based on the iterative process, and selecting an exploration mode with different position update change magnitudes for each slime mold individual by comparing the weight with the magnitude of a random number.
[0042] The third objective of this invention is to provide a computer device, including a memory and a processor, wherein the memory stores computer instructions, and the processor executes the computer instructions to perform the method described in the first objective.
[0043] The fourth objective of this invention is to provide a computer-readable storage medium storing computer instructions that, when executed by a computer, perform the method described in the first objective.
[0044] Compared with the prior art, the present invention has the following beneficial effects:
[0045] 1. This invention introduces an elite strategy and constructs an elite pool on the basis of the traditional multi-objective slime mold algorithm, achieving the targeted retention and utilization of historical high-quality solutions. This not only avoids the loss of high-quality solutions in random search, but also provides a stable reference direction for algorithm evolution, effectively solving the common problems of local convergence or objective imbalance in multi-objective optimization (such as the output torque not meeting the target due to the one-sided pursuit of efficiency), thereby improving the optimization ability, objectivity of optimization results, and engineering practicality of motor optimization methods.
[0046] 2. This invention designs an adaptive selection mechanism related to the number of iterations, enabling the algorithm to adaptively and randomly select different exploration modes (such as global exploration mode and local exploration mode) based on the current iteration number. In the early stages of optimization, the algorithm tends to conduct a large-scale exploration; in the later stages of optimization, it automatically switches to fine-grained development. This adaptive mechanism systematically balances the exploration and development processes, taking into account both the breadth of the search and the depth of optimization, and significantly improves the algorithm's comprehensive optimization ability in dealing with complex nonlinear optimization problems.
[0047] 3. Based on the constructed objective function vector, this invention only needs to compare the relative merits of the objective function vector values of different solutions on each objective according to the non-dominated sorting rules during the iterative optimization process to guide the search direction. This method avoids the overall sorting required to calculate the absolute fitness in traditional methods, and eliminates the need to call the computationally expensive finite element simulation model for performance re-evaluation after each position update. Thus, it greatly improves computational efficiency while ensuring the correctness of the optimization direction.
[0048] 4. This invention filters and maintains an elite pool by combining congestion distance calculation with the consideration of solution distribution density in guiding individual selection. It can automatically generate and retain a batch of Pareto optimal solutions that are evenly distributed and moderately sparse within the target space. This provides users with a rich selection of options covering various trade-offs such as efficiency, cogging torque, and output torque, effectively avoiding the problem of the optimization solution set converging to local regions or being overly concentrated. Attached Figure Description
[0049] Figure 1 This is a flowchart of the method according to Embodiment 1 of the present invention;
[0050] Figure 2 This is a comparison chart of efficiency convergence trends when using multiple methods, including the method in Embodiment 1 of the present invention, to optimize the motor.
[0051] Figure 3 This is a comparison chart of the cogging torque convergence trend when using various methods, including the method in Embodiment 1 of the present invention, to optimize the motor.
[0052] Figure 4 This is a comparison chart of the convergence trend of output torque when various methods, including the method in Embodiment 1 of this invention, are used to optimize the motor. Detailed Implementation
[0053] The present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. Obviously, the described embodiments are only some, not all, of the embodiments of the present invention. All other embodiments obtained by those skilled in the art based on the described embodiments of the present invention without inventive effort are within the scope of protection of the present invention. Unless otherwise defined, the technical or scientific terms used herein should have the ordinary meaning understood by those skilled in the art to which this invention pertains.
[0054] To further understand this invention, some terms mentioned in this invention and its embodiments are first explained:
[0055] Multi-Objective Slime Mold Algorithm (MOSMA): This is a variant of the Slime Mold Algorithm (SMA) specifically designed to solve multi-objective optimization problems in industry. The SMA mimics the oscillating behavior of slime molds observed in the laboratory, exhibiting powerful performance through a combination of positive and negative feedback systems and optimal food paths. The MOSMA further incorporates an elite non-dominated sorting method to estimate Pareto optimal solutions. In this invention, multiple design variables are used as the positional coordinates of slime mold individuals, and the updating of these design variables is simulated through the contraction and diffusion behavior of slime mold individuals during foraging and searching.
[0056] Exploration mode: In multi-target slime mold algorithms, this refers to the specific behavioral pattern of slime mold protoplasm oscillating and flowing in the venous network when it is foraging for food. This pattern is mathematically abstracted into a unique search strategy.
[0057] Elite strategy: This is a key selection and retention mechanism in iterative optimization algorithms such as evolutionary computation and swarm intelligence. The core idea is to forcibly retain the individual with the highest fitness (i.e., the best performance) in the current population during the process of the algorithm evolving from one generation to the next, so that it can directly enter the next generation without going through genetic operations such as crossover and mutation.
[0058] A non-dominated solution, also known as a Pareto solution, is a solution for which, among all considered objectives, there is no solution that is no worse than it in all other objectives and is strictly better than it in at least one objective. In multi-objective optimization problems, it refers to a solution that achieves the optimal trade-off among all optimization objectives. For this solution, there is no other solution that improves any one objective without worsening at least one other objective.
[0059] Elite Pool: In multi-objective optimization, the elite pool is a set of solutions (or near-Pareto optimal solutions) found so far, independent of the current iteration population, used to store and maintain all Pareto optimal solutions found so far during the algorithm's operation.
[0060] Non-dominated sorting is a hierarchical mechanism used in multi-objective evolutionary algorithms for comparing and selecting solutions. In multi-objective optimization, dominance and non-domination are two important concepts. For example, assuming solutions A and B, dominance means that for all objective functions, solution A performs better than solution B; non-domination means that if solution A is not dominated by any other solution, then solution A is called a non-dominated solution, also known as a Pareto solution.
[0061] Non-dominated ranking rank: The lower the rank, the better the quality. Pareto solutions that are not dominated by any other solutions are classified as first-rank solutions, also known as first frontier or non-dominated frontier.
[0062] External archiving mechanism: This is a technique commonly used in multi-objective optimization algorithms to save non-dominated solutions, i.e. Pareto optimal solutions, generated during the evolution process. This mechanism helps the algorithm maintain the diversity and quality of solutions during the optimization process by storing and managing the solution set.
[0063] Crowding distance: This measures the proximity of a solution to its neighboring solutions. Specifically, in the target space formed by the ranges of multiple design variables, the distance between each solution and its neighboring solutions in the target dimension formed by the ranges of each design variable is calculated and then summed.
[0064] The objective space is a mathematical space spanned by all the objective functions to be optimized, with each function serving as a coordinate axis. After evaluation, the performance metric of each candidate solution (a set of design variables) is mapped to a specific point in this space.
[0065] To facilitate a better understanding of the present invention by those skilled in the art, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. The following are merely exemplary and do not limit the scope of protection of the present invention.
[0066] Example 1
[0067] This embodiment will take a certain type of UAV motor as an example to illustrate the whole process of optimizing the selected design variables using the method of the present invention.
[0068] For example, the application conditions set in this embodiment are: rated speed n=4400r / min, rated power p=4000W. The design goal is to maximize motor efficiency, minimize motor cogging torque and maximize motor output torque while meeting the normal operation of the motor.
[0069] The following will provide a detailed explanation step by step.
[0070] A motor optimization design method based on a multi-objective slime mold algorithm, such as Figure 1 As shown, it includes:
[0071] S1: Determine the optimization objective of the motor and the design variables that have a mapping relationship with the optimization objective.
[0072] This step aims to identify the performance indicators that need to be optimized as optimization targets based on the final performance requirements of the motor, and to identify key parameters that have a decisive impact on the performance indicators and can be adjusted in the design as design variables.
[0073] S11: Determine the optimization objective.
[0074] This sub-step aims to optimize performance parameters reflecting motor performance based on the overall performance requirements of the motor. These optimization targets should comprehensively reflect the core performance of the motor. For example, for brushless DC motors used in drones, endurance, output power, and operational stability are crucial; therefore, this embodiment selects the following performance parameters as optimization targets:
[0075] Motor efficiency η: designed to be maximized to improve drone endurance.
[0076] Output torque T out The aim is to maximize the payload capacity and dynamic response of drones.
[0077] Cogging torque T cog The aim is to minimize torque ripple and improve operational smoothness.
[0078] The efficiency η of a drone motor refers to the motor's ability to convert electrical energy from the battery into mechanical kinetic energy. The magnitude of efficiency η directly affects the drone's endurance.
[0079] Drone motor output torque T out The output torque T is the rotational torque of the motor shaft, which directly determines the amount of thrust and angular acceleration the propeller can generate. out The size directly affects the flight performance of the drone.
[0080] UAV motor cogging torque T cog The interaction between the magnetic field of the permanent magnet and the cogging structure of the stator core generates a periodic torque, T. cog The size directly affects the stability of the drone.
[0081] S12: Identify the design variables that have a mapping relationship with the optimization objective, and determine the range of values for the design variables.
[0082] This sub-step aims to identify internal geometric parameters that have a decisive influence on the optimization objective determined in step S11 and can be adjusted during the design phase, as the direct operation objects of the optimization algorithm, that is, to select design variables from the geometric parameters that have a mapping relationship with the optimization objective.
[0083] First, based on motor design theory or empirical formulas, a mapping model between each optimization objective and relevant design parameters is established. For example, based on the design principles and empirical formulas of permanent magnet brushless DC motors, the following mapping relationship can be established:
[0084] 1) The mapping relationship between efficiency η and internal geometric parameters can be expressed as:
[0085] ;
[0086] Based on the mapping relationship between efficiency η and internal geometric parameters, the design variables involved in efficiency η are derived, such as the permanent magnet thickness h. m Polar arc coefficient α p Air gap width δ, etc.
[0087] 2) Output torque T out The mapping relationship with the internal geometric parameters can be expressed as:
[0088] ;
[0089] Based on the output torque T out The mapping relationship with several internal geometric parameters yields the output torque T. out Design variables involved, such as the thickness of the permanent magnet Polar arc coefficient α p Stator tooth width wait.
[0090] 3) Cogging torque T cog The mapping relationship with the internal geometric parameters can be expressed as:
[0091] ;
[0092] According to the cogging torque T cog The mapping relationship with several internal geometric parameters yields the cogging torque T. cog Design variables involved, such as the remanence of the permanent magnet B. r Permanent magnet thickness h m Polar arc coefficient α p wait.
[0093] Secondly, by comprehensively analyzing the mapping relationships of various optimization objectives, key parameters that simultaneously affect multiple optimization objectives are selected as the final design variables. In this embodiment, through cross-analysis of the above mapping relationships, the following six key parameters are selected as design variables: permanent magnet thickness h. m Polar arc coefficient α p Air gap width δ, stator crack ratio Stator tooth width and stator yoke width b y Define this six-dimensional parameter vector as the design variable vector X = [h m, α p, δ, , , b y ].
[0094] Finally, to ensure the engineering feasibility of the optimization results, a reasonable range of values (i.e., feasible region) needs to be set for each design variable. This range can be determined based on the motor design manual, manufacturing process limitations, or initial design values. For example, the constraint ranges of the design variables in this embodiment are shown in Table 1:
[0095] Table 1. Constraint range of design variables
[0096]
[0097] S2: Construct the objective function vector based on the mapping relationship between the optimization objective and the design variables.
[0098] This step aims to transform the multiple optimization objectives determined in step S1, which have different physical meanings and optimization directions, into a standard form that can be processed by the optimization algorithm, thereby establishing an objective function for evaluating the iterative optimization results in step S3.
[0099] The specific steps are as follows:
[0100] S21: Transform all optimization objectives into a unified optimization form.
[0101] This step aims to transform the original optimization objective determined in step S11 into a single-directional mathematical expression that is algorithm-friendly, based on its desired direction, as the foundation for constructing the objective function. The desired direction of the optimization objective generally includes maximization and minimization.
[0102] This invention takes unifying the desired direction into the minimized direction as an example. The specific method is as follows:
[0103] 1) The efficiency η to be maximized is transformed into minimizing its complementary value (e.g., 1-η) or negative value (e.g., -η). In this embodiment, maximizing efficiency η is exemplary transformed into minimizing the complementary value 1-η.
[0104] 2) The output torque T that needs to be maximized out This is transformed into minimizing the difference between the output torque and the target value, also known as minimizing the shortfall. In this embodiment, the target value of the output torque is exemplarily set to T. target This will maximize the output torque T out Transform into minimizing max(0,T) target -T out The purpose of max is to prevent negative values from being generated.
[0105] 3) Directly minimize the cogging torque T cog As the minimized object.
[0106] S22: Construct the objective function vector based on the transformed optimization objective.
[0107] This step aims to transform the various expressions obtained in step S21 into minimized objective expressions, and associate them with the mapping relationship between the optimization objective and design variables determined in step S12, forming a set of objective functions {f1(X), f2(X), ..., f...} with unified form and clearly defined variables. M (X)}, where M is the total number of objectives; this embodiment uses 3 objectives as an example. This set of functions together constitutes the evaluation system for subsequent multi-objective optimization algorithms.
[0108] The specific steps are as follows:
[0109] S221: Construct an objective function f for each transformed optimization objective. m (X), where m is the target index. Each function f m The function value of (X) represents the relative value of the quantified result of the corresponding optimization objective after transformation in step S21, given the values of the design variables. Examples include the relative value of efficiency loss, cogging torque, and insufficient output torque. Based on the mapping relationship between the design variables and the optimization objective determined in step S12, the selected design variables cannot directly determine the actual values of the performance parameters in the optimization objective. Therefore, the above quantified results are all relative values.
[0110] Following the example of step S1, the following three minimization objective functions are constructed:
[0111] 1) Efficiency objective function: f1(X) = 1 - η(X). Where η(X) is the efficiency value calculated from the design variable vector X through its mapping relationship. This function aims to minimize efficiency loss.
[0112] 2) Output torque objective function: f2(X)=max(0,T) target -T out (X)). Where T out (X) is the output torque value calculated from the design variable vector X through its mapping relationship, T target The preset target torque value can be 8.8 Nm, for example. This function is designed to penalize any output torque that is lower than the target value.
[0113] 3) Objective function for cogging torque: f3(X) = T cog (X). Where T cog (X) is the cogging torque value calculated from the design variable vector X through its mapping relationship. This function aims to directly minimize the cogging torque.
[0114] S222: Construct an objective function vector F(X) = {f1(X), f2(X), ..., f...} based on all objective functions. M (X)} is used to comprehensively evaluate a design scheme.
[0115] The objective function {f1(X), f2(X), ..., f...} constructed through the above steps M (X)} establishes a mathematical mapping relationship between design variables and optimization objectives.
[0116] S3: Iterative optimization based on the improved multi-target slime mold algorithm to obtain the motor optimization design scheme.
[0117] This step aims to efficiently optimize the multi-objective slime mold algorithm, which incorporates an elitist strategy, within the solution space of the objective function vector constructed in step S2. By introducing both external archiving and an elite pool mechanism, this step dynamically balances the algorithm's convergence speed with population diversity, ultimately outputting a high-quality set of non-dominated optimal solutions.
[0118] The specific steps are as follows:
[0119] S31: Construct the location coordinates of the slime mold population based on design variables and initialize the location coordinates.
[0120] This sub-step aims to establish an initial state for algorithm iteration, initialize the location coordinates of the slime mold population and the algorithm's operating environment, and ensure that the search covers a wide area of the design space.
[0121] S311: Generate the initial population.
[0122] This sub-step aims to establish the initial state for algorithm iteration. Based on the design variable constraints determined in step S12, N slime mold individuals are generated using a random distribution strategy. Each individual represents a set of motor design schemes, and its position coordinates are represented as X.i =[x1,x2,...,x D ], where D is the dimension of the design variable (D=6 in this embodiment).
[0123] S312: Algorithm control parameter preset.
[0124] This sub-step aims to initialize the algorithm's runtime environment. It sets the algorithm's control parameters, including the maximum number of iterations (MaxIter), population size (N), and maximum external archive capacity (N). arc and the size of the elite pool For example, in this embodiment, the maximum number of iterations MaxIter is set to 500, the population size N is set to 500, and the maximum external archive capacity N is set to 500. arc =200, Elite Pool Size Set it to 50.
[0125] S32: Obtain the location coordinates of slime mold individuals, calculate the objective function vector value, filter out non-dominated solutions from the objective function vector value, store and update the pre-built external archive.
[0126] This sub-step aims to transform the initial position coordinates of slime mold individuals, or the updated position coordinates obtained from step S34, into objective function vector values based on the objective function vector constructed in step S22. Non-dominated solutions are then obtained through non-dominated sorting, and an external archiving mechanism is used to store these solutions—that is, the non-dominated solutions discovered in each iteration of the foraging search. The external archive, acting as a container for historical excellent solutions, serves as the data source for subsequently constructing the elite pool; pre-reserving fixed storage space for storage completes the pre-construction process.
[0127] The specific steps are as follows:
[0128] S321: Calculate the objective function vector value based on the position coordinates of individual slime molds.
[0129] Set the position coordinates X of each slime mold individual in the current population. i Substitute the design variable vector into the objective function set {f1(X),f2(X),f3(X)} constructed in step S22 to calculate the corresponding objective function values of motor efficiency, cogging torque, and output torque, forming the objective function vector F(X). i ).
[0130] The objective function vector values are relative values based on the design variables. According to the mapping relationship between the design variables and the optimization objective determined in step S12, the selected design variables cannot directly determine the actual values of the performance parameters in the optimization objective. Therefore, the objective function vector values mentioned above are all relative values.
[0131] In subsequent algorithm iterations and optimization, the relative merits of these objective function vectors across different objective functions are compared pairwise based on non-dominated sorting rules. This eliminates the need for overall sorting through fitness calculations. Therefore, only the relative values of the objective functions need to be calculated based on the relationship between the design variables and the optimization objective. This allows for comparison of the merits of different solutions, guiding the search direction, without requiring computationally expensive finite element simulation models for performance re-evaluation after each position update. This fundamentally decouples the rapid exploration capability of intelligent optimization algorithms from the precise evaluation capability of finite element analysis, significantly improving the overall computational efficiency of the optimization design while ensuring the correctness of the optimization direction.
[0132] S322: Select non-dominated solutions from the objective function vector, store them in and update the pre-built external archive.
[0133] This sub-step aims to use the objective function vector value calculated by S321 and the objective function vector value in the external archive (if any) to perform a dominance judgment, filter out non-dominated solutions, store the non-dominated solutions in the pre-built external archive, and update the external archive.
[0134] The external archive is a space used to store non-dominated solutions found in each iteration of the foraging search. It is pre-built before the algorithm runs; for example, the capacity of the external archive is set to 200. After each iteration, the newly generated slime mold individuals repeatedly undergo the calculation of the objective function vector value and the selection of non-dominated solutions for archiving, thereby updating the external archive.
[0135] Methods for storing and updating pre-built external archives include:
[0136] 1. Perform a domination judgment on the new objective function vector value and the original objective function vector values in the external archive one by one;
[0137] 2. If the new objective function value is dominated by at least one existing objective function vector value in an external archive, the new objective function vector value will not be archived; otherwise, it will be archived.
[0138] 3. If the original objective function vector value in the external archive is dominated by at least one new objective function vector value, then delete the original objective function vector value in the external archive.
[0139] S323: Determine if the number of solutions in the external archive exceeds the preset maximum capacity N. arc If so, perform grid-based removal of redundant solutions; otherwise, proceed to the next step.
[0140] This sub-step aims to remove some solutions using a grid mechanism when the number of non-dominated solutions in the external archive exceeds its maximum capacity, thereby controlling the archive size and maintaining the uniformity of solution distribution (if the number of solutions in the external archive does not exceed its maximum capacity N).arc If so, proceed directly to the next step.
[0141] The operations for performing the grid mechanism include:
[0142] 1. Divide the target space into a multi-dimensional grid based on the dimension of the objective function vector;
[0143] The target space is a cube or multidimensional cube consisting of the range of values for all dimensions of the objective function.
[0144] 2. Select the grid with the most non-dominated solutions;
[0145] 3. Filter and delete the non-dominated solutions with the smallest crowding distance from the grid with the most non-dominated solutions.
[0146] By deleting non-dominated solutions from the grid with the most non-dominated solutions, the uniformity of solution distribution is maintained, avoiding accidental deletion caused by the concentration of a few non-dominated solutions in a certain sparse space.
[0147] The crowding distance measures the proximity of a solution to its neighboring solutions; a larger value generally indicates a sparser distribution and better distribution around the solution. Specifically, it is calculated as follows: within the target space formed by the ranges of multiple objective functions, the distance between each solution and its neighboring solutions along the target dimension defined by the objective functions is calculated, and then summed. The crowding distance for boundary solutions is set to infinity to prevent boundary solutions from being eliminated.
[0148] For example, for the i-th non-dominated solution, the congestion distance CDi is calculated using the following formula:
[0149] ;
[0150] in:
[0151] M represents the number of objective functions. For example, in this embodiment, M is set to 3.
[0152] f m (i) represents the value of the i-th nondominated solution on the m-th objective function;
[0153] This represents the maximum value of the current non-dominated solution on the m-th objective function;
[0154] This represents the minimum value of the current non-dominated solution on the m-th objective function;
[0155] f m (i+1) represents the objective value of the next solution after solution i after sorting by the m-th objective function value;
[0156] f m(i-1) represents the objective value of the solution preceding solution i after sorting by the m-th objective function value.
[0157] S33: Extract non-dominated solutions from external archives, filter non-dominated solutions based on crowding distance, store and update a pre-built elite pool, and select guide individuals from the non-dominated solutions in the elite pool.
[0158] The elite pool is a set of solutions, independent of the current iteration population, specifically used to store and maintain all Pareto optimal solutions (or near-Pareto optimal solutions) found so far during algorithm execution. A storage area is pre-constructed during algorithm execution to store non-dominated solutions. In this embodiment, the elite pool is used to store and maintain several non-dominated solutions with the largest crowding distance.
[0159] This step differs from existing technologies in that it does not directly select facilitators randomly from external archives, but instead constructs a high-configuration-quality elite pool through secondary screening to guide population evolution.
[0160] The specific steps are as follows:
[0161] S331: Extract non-dominated solutions from external archives.
[0162] This sub-step aims to extract non-dominated solutions from the external archive at preset intervals to construct the elite pool, rather than updating the elite pool with each iteration, thereby improving algorithm efficiency. The specific steps are as follows:
[0163] Determine whether the current iteration count has reached the threshold of the preset extraction period. If so, extract all non-dominated solutions in the current external archive and execute the subsequent step S332; otherwise, skip this step (S331-S333) and directly execute step S34.
[0164] The preset extraction cycle is the number of times the external archive is looped, used to control the update frequency of the elite pool. For example, in this embodiment, the preset extraction cycle is 10 times. That is, after step S34 updates the position of the slime mold individual, step S32 calculates and stores it in the external archive. After this loop is repeated 10 times, the operation of extracting a non-dominated solution from the external archive is triggered once. This reduces the number of updates to the elite pool and improves the algorithm's running efficiency by introducing an external archive mechanism.
[0165] S332: Calculate the congestion distance for non-dominated solutions.
[0166] To ensure diversity in guidance directions, crowding distance is used to filter non-dominated solutions. Crowding distance measures how close a solution is to its neighboring solutions in the target space.
[0167] For an explanation of the crowding distance and an exemplary calculation, please refer to the instructions in step S323.
[0168] S333: Filter for the most crowded areas. Non-dominated solutions are stored in and the elite pool is updated, and individuals are selected and guided.
[0169] This step aims to construct a high-quality solution set (i.e., an elite pool) and identify individuals from it to guide the population search. Specific steps include:
[0170] 1. Update the elite pool: Sort the non-dominated solutions obtained in step S331 according to the crowding distance from largest to smallest, and select the solution with the largest crowding distance. Each non-dominated solution is stored in and the elite pool is updated.
[0171] This embodiment selects based on the principles of "prioritizing non-dominant levels and maximizing congestion distance". The most crowded and largest non-dominated solutions are stored in the elite pool. These solutions represent the most widely distributed and best-performing design schemes found so far.
[0172] 2. Screening of Guiding Individuals: Guiding individuals include elite individuals and optimal individuals. From the non-dominated solutions in the elite pool, several non-dominated solutions with the largest crowding distance are selected as elite individuals; among the elite individuals, the non-dominated solution with the largest crowding distance is determined as the optimal individual. As an example, this embodiment selects three non-dominated solutions with the largest crowding distance as elite individuals for updating and iterating the guiding position in step S34, ensuring that the guiding direction covers the diverse regions of high-quality solutions and preventing the slime mold population from prematurely concentrating in a certain local area.
[0173] S34: Update the location of slime mold individuals based on the guided individual and adaptive exploration mode.
[0174] This sub-step aims to use the guiding individuals identified in step S33, based on an adaptive exploration mode with dynamic weights, to drive the slime mold population toward the Pareto optimal frontier.
[0175] S341: Adaptive selection of exploration mode.
[0176] This step aims to dynamically select the update strategy for this iteration for each slime mold individual.
[0177] 1. Calculate the dynamic weight W based on the number of iterations.
[0178] The weights are calculated based on the current iteration number `iter` and the maximum iteration number `MaxIter`. An example formula is as follows:
[0179] W = (1 - (iter / MaxIter)) 1.5) ×rand(N,1);
[0180] In the formula, iter is the current iteration number, MaxIter is the maximum iteration number, N is the population size, and rand(N,1) is a random vector of size N×1 with elements uniformly distributed in [0,1].
[0181] 2. Generate a random number rand: Generates a random number in the range [0,1].
[0182] The dynamic weight W decays from 1 to 0 as the number of iterations increases, so the range of the random number rand is [0,1].
[0183] 3. Mode Selection: Compare the random number rand with the dynamic weight W. If W > rand, select the global exploration mode for this individual; otherwise, select the local exploration mode.
[0184] The exploration modes include a global exploration mode that favors global exploration and a local exploration mode that favors local exploration. The global exploration mode involves larger changes in position distance with each update, which is beneficial for quickly exploring the entire space. The local exploration mode involves smaller changes in position distance with each update, which is beneficial for improving exploration accuracy in local areas. More position update modes can also be selected as needed to make the position update coverage of slime mold individuals more comprehensive.
[0185] S342: Perform a location update.
[0186] The position update of slime mold individuals simulates the contraction and diffusion behavior of slime molds during foraging. Based on the mode selected in S341, the position coordinates X of each slime mold individual are updated using the corresponding formula. i .
[0187] 1) If the global exploration mode is selected, the formula for updating the location of slime mold individuals can be expressed as:
[0188] ;
[0189] 2) If the local exploration mode is selected, the formula for updating the position of slime mold individuals can be expressed as:
[0190] ;
[0191] In the formula, X i This is the position vector of the i-th slime mold.
[0192] The position coordinate vector of a randomly selected elite guide individual;
[0193] X b This is the position coordinate vector of the best individual in the current iteration;
[0194] X r1and X r2 These are the position coordinate vectors of two different slime mold individuals randomly selected from the slime mold population in the current iteration;
[0195] ub' and lb' are the upper and lower boundary row vectors of the design variables, respectively, with a dimension of 1×6;
[0196] dim is the dimension of the position vector of the slime mold individual, which is set to 6 dimensions according to the previous example;
[0197] rand is a random number in the range [0,1].
[0198] randn(1,dim) is a dim-dimensional standard normal distribution random vector, and is the coefficient of the random perturbation term;
[0199] also, The weighting coefficient is the core guiding factor of the elite strategy, ensuring that the population evolves towards the high-quality solution region. Selection is based on experience; for example, in this embodiment, it is 0.2 in the global exploration mode and 0.4 in the local exploration mode; the optimal individual X b The coefficient of is a perturbation factor that controls the search range of global exploration. In this example, it is 0.3. The coefficient of the dim-dimensional standard normal distribution random vector randn(1,dim) is another perturbation factor. In this example, it is 0.1, which controls the fineness of local development. It can be selected and changed based on experience.
[0200] S35: Iterative loop control.
[0201] This sub-step aims to determine whether the maximum number of iterations has been reached. If so, all solutions in the elite pool are output as the optimal solution set to guide the precise design and manufacturing of the motor; otherwise, return to step S32 to update the external archive.
[0202] Specifically, as an example, in this embodiment, the specific steps are as follows:
[0203] Determine if the current iteration number iter has reached Maxiter; if so, stop the iteration, output all solutions in the elite pool (or non-dominated solutions in the external archive) as the final Pareto optimal solution set in step S33, and proceed to step S4; otherwise, set iter = iter + 1, and return to step S32 to build the external archive and proceed to the next iteration.
[0204] S4: Extract all non-dominated solutions from the elite pool and convert them into the final optimization objective of the motor. Substitute the design variables corresponding to the final optimization objective into the pre-built finite element model to calculate the true value of the optimization objective.
[0205] This step aims to substitute the final optimized design scheme obtained in step S3 (iterative optimization) (i.e., the non-dominated solution set in the elite pool, corresponding to multiple sets of optimized design variable combinations) into a high-fidelity finite element analysis model for accurate performance verification, and output a final design that can be directly used for manufacturing.
[0206] S41: Extract the optimized design scheme.
[0207] After iterative optimization, all non-dominated solutions (i.e., Pareto optimal solution sets) are extracted from the elite pool. Each non-dominated solution corresponds to a set of optimal design variable vectors and their objective function vector values, representing a motor design scheme that achieves the best trade-off between efficiency, cogging torque, and output torque.
[0208] S42: Substitute into the finite element model for accurate verification.
[0209] The optimized design scheme (specifically, the design variable vector) extracted in step S41 is substituted into the pre-constructed parametric finite element analysis model, replacing the original parameters of the model. Simulation is then run to obtain accurate calculated values of motor performance (efficiency, cogging torque, output torque) under each scheme. The finite element model is built based on commercial software (such as ANSYS Maxwell, JMAG, etc.), and its key geometric parameters (i.e., design variables) have been set as modifiable inputs.
[0210] S43: Output and Application.
[0211] The optimized design scheme and its precise performance data, verified through finite element simulation, will be the final output. Users can select specific schemes from the Pareto optimal solution set according to their needs, and directly use the corresponding optimized design variable values to guide the precise design and manufacturing of the motor.
[0212] To fully illustrate the implementation of this invention, the following supplementary description of the verification of the optimization effect is provided. This part belongs to the verification and effect demonstration of the embodiment, and is not a core necessary step of the method.
[0213] Optimization Effect Verification and Comparison: To demonstrate the superiority of the method of this invention, the design scheme optimized using the method of this invention (denoted as IM-SMA) can be compared with the results optimized using the standard multi-objective slime mold algorithm (SMA), multi-objective genetic algorithm (MOGA), and multi-objective particle swarm optimization algorithm (MOPSO) under the same conditions. The comparison includes, but is not limited to: the convergence trend of the best efficiency, minimum cogging torque, and maximum output torque obtained by each algorithm in the Pareto front with the number of iterations (e.g., Figure 2 , Figure 3 , Figure 4 As shown in the figure), and the specific design variable values and performance indicators of the final optimization scheme.
[0214] Table 2 shows the output optimization results and the corresponding design variables. Figure 2 , Figure 3 , Figure 4 The convergence trend of the optimal value of the Pareto front with the number of iterations is shown for each algorithm in the process of optimizing efficiency, cogging torque and output torque.
[0215] Table 2 Comparison of Design Variables and Optimization Results
[0216]
[0217] The results show that, compared with the standard multi-objective slime mold algorithm (SMA), multi-objective genetic algorithm (MOGA), and multi-objective particle swarm optimization algorithm (MOPSO), the improved multi-objective slime mold algorithm (IM-SMA) proposed in this embodiment of the invention has advantages in terms of performance optimization and convergence efficiency.
[0218] In summary, the improved multi-objective slime mold algorithm (IM-SMA) proposed in this embodiment of the invention demonstrates advantages in both convergence efficiency and the quality of the final solution set. Through mechanisms such as elite guidance, this algorithm can stably and efficiently find motor design parameters with superior overall performance at a lower computational cost, fully demonstrating its effectiveness and advancement in solving complex engineering multi-objective optimization problems.
[0219] Example 2
[0220] This embodiment provides a motor optimization design system based on a multi-target slime mold algorithm, used to implement the method described in Embodiment 1. The system is implemented through a combination of software and hardware, and is typically deployed in a computing device including a processor, memory, and input / output interfaces. This system aims to provide motor designers with an automated and intelligent optimization design platform, the core of which lies in modularizing and integrating the improved multi-target slime mold algorithm into the design process.
[0221] The system mainly includes the following functional modules:
[0222] 1. Input and Modeling Module. This module serves as the system's human-computer interaction entry point and the core of problem definition, configured to complete the front-end modeling of the optimization problem. Specific functions include:
[0223] 1) Parameter receiving unit: Provides a graphical user interface or data interface to receive user input of basic motor specifications (such as rated power, rated speed), performance requirements, and manufacturing process constraints.
[0224] 2) Target and Variable Determination Unit: Upon receiving design requirements, it automatically or assists the user in determining multiple performance targets to be optimized (e.g., motor efficiency (η), output torque (T)).out ) and cogging torque (T) cog (), and the design variables that have a decisive influence on these objectives (permanent magnet thickness h) m Polar arc coefficient α p Air gap width δ, stator crack ratio Stator tooth width and stator yoke width b y This unit also allows users to set the feasible range of values for each design variable.
[0225] 3) Objective function building unit: configured to build an objective function vector based on the mapping relationship between the optimization objective and the design variables.
[0226] Based on the built-in motor analysis model (such as the analytical mapping relationship established according to electromagnetic theory and empirical formulas) or the user-defined mapping relationship, the objective function vector F(X)={f1(X),f2(X),...,f M (X)}. This unit is responsible for unifying optimization objectives in different directions (such as maximization and minimization) into a minimization problem form that can be processed by the algorithm (for example, maximizing efficiency is transformed into minimizing f1(X)=1-η(X)).
[0227] 2. Improved Multi-Target Slime Mold Algorithm Module. This module is the computational core of the system, encapsulating the improved optimization algorithm of this invention for efficiently searching the Pareto optimal solution set within the design variable space. It contains multiple functional units that work collaboratively according to an iterative process:
[0228] 1) Initialization Unit: Based on the design variable dimensions and value range provided by the input module, an initial slime mold population of a specified size (e.g., N=500) is generated using a random strategy. Each slime mold individual is represented by a position vector X. i This indicates a specific combination of design variables. Simultaneously, this unit is responsible for presetting algorithm control parameters, such as the maximum number of iterations (MaxIter) and the maximum external archive capacity (N). arc Elite pool size and the archive retrieval cycle.
[0229] 2) Evaluation Calculation Unit: For a given slime mold individual location (i.e., design variable combination), this unit calls the objective function vector F(X) to calculate its corresponding multiple objective function values (efficiency loss, torque deficiency, cogging torque value, etc.).
[0230] 3) External Archive Management Unit: This unit maintains a dynamic external archive. In each iteration, it receives the objective function value from the evaluation calculation unit and performs the following operations:
[0231] a. Domination Judgment and Archive Update: Compare the pairwise domination relationships between the new solution and existing solutions in the archive. If the new solution is not dominated by any solution in the archive, add it to the archive; if a solution in the archive is dominated by the new solution, delete it from the archive.
[0232] b-grid maintenance and pruning: When the number of archived solutions exceeds the preset capacity N. arc When the time is right, a grid deletion mechanism is triggered. This mechanism divides the multidimensional target space into grids, identifies the grid with the highest solution density, and deletes the solution with the smallest crowding distance within that grid to maintain the uniform distribution of archived solutions.
[0233] 4) Elite Pool Management Unit: This unit maintains an elite pool to store the most representative high-quality solutions found in the current search. Its operation is not performed every generation, but rather triggered according to a preset extraction cycle (e.g., every 10 generations).
[0234] Elite solution selection: Retrieve all non-dominated solutions from the external archive and calculate the crowding distance for each solution. Sort the extracted non-dominated solutions and the original non-dominated solutions in the elite pool according to their crowding distance, from largest to smallest, and select the top [choice / selection]. Each solution updates the elite pool.
[0235] b. Guided Individual Selection: From the elite pool, select the solutions with the largest crowding distance as elite individuals, and then select the solution with the largest crowding distance from these elite individuals as the best individual. These guided individuals will be sent to the adaptive position update unit.
[0236] 5) Adaptive Position Update Unit: This unit is responsible for driving population evolution. For each slime mold individual X in the population... i ,implement:
[0237] Mode selection: Calculate the dynamic weight W based on the current iteration number iter, and generate a random number rand. Compare W with rand; if W > rand, then select the global exploration mode for this individual; otherwise, select the local exploration mode.
[0238] b. Position Update: Based on the selected mode, utilize the guiding individual received from the elite pool management unit (such as a random elite individual). And the best individual X b The new position coordinates of the individual are calculated by combining the corresponding mathematical formulas (such as the formula containing random perturbation terms given in Example 1), thereby simulating the diffusion and contraction foraging behavior of slime mold.
[0239] 6) Iterative Control Unit: This unit is the scheduling center of the optimization process. It controls the cycle of "evaluation, archiving, (periodic) elite pool update, and position update". After each cycle, it checks whether the maximum number of iterations has been reached. If it has, the optimization process is terminated and the output module is triggered; otherwise, the iteration count is incremented by 1, and the algorithm is directed to enter the next iteration.
[0240] 3. Output, Validation, and Application Module. This module is responsible for processing the optimization results and connecting them with engineering practices. It includes:
[0241] 1) Solution Set Output Unit: After the iterative control unit issues a termination signal, this unit outputs in a formatted format all non-dominated solutions (i.e., the Pareto optimal solution set) in the elite pool maintained by the elite pool management unit. The output can be a list or graph (such as a Pareto front plot) containing multiple sets of design variables and their corresponding objective function predictions, for designers to perform trade-off analysis.
[0242] 2) Finite Element Verification Interface Unit: To obtain accurate performance data and verify the engineering feasibility of optimization results, this module provides an interface with commercial finite element analysis software (such as ANSYS Maxwell). Users can select one or more design schemes of interest from the output Pareto solution set. This unit can automatically fill the design variable values of the selected scheme into the preset parametric finite element motor model, drive the FEA software to perform high-fidelity electromagnetic field simulation, and obtain accurate calculated values of performance such as efficiency and torque.
[0243] System Workflow Summary: After defining the optimization problem through the input and modeling modules, the user starts the system. The improved multi-objective slime mold algorithm module begins operation: initializing the population and entering an iterative loop. During the loop, individuals in the population are evaluated and used to update the external archive; periodically, the elite pool is updated based on high-quality solutions in the archive and a guide individual is selected; subsequently, all individuals update their positions under the guidance of the guide individual according to an adaptive selection pattern, achieving a balance between exploration and development. This loop continues until the maximum number of iterations is reached. Finally, the output module provides a series of optimal design solutions, which can be accurately verified through the finite element interface, thus directly guiding the optimization results to the precise design and manufacturing of the motor.
[0244] Example 3
[0245] This embodiment provides an electronic device for implementing the aforementioned motor optimization design method based on a multi-target slime mold algorithm. The electronic device includes at least one processor, a memory, and a computer program stored in the memory and executable on the processor.
[0246] When the processor executes the computer program, it implements all the steps of the motor optimization design method based on the multi-target slime mold algorithm as described in Embodiment 1. Specifically, the processor is configured to:
[0247] Determine the optimization objective of the motor and the design variables that are mapped to the optimization objective;
[0248] Construct an objective function vector based on the mapping relationship between the optimization objective and the design variables;
[0249] Iterative optimization is performed based on an improved multi-objective slime mold algorithm: The position coordinates of slime mold individuals are constructed and initialized based on design variables; the objective function vector value is calculated using the position coordinates of the slime mold individuals, and non-dominated solutions are selected from the objective function vector values, stored, and updated in a pre-built external archive; non-dominated solutions are extracted from the external archive, selected based on crowding distance, stored, and updated in a pre-built elite pool, and guide individuals are selected from the non-dominated solutions in the elite pool; the position of the slime mold individuals is updated based on the guide individuals and the adaptive exploration mode; it is determined whether the maximum number of iterations has been reached. If so, all solutions in the elite pool are output as the optimal solution set to guide the precise design and manufacturing of the motor; otherwise, iterative optimization continues.
[0250] The electronic device can be a dedicated high-performance computing workstation, server, or computing terminal integrated into the bearing design software system. Through the electronic device of this embodiment, high-efficiency and high-reliability motor optimization can be achieved through hardware execution.
[0251] Example 4
[0252] This embodiment provides a computer-readable storage medium for storing a computer program that implements the motor optimization design method based on the multi-target slime mold algorithm described in Embodiment 1.
[0253] The computer-readable storage medium can be any tangible medium that contains or stores a program, such as, but not limited to: USB flash drive, portable hard drive, read-only memory (ROM), random access memory (RAM), disk (including hard disk and floppy disk), optical disk (including CD-ROM and DVD-ROM), or cloud storage space, etc.
[0254] The storage medium stores a computer program (instructions). When the computer program is read and executed by one or more processors (e.g., the processor of the electronic device in Embodiment 3), the processor is able to perform the steps of the method described in Embodiment 1, or control the corresponding device to perform the functions of the system described in Embodiment 2.
[0255] The computer program includes a series of instructions that, when executed, specifically instruct the processor to complete the full process as detailed in Example 1.
[0256] Through this storage medium, the motor optimization design method based on the multi-target slime mold algorithm described in this embodiment of the invention can be saved, distributed, and deployed in the form of a software product, facilitating its widespread application in industrial design environments.
[0257] The preferred embodiments of the present invention have been described in detail above with reference to the accompanying drawings. However, the present invention is not limited to the specific details of the above embodiments. Within the scope of the technical concept of the present invention, various simple modifications can be made to the technical solution of the present invention, and these simple modifications all fall within the protection scope of the present invention.
Claims
1. A motor optimization design method based on a multi-objective slime mold algorithm, characterized in that, Includes the following steps: Determine the optimization objective of the motor and the design variables that are mapped to the optimization objective; Construct an objective function vector based on the mapping relationship between the optimization objective and the design variables; Iterative optimization is performed based on an improved multi-target slime mold algorithm, which includes the following steps: The position coordinates of slime mold individuals are constructed and initialized based on design variables; Obtain the location coordinates of individual slime molds, calculate the objective function vector value, filter out non-dominated solutions from the objective function vector value, and store and update the pre-built external archive; Extract non-dominated solutions from external archives, filter non-dominated solutions based on crowding distance, store and update a pre-built elite pool, and filter out guide individuals from the non-dominated solutions in the elite pool; The position of the slime mold individual is updated based on the guiding individual and the exploration mode adaptively selected according to the iteration progress. Determine if the maximum number of iterations has been reached. If so, output all solutions in the elite pool as the optimal solution set to guide the precise design and manufacturing of the motor. Otherwise, continue with iterative optimization.
2. The motor optimization design method based on multi-objective slime mold algorithm according to claim 1, characterized in that, The adaptive selection of exploration modes includes: selecting exploration modes with different position update change magnitudes based on the comparison results of weights dynamically calculated in the iterative process and random numbers.
3. The motor optimization design method based on multi-objective slime mold algorithm according to claim 1, characterized in that, The improved multi-target slime mold algorithm is configured with a grid mechanism for external archives. This grid mechanism is used to delete solutions from the external archives, including the following steps: The objective space is divided into a multi-dimensional grid based on the dimension of the objective function vector; Select the grid with the most non-dominated solutions; Filter and remove the non-dominated solutions with the smallest crowding distance from the grid with the most non-dominated solutions.
4. The motor optimization design method based on multi-objective slime mold algorithm according to claim 1, characterized in that, The method for storing and updating a pre-built external archive includes: The new objective function vector value is compared with the original objective function vector values in the external archive one by one for domination judgment; If the new objective function vector value is dominated by at least one existing objective function vector value in an external archive, the new objective function vector value will not be archived; otherwise, it will be archived. If the original objective function vector value in the external archive is dominated by at least one new objective function vector value, then delete the original objective function vector value in the external archive.
5. The motor optimization design method based on multi-objective slime mold algorithm according to claim 1, characterized in that, The construction of the objective function vector includes: transforming the objective to be maximized into a minimization problem, and directly taking the objective to be minimized as the minimization problem, thereby unifying the optimization direction of all objectives.
6. The motor optimization design method based on multi-objective slime mold algorithm according to any one of claims 1-5, characterized in that, The guiding individuals include at least one elite individual selected from the elite pool and an optimal individual, wherein the optimal individual is the one with the largest crowding distance among the selected elite individuals.
7. A motor optimization design system based on a multi-objective slime mold algorithm, characterized in that, include: The input and modeling module is configured to determine the optimization objective of the motor and the design variables that have a mapping relationship with the optimization objective, and to construct an objective function vector based on the mapping relationship; The improved multi-target slime mold algorithm optimization module, configured to perform iterative optimization, includes: The initialization unit is configured to construct and initialize the position coordinates of the slime mold population based on the design variables; The external archive management unit is configured to calculate the objective function vector value of the slime mold population, filter non-dominated solutions based on dominance relationships, store them, and update the external archive. The elite pool management unit is configured to periodically retrieve non-dominated solutions from the external archive, filter out non-dominated solutions based on crowding distance to store and update the elite pool, and filter out guiding individuals from the elite pool. The adaptive position update unit is configured to adaptively select an exploration mode for each slime mold individual based on the current iteration progress, and update the position coordinates of the slime mold individual based on the selected mode and the guiding individual; The iterative control unit is configured to control the iterative loop and output the solution set in the elite pool as the optimal solution set when the termination condition is met.
8. The motor optimization design system based on multi-objective slime mold algorithm according to claim 7, characterized in that, The adaptive position update unit performs the adaptive selection in the following ways: dynamically calculating a weight based on the iterative process, and selecting an exploration mode with different position update change magnitudes for each slime mold individual by comparing the weight with the magnitude of a random number.
9. A computer device, characterized in that, It includes a memory and a processor, wherein the memory stores computer instructions, and the processor executes the computer instructions to perform the method as described in any one of claims 1-6.
10. A computer-readable storage medium, characterized in that, The storage medium stores computer instructions that, when executed by a computer, describe the method as described in any one of claims 1-6.
Citation Information
Patent Citations
Brushless direct current motor optimization method based on multi-target grey wolf algorithm
CN115828708A
Improved myxomycete optimization algorithm and robot multi-target path planning based on algorithm
CN113791613A
Robot path planning method based on multi-strategy improved mucus algorithm
CN114063623A
Improved mucus algorithm based on elite chaos search and nonlinear convergence z parameter
CN114722989A
PID (Proportion Integration Differentiation) parameter optimization method based on improved myxobacteria optimization algorithm
CN116149162A