Topological optimization method based on binary tree search, computer equipment and storage medium
By introducing a topological optimization method based on binary tree search into the BESO method, the problem of low computational efficiency in complex and large-scale structural optimization is solved, and a more efficient optimization process is achieved.
Patent Information
- Application Number
- CN202411813614.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-10
- Publication Date
- 2025-04-04
- Estimated Expiration
- 2044-12-10
AI Technical Summary
When the BESO method deals with complex and large-scale structures, the calculation efficiency and convergence speed are low, making it difficult to take into account both optimization accuracy and efficiency.
The topological optimization method based on binary tree search is adopted, and the strain energy parameters and density of the unit are determined by establishing a finite element model, the sensitivity number of the unit is corrected using the binary tree search algorithm, and the design domain of the finite element model is updated until the preset convergence conditions are met.
It effectively improves the processing speed of the algorithm in neighborhood search, reduces redundant calculations, improves overall optimization efficiency, and solves the problem of low calculation efficiency of BESO method.
Smart Images

Figure CN119761111A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of topology optimization, and in particular to a topology optimization method, computer device and storage medium based on binary tree search. Background Art
[0002] In recent years, topology optimization technology has received extensive attention and in-depth research as an important means of structural optimization design. Among them, the bidirectional evolutionary structural optimization (BESO) method has become one of the commonly used algorithms in the field of topology optimization due to its simplicity and high efficiency. However, with the increase in the scale and complexity of engineering problems, the computational efficiency and convergence speed of the BESO method have gradually become bottlenecks restricting its application. How to improve the computational efficiency of the BESO method while ensuring the optimization accuracy has become a hot topic in current research.
[0003] Accordingly, the art needs a new topology optimization solution to solve the above problems. Summary of the invention
[0004] In order to overcome the above-mentioned defects, the present application is proposed to solve or at least partially solve the technical problem of low computational efficiency of topology optimization of complex and large-scale structures.
[0005] In a first aspect, a topology optimization method based on a binary tree search is provided, the method comprising: S101: establishing a finite element model, defining a design domain of a structure, physical parameters of a material, and boundary conditions of the structure; S102: performing a finite element analysis on the finite element model, and determining strain energy parameters of units in the finite element model; S103: determining the sensitivity number of each unit based on the strain energy parameters and density of the unit; S104: correcting the sensitivity number of the unit based on a binary tree search algorithm and the sensitivity number of each unit; S105: updating the design domain of the finite element model based on the corrected sensitivity number of the unit; S106: repeating steps S102 to S105 until the updated finite element model meets a preset convergence condition, thereby obtaining a topology optimization result of the finite element model.
[0006] In a technical solution of the above-mentioned topology optimization method based on binary tree search, the physical parameters of the material include the elastic modulus and unit density of the material; the finite element analysis of the finite element model to determine the strain energy parameters of the units in the finite element model includes: determining the unit elastic modulus based on the elastic modulus of the material, a preset penalty factor and the unit density; defining an objective function based on the principle of static equilibrium and the average compliance that characterizes the strain energy of the structure; using the volume constraint ratio as a constraint condition, performing finite element analysis on the finite element model based on the unit elastic modulus and the objective function to determine the strain energy parameters of the unit.
[0007] In a technical solution of the above-mentioned topology optimization method based on binary tree search, the sensitivity number of the unit is corrected based on the binary tree search algorithm and the sensitivity number of each unit, including: based on a preset filtering radius and preset filtering rules, a binary tree search algorithm is used in a preset storage area to obtain all neighboring units corresponding to the unit; based on the sensitivity numbers of all the neighboring units, the sensitivity number of the unit is corrected.
[0008] In a technical solution of the above-mentioned topology optimization method based on binary tree search, multiple units of the finite element model are stored in a preset storage area of a binary tree structure, and each unit corresponds to a storage coordinate value; based on the preset filtering radius and the preset filtering rules, a binary tree search algorithm is used in the preset storage area to obtain all neighboring units corresponding to the unit, including: using a binary tree search algorithm, based on the storage coordinate value of the unit and the preset filtering radius, searching the preset storage area for all neighboring units within the preset filtering radius of the unit.
[0009] In a technical solution of the above-mentioned topology optimization method based on binary tree search, the sensitivity number of the unit is corrected based on the sensitivity numbers of all the neighboring units, including: determining a first sensitivity number of the unit based on the sensitivity number of the neighboring unit, the number of the neighboring units, the distance between the neighboring unit and the unit, and a preset weighting factor; obtaining the sensitivity number of the unit determined in the previous iteration; and correcting the first sensitivity number of the unit based on the sensitivity number of the unit determined in the previous iteration to obtain a corrected sensitivity number of the unit.
[0010] In a technical solution of the above-mentioned topology optimization method based on binary tree search, the design domain of the finite element model is updated based on the corrected sensitivity number of the unit, including: updating the density of the unit based on the corrected sensitivity number of the unit and preset addition and deletion rules; adding the unit to the design domain of the finite element model of this iteration based on the density of the unit.
[0011] In a technical solution of the above-mentioned topology optimization method based on binary tree search, the density of the unit is updated based on the corrected sensitivity number of the unit and the preset addition and deletion rules, including: determining the target volume of this iteration based on the preset evolution rate parameter; determining the sensitivity number threshold based on the corrected sensitivity number of the unit and the target volume; judging whether the corrected sensitivity number of the unit is greater than the sensitivity number threshold; if so, updating the density of the unit to a first preset value; if not, updating the density of the unit to a second preset value; wherein the first preset value is greater than the second preset value.
[0012] In a technical solution of the above-mentioned topology optimization method based on binary tree search, steps S102 to S105 are repeated until the updated finite element model satisfies a preset convergence condition to obtain a topology optimization result of the finite element model, including: judging whether the target volume of the finite element model in this iteration reaches the preset structural volume; when the target volume of this iteration reaches the preset structural volume, judging whether the preset convergence condition is met based on the change amount of the objective function and the number of iterations; if so, outputting the finite element model as a topology optimization result; otherwise, repeating steps S102 to S105.
[0013] In a second aspect, a computer device is provided, comprising at least one processor; and a memory communicatively connected to the at least one processor; wherein a computer program is stored in the memory, and when the computer program is executed by the at least one processor, the method described in any one of the technical solutions of the above-mentioned topology optimization method based on binary tree search is implemented.
[0014] In a third aspect, a computer-readable storage medium is provided, wherein a plurality of program codes are stored therein, wherein the program codes are suitable for being loaded and run by a processor to execute the method described in any one of the technical solutions of the above-mentioned topology optimization method based on binary tree search.
[0015] The above one or more technical solutions of the present application have at least one or more of the following beneficial effects:
[0016] The topology optimization method based on binary tree search provided in the present application includes: S101: establishing a finite element model, defining the design domain of the structure, the physical parameters of the material, and the boundary conditions of the structure, wherein the finite element model includes multiple units; S102: performing finite element analysis on the finite element model to determine the strain energy parameters of the units in the finite element model; S103: determining the sensitivity number of each unit based on the strain energy parameters and density of the unit; S104: correcting the sensitivity number of the unit based on the binary tree search algorithm and the sensitivity number of each unit; S105: updating the design domain of the finite element model based on the corrected sensitivity number of the unit; S106: repeating steps S102 to S105 until the updated finite element model meets the preset convergence conditions, and obtaining the topology optimization result of the finite element model. The present application uses a binary tree search algorithm to optimize the process of unit screening and sensitivity number updating, which can effectively improve the processing speed of the algorithm during neighborhood search, reduce redundant calculations, and improve the overall optimization efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] The disclosure of the present application will become easier to understand with reference to the accompanying drawings. It is easy for those skilled in the art to understand that these drawings are only for illustrative purposes and are not intended to limit the scope of protection of the present application. Among them:
[0018] Figure 1 It is a schematic flow chart of main steps of a topology optimization method based on binary tree search according to an embodiment of the present application;
[0019] Figure 2 This is a schematic diagram of the steps of searching for neighborhood units using a binary tree search algorithm according to an embodiment of the present application;
[0020] Figure 3 is a schematic diagram of a joint simulation process of a topology optimization method based on binary tree search according to an embodiment of the present application;
[0021] Figure 4 is a schematic diagram of boundary conditions according to an embodiment of the present application;
[0022] FIG5 is a schematic diagram of a topology optimization result according to an embodiment of the present application, wherein the regular grid size of FIG5(a) is 80*50, the regular grid size of FIG5(b) is 160*100, the regular grid size of FIG5(c) is 240*150, and the regular grid size of FIG5(d) is 320*200;
[0023] Figure 6 is a schematic diagram of boundary conditions according to another embodiment of the present application;
[0024] FIG7 is a schematic diagram of a material distribution evolution process according to another embodiment of the present application, wherein FIG7(a) is the result of the fifth iteration, FIG7(b) is the result of the tenth iteration, FIG7(c) is the result of the fifteenth iteration, and FIG7(d) is the final topological result;
[0025] Figure 8 is a schematic diagram of boundary conditions according to yet another embodiment of the present application;
[0026] Fig. 9 is a schematic diagram of a topology optimization result according to another embodiment of the present application;
[0027] Fig.10 is a schematic diagram of the evolution of compliance and volume ratio according to an embodiment of the present application;
[0028] Fig.11 is a plane symmetrical schematic diagram according to an embodiment of the present application;
[0029] Fig.12 is a rotationally symmetrical schematic diagram according to an embodiment of the present application;
[0030] Fig.13 is a schematic diagram of a periodic structure according to an embodiment of the present application;
[0031] Fig.14 is a schematic diagram of boundary conditions according to another embodiment of the present application;
[0032] FIG15 is a schematic diagram of topology optimization results according to another embodiment of the present application, wherein FIG15(a) is an optimization result of a general BESO method, FIG15(b) is an optimization result of applying a single-plane xoz symmetry constraint, and FIG15(c) is an optimization result of applying a dual-plane xoz and yoz symmetry constraint;
[0033] Fig.16 is a schematic diagram of boundary conditions according to an embodiment of the present application;
[0034] FIG17 is a schematic diagram of topology optimization results before and after applying a planar symmetric constraint according to an embodiment of the present application, FIG17( a ) is a material distribution diagram of a non-planar symmetric constraint, and FIG17( b ) is a material distribution diagram of a planar yoz symmetric constraint;
[0035] Fig.18 is a schematic diagram of boundary conditions according to another embodiment of the present application;
[0036] Fig.19 is a schematic diagram of material distribution results according to an embodiment of the present application;
[0037] Fig. 20 is a schematic diagram of boundary conditions according to yet another embodiment of the present application;
[0038] FIG21 is a schematic diagram of a topology optimization result according to another embodiment of the present application, wherein FIG21(a) is a front view of a topology optimization result of a tripod structure, FIG21(b) is a top view of a topology optimization result of a tripod structure, and FIG21(c) is a schematic diagram of an evolution process of compliance and volume ratio of a tripod structure;
[0039] Fig. 22 is a schematic diagram of boundary conditions according to another embodiment of the present application;
[0040] Fig.23 is a schematic diagram of a topology optimization result according to another embodiment of the present application;
[0041] Fig.24 It is a main structural diagram of a computer device according to an embodiment of the present application.
[0042] Reference numerals:
[0043] 11: memory; 12: processor. DETAILED DESCRIPTION
[0044] Some embodiments of the present application are described below with reference to the accompanying drawings. Those skilled in the art should understand that these embodiments are only used to explain the technical principles of the present application and are not intended to limit the protection scope of the present application.
[0045] In the description of the present application, "module" and "processor" may include hardware, software or a combination of the two. A module may include hardware circuits, various suitable sensors, communication ports, memory, and may also include software parts, such as program code, or a combination of software and hardware. The processor may be a central processing unit, a microprocessor, an image processor, a digital signal processor or any other suitable processor. The processor has data and / or signal processing functions. The processor may be implemented in software, hardware or a combination of the two. Computer-readable storage media include any suitable medium that can store program code, such as a disk, a hard disk, an optical disk, a flash memory, a read-only memory, a random access memory, etc. The term "A and / or B" means all possible combinations of A and B, such as only A, only B or A and B. The term "at least one A or B" or "at least one of A and B" has a similar meaning to "A and / or B" and may include only A, only B or A and B. The singular terms "one" and "the" may also include plural forms.
[0046] See attached Figure 1 , Figure 1 FIG. 1 is a schematic diagram of the main steps of a topology optimization method based on binary tree search according to an embodiment of the present application. Figure 1As shown, the topology optimization method based on binary tree search in the embodiment of the present application mainly includes the following steps S101 to S106.
[0047] S101: Establish a finite element model to define the design domain of the structure, the physical parameters of the material, and the boundary conditions of the structure.
[0048] S102: Perform finite element analysis on the finite element model to determine strain energy parameters of units in the finite element model.
[0049] S103: Determine the sensitivity number of each unit based on the strain energy parameter and density of the unit.
[0050] S104: Based on the binary tree search algorithm and the sensitivity number of each unit, the sensitivity number of the unit is corrected.
[0051] S105: Based on the corrected sensitivity number of the unit, the design domain of the finite element model is updated.
[0052] S106: Repeat steps S102 to S105 until the updated finite element model meets a preset convergence condition, thereby obtaining a topology optimization result of the finite element model.
[0053] Based on the method described in steps S101 to S106 above, the present application uses a filtering method based on binary tree search to optimize the process of unit screening and sensitivity number correction, which can effectively improve the processing speed of the algorithm during neighborhood search, reduce redundant calculations, and improve overall optimization efficiency.
[0054] The above steps S101 to S106 are further explained below.
[0055] For S101, a finite element model is established to define the design domain of the structure, the physical parameters of the material, and the boundary conditions of the structure.
[0056] Specifically, a finite element model is established and the boundary conditions of the structure are defined. The boundary conditions can be constraints, loads, and physical parameters of the material, such as Poisson's ratio, elastic modulus, and density, are defined. The finite element model contains multiple units.
[0057] For step S102, in one embodiment, the physical parameters of the material include the elastic modulus and unit density of the material; the finite element analysis of the finite element model to determine the strain energy parameters of the units in the finite element model includes: determining the unit elastic modulus based on the elastic modulus of the material, a preset penalty factor and the unit density; defining an objective function based on the principle of static equilibrium and the average compliance that characterizes the strain energy of the structure; using the volume constraint ratio as a constraint condition, performing finite element analysis on the finite element model based on the unit elastic modulus and the objective function, and determining the strain energy parameters of the unit.
[0058] Specifically, material interpolation methods include ESO and BESO methods, which usually determine the deletion of units based on the mechanical performance indicators of the structure. It also includes the hard deletion unit method, which completely deletes low-efficiency units by changing the relative density to 0. This method does not consider the deleted units during iteration, so it is difficult to prove its correctness theoretically. In addition, there is the soft cell deletion method, which solves this problem by replacing the density of the virtual unit with a very small value. Furthermore, it also includes the BESO method of soft cell deletion based on the material interpolation model, which introduces a penalty factor p so that the deleted units can participate in subsequent sensitivity analysis calculations.
[0059] This embodiment adopts the BESO method of soft-deletion of cells, assuming that the design variable representing the presence or absence of cells is x i , then the formula for determining the unit elastic modulus is:
[0060] Where E0 is the elastic modulus of the material; p is the penalty factor, p≥1; x i is the density of element i, and the element x with large strain energy density i =1, which is a solid unit. The elastic modulus of the solid unit is the true elastic modulus of the material. The unit x with small strain energy density i =x min , is a virtual unit. The elastic modulus of the virtual unit is a very small value, called virtual Young's modulus, which is used to avoid the singularity of the unit stiffness matrix. In this embodiment, x min =0.001.
[0061] The static equilibrium principle refers to the static equilibrium equation of a continuum structure, which is expressed as: Ku=f (2-2)
[0062] Where K is the overall stiffness matrix; u is the displacement vector of the node; and f is the load vector of the node.
[0063] The stiffness of the structure is measured by the average compliance that characterizes the strain energy of the structure. The mathematical expression of the average compliance is:
[0064] In the formula, C is the average flexibility, u T is the transformation matrix of u.
[0065] Based on the principle of static equilibrium and the average compliance that characterizes the strain energy of the structure, it can be determined that the overall stiffness of the structure is inversely proportional to the strain energy of the structure. Therefore, taking the volume ratio as a constraint and maximizing the stiffness as the objective function, the topology optimization formula of the continuum structure is obtained:
[0066] In the formula, C is the average flexibility, V i is the volume of the ith unit; V * is the preset structure volume, V * The ratio to the total volume V0 is called the volume constraint ratio, N is the total number of units, u i is the displacement vector of unit i, for u i is the rotation matrix, and k0 is the unit stiffness matrix.
[0067] For step S103, the sensitivity number of each unit is determined based on the strain energy parameter and density of the unit.
[0068] The strain energy parameter of the element is That is, the strain energy parameters of the element are determined based on the displacement vector and the stiffness matrix.
[0069] The mathematical expression of the sensitivity of the i-th unit with respect to the objective function is:
[0070] In the formula, is the stiffness matrix of entity element i.
[0071] Using discrete design variables (0 or x min ), the sensitivity numbers of the physical unit and the virtual unit can be expressed as:
[0072] In the formula, a i is the sensitivity number of unit i. The sensitivity number of the virtual unit is related to the value of the penalty factor p. When the value of p is large, the sensitivity number of the virtual unit tends to 0. At this time, formula (2-6) can be simplified as:
[0073] Therefore, the sensitivity number of a solid element is equal to the strain energy of the element, and the sensitivity number of a virtual element is zero.
[0074] With respect to step S104, in one embodiment, the sensitivity number of the unit is corrected based on the binary tree search algorithm and the sensitivity number of each unit, including: based on a preset filtering radius and a preset filtering rule, using a binary tree search algorithm in a preset storage area to obtain all neighboring units corresponding to the unit; and correcting the sensitivity number of the unit based on the sensitivity numbers of all the neighboring units.
[0075] In one embodiment, multiple units of the finite element model are stored in a preset storage area of a binary tree structure, and each unit corresponds to a storage coordinate value; based on the preset filtering radius and the preset filtering rules, a binary tree search algorithm is used in the preset storage area to obtain all neighboring units corresponding to the unit, including: using a binary tree search algorithm, based on the storage coordinate value of the unit and the preset filtering radius, searching the preset storage area for all neighboring units within the preset filtering radius of the unit.
[0076] Specifically, a binary tree search algorithm is used to search downwards according to the storage coordinate value of the unit, and each node in the preset storage area of the binary tree structure is searched downwards to determine all neighboring units of the unit, which specifically includes downward search, leaf node processing, parent node retrieval and branch cutting steps. The flowchart of using the binary tree search algorithm to search for neighboring units is shown in the figure. Figure 2 shown.
[0077] First, let L be a list with k empty slots to store the neighborhood cells that have been searched. Construct a kd (k-dimensional tree). If the nodes of the tree are split according to xr = a, determine whether the x coordinate of the cell is less than the x coordinate of the split point. If so, search the left subtree; otherwise, search the right subtree.
[0078] When searching the left subtree, when a leaf node is reached, the leaf node is marked as visited, and the distance between the coordinate value of the leaf node and the coordinate value of the cell is calculated. If the distance is greater than or equal to the preset filtering radius r min , then there is no unit in the neighborhood of the unit. If the distance is less than the preset filtering radius r min , then the cell of the leaf node is determined to be a neighborhood cell and stored in the L list.
[0079] Determine whether the leaf node is a root node. If so, complete the search and output the neighborhood cells stored in the L list. If not, retrieve the parent node of the leaf node and determine whether the parent node has been visited. If it has been visited, continue to search upward to the unvisited node and determine whether the distance between the cell and the unvisited node is less than the preset filtering radius. If so, search the right subtree and determine whether it has reached the leaf node.
[0080] If it has not been visited, determine whether the distance between the unit and the unvisited node is less than the preset filtering radius. If so, search the right subtree; if not, cut off the right subtree of the unvisited node, and determine whether the unvisited node is the root node. If so, output the neighborhood unit stored in the L list. If not, continue to retrieve the parent node of the unvisited node.
[0081] In one embodiment, the sensitivity number of the unit is corrected based on the sensitivity numbers of all the neighboring units, including: determining a first sensitivity number of the unit based on the sensitivity numbers of the neighboring units, the number of the neighboring units, the distance between the neighboring units and the unit, and a preset weighting factor; obtaining the sensitivity number of the unit determined in the previous iteration; based on the sensitivity number of the unit determined in the previous iteration, correcting the first sensitivity number of the unit to obtain a corrected sensitivity number of the unit.
[0082] Specifically, with the storage coordinate value position of the i unit as the center, the sensitivity numbers of all neighboring units within the preset filtering radius will affect the corrected sensitivity number of the i unit.
[0083] Based on the determined sensitivity numbers and quantity of all neighboring units of unit i, the distance between the neighboring units and unit i, and the preset weighting factor, the following formula is used to determine the first sensitivity number of unit i:
[0084] Where M is the number of neighborhood units; r ij represents the distance from the center of unit j to the center of unit i, where j is the neighborhood unit within the preset filtering radius; w(r ij ) is the preset weighting factor. The calculation formula of the preset weighting factor is: w(r ij )=max(r min -r ij ,0) (2-9)
[0085] r min The value of can be 1 to 3 times the average unit size.
[0086] Since the state of the unit is uncertain each time the sensitivity is calculated, the objective function may not converge. Therefore, it is necessary to correct the first sensitivity and obtain the sensitivity of the i unit determined in the previous iteration. Based on the sensitivity number of the i unit determined in the previous iteration, the first sensitivity number of the i unit is corrected to obtain the corrected sensitivity number of the i unit. The calculation formula is as follows:
[0087] With respect to step S105, in one embodiment, the design domain of the finite element model is updated based on the corrected sensitivity number of the unit, including: updating the density of the unit based on the corrected sensitivity number of the unit and preset addition and deletion rules; and adding the unit to the design domain of the finite element model of this iteration based on the density of the unit.
[0088] In one embodiment, the density of the unit is updated based on the corrected sensitivity number of the unit and the preset addition and deletion rules, including: determining the target volume of this iteration based on the preset evolution rate parameter; determining the sensitivity number threshold based on the corrected sensitivity number of the unit and the target volume; judging whether the corrected sensitivity number of the unit is greater than the sensitivity number threshold; if so, updating the density of the unit to a first preset value; if not, updating the density of the unit to a second preset value; wherein the first preset value is greater than the second preset value.
[0089] Specifically, before the volume of the design domain reaches the preset structural volume V*, each iterative calculation will gradually add or delete cells. Before adding or deleting cells, the target volume of this iteration is determined based on the preset evolutionary rate parameter. The preset evolutionary rate parameter refers to ER (evolutionary ratio). The calculation formula for the target volume is: V K+1 =V K (1-ER)(K=1,2,3,…) (2-11)
[0090] Where V K+1 is the target volume of this iteration, V K is the target volume of the previous iteration, ER is the preset evolution rate parameter, and K is the number of iterations.
[0091] Based on the corrected unit sensitivity number and target volume, the sensitivity number threshold is determined. Specifically, the sensitivity numbers of all units are sorted. The initial sensitivity number threshold is defined as the average of the maximum and minimum sensitivity numbers. The sensitivity number threshold is updated using the dichotomy method according to the current volume ratio and the constraint volume ratio.
[0092] Determine whether the sensitivity of the corrected unit is greater than the sensitivity threshold; if so, the density of the unit is the first preset value, which is 1, that is, x i =1; if the sensitivity of the corrected unit is less than or equal to the sensitivity threshold, the density of the unit is the second preset value, and the second preset value is x min , x min <1.
[0093] Then, when the density of the unit is a first preset value, the unit is added to the design domain of the finite element model of this iteration; when the density of the unit is a second preset value, the unit is deleted from the design domain.
[0094] For step S106, in some embodiments, steps S102 to S105 are repeated until the updated finite element model satisfies a preset convergence condition to obtain a topology optimization result of the finite element model, including: determining whether the target volume of the finite element model in this iteration reaches a preset structural volume; when the volume reaches the preset structural volume, determining whether the preset convergence condition is met based on the change in the objective function and the number of iterations; if so, outputting the finite element model as a topology optimization result.
[0095] Specifically, steps S102 to S105 are automatically and repeatedly executed to realize the cycle of finite element analysis and adding and deleting units on the finite element model. After the volume of the finite element model in this iteration reaches the preset structural volume, the target volume remains constant, that is: V K+1 =V * (2-12)
[0096] Then, a convergence judgment is performed to determine whether the change in the objective function is less than the allowable convergence error. The formula for convergence judgment is as follows:
[0097] Where τ is the allowable convergence error and N is an integer.
[0098] In some embodiments, τ=0.1%, N=5, which means that at least 10 consecutive iterative calculations are required to eliminate the error caused by the calculation formula (2-10) for correcting the unit sensitivity number.
[0099] See attached Figure 3 , Figure 3 FIG. 1 is a schematic diagram of a joint simulation process of a topology optimization method based on binary tree search according to an embodiment of the present application. Figure 3As shown, in some embodiments, the topology optimization method based on binary tree search of the present application improves the intuitiveness and operability of optimization by calling Ansys software for finite element analysis. In each iteration of the optimization process, the finite element analysis results of Ansys are returned to Python for a series of calculations such as subsequent sensitivity number calculation, filtering, correction of sensitivity number, and addition and deletion of cells, and a new model is generated and imported into Ansys for the next iterative calculation. Among them, the Python program includes three parts: preprocessing, finite element analysis, independent mesh filter and addition and deletion of cells. Among them, preprocessing includes giving various parameters required for calculation; finite element analysis, independent mesh filter and addition and deletion of cells are included in the iterative loop, which is repeated continuously until a given volume is reached and the convergence criterion is met.
[0100] The following is an explanation of the topology optimization method based on binary tree search in the present application with reference to specific examples.
[0101] In one embodiment, the elastic modulus of the material is E=1.69×10 5 , Poisson's ratio ν = 0.3, τ = 0.1%.
[0102] Example 1: This example is used to examine the mesh independence of the program. The simplified cantilever beam structure model is as follows Figure 4 As shown in the figure, the rectangular design domain size is 80×50, the left end is fixed, and a load of 100 is applied vertically downward at the center of the free end. Regular grids of sizes 32×20, 80×50, 160×100, and 240×150 are used for discretization. The parameters of BESO are set to r min =3, ER = 5%, volume ratio V* / V0 = 0.5. The topology optimization results under different mesh densities are shown in the figure. Figure 5(a) to Figure 5(d) As shown, the regular grid size of Figure 5(a) is 80*50, the regular grid size of Figure 5(b) is 160*100, the regular grid size of Figure 5(c) is 240*150, and the regular grid size of Figure 5(d) is 320*200. Figure 5(a) to Figure 5(d) As shown in the figure, the topology optimization results are not affected by the mesh size, and the topology optimization results using the binary tree search-based topology optimization method are mesh independent.
[0103] Example 2: This example is a classic topology optimization problem with boundary conditions such as Figure 6 As shown in Figure 1. The two-dimensional simply supported beam is 120 long and 40 wide, and is subjected to a concentrated load of 100 at the center of the bottom. A mesh discretization of 240×80 is used, and the BESO related parameters are set to r min =6, ER = 5%, V* / V0 = 0.5. The material distribution evolution process of BESO is as follows Figure 7(a) to Figure 7(d)As shown, Figure 7(a) is the result of the 5th iteration, Figure 7(b) is the result of the 10th iteration, Figure 7(c) is the result of the 15th iteration, and Figure 7(d) is the final topology optimization result.
[0104] Taking a three-dimensional L-shaped beam as an example, the traditional search method and the binary tree search algorithm are used to search and filter the neighborhood, and the calculation time of the two is compared. Figure 8 is the boundary condition of the L-beam. The design domain is discretized using a grid with a unit size of 1, with a total of 40,000 units and 44,541 nodes. To ensure the fairness and scientificity of the experimental results, the BESO parameters of the two calculations are completely consistent: r min =3, ER = 4%, and volume ratio V* / V0 = 0.2. The optimization problem was solved in the same hardware environment, with a 12th Gen Intel(R) Core(TM) i9-12900K 3.20GHz CPU and 64GB memory to ensure that the comparison of algorithm efficiency is not affected by hardware differences. The maximum number of iterations is set to 80, or terminated early when the objective function converges to less than 0.1%. The final topology optimization results and the evolution history of compliance and volume ratio are shown in Figure 2. Fig. 9 , Fig.10 The time comparison of the two methods is shown in Table 1. Traditional search algorithms Topology Optimization Method Based on Binary Tree Search Time complexity <![CDATA[O(n 2 )]]> O(nlogn) Total calculation time (seconds) 3552.30 821.73 Table 1 Comparison of the efficiency of two search algorithms
[0105] As can be seen from Table 1, the calculation time based on the binary tree search algorithm is significantly lower than that of the traditional method. In terms of computational complexity, the traditional method searches for the neighborhood of each unit one by one, resulting in an exponential increase in time with the size of the grid. However, the binary tree search algorithm greatly improves the efficiency of neighborhood search through fast partitioning and search, and the calculation time shows a small increase as the grid increases. Through the comparative experiment of the L-beam example, we can clearly see the significant advantages of the binary tree search algorithm in the topology optimization filtering method. Compared with the traditional search method, the binary tree search method not only greatly shortens the calculation time, but is also more suitable for the optimization problems of large-scale complex models. Therefore, in practical engineering applications, the binary tree search method provides an efficient and robust solution to the neighborhood search problem in topology optimization.
[0106] In the field of topology optimization, the introduction of engineering constraints can ensure the feasibility of the design. Especially when dealing with complex structures, the constraints not only affect the quality of the optimization results, but are also directly related to the effective use of materials and the actual manufacturability of processing. Based on the topology optimization method based on binary tree search in this application and the Python language development of the topology optimization algorithm for plane symmetry, rotational symmetry and periodic structure engineering constraints, the practicality and efficiency of this application in realizing engineering constraints are analyzed.
[0107] In order to meet the above three engineering constraints, the initial design domain is divided into n design sub-areas based on the Python language according to the user-defined constraint mode and the number of constraints n. Fig.12 As shown in the rotational symmetry principle diagram, the ring structure is evenly divided into 8 design sub-areas, x j,i represents the design variable of the i-th unit in the j-th design sub-region. To ensure the rotational symmetry of the final design, the design variables of any unit in all design sub-regions should be strictly the same as the units corresponding to their positions in other design sub-regions. The dots in the figure are a group of units with the same position. Therefore, the optimization problem considering engineering constraints is listed as:
[0108] Where V j,i is the volume of the i-th unit in the j-th design sub-region; V* is the preset structure volume, the ratio of V* to the total volume V0 is called the volume constraint ratio, n is the total number of design sub-regions, and l is the total number of units in each design sub-region.
[0109] Formulas (2-5), (2-6), (2-7), and (2-8) can be used to derive the flexibility sensitivity of each unit considering engineering constraints. Let the unit sensitivity of each unit and its corresponding position be equal to their average sensitivity, then we have
[0110] In the formula, is the sensitivity number of the ith unit in the jth design sub-region after filtering, It is the cell sensitivity number of each cell and its corresponding position after considering engineering constraints.
[0111] From formula (3-2), we can know that the key to realizing the constraint condition is to find the corresponding unit with the same position in other design sub-areas for any unit. Inspired by the binary tree algorithm, if the center coordinates of each unit and its corresponding unit can be overlapped or controlled within a certain tolerance through code, the binary tree algorithm can be used to realize the fast search of the unit coordinate neighborhood, so as to efficiently obtain the index of each unit and its corresponding unit, and store it as an associated unit group, in preparation for the subsequent sensitivity averaging processing. The specific implementation method is as follows:
[0112] For planar symmetry constraints, such as Fig.11The figure shows the main view of the three-dimensional design domain. The user defines any one or more planes as symmetry planes. Taking the plane yoz symmetry as an example, it can be seen that the associated unit groups in this case have the following characteristics: the y coordinate is the same as the z coordinate, and the x coordinates are opposite to each other. The Python language is used to make the x coordinates of the centers of all units the original absolute values. At this time, the two design sub-areas subject to symmetry constraints will overlap in space. Specifically, the center coordinates of each unit and its corresponding unit overlap. Therefore, the binary tree algorithm can be used to simply and efficiently extract each related unit group to achieve sensitivity averaging.
[0113] For rotational symmetry constraints, such as Fig.12 As shown, considering the applicability of the three-dimensional case, the Cartesian coordinates (x, y, z) of the unit center are first converted to spherical polar coordinates The radial distance r is the distance from the coordinate point to the center of the sphere o, the polar angle θ is the angle between the z axis and r, and the azimuth angle is the angle between the projection line of r on the xoy plane and the positive direction of the x-axis. Under this constraint, the associated unit group has the following characteristics: r and θ have the same value, Starting from the first symmetric sub-region, an angle kψ is added to each symmetric sub-region, where k represents the kth symmetric sub-region and ψ represents the opening angle of each symmetric sub-region. For the symmetry number n set arbitrarily by the user, ψ=2π / n. Traversal by Python language The value of the unit in each sub-region corresponds to a reduction in the angle kψ. At this time, all sub-regions are rotated to coincide with the initial sub-region, and each corresponding unit coincides with its symmetric unit.
[0114] For periodic structure constraints, the number of periodic structures in the x and y directions m×n is arbitrarily defined by the user, such as Fig.13 As shown in the figure, taking 3×2 as an example, the design domain is evenly divided into 3×2 design sub-regions. The associated unit groups under the periodic structure constraint have the following characteristics: in the x direction, the x coordinate of the unit center increases by a certain value kλ in each design sub-region starting from the first design sub-region, where k represents the kth design sub-region, and λ represents the length of each design sub-region in the x direction. For the periodic structure number m and the total length l of the design domain, λ=l / m. The y direction is similar to the x direction, and each sub-region increases by a value kμ. Traverse the units in each sub-region, and reduce the center coordinate of each unit by kλ in the x direction and kμ in the y direction accordingly, so that all sub-regions are translated to coincide with the initial sub-region. At this time, each unit coincides with the unit corresponding to its periodic form.
[0115] For the plane symmetry example, Example 1: This example is used to examine the implementation of the program on plane symmetry. Fig.14The design domain size is 120×40×4, the left end is fixed, and a vertically distributed load of 1 is applied to the lower right free edge. A regular grid with a unit side length of 1 is used for discretization. The BESO related parameters are set to r min =3, ER = 1%, V* / V0 = 0.4. The optimization result after general BESO method optimization is shown in Figure 15(a), the optimization result after applying single-plane xoz symmetry constraint is shown in Figure 15(b), and the optimization result after applying dual-plane xoz and yoz symmetry constraints is shown in Figure 15(c).
[0116] Example 2: The second plane symmetry example considers a double L-beam structure. This example is used to examine the feasibility of symmetry under irregular grids. The structure is discretized using plane triangular elements with an element size of 2. Its boundary conditions are as follows Fig.16 As shown in the figure, it is similar to putting two L-shaped beams together, with the top constrained, and the left and right corners are respectively applied with a vertical downward load of 10. In addition, an additional horizontal load of 3 is applied to the left corner to construct the asymmetry of the topology optimization results. The irregular grid discretization with a unit size of 2 is used, and the BESO related parameters are set to r min =6, ER = 2%, V* / V0 = 0.5. The topology optimization results before and after applying the planar symmetric constraint are shown in Figure 17(a) and Figure 17(b). Figure 17(a) is the material distribution diagram of the non-planar symmetric constraint, and Figure 17(b) is the material distribution diagram of the planar yoz symmetric constraint.
[0117] For the rotational symmetry example, Example 1: The first rotational symmetry example considers a two-dimensional ring structure with boundary conditions such as Fig.18 As shown in the figure: the outer circle diameter is 50, the inner circle diameter is 15, the six degrees of freedom of the inner circle are fully constrained, and an external load of size 1 is applied vertically downward at the tangent of the outer circle contour. It is divided into 60 layers of units along the radial direction, and each layer is discretized by 1440 irregular units. The BESO related parameters are set to r min =3, ER = 4%, V* / V0 = 0.5. Arbitrarily set the circumferential symmetry number to n, and the material distribution results of BESO are as follows Fig.19 shown.
[0118] Example 2: The second rotationally symmetric example considers the tripod support structure of an offshore wind turbine with boundary conditions such as Fig. 20 As shown in the figure. The regular triangular prism is the design domain, the top surface is an equilateral triangle with a side length of 500 and a height of 300. The bottom of the non-design domain tower is connected to the tripod, and the bending moment of 1×105 in the y direction acts on the rigid element and is connected to the top of the tower. An irregular grid with a unit side length of 4.5 is used for discretization, and the BESO related parameters are set to r min=15, ER=5%, V* / V0=0.15. The topology optimization results considering rotational symmetry constraints are shown in Figure 21(a) and Figure 21(b). The evolution history of compliance and volume ratio is shown in Figure 21(c).
[0119] For the periodic structure example, Example 1: This example is a two-dimensional L-shaped beam, and the boundary conditions are as follows Fig. 22 As shown: the upper edge is fixed, and a vertical downward load of 100 is applied to the upper right corner. Define the periods in the x and y directions as m×k, and divide the design domain into 2×2, 4×4, 6×6, 8×8, 10×10, 12×12, 14×14, and 16×16 sub-regions, respectively. Each sub-region is discretized with a 40×40 regular grid, and the filter radius is constant at 4 times the unit edge. The BESO related parameters are set to ER=5%, V* / V0=0.5. The final topology optimization results of a single sub-region and the whole are shown in Fig.23 shown.
[0120] It should be pointed out that although the various steps in the above embodiments are described in a specific order, those skilled in the art can understand that in order to achieve the effect of the present application, different steps do not have to be executed in such an order. They can be executed simultaneously (in parallel) or in other orders. These adjusted schemes are equivalent to the technical schemes described in this application, and therefore will also fall within the scope of protection of this application.
[0121] It is understood by those skilled in the art that all or part of the processes in the method for implementing the above-mentioned embodiment of the present application can also be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable storage medium may include: any entity or device, medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory, random access memory, electrical carrier signal, telecommunication signal and software distribution medium, etc. that can carry the computer program code.
[0122] Another aspect of the present application provides a computer device.
[0123] In an embodiment of a computer device according to the present application, the computer device may include at least one processor; and a memory connected to the at least one processor in communication; wherein a computer program is stored in the memory, and when the computer program is executed by the at least one processor, the method described in any of the above embodiments is implemented. Fig.24 , Fig.24 FIG. 4 exemplarily shows that the memory 11 and the processor 12 are communicatively connected via a bus.
[0124] Another aspect of the present application also provides a computer-readable storage medium.
[0125] In an embodiment of a computer-readable storage medium according to the present application, the computer-readable storage medium can be configured to store a program for executing the topology optimization method based on binary tree search of the above method embodiment, and the program can be loaded and run by the processor to implement the above topology optimization method based on binary tree search. For ease of explanation, only the parts related to the embodiment of the present application are shown. For specific technical details not disclosed, please refer to the method part of the embodiment of the present application. The computer-readable storage medium can be a storage device formed by various electronic devices. Optionally, the computer-readable storage medium in the embodiment of the present application is a non-temporary computer-readable storage medium.
[0126] So far, the technical solution of the present application has been described in conjunction with an embodiment shown in the accompanying drawings, but it is easy for those skilled in the art to understand that the protection scope of the present application is obviously not limited to these specific embodiments. Without departing from the principles of the present application, those skilled in the art can make equivalent changes or substitutions to the relevant technical features, and the technical solutions after these changes or substitutions will fall within the protection scope of the present application.
Claims
1. A topology optimization method based on binary tree search, characterized in that: The method comprises: S101: Establish a finite element model to define the design domain of the structure, the physical parameters of the material, and the boundary conditions of the structure; S102: performing finite element analysis on the finite element model to determine strain energy parameters of units in the finite element model; S103: Determine the sensitivity number of each unit based on the strain energy parameter and density of the unit; S104: based on the binary tree search algorithm and the sensitivity number of each unit, modifying the sensitivity number of the unit; S105: updating the design domain of the finite element model based on the corrected sensitivity number of the unit; S106: Repeat steps S102 to S105 until the updated finite element model meets a preset convergence condition, thereby obtaining a topology optimization result of the finite element model.
2. The topology optimization method based on binary tree search according to claim 1, characterized in that: The physical parameters of the material include the elastic modulus and unit density of the material; the finite element analysis of the finite element model to determine the strain energy parameters of the units in the finite element model includes: Determine the element elastic modulus based on the material elastic modulus, a preset penalty factor, and the element density; Based on the principle of static equilibrium and the average compliance that characterizes the structural strain energy, the objective function is defined; The volume constraint ratio is used as a constraint condition, and finite element analysis is performed on the finite element model based on the unit elastic modulus and the objective function to determine the strain energy parameters of the unit.
3. The topology optimization method based on binary tree search according to claim 1, characterized in that: The method of modifying the sensitivity number of each unit based on the binary tree search algorithm and the sensitivity number of each unit includes: Based on a preset filtering radius and preset filtering rules, a binary tree search algorithm is used in a preset storage area to obtain all neighboring cells corresponding to the cell; Based on the sensitivity numbers of all the neighboring units, the sensitivity number of the unit is corrected.
4. The topology optimization method based on binary tree search according to claim 3 is characterized in that: The multiple units of the finite element model are stored in a preset storage area of a binary tree structure, and each unit corresponds to a storage coordinate value; based on the preset filtering radius and the preset filtering rule, a binary tree search algorithm is used in the preset storage area to obtain all neighboring units corresponding to the unit, including: A binary tree search algorithm is adopted to search for all neighboring cells within the preset filtering radius of the cell in a preset storage area based on the storage coordinate value of the cell and the preset filtering radius.
5. The topology optimization method based on binary tree search according to claim 4 is characterized in that: The step of correcting the sensitivity number of the unit based on the sensitivity numbers of all the neighboring units includes: Determining a first sensitivity number of the unit based on the sensitivity number of the neighborhood unit, the number of the neighborhood units, the distance between the neighborhood unit and the unit, and a preset weighting factor; Obtaining the sensitivity number of the unit determined in the previous iteration; Based on the sensitivity number of the unit determined in the previous iteration, the first sensitivity number of the unit is corrected to obtain a corrected sensitivity number of the unit.
6. The topology optimization method based on binary tree search according to claim 2 is characterized in that: The updating of the design domain of the finite element model based on the corrected sensitivity number of the unit includes: Based on the corrected sensitivity number of the unit and the preset addition and deletion rules, updating the density of the unit; Based on the density of the elements, the elements are added to the design domain of the finite element model for this iteration.
7. The topology optimization method based on binary tree search according to claim 6 is characterized in that: The updating of the density of the unit based on the corrected sensitivity number of the unit and the preset addition and deletion rule includes: Determine the target volume for this iteration based on a preset evolution rate parameter; Determining an acuity number threshold based on the corrected acuity number of the unit and the target volume; Determining whether the corrected sensitivity value of the unit is greater than a sensitivity value threshold; If so, updating the density of the unit to a first preset value; If not, the density of the unit is updated to a second preset value; wherein the first preset value is greater than the second preset value.
8. The topology optimization method based on binary tree search according to claim 7 is characterized in that: The step S102 to S105 is repeated until the updated finite element model satisfies a preset convergence condition, thereby obtaining a topology optimization result of the finite element model, including: Determining whether the target volume of the finite element model in this iteration reaches a preset structure volume; When the target volume of this iteration reaches the preset structure volume, judging whether the preset convergence condition is met based on the change amount of the objective function and the number of iterations; If yes, the finite element model is output as a topology optimization result; If not, steps S102 to S105 are repeated.
9. A computer device comprising at least one processor and at least one memory, wherein the memory is suitable for storing a plurality of program codes, characterized in that: The program code is suitable for being loaded and run by the processor to execute the topology optimization method based on binary tree search according to any one of claims 1 to 8.
10. A computer-readable storage medium storing a plurality of program codes, characterized in that: The program code is suitable for being loaded and run by a processor to execute the topology optimization method based on binary tree search according to any one of claims 1 to 8.
Citation Information
Patent Citations
Hydraulic motor free layer damping optimization vibration and noise reduction method based on wallboard contribution degree
CN115544692A
Structure topology optimization method considering structure dependent load based on unit search method
CN115659488A
Expanded voxel-based CAD model simulation method keeping design features
WO2024183495A1