A spline topology optimization method for human-aided design needs
By introducing a real-time interactive design process into the spline topology optimization algorithm, users are allowed to assist or intervene in real time during the optimization iteration process, solving the problem that users cannot operate during the optimization process in the prior art, and improving the design efficiency and acceptability of optimization results.
Patent Information
- Application Number
- CN202510037531.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-10
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2045-01-10
AI Technical Summary
The existing topology optimization algorithm does not allow users to operate during the optimization iteration process, resulting in engineers being able to make binary decisions in the optimization results, reducing the acceptance of topology optimization in engineering applications.
A spline topology optimization method for the needs of artificially assisted design is proposed. By introducing a real-time interactive design process on the explicit spline topology optimization algorithm, users are allowed to assist or intervene in real time during the optimization iteration process and express design intentions.
It realizes that users express their design intentions in a timely, accurate and free manner in the process of topology optimization, reduces the difficulty of engineers using topology optimization algorithms, improves design efficiency, and promotes wider acceptance of topology optimization technology in the engineering community.
Smart Images

Figure CN119442489B_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of explicit topology algorithm development for high-speed aircraft, and specifically is a spline topology optimization method oriented to the needs of artificially assisted design. Background Art
[0002] High-speed aircraft usually face structural heat dissipation problems during their service. Optimizing the flow channel topology design of the liquid cooling plate can help improve the heat dissipation performance of the structure. During the flow channel design process, engineers usually take into account a variety of factors, including various manufacturing constraints, targeted layout requirements, and past design experience. These factors may sometimes be difficult to express through formulas or difficult to set through traditional topology optimization software. In addition, with the trend of small-batch, customized product design, engineers usually do not have enough time to perform topology optimization multiple times and constantly try to modify it. Therefore, timely manual intervention during the optimization iteration process is one of the effective ways to improve the design efficiency of engineers.
[0003] At present, structural topology optimization has been widely used in many industries, such as aerospace, automobile and shipbuilding, bridge construction, etc. However, the existing topology optimization algorithms usually only allow users to set a series of parameters before starting the optimization, and no longer allow users to operate after the optimization iteration begins. After obtaining the optimization solution, the user will be in a state of "post-judgment", that is, the user's binary decision between personal intuition and algorithm results, and can only choose to accept or not accept the optimization results. The post-judgment link has reduced the acceptance of topology optimization in engineering to a certain extent, which leads to the fact that topology optimization technology often cannot play its full potential in actual engineering applications. The idea of artificial assisted design advocates that: in the process of optimization design, the computer plays a major role and automatically completes the entire product design task with high quality. In order to meet the diverse design needs, humans only need to apply targeted assistance and interference to the design process. By combining the idea of artificial assisted design, it is not only hoped that the difficulty of engineers using topology optimization algorithms will be greatly reduced, but also it will help them more easily introduce constraints or information elements such as processing, social culture, and subjective aesthetics that are difficult to express through formulas into the design solution.
[0004] Therefore, in order to achieve a reasonable integration of "personal intuition" and "algorithm results" and solve the above-mentioned "after-the-fact judgment" dilemma, there is an urgent need for a topology optimization method that meets the needs of human-assisted design. In a real-time interactive manner, it can help engineers express their design intentions in a timely, accurate and free manner during the topology optimization process, thereby promoting topology optimization technology to be more widely accepted and used by the engineering community. Summary of the invention
[0005] In view of the current lack of explicit topology optimization methods that combine the idea of human-assisted design, and the fact that topology optimization technology is difficult to be widely accepted because it does not conform to the design habits of engineers and is difficult to flexibly and accurately express the design intentions of users, this paper proposes a spline topology optimization method for human-assisted design needs. By introducing a series of improvements on the explicit spline topology optimization algorithm, the user can assist or intervene in the iterative process in real time and express his design intentions in a timely manner, and finally obtain an optimized design solution that meets the target performance.
[0006] In order to achieve the above object, the technical solution of the present invention is:
[0007] A spline topology optimization method for manual assisted design needs is disclosed. The method first sets initial conditions, including setting design domain and topology optimization parameters, initializing design variables and their upper and lower limit constraints, and preparing an iterative solver. Then, the iterative loop of the topology optimization algorithm is entered until a pause command issued by the user is received. When the user observes the iterative change trend of the structure and combines his own prior knowledge and believes that it is necessary to impose human intervention on the optimization process, a pause command can be issued. According to the required manual assisted operation type selected by the user, the algorithm will create a new component, delete the old component, or modify the constraint condition threshold. After completing the manual assisted operation, the algorithm will continue to perform finite element analysis, calculate the objective function and constraint function values, and perform sensitivity analysis. Finally, the design variables are updated through the optimization solver, and the design results of the current iteration step are output. If the iterative convergence condition is met at this time, or a termination command issued by the user is received, the algorithm stops and the optimization design process ends, otherwise the next topology optimization iteration will be performed. Through this interactive design process, the user finally obtains a design solution that can simultaneously meet his design needs and excellent mechanical properties. The steps include:
[0008] Step 1: Set the initial conditions, including setting the design domain and topology optimization parameters, initializing the design variables and their upper and lower limit constraints, and preparing the iterative solver;
[0009] Step 2: Prepare the variable information organization array. The modular organization form of the variable information realizes the information separation of multiple components based on the cell array, and its expression is as follows:
[0010] Cell d = { { d 1 d 1 ¯ d 1 ¯ [ ϕ 1 b ] [ S 1 b ] ' Stype 1 ' ' sym 1 ' } ⋮ { d i d i ¯ d i ¯ [ ϕ i b ] [ S i b ] ' Stype i ' ' sym i ' } ⋮ { d n d n ¯ d n ¯ [ ϕ n b ] [ S n b ] ' Stype n ' ' sym n ' } } (1)
[0011] d i = [ x i 1 , y i 1 , x i 2 , y i 2 ,..., x i k i , y i k i , t i ] d i ¯ = [ x i 1 ¯ , y i 1 ¯ , x i 2 ¯ , y i 2 ¯ ,..., x i k i ¯ , y i k i ¯ , t i ¯ ] d i ¯ = [ x i 1 ¯ , y i 1 ¯ , x i 2 ¯ , y i 2 ¯ ,..., x i k i ¯ , y i k i ¯ , t i ¯ ] (2)
[0012] in, Representation The number of control points required for the spline component can be an integer greater than 2. The modular organization of the variable information is one of the important factors to ensure the convenience of adding and deleting components in the present invention. The organization allows several spline components participating in the same structural optimization process to have different numbers of design variables, and minimizes the total number of design variables while ensuring sufficient deformation capacity. Its specific implementation includes the following steps:
[0013] Step 2.1: When the user adds a new component through manual assistance, the neural network will automatically reconstruct the hand-drawn component and generate the design variable vector corresponding to the new component. ;
[0014] Step 2.2: The underlying algorithm of the human-computer interaction interface will be based on , automatically generates a set of corresponding variable upper limits and variable lower limits Vector, and users can modify certain values in the vector according to specific needs;
[0015] Step 2.3: The underlying algorithm of the human-computer interaction interface will be based on the design variables Generate the corresponding B-spline curve and calculate the topological description function matrix based on the signed distance function ;
[0016] Step 2.4: Take points at equal intervals on the B-spline curve generated in step 2.3 to obtain the discrete coordinate point matrix of the spline curve ;
[0017] Step 2.5: The user sets the symmetry and category attributes of the newly added spline component according to their own design needs. These settings are represented as spline category labels. and Spline Symmetry Tags ;
[0018] Step 2.6: Assemble the contents obtained from steps 2.1 to 2.5 into a cell array row by row in the order shown in formula (1), and add the cell array as the last item to the end of the component information array shown in formula (1).
[0019] Furthermore, the detailed content in the above variable information organization form can be in any form and format, including but not limited to numbers, vectors, matrices, cell arrays, structures, strings, hyperlinks, code instructions, etc. And the relevant information of each spline component is not limited to the 7 items shown in formula (1), and the number can be adjusted according to the needs of the actual problem.
[0020] Furthermore, the line labels in the above step 2.5 are not limited to the two types mentioned above, and can be adjusted according to actual needs.
[0021] Furthermore, the functions included in the above-mentioned human-computer interaction interface are not limited to the above-mentioned ones, and can be increased, deleted or adjusted according to actual needs.
[0022] Step 3: After detecting the pause command issued by the user, suspend the optimization iteration process. The real-time pause function is implemented based on the application development module and waitfor command of MATLAB. The present invention achieves the purpose of supporting users to issue pause commands in real time by integrating it into a self-made control panel. Its specific implementation includes the following steps:
[0023] Step 3.1: When the optimization method of the present invention is started, a control panel will pop up and remain in a standby state;
[0024] Step 3.2: When the user needs to perform manual assistance, click the pause button on the control panel to issue a pause command;
[0025] Step 3.3: After the algorithm detects the pause command, a new operation human-computer interaction interface pops up. At this time, the algorithm process is paused through the waitfor command to wait for the user to complete the operation;
[0026] Step 3.4: When the user completes the manual assisted operation, the corresponding human-computer interaction interface is closed, the waitfor instruction releases the algorithm process, and the optimization algorithm continues to run, thereby achieving the purpose of pausing the iteration process in real time.
[0027] Furthermore, the implementation of the real-time pause function is not limited to using the application development module and the waitfor instruction, and can be adjusted according to actual problem needs.
[0028] Step 4: After detecting the termination instruction issued by the user, terminate the optimization iteration process. The real-time termination algorithm iteration process function is implemented based on the application development module and waitfor instruction of MATLAB. The present invention achieves the purpose of supporting users to issue termination instructions in real time by integrating it into a self-made control panel. Its specific implementation includes the following steps:
[0029] Step 4.1: When the optimization method of the present invention is started, a control panel will pop up and remain in a standby state;
[0030] Step 4.2: When the user needs to terminate the optimization iteration process, click the terminate button on the control panel to issue a termination command;
[0031] Step 4.3: When the algorithm runs to the corresponding judgment statement, the algorithm process is directly forced to terminate, thereby achieving the purpose of terminating the iterative loop in real time.
[0032] Furthermore, the implementation of the real-time termination function is not limited to using the application development module and the waitfor instruction, and can be adjusted according to actual problem needs.
[0033] Step 5: When receiving a pause command from the user and the user chooses to add a new component, perform corresponding operations in the pop-up human-computer interaction interface, which specifically includes the following steps:
[0034] Step 5.1: Freehand drawing. The user draws a line by pressing the left mouse button and dragging the mouse. The drawing is completed after releasing the left mouse button. The drawing process is carried out under the guidance of the user's design intention;
[0035] Step 5.2: Load the pre-trained neural network. There are many types of neural networks to choose from to meet the needs of representing spline components of different complexity;
[0036] Step 5.3: Inversely solve the design variables corresponding to the hand-drawn lines . Input the hand-drawn lines into the loaded neural network to obtain the transformed design variables. The transformed variable vector will be automatically integrated into the modular organization array of variable information described in step 2;
[0037] Step 5.4: Set the upper and lower limits of the variables for the new spline component and The user modifies the default value in the human-computer interaction interface to obtain the upper and lower limits of the variables of the new spline component. The upper and lower limit vectors will be automatically integrated into the modular organization array of the variable information described in step 2;
[0038] Step 5.5: According to the design variables of the hand-drawn lines, construct a new spline curve. The spline curve selects the classic B-spline formula. By adjusting the number of elements of the node vector, the first and last control points coincide with the first and last points of the spline. The discrete coordinate point matrix is obtained by uniformly selecting points. , the matrix will be automatically integrated into the modular organization array of variable information described in step 2;
[0039] Step 5.6: Construct a new spline component based on the new spline curve. The uniform width spline component constructor used in the present invention is shown in formula (3):
[0040] (3)
[0041] in, is the signed distance function, It means to calculate the distance between two points. and represents a vector consisting of the coordinates of the element nodes in the design domain; and Represents the coordinate vector consisting of points on the spline curve; is the half-width of the spline component. The matrix will automatically be integrated into the modularly organized array of variable information described in step 2;
[0042] Step 5.7: Set line labels. Users can set labels such as the symmetry attributes and extension direction attributes of the drawn lines. The set content will be automatically integrated into the modular organization array of variable information described in step 2;
[0043] Step 5.8: After the user completes all operations, close the human-computer interaction interface. At this time, the information of the new component will be automatically integrated and added to the modular organization array of the variable information described in step 2. At the same time, the waitfor instruction described in step 3 will release the algorithm process, and the optimization iteration will continue.
[0044] Furthermore, the manual assistance method in the above step 5.1 can be any interactive method that meets actual needs, including but not limited to hand-drawing, pictures, matrices, etc.
[0045] Furthermore, the component constructor in the above step 5.6 is not limited to formula (3) and can be adjusted according to the actual problem needs.
[0046] Step 6: After the user completes the hand-drawn lines, the trained neural network is used to directly transform the hand-drawn rough lines into topology optimization design variables. The network structure used mainly includes the classic and modified Residual Network (ResNet) modules and Inception (also known as GoogleNet) modules. When the neural network is used, it behaves as a black box and directly outputs the corresponding design variable vector according to the input hand-drawn line information.
[0047] Furthermore, the trained neural network model is not limited to the modules and structures described above and can be adjusted according to actual problem needs.
[0048] Furthermore, the prediction results of the above network can not only include the coordinates of the several control points mentioned above, but also output including but not limited to point coordinates, vectors, matrices, integers, floating-point numbers, characters / strings, etc., which can be adjusted according to the needs of actual problems.
[0049] Step 7: When receiving the pause command from the user and the user chooses to delete the old component, perform corresponding operations in the pop-up human-computer interaction interface, which specifically includes the following steps:
[0050] Step 7.1: Number the spline components. By reading the current variable information organization array, obtain the total number of spline components currently existing and their skeleton line coordinate matrix, draw these components in turn and display their numbers near the spline.
[0051] Step 7.2: Execute the delete command. The user determines the component he wants to delete by the number next to the spline curve, and then clears the corresponding row of the variable information organization array to accurately delete the component.
[0052] Furthermore, the numbering and visualization method in the above step 7.1 are not limited to the method described above, and can be adjusted according to the needs of actual problems.
[0053] Step 8: When receiving a pause instruction from the user and the user chooses to modify the constraint threshold, perform corresponding operations in the pop-up window, which specifically includes the following steps:
[0054] Step 8.1: When the optimization method of the present invention is started, a control panel will pop up and remain in a standby state;
[0055] Step 8.2: When the user needs to change the constraint function threshold, click the Modify Threshold button on the control panel;
[0056] Step 8.3: Use the inputdlg command to call a pop-up window with an input field, in which the user enters a new constraint function threshold;
[0057] Step 8.4: The new threshold value entered by the user is read by the underlying code and replaces the original threshold value, thereby achieving the purpose of modifying the constraint threshold value.
[0058] Furthermore, the above step constraint function iteration threshold modification method is not limited to the method, and can be adjusted according to the actual problem needs. The number of constraint function thresholds modified is not limited to one, and can be adjusted according to the actual problem needs.
[0059] Step 9: Perform topology optimization including manual assistance. The key lies in the integration and calling of the variable information organization array. The expression of the mathematical model is:
[0060] find d = ( ( d 1 ) ⊤ ,..., ( d i ) ⊤ ,..., ( d n ) ⊤ ) ⊤ ∈ Cell d min f ( d ) st g 1 = 0 g 2 = V | Ω | − V ¯ ≤ 0 Cell d = { { Cell d Cell dNew } if( It loop ∈ It HAD ) & ( O draw = true ) Cell d otherwise It HAD = [ It pause 1 st , It pause 2 nd ,... ] d ¯ ≤ d ≤ d ¯ (4)
[0061] Its specific implementation includes the following steps:
[0062] Step 9.1: Initialization . is a vector that records the iteration number of the user's manual assisted operation. For example, and They represent the number of iterations when the user issues the first two pause commands;
[0063] Step 9.2: Update the variable information organization array. If the current iteration step is belong , then the variable information cell array is triggered The variable information cell of the new structure As shown in formula (5).
[0064] Cell dNew = { d newID HAD d newID HAD ¯ d newID HAD ¯ [ ϕ newID b ] [ S newID b ] ' SType newID HAD ' ' sym newID HAD ' } newID = i + 1 if( It loop ∈ It HAD ) & ( O draw = true ) (5)
[0065] The superscript "HAD" indicates that it has been set / modified by the user. Indicates the number of spline components currently existing when performing hand-drawing operations And update the value when new components are introduced.
[0066] Step 9.3: Perform topology optimization. Extraction The design variable vectors of all rows in are integrated into a total vector in order, and the position information of each vector in the total vector is recorded. This vector can be directly used in the topology optimization algorithm;
[0067] Step 9.4: Process the updated design variables. After the iterative optimizer updates, a new total vector is obtained. Using the position information recorded in step 9.3, the new total vector is reversely split into the design variable vectors of each component and assigned to each. The corresponding row of
[0068] Step 9.5: Update component information. Update the design variables from step 2.2 to step 2.4 according to the design variables assigned in step 9.4. , , and .
[0069] Furthermore, the symbol letters in the formula (4) can be selected according to the actual problem and are not limited to the characters shown. The objective function in the formula (4) can be selected according to the actual problem, including but not limited to a single objective function, a weighted combination of multi-objective functions, structural performance characterization functions in the fields of mechanics / acoustics / thermal / electromagnetic, etc. The constraints in the formula (4) are not limited to the volume ratio constraints selected here, and can be selected according to the actual problem. The number of constraints in the formula (4) is not limited to one here, and can be selected according to the actual problem.
[0070] The beneficial effects of the present invention are:
[0071] (1) Aiming at the need of designers to introduce their design intent in the iterative process of topology optimization, this paper proposes a spline topology optimization method for human-assisted design needs. It not only supports users to create new components according to their design intent, but also the new components can be optimized with subsequent iterations.
[0072] (2) The present invention can greatly simplify the difficulty of users using the topology optimization algorithm by integrating a carefully designed human-computer interaction interface, while improving the user experience.
[0073] (3) The present invention can transform the hand-drawn rough curve into the design variables required for topology optimization by means of a trained dedicated neural network. At the same time, after spline reconstruction, the newly created spline components in the optimization process have continuous and smooth boundaries, which is very beneficial in the optimization design of flow channel / optical / acoustic structures.
[0074] (4) The present invention has strong interactivity, which ensures the freedom and timeliness of users in expressing their design intentions. The real-time pause function ensures that users can pause the iteration process and implement manual assistance when they think it is appropriate. This is of great significance for methods such as topology optimization where the optimization configuration changes continuously as the iteration proceeds. This ensures the timeliness of user operations and does not miss the appropriate opportunity for intervention. The choice of human-computer interaction interface and hand-drawn interaction method ensures the freedom of user operation. Under the guidance of their prior knowledge, users can draw the lines of their intention at the desired location and create new components that satisfy them. This is of great help in fully expressing the user's design intentions.
[0075] (5) The present invention is based on the explicit spline topology optimization method and thus inherits the advantages of the explicit topology optimization method. The explicitly characterized spline components not only have good topological description capabilities, but also can establish a direct connection with the CAD system, which is expected to greatly facilitate the model reconstruction, simulation analysis and manufacturing process of the optimization results, which is of practical significance for improving the acceptance of topology optimization in the engineering community. BRIEF DESCRIPTION OF THE DRAWINGS
[0076] Figure 1 It is a flow chart of the implementation of a spline topology optimization method for artificially assisted design requirements proposed by the present invention.
[0077] Figure 2 It is a human-computer interaction interface diagram of a newly added hand-drawn component provided in a specific implementation manner of the present invention.
[0078] Figure 3 It is a diagram of the overall architecture of a neural network provided in a specific embodiment of the present invention.
[0079] Figure 4 It is an optimized configuration diagram and a corresponding liquid cooling plate temperature diagram at the optimization design stage 1 provided in a specific embodiment of the present invention.
[0080] Figure 5 It is an optimized configuration diagram and a corresponding liquid cooling plate temperature diagram during the optimization design stage 2 provided in a specific embodiment of the present invention.
[0081] Figure 6 It is an optimized configuration diagram and a corresponding liquid cooling plate temperature diagram at the optimization design stage 3 provided in a specific embodiment of the present invention.
[0082] Figure 7 It is an optimized configuration diagram and a corresponding liquid cooling plate temperature diagram at the optimization design stage 4 provided in a specific embodiment of the present invention.
[0083] Figure 8 It is an optimized configuration diagram and a corresponding liquid cooling plate temperature diagram at the optimization design stage 5 provided in a specific embodiment of the present invention.
[0084] Fig. 9 It is a topology optimization iteration curve diagram provided in a specific embodiment of the present invention. DETAILED DESCRIPTION
[0085] In order to make the technical problems solved by the present invention, the technical solutions adopted and the technical effects achieved more detailed, the present invention is further described in detail below in conjunction with the accompanying drawings and implementation examples. It is understood that the specific implementation examples described herein are only used to explain the present invention, rather than to limit the present invention. It should also be noted that, for the convenience of description, only the relevant parts of the present invention are shown in the accompanying drawings, rather than all the contents.
[0086] Here, a spline topology optimization method for manual-aided design requirements proposed in the present invention is used to perform manual-aided topology optimization design on the flow channel structure layout of the liquid-cooled plate heat exchanger. Assume that the fluid is in a laminar state in the heat exchanger. Take the lower half of the square aluminum liquid-cooled plate as the design domain. The side length of the design domain is 60 mm. Low-temperature water at 293.15 K enters from the left side of the heat exchanger with a normal flow velocity of 0.004 m / s and flows out from the right side with an outlet pressure of 0 Pa. The thickness of the liquid-cooled plate is 5 mm, and the heat source is , is applied to its entire bottom (including the solid part and the fluid part).
[0087] Figure 1 This is a flow chart for implementing a spline topology optimization method for manual-assisted design requirements proposed by the present invention. First, the design domain parameters, topology optimization parameters, design variables and their upper and lower limit constraints are set according to the size information and working conditions of the above-mentioned liquid cooling plate, and the initialization operation of the iterative optimizer is completed. Then run the spline topology optimization, the algorithm will monitor in real time whether the user issues a pause command, and after receiving the pause command, ask the user what kind of manual-assisted operation is required. Here, taking the addition of a new component as an example, when you choose to add a new component, the corresponding human-computer interaction interface will be automatically evoked, such as Figure 2 As an example, Figure 2In the view window, there is a spline component reconstructed from any hand-drawn line of the user, where the dotted line is the user's hand-drawn line and the solid line is the smooth curve obtained by reconstruction. The user can enter the upper and lower limits of the coordinates of the spline control points in the table on the right side of the human-computer interaction interface to limit the movement range and deformation ability of the hand-drawn component in the subsequent optimization iteration process. The overall architecture of the neural network used to reconstruct the spline component is shown in the figure below. Figure 3 As shown. The relevant information of the new component created by hand drawing will be automatically added to the variable information organization array. Then, after updating the topological schematic diagram of the overall structure, a finite element analysis is performed to obtain the objective function and constraint function values of the structure. Then, the finite difference method is used for sensitivity analysis, and the design variables are updated with the help of an iterative optimizer. At this time, if the optimization convergence conditions are not met and the user termination command is not detected, the algorithm will re-perform a new round of optimization cycle until the convergence conditions are met or the user issues a termination command, the optimization iteration is terminated, and the optimization design result is output.
[0088] The optimization mathematical model of this problem is:
[0089] find d = ( ( d 1 ) ⊤ ,..., ( d n ) ⊤ ) ⊤ ∈ Cell d min f ( d ) st g 1 = V | Ω | − V ¯ ≤ 0 g 2 = J − J ¯ ≤ 0 Cell d = { { Cell d Cell dNew } if( It loop ∈ It HAD ) & ( O draw = true ) Cell d otherwise It HAD = [ It st : It gap : It Max ] d ¯ ≤ d ≤ d ¯ (6)
[0090] in, is the objective function of optimization, i.e., the average temperature of the design domain of the liquid cooling plate; is the flow channel area of the liquid cooling plate; represents the total viscous dissipation. Its expressions are:
[0091] (7)
[0092] in, represents the temperature field in the design domain.
[0093] (8)
[0094] in, represents viscous dissipation; is the dynamic viscosity of the fluid; , , and are strain rate tensors; and The velocity field Quantity and Quantity; Indicates thickness.
[0095] This paper uses the finite difference method to implement sensitivity analysis. The sensitivity of the objective function to the design variables is shown in formula (9):
[0096] (9)
[0097] in, Indicates The first spline component design variables; is the difference step size, which is dynamically adjusted with the number of iteration steps; and are the length and width of the design domain respectively. The sensitivity of the two constraint functions to the design variables is shown in Equations (10, 11).
[0098] (10)
[0099] (11)
[0100] The following is a detailed description of the specific manual aided design process in the optimization cycle of this implementation example. The entire optimization process can be divided into five stages. The flow channel configuration and the corresponding liquid cooling plate temperature of the key iteration step are as follows: Figures 4 to 8 The iterative history curve of the entire optimization process is shown in Fig. 9 shown.
[0101] Stage 1 Figure 4 As shown in the figure, the initial structure only contains two flow channels, which are arranged without professional knowledge and design experience. This stage ends when the iterative optimization reaches step 14. It can be found that from the 7th iteration, the cooling performance of the structure changes slowly, and the average temperature is around 430K. It can be judged that the structure containing only two flow channels has a performance bottleneck. Therefore, manual assisted hand-drawing operations should be performed in time to provide guidance and intervention for the optimization process.
[0102] Stage 2 Figure 5 As shown in the figure, before the 15th iteration, the user analyzes the optimization results of the 14th step and judges based on design experience that a new flow channel should be arranged in the area with higher peripheral temperature. Figure 5 From the iteration curve shown, it can be found that with the addition of new flow channels, the average temperature has dropped significantly. By the 44th step, it has dropped by 60.86 K, indicating that this manual-aided design is very successful. It is worth noting that with the creation of new flow channels, the volume constraint threshold is also relaxed and the total viscous dissipation constraint threshold is tightened. The reason for choosing the step-by-step relaxation / contraction of the constraint threshold is that if a fixed threshold is used, the initial flow channel may increase in width in order to meet the volume constraint, which in turn causes the viscous dissipation constraint to be always satisfied, thus interfering with the iterative process. Figure 5From the historical curve shown, it can be found that when the iteration reaches step 44, the two constraints have shown an obvious trend of converging to the threshold, but the objective function value has not continued to improve for a long time. According to design experience, it can be judged that the optimization process has fallen into a local optimal solution at this time, and user intervention and guidance are required.
[0103] Stage 3 Figure 6 As shown in the figure, before the 45th step iteration, the user added a new flow channel in step 45 by analyzing the optimization results of step 44 and combining the existing design experience. When iterating to step 54, the average temperature dropped by 17.262K to 334.14K. The performance improvement of the condenser plate is quite satisfactory, but by observing the flow channel structure of step 54, it can be found that the flow channel structure expected by the user did not appear, and the new flow channel merged with the original flow channel. At this time, if it is assumed that the user judges through experience that this structural feature is necessary, the manual assisted hand-drawing operation should be performed in time to provide guidance and intervention for the optimization process.
[0104] Stage 4 Figure 7 As shown in the figure, when creating a new flow channel, in order to ensure that the new flow channel will not be integrated into the original flow channel again, the user imposes a relatively strict displacement constraint on the control point of the new flow channel (reflected in the upper and lower limit constraints of the design variables of the new flow channel). After 20 iterations, the optimized structure shown in step 74 is obtained. At this time, the objective function value is 329.27K, which is only 4.86K lower than the structure of step 54, indicating that the characteristic structural features expected by the user have played a role. Although the temperature reduction is small, considering that the lower the temperature, the more difficult it is to cool down, so the performance improvement of this structure is also quite satisfactory.
[0105] Stage 5 Figure 8 As shown in the figure, before the start of step 75, by observing the current structure, it can be found that the overall structure is relatively reasonable, and it can be considered to end the iteration after the last hand-drawing operation. Therefore, at step 75, the user randomly arranged the new flow channel at the maximum empty area based on design experience, and set the thresholds of the two constraints to the final target thresholds. By observing the historical curve, it can be found that at step 120, the two constraints have obviously approached the set thresholds, and the improvement of the objective function has been very gentle. After the user's judgment, the structure at this time is relatively satisfactory, so the user issues a termination command, the algorithm stops iterating, and the entire optimization design process is completed. Finally, the average temperature of the liquid cooling plate is 325.81K, or 52.66℃, which is only 32.66℃ different from the temperature of the cooling water (293.15K, or 20℃). Compared with the temperature in step 1 (592.71K), the average temperature drop is as high as 45.03%.
Claims
1. A spline topology optimization method for artificially assisted design requirements, characterized in that: Here are the steps: Step 1: Set the initial conditions, including setting the design domain and topology optimization parameters, initializing the design variables and their upper and lower limit constraints, and preparing the iterative solver; Step 2: Prepare the variable information organization array; the modular organization form of the variable information realizes the information separation of multiple components based on the cell array, and its expression is as follows: Among them, k i represents the number of control points required to characterize the i-th spline component, which takes an integer value greater than 2; Step 2.1: When the user adds a new component through manual assistance, the neural network will automatically reconstruct the hand-drawn component and generate the design variable vector d corresponding to the new component. i ; Step 2.2: The underlying algorithm of the human-computer interaction interface will be based on d i , automatically generates a set of corresponding variable upper limits and variable lower limits d i Vector, and users can modify certain values in the vector according to specific needs; Step 2.3: The underlying algorithm of the human-computer interaction interface will be based on the design variable d i Generate the corresponding B-spline curve and calculate the topological description function matrix based on the signed distance function Step 2.4: Take points at equal intervals on the B-spline curve generated in step 2.3 to obtain the discrete coordinate point matrix of the spline curve Step 2.5: The user sets the symmetry and category attributes of the newly added spline component according to their own design needs. These settings are represented by the spline type label Stype. i and spline symmetry label sym i ; Step 2.6: Assemble the contents obtained from step 2.1 to step 2.5 into a cell array in the order shown in formula (1) and add the cell array as the last item to the end of the component information array shown in formula (1); Step 3: After detecting the pause instruction issued by the user, pausing the optimization iteration process; the real-time pause function is implemented based on the application development module and waitfor instruction of MATLAB, and by integrating it into the self-made control panel, the purpose of supporting the user to issue the pause instruction in real time is achieved; Step 4: After detecting the termination instruction issued by the user, terminate the optimization iteration process; Step 4.1: When the optimization method starts, the control panel will pop up and remain in standby mode; Step 4.2: When the user needs to terminate the optimization iteration process, click the terminate button on the control panel to issue a termination command; Step 4.3: When the algorithm runs to the corresponding judgment statement, the algorithm process is directly forced to terminate, thereby achieving the purpose of terminating the iteration loop in real time; Step 5: When receiving a pause command from the user and the user chooses to add a new component, perform corresponding operations in the pop-up human-computer interaction interface; Step 6: After the user completes the hand-drawn lines, the trained neural network is used to directly transform the hand-drawn rough lines into topology optimization design variables; Step 7: When receiving a pause command from the user and the user chooses to delete the old component, perform corresponding operations in the pop-up human-computer interaction interface; Step 8: When receiving a pause instruction from the user and the user chooses to modify the constraint threshold, perform corresponding operations in the pop-up window, which specifically includes the following steps: Step 8.1: When the optimization method starts, the control panel will pop up and remain in standby mode; Step 8.2: When the user needs to change the constraint function threshold, click the Modify Threshold button on the control panel; Step 8.3: Use the inputdlg command to call a pop-up window with an input field, in which the user enters a new constraint function threshold; Step 8.4: The new threshold value entered by the user is read by the underlying code and replaces the original threshold value, thereby achieving the purpose of modifying the constraint threshold value; Step 9: Perform topology optimization including manual assistance. The key lies in the integration and calling of the variable information organization array. The expression of the mathematical model is: The step 9 is specifically as follows: Step 9.1: Initialize It HAD It HAD is a vector that records the iteration number of the user's manual assisted operation; and They represent the number of iterations when the user issues the first two pause commands; Step 9.2: Update the variable information organization array; if the current iteration number It loop Belong to It HAD , then trigger variable information cell array Update of the variable information cell of the new structure As shown in formula (5); The superscript "HAD" indicates that it has been set / modified by the user, i indicates the number of spline components currently existing, and when performing a hand-drawn operation ( draw = true) and update the value when a new component is introduced; Step 9.3: Perform topology optimization; extraction The design variable vectors of all rows in are integrated into a total vector in order, and the position information of each vector in the total vector is recorded; this vector can be directly used in the topology optimization algorithm; Step 9.4: Process the updated design variables; after the iterative optimizer updates, a new total vector is obtained. Using the position information recorded in step 9.3, the new total vector is reversely split into the design variable vectors of each component and assigned to each. The corresponding row of Step 9.5: Update component information; update the design variables from step 2.2 to step 2.4 according to the design variables assigned in step 9.
4. d i , and 2. A spline topology optimization method for artificially assisted design requirements as claimed in claim 1, characterized in that: The step 3 is as follows: Step 3.1: When the optimization method starts, the control panel will pop up and remain in standby mode; Step 3.2: When the user needs to perform manual assistance, click the pause button on the control panel to issue a pause command; Step 3.3: After the algorithm detects the pause command, a new operation human-computer interaction interface pops up. At this time, the algorithm process is paused through the waitfor command to wait for the user to complete the operation; Step 3.4: When the user completes the manual assisted operation, the corresponding human-computer interaction interface is closed, the waitfor instruction releases the algorithm process, and the optimization algorithm continues to run, thereby achieving the purpose of pausing the iteration process in real time.
3. A spline topology optimization method for artificially assisted design requirements as claimed in claim 1 or 2, characterized in that: The step 5 is specifically as follows: Step 5.1: Drawing a line by hand; the user presses the left mouse button and drags the mouse to draw a line, and the drawing is completed after releasing the left mouse button; The drawing process is conducted under the guidance of the user’s design intention; Step 5.2: Load the pre-trained neural network; there are multiple types of neural networks to choose from to meet the needs of representing spline components of different complexity; Step 5.3: Inversely calculate the design variable d corresponding to the hand-drawn line i ; Input the hand-drawn lines into the loaded neural network to obtain the transformed design variables; the transformed variable vector d i will be automatically integrated into the modular organization array of variable information described in step 2; Step 5.4: Set the upper and lower limits d of the new spline component i and d i ; The user modifies the default value in the human-computer interaction interface to obtain the upper and lower limits of the variables of the new spline component. The upper and lower limit vectors of the variables will be automatically integrated into the modular organization array of the variable information described in step 2; Step 5.5: According to the design variables of the hand-drawn lines, a new spline curve is constructed. The spline curve selects the classic B-spline formula. By adjusting the number of elements of the node vector, the first and last control points coincide with the first and last points of the spline. The discrete coordinate point matrix S is obtained by uniformly selecting points. i b , the matrix will be automatically integrated into the modular organization array of variable information described in step 2; Step 5.6: Construct a new spline component based on the new spline curve; the uniform width spline component constructor used is shown in formula (3): Among them, φ b (x) is the signed distance function, |·| indicates the distance between two points, and x and y represent vectors consisting of the coordinates of the unit nodes in the design domain; b and b represents the coordinate vector consisting of points on the spline curve; t b is the half-width of the spline component; the φ b The (x) matrix will automatically be integrated into the modularly organized array of variable information described in step 2; Step 5.7: Set line labels; users can set the symmetry attributes and extension direction attribute labels of the drawn lines, and the set content will be automatically integrated into the modular organization array of variable information described in step 2; Step 5.8: After the user completes all operations, close the human-computer interaction interface; at this time, the information of the new component will be automatically integrated and added to the modular organization array of the variable information described in step 2; at the same time, the waitfor instruction described in step 3 will release the algorithm process, and the optimization iteration will continue.
4. A spline topology optimization method for artificially assisted design requirements as claimed in claim 1 or 2, characterized in that: The step 7 is specifically as follows: Step 7.1: Number the spline components; by reading the current variable information organization array, obtain the total number of spline components currently existing and their skeleton line coordinate matrix, draw these components in turn and display their numbers near the spline; Step 7.2: Execute the delete command; the user determines the component to be deleted by the number next to the spline curve, and then accurately deletes the component by clearing the corresponding row of the variable information organization array.
Citation Information
Patent Citations
Structure topology optimization method for implementing diversified designs
CN105760631A
Network data visualization platform, system and method
CN115174684A