Topology optimization method, system, device and storage medium for human intervention process
By designing a user interaction interface in the MATLAB Guide interface, users are allowed to intervene manually in the topology optimization process, solving the problem of little reference value for optimization results in the existing technology, and achieving more efficient structural design optimization results and optimization process research.
Patent Information
- Application Number
- CN202210451266.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-24
- Publication Date
- 2025-05-02
- Estimated Expiration
- 2042-04-24
AI Technical Summary
The existing topological optimization methods lack manual intervention capabilities in structural design, resulting in little reference value for optimization results and it is difficult to conduct detailed optimization evolution process research.
By designing a user interaction interface in the MATLAB Guide interface, users can manually intervene during the optimization process, including pausing iteration steps, adding or removing optimization results, and adjusting optimization results to participate in the optimization of the next iteration step.
Effective intervention in the topological optimization process is achieved, making the optimization results have higher practical reference value, and allowing more detailed research and verification of the optimization evolution process.
Smart Images

Figure CN114816383B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of structural design, and in particular relates to a topology optimization method, system, computer equipment and storage medium for a manual intervention process. Background Art
[0002] Using topology optimization methods for structural design is already a classic and well-practiced concept. Based on the same concept, this patent modifies the traditional topology optimization process through the guide compiler in MATLAB to allow manual intervention.
[0003] Type guide in the MATLAB command line window to open GUIDE (Graphical User Interfaces Development Environment). Guide can be thought of as a simple interactive interface application development wizard. It allows you to use the mouse to easily add various controls to the form and generates an m file. The m file defines the callback functions of each control, simplifying the development of interactive interface applications.
[0004] Today's topology optimization algorithms are becoming more mature, and some have been used in commercial software. However, in the actual application process of structural design, users have almost no way to make process adjustments, that is, to intervene in the topology optimization process, resulting in the optimization results having little reference value. Some are even only used as "conceptual design" to provide guidance for structural design in terms of form finding, resulting in the reference value of topology optimization in structural design being not high. Summary of the invention
[0005] In order to solve the defect that users cannot intervene in the optimization process, the present invention provides a topology optimization method, system, computer device and storage medium for manual intervention process. The method is based on the Guide function provided by MATLAB. By adjusting and intervening in the topology optimization process, the optimized results have stronger practical reference value. At the same time, based on the intermediate results saved in the optimization process, it can also be used to study a more detailed optimization evolution process.
[0006] The first object of the present invention is to provide a topology optimization method for a human intervention process.
[0007] A second object of the present invention is to provide a topology optimization system with manual intervention process.
[0008] A third object of the present invention is to provide a computer device.
[0009] A fourth object of the present invention is to provide a storage medium.
[0010] The first object of the present invention can be achieved by adopting the following technical solutions:
[0011] A topology optimization method for a manual intervention process, the method comprising:
[0012] Analyze and optimize the object model and determine the stress boundary conditions and displacement boundary conditions of the model;
[0013] Input the stress boundary condition and displacement boundary condition in the interactive interface and start iterative optimization;
[0014] Terminate the iteration step and save the current optimization result by pausing intervention;
[0015] Manually intervene in the optimization results, including adding optimization results of any shape to make them participate in the optimization of the next iteration step, adding or removing non-optimizable components of any shape, removing optimization results of any shape to make them participate in the optimization of the next iteration step, and saving the intervention results after the intervention is completed;
[0016] Substitute the results after intervention back into the iteration step for optimization;
[0017] After one or several interventions, the program terminates, outputs the final optimization result and calculates the objective function value, and uses the optimization result as the base map for modeling, which can be delivered for printing after processing.
[0018] Furthermore, the iterative optimization algorithm includes but is not limited to the level set method, the variable density method or the bidirectional evolutionary structural optimization method optimization algorithm.
[0019] Furthermore, there are two types of manual intervention to adjust the optimization results:
[0020] One is to add manual intervention to the adjustment operations that were optimized out in the subsequent optimization iterations;
[0021] The other is to add manual intervention to the subsequent optimization iterations and adjust the operations that cannot be optimized away, that is, to add undesignable domains during the optimization process.
[0022] Furthermore, manual intervention is achieved through the mouse callback function. When the mouse is pressed and moved, the scattered coordinates of the position where the cursor passes are recorded. When the mouse is lifted, the data collection ends, thereby obtaining a matrix of coordinates.
[0023] According to the coordinate values in the matrix, adjust the optimization results, specifically:
[0024] Change the cursor to a drawing brush and record the coordinates of the brush center for the next step of processing.
[0025] Furthermore, while intervening in the optimization result, the intervention range is adjusted, that is, the thickness of the brush is adjusted.
[0026] Furthermore, the principles for adjusting the optimization results include:
[0027] For variable density method or bidirectional evolutionary structure optimization method:
[0028] According to the recorded coordinates, intervention is performed by adjusting the relative density of all integer coordinate points within the brush radius, including:
[0029] If the relative density of the material is greater than 1, the corresponding part will be added to the next step of iterative optimization but cannot be optimized;
[0030] If the relative density of the material is less than 0, the recorded coordinates are erased;
[0031] If the relative density of the material is close to and less than 1, then the corresponding part will be added to the next iterative optimization and may be optimized;
[0032] For the level set method:
[0033] According to the recorded coordinates, intervention is performed by adjusting the function values corresponding to all integer coordinate points within the brush radius, including:
[0034] If the function value is greater than 1, the corresponding part will be added to the next step of iterative optimization but cannot be optimized;
[0035] If the function value is less than 0, the recorded coordinates are erased;
[0036] If the function value is close to and less than 1, the corresponding part will be added to the next iterative optimization and may be optimized.
[0037] Furthermore, the iteration step is terminated by pausing intervention, including:
[0038] The optimization process includes multiple iterations, during which the paused global variables are controlled by if statements;
[0039] The iteration step is terminated by changing the value of the global variable through pause intervention.
[0040] The second object of the present invention can be achieved by adopting the following technical solutions:
[0041] A topology optimization system for a manual intervention process, the system comprising:
[0042] Boundary condition acquisition module, used to analyze and optimize the object model and determine the stress boundary conditions and displacement boundary conditions of the model;
[0043] An iterative optimization module, used for inputting the stress boundary condition and the displacement boundary condition in an interactive interface and starting iterative optimization;
[0044] The optimization result saving module is used to terminate the iteration step by pausing intervention and save the current optimization result;
[0045] The manual intervention module is used to manually intervene in the optimization results, including adding optimization results of any shape to make them participate in the optimization of the next iteration step, adding or removing non-optimizable components of any shape, removing optimization results of any shape to make them participate in the optimization of the next iteration step, and saving the intervention results after the intervention is completed;
[0046] The re-iterative optimization module is used to substitute the results after intervention into the iteration step for optimization;
[0047] The final optimization result acquisition module is used to terminate the program after one or several interventions, output the final optimization result and calculate the objective function value at the same time, and use the optimization result as the base map for modeling, which can be delivered for printing after processing.
[0048] The third object of the present invention can be achieved by adopting the following technical solutions:
[0049] A computer device comprises a processor and a memory for storing a program executable by the processor. When the processor executes the program stored in the memory, the above-mentioned topology optimization method is implemented.
[0050] The fourth object of the present invention can be achieved by adopting the following technical solutions:
[0051] A storage medium stores a program, and when the program is executed by a processor, the above-mentioned topology optimization method is implemented.
[0052] The present invention has the following beneficial effects compared with the prior art:
[0053] The present invention utilizes the Guide interface carried on MATLAB to design the user interaction interface of the optimization algorithm, and adds an interrupt program to adjust the optimization result, so as to achieve the purpose of manual intervention in the optimization process. The optimization algorithm currently integrated into the commercial software and the optimization algorithm under development do not have the function of intervening in the optimization process, resulting in some optimized results still having unreasonable parts, and in addition to resetting the boundary conditions and re-optimizing, there are no other more effective optimization methods. The present method directly intervenes in the process of optimization, and adjusts the process of optimization iteration. Compared with the traditional method, in addition to being able to achieve the optimization result that is more suitable for production, the structural optimization theory can also be verified and explored in more detail. BRIEF DESCRIPTION OF THE DRAWINGS
[0054] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the structures shown in these drawings without paying creative work.
[0055] Figure 1 This is a GUI program flow chart of embodiments 1 and 2 of the present invention.
[0056] Figure 2 This is a schematic diagram of the GUI main interface of Example 1 of the present invention.
[0057] Figure 3 Schematic diagram of the mechanical boundary condition setting interface of Example 1 of the present invention.
[0058] Figure 4 Schematic diagram of the displacement boundary condition setting interface of Example 1 of the present invention.
[0059] Figure 5 This is a schematic diagram of the optimization result output without human intervention in Example 1 of the present invention.
[0060] Figure 6 This is a schematic diagram of the GUI main interface with preset boundary conditions selected according to Embodiment 2 of the present invention.
[0061] Figure 7 The GUI main interface of the second embodiment of the present invention in which the preset boundary conditions have been selected enters the optimization schematic diagram.
[0062] Figure 8 This is a schematic diagram of a pop-up intervention interface after selecting interrupt intervention and implementing intervention in embodiment 2 of the present invention.
[0063] Fig. 9 This is a schematic diagram of the GUI main interface result output after the first manual intervention in Example 2 of the present invention.
[0064] Fig.10 This is a schematic diagram of a second intervention being implemented after the intervention is interrupted and an intervention interface pops up in accordance with Embodiment 2 of the present invention.
[0065] Fig.11 This is a schematic diagram of the GUI main interface result output after the second manual intervention in Example 2 of the present invention.
[0066] Fig.12 Rhino modeling is performed based on the optimized results of Example 2 of the present invention.
[0067] Fig.13In Example 2 of the present invention, the built solid model is imported into Ultimaker Cura for slicing and then delivered for printing.
[0068] Fig.14 This is a printed photo of the physical model of Example 2 of the present invention.
[0069] Fig.15 This is a schematic diagram of the intervention principle simulation GUI main interface of Example 3 of the present invention.
[0070] Fig.16 This is a schematic diagram of a GUI intervention interface simulating the intervention principle of Example 3 of the present invention.
[0071] Fig.17 This is a three-dimensional schematic diagram of the intervention principle simulating the GUI intervention effect of Example 3 of the present invention.
[0072] Fig.18 This is a structural block diagram of a topology optimization system for a manual intervention process according to Embodiment 4 of the present invention.
[0073] Fig.19 This is a structural block diagram of a computer device according to Embodiment 5 of the present invention. DETAILED DESCRIPTION
[0074] In order to make the purpose, technical solution and advantages of the embodiments of the present invention clearer, the technical solution in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention. It should be understood that the specific embodiments described are only used to explain the present application and are not used to limit the present application.
[0075] The present invention is further described in detail below mainly in conjunction with a simple supported beam calculation example in the field of structural design. The topology optimization method of the manual intervention process can be implemented by other programming languages, and the relatively simple and easy-to-understand MATLAB Guide is selected in the following embodiment to implement it.
[0076] Embodiment 1:
[0077] like Figure 1 As shown, this embodiment takes the topology optimization without manual intervention as an example to illustrate the process of ordinary topology optimization, and provides a theoretical background for the topology optimization with manual intervention in Example 2.
[0078] The optimization object model analyzed in this embodiment is a cantilever beam subjected to terminal stress. The topology optimization method used is a parameterized level set topology optimization method (PLSM). Manual intervention optimization can be applied to different topology optimization methods, including but not limited to the parameterized level set topology optimization method (PLSM), and includes the following steps:
[0079] S1. Open the GUI main interface and enter the number of horizontal units, the number of vertical units, and the volume constraint in the console.
[0080] like Figure 2 As shown, the parameters set in the console of the GUI main interface are as follows:
[0081] Number of horizontal units = 60;
[0082] Number of vertical units = 30;
[0083] Volume constraint = 0.5.
[0084] S2. Click boundary conditions on the GUI main interface to enter boundary condition settings.
[0085] Click the "Boundary Conditions" button to open the boundary conditions dialog box. Figure 2 As shown, the boundary conditions are set: divided into mechanical boundary conditions and displacement boundary conditions.
[0086] S3. Set mechanical boundary conditions.
[0087] like Figure 3 As shown, enter the number of forces on the interface, specify the direction of the selected force, and enter the magnitude of the force. Each force magnitude is separated by a space. If the number of forces in the force magnitude input box is inconsistent with the number of forces entered at the beginning, an error will be reported when clicking the mechanical boundary condition.
[0088] S4. Select a point in the graphic area on the left. The position of the point corresponds to the position of the horizontal force or vertical force.
[0089] S5. Then click "Mechanical Boundary Conditions" to save the position, direction and magnitude of the force.
[0090] S6. Set displacement boundary conditions.
[0091] like Figure 4 As shown in the figure, the displacement boundary conditions are set in the same way as above: first select the type of displacement boundary condition, which is divided into three types: horizontal hinge, vertical hinge and hinge support; then select the position of the corresponding displacement constraint in the graphic area on the left.
[0092] The component in this embodiment is a cantilever component, and the left side is fixed to the rigid wall, so the hinge support is selected and all the nodes on the left side are selected.
[0093] S7. Click "Displacement Boundary Condition" to confirm, and close the window after confirmation.
[0094] S8. GUI result output.
[0095] like Figure 5 As shown, the black and white image in the lower left corner represents the output result, that is, the geometric shape of the two-dimensional cantilever beam after topology optimization; the image in the upper right corner shows the intermediate result of topology optimization, that is, the result in the lower left corner is presented from a three-dimensional perspective; the other two surface graphs, the upper one shows the convergence curve of the optimization process, which is used to judge whether the optimization is stable during the process, and the lower one shows the volume fraction, which is used to judge whether the optimization is stable in conjunction with the convergence curve, and whether it can be used as an important indicator for output as a scientific conclusion.
[0096] according to Figure 4 Judging from the two indicators shown in , the topology optimization conclusion of the cantilever beam with a diameter of 60×30 and a volume constraint of 0.5 is stable and desirable.
[0097] Embodiment 2:
[0098] It can be clearly seen from Example 1 that the topological optimization of the cantilever beam has a convergence result. In actual engineering applications, components cannot function independently during construction and work. For example, prefabricated cantilever components need to be hoisted and spliced, and the splicing points during the construction process need to be determined. In this embodiment, the same boundary conditions as in Example 1 will be used as optimization conditions, and the most suitable position for placing the hanging point will be found through manual intervention in the optimization process, that is, the solution for optimizing the objective function after placing the hanging point.
[0099] like Figure 1 As shown, this embodiment provides a topology optimization method for a manual intervention process, which specifically includes the following steps:
[0100] S1. Set parameters in the GUI main interface console.
[0101] like Figure 6 As shown, the number of transverse units = 60; the number of longitudinal units = 30; and the volume constraint = 0.5, which are the same as the parameters set in Example 1.
[0102] S2. Select cantilever in "Preset boundary conditions".
[0103] In order to avoid duplication of work, two pre-set displacement boundary conditions, simply supported and cantilever, are set in the interface. The cantilever is selected in this embodiment.
[0104] S3. Set mechanical boundary conditions.
[0105] This process is the same as that of Example 1 and will not be described again here.
[0106] S4. Click "Start Optimization" to enter the optimization iteration cycle. Figure 7 shown.
[0107] S5. Click "Pause Intervention" in any iteration cycle, and the manual intervention window will pop up. Figure 8 shown.
[0108] S6. Click the CLEAR button to clear the dot matrix.
[0109] If manual intervention is only performed once during an optimization process, the function of this key is not obvious. If manual intervention is required multiple times during an optimization process, CLEAR can clear the redundant points saved in the previous optimization to avoid repeated superposition of the two optimization processes.
[0110] S7. Select a brush of appropriate size. The brush size is displayed in the lower left corner.
[0111] S8. Draw the points that can be optimized by manual intervention in the figure. Such manual intervention may be optimized in the next iteration step. The areas that can be optimized are as follows: Figure 8 The part enclosed by the dotted frame.
[0112] Since the cantilever beam in this example is symmetrical up and down, the anchor point is planned to be on the symmetry axis. Therefore, a long strip of artificial intervention can be placed on the symmetry axis to optimize the area and find the location of the anchor point.
[0113] S9, such as Fig. 9 As shown, after optimization, it is not difficult to see that the results converge and are stable, and the objective function is approximately 602083.
[0114] S10. Observe the optimization results. The main intersection of the cantilever beam optimization results is at the middle and rear position (the dotted box position). The next non-optimizable point for manual intervention is planned to be located at the intersection position.
[0115] S11, such as Fig.10 As shown, restart the optimization, pause the optimization at any iteration step, and place the anchor point at the intersection. At this time, the lifting point adopts the non-optimizable area. The non-optimizable area is as follows Fig.10 The part enclosed by the dotted frame.
[0116] S12, such as Fig.11 As shown, a stable and convergent optimization result is obtained, and the objective function value is 590838, which is much smaller than the objective function of 602083 in the previous optimization.
[0117] S13. After obtaining the stable convergence result, the optimized result is modeled in Rhino, such as Fig.12 As shown. Fig.13As shown, the model is placed in Rhino, and after edge capture, a surface is formed, and a solid is extruded from the surface. The solid thickness is 1 to represent the three-dimensional effect of the model.
[0118] S14. Put the solid model into the Ultimaker Cura slicing software, generate the bracket Gcode file, deliver it to the 3D printer for printing, and the printed solid model picture is as follows Fig.14 shown.
[0119] S15. Print out the entity. The circled part in the picture is the optimal hanging point for the objective function under manual intervention.
[0120] This embodiment adopts a two-stage optimization method. First, the manually intervened optimization domain is drawn at the position where the anchor point may appear. After obtaining the results and the objective function, the position of the anchor point is determined by analyzing the optimization results, and the next optimization is entered for verification, and finally a smaller objective function value is obtained than the previous optimization. The physical meaning of this objective function value is the flexibility of the structure. The greater the flexibility of the structure, the greater the objective function value, and the worse the ability of the structure to resist external forces. Conversely, the stronger the ability of the structure to resist external forces, the greater the rigidity, and the better the structure. This method does not limit the corresponding optimization target and is applicable to all existing optimization targets. In addition, for the sake of demonstration effect, this embodiment shows the optimization problem of a two-dimensional cantilever beam, and the manual intervention topology optimization method can also be used in three dimensions.
[0121] The position of the anchor point cannot be determined before the optimization begins, so it is difficult to achieve the optimal process in traditional optimization without manual intervention. Only by constantly changing the position of the anchor point and comparing the size of the objective function can a more satisfactory result be obtained. This process will waste a lot of time and computing power, which is contrary to the concept of "optimization". It is not advisable to adjust the optimization process through manual intervention and draw conclusions. This is the specific application and realization of topology optimization in actual engineering.
[0122] Embodiment 3:
[0123] This embodiment uses a simulation GUI to demonstrate the principle and effect of manual intervention in detail. The GUI changes in a cycle of 1 second, and the function displayed in the three-dimensional graph is:
[0124] P=0.7*sin(xx+10*i)+0.1*sin(yy+10*i);
[0125] Among them, i is used for periodic changes and countdown, xx and yy are used to represent the 60×30 optimization domain grid, such as Fig.15 , as can be seen in the upper right corner, the P function is a wave-like function that changes periodically on a 60×30 grid.
[0126] In the program, pause(1) is added in each for loop to cause a pause for manual intervention.
[0127] S1. Click START, the function begins to change, simulating the optimization iteration steps in the real GUI.
[0128] S2. Click INTERVENE to pop up a manual intervention interface that is the same as the manual intervention interface in Example 2.
[0129] S3, as in Example 2, Fig.16 , first click CLEAR, select a brush of appropriate size, click Draw, draw a blue horizontal line from the upper left to the lower right, click Draw Undesignable Domain, draw a horizontal line from the lower left to the upper right, then click Erase, and draw a circle on the right.
[0130] According to the theory introduced above, the function value of the node covered by the blue area will be increased to 1, the function value of the node covered by the red area will be increased to 2, and the node value of the white erased part will be reduced to 0. Based on this principle, the optimization results are manually intervened, and the performance of the three-dimensional angle is as follows: Fig.17 shown.
[0131] The figure clearly shows the wavy original function, the area covered by the blue horizontal line slightly higher than the function value, the area covered by the red horizontal line significantly higher than the function value, and the white erased area significantly lower than the function value.
[0132] The external devices used in the above embodiments include, but are not limited to, a mouse, and may also include a handle, a digital tablet, a stylus, and other external devices.
[0133] Those skilled in the art will appreciate that all or part of the steps in the method for implementing the above embodiments may be completed by instructing related hardware through a program, and the corresponding program may be stored in a computer-readable storage medium.
[0134] It should be noted that although the method operations of the above embodiments are described in a specific order in the accompanying drawings, this does not require or imply that these operations must be performed in this specific order, or that all the operations shown must be performed to achieve the desired results. On the contrary, the steps depicted can be performed in a different order. Additionally or alternatively, some steps can be omitted, multiple steps can be combined into one step, and / or one step can be decomposed into multiple steps.
[0135] Embodiment 4:
[0136] like Fig.18As shown, this embodiment provides a topology optimization system for a manual intervention process, which includes a boundary condition acquisition module 1801, an iterative optimization module 1802, an optimization result storage module 1803, a manual intervention module 1804, a re-iterative optimization module 1805 and a final optimization result acquisition module 1806, wherein:
[0137] The boundary condition acquisition module 1801 is used to analyze and optimize the object model and determine the stress boundary condition and displacement boundary condition of the model;
[0138] Iterative optimization module 1802, used to input the stress boundary condition and displacement boundary condition in the interactive interface and start iterative optimization;
[0139] The optimization result saving module 1803 is used to terminate the iteration step by pausing the intervention and save the current optimization result;
[0140] The manual intervention module 1804 is used to manually intervene in the optimization results, including adding optimization results of any shape to make them participate in the optimization of the next iteration step, adding or removing non-optimizable components of any shape, removing optimization results of any shape to make them participate in the optimization of the next iteration step, and saving the intervention results after the intervention is completed;
[0141] The re-iterative optimization module 1805 is used to substitute the intervention result into the iterative step for optimization;
[0142] The final optimization result acquisition module 1806 is used to terminate the program after one or several interventions, output the final optimization result and calculate the objective function value at the same time, and use the optimization result as the base map for modeling, which can be delivered for printing after processing.
[0143] The specific implementation of each module in this embodiment can refer to the above-mentioned embodiment 2, and will not be described one by one here; it should be noted that the system provided in this embodiment is only illustrated by the division of the above-mentioned functional modules. In actual applications, the above-mentioned functions can be assigned to different functional modules as needed, that is, the internal structure can be divided into different functional modules to complete all or part of the functions described above.
[0144] Embodiment 5:
[0145] This embodiment provides a computer device, which may be a computer, such as Fig.19As shown, it includes a processor 1902, a memory, an input device 1903, a display 1904, and a network interface 1905 connected via a system bus 1901. The processor is used to provide computing and control capabilities. The memory includes a non-volatile storage medium 1906 and an internal memory 1907. The non-volatile storage medium 1906 stores an operating system, a computer program, and a database. The internal memory 1907 provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. When the processor 1902 executes the computer program stored in the memory, the topology optimization method of the above-mentioned embodiment 2 is implemented as follows:
[0146] Analyze and optimize the object model and determine the stress boundary conditions and displacement boundary conditions of the model;
[0147] Input the stress boundary condition and displacement boundary condition in the interactive interface and start iterative optimization;
[0148] Terminate the iteration step and save the current optimization result by pausing intervention;
[0149] Manually intervene in the optimization results, including adding optimization results of any shape to make them participate in the optimization of the next iteration step, adding or removing non-optimizable components of any shape, removing optimization results of any shape to make them participate in the optimization of the next iteration step, and saving the intervention results after the intervention is completed;
[0150] Substitute the results after intervention back into the iteration step for optimization;
[0151] After one or several interventions, the program terminates, outputs the final optimization result and calculates the objective function value, and uses the optimization result as the base map for modeling, which can be delivered for printing after processing.
[0152] Embodiment 6:
[0153] This embodiment provides a storage medium, which is a computer-readable storage medium, storing a computer program. When the computer program is executed by a processor, the topology optimization method of the above embodiment 2 is implemented as follows:
[0154] Analyze and optimize the object model and determine the stress boundary conditions and displacement boundary conditions of the model;
[0155] Input the stress boundary condition and displacement boundary condition in the interactive interface and start iterative optimization;
[0156] Terminate the iteration step and save the current optimization result by pausing intervention;
[0157] Manually intervene in the optimization results, including adding optimization results of any shape to make them participate in the optimization of the next iteration step, adding or removing non-optimizable components of any shape, removing optimization results of any shape to make them participate in the optimization of the next iteration step, and saving the intervention results after the intervention is completed;
[0158] Substitute the results after intervention back into the iteration step for optimization;
[0159] After one or several interventions, the program terminates, outputs the final optimization result and calculates the objective function value, and uses the optimization result as the base map for modeling, which can be delivered for printing after processing.
[0160] It should be noted that the computer-readable storage medium of the present embodiment may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.
[0161] In summary, the topology optimization method of the manual intervention process provided by the present invention is based on problem analysis modeling to determine the boundary conditions of the model including displacement boundary conditions and stress boundary conditions; the boundary conditions are input into the optimization software to start optimization iteration, and the optimization algorithm includes but is not limited to: level set method (LSM), variable density method (SIMP) or bidirectional evolutionary structural optimization method (BESO); during the optimization iteration process, the interactive interface displays the optimization results of the real-time iteration step, and the user decides when to interrupt the iteration operation; after the iteration operation is interrupted, the iteration step can be manually intervened and the optimization results before and after the adjustment can be saved, and the manual intervention includes adding optimization results of any shape to make it participate in the optimization of the next iteration step, adding or removing non-optimizable components of any shape, and removing optimization results of any shape to make it participate in the optimization of the next iteration step; after one or several adjustments, the final optimization result is output and saved, so that the optimized result has a stronger practical reference value.
[0162] The above is only a preferred embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the technical field can make equivalent replacements or changes according to the technical solution and inventive concept of the present invention within the scope disclosed by the present invention, which shall fall within the protection scope of the present invention.
Claims
1. A topology optimization method for a manual intervention process, characterized in that: The method comprises: Analyze and optimize the object model and determine the stress boundary conditions and displacement boundary conditions of the model; Input the stress boundary condition and displacement boundary condition in the interactive interface and start iterative optimization; Terminate the iteration step and save the current optimization result by pausing intervention; Manual intervention is performed on the optimization results, including adding optimization results of arbitrary shapes to make them participate in the optimization of the next iteration step, adding or removing non-optimizable components of arbitrary shapes, removing optimization results of arbitrary shapes to make them participate in the optimization of the next iteration step, and saving the intervention results after the intervention is completed; wherein, in the optimization iteration after the addition of manual intervention, the manual intervention is optimized or retained in the design domain; the manual intervention is performed through a mouse callback function, when the mouse is pressed and moved, the scattered coordinates of the position where the cursor passes are recorded, and when the mouse is lifted, the data collection is terminated to obtain the matrix of coordinates; the cursor is changed into a drawing brush, and the coordinate value of the brush center passing is recorded to select the coordinate point within the specified radius of the coordinate point to realize the selection of the manual intervention area; Substitute the results after intervention back into the iteration step for optimization; After one or several interventions, the program terminates, outputs the final optimization result and calculates the objective function value, and uses the optimization result as the base map for modeling, which can be delivered for printing after processing; The manual intervention is implemented as follows: For variable density method or bidirectional evolutionary structure optimization method: According to the recorded coordinates, intervention is performed by adjusting the relative density of all integer coordinate points within the brush radius, including: If the relative density of the material is greater than 1, the corresponding part will be added to the next step of iterative optimization but cannot be optimized; If the relative density of the material is less than 0, the recorded coordinates are erased; If the relative density of the material is close to and less than 1, then the corresponding part will be added to the next iterative optimization and may be optimized; For the level set method: According to the recorded coordinates, intervention is performed by adjusting the function values corresponding to all integer coordinate points within the brush radius, including: If the function value is greater than 1, the corresponding part will be added to the next step of iterative optimization but cannot be optimized; If the function value is less than 0, the recorded coordinates are erased; If the function value is close to and less than 1, the corresponding part will be added to the next iterative optimization and may be optimized.
2. The topology optimization method according to claim 1, characterized in that: Iterative optimization algorithms include level set method, variable density method or bidirectional evolutionary structural optimization method.
3. The topology optimization method according to claim 1, characterized in that: While intervening in the optimization results, adjust the intervention range, that is, adjust the thickness of the brush.
4. The topology optimization method according to any one of claims 1 to 3, characterized in that: Iteration steps are terminated by pausing interventions, including: The optimization process includes multiple iterations, during which the paused global variables are controlled by if statements; The iteration step is terminated by changing the value of the global variable through pause intervention.
5. A topology optimization system with manual intervention process, characterized in that: The system comprises: Boundary condition acquisition module, used to analyze and optimize the object model and determine the stress boundary conditions and displacement boundary conditions of the model; An iterative optimization module, used for inputting the stress boundary condition and the displacement boundary condition in an interactive interface and starting iterative optimization; The optimization result saving module is used to terminate the iteration step by pausing intervention and save the current optimization result; A manual intervention module is used to manually intervene in the optimization results, including adding optimization results of any shape to make them participate in the optimization of the next iteration step, adding or removing non-optimizable components of any shape, removing optimization results of any shape to make them participate in the optimization of the next iteration step, and saving the intervention results after the intervention is completed; wherein, in the optimization iteration after the addition of manual intervention, the manual intervention is optimized or retained in the design domain; the manual intervention is through the mouse callback function, when the mouse is pressed and moved, the scattered coordinates of the position where the cursor passes are recorded, and when the mouse is lifted, the data collection is terminated to obtain the matrix of coordinates; the cursor is changed into a drawing brush, and the coordinate value of the brush center passing is recorded to select the coordinate point within the specified radius of the coordinate point to realize the selection of the manual intervention area; The re-iterative optimization module is used to substitute the results after intervention into the iteration step for optimization; The final optimization result acquisition module is used to terminate the program after one or several interventions, output the final optimization result and calculate the objective function value at the same time, and use the optimization result as the base map for modeling, which can be delivered for printing after processing; The manual intervention is implemented as follows: For variable density method or bidirectional evolutionary structure optimization method: According to the recorded coordinates, intervention is performed by adjusting the relative density of all integer coordinate points within the brush radius, including: If the relative density of the material is greater than 1, the corresponding part will be added to the next step of iterative optimization but cannot be optimized; If the relative density of the material is less than 0, the recorded coordinates are erased; If the relative density of the material is close to and less than 1, then the corresponding part will be added to the next iterative optimization and may be optimized; For the level set method: According to the recorded coordinates, intervention is performed by adjusting the function values corresponding to all integer coordinate points within the brush radius, including: If the function value is greater than 1, the corresponding part will be added to the next step of iterative optimization but cannot be optimized; If the function value is less than 0, the recorded coordinates are erased; If the function value is close to and less than 1, the corresponding part will be added to the next iterative optimization and may be optimized.
6. A computer device comprising a processor and a memory for storing a program executable by the processor, characterized in that: When the processor executes the program stored in the memory, the topology optimization method described in any one of claims 1 to 4 is implemented.
7. A storage medium storing a program, characterized in that: When the program is executed by a processor, the topology optimization method described in any one of claims 1 to 4 is implemented.
Citation Information
Patent Citations
Real-time topological optimization generation design method based on artificial intelligence technology
CN113343580A
Variable density topological optimization method based on ABAQUS secondary development Python language
CN114239363A