Optimal solution calculation method, device, and program

The restriction fluctuation method stabilizes and speeds up the calculation of optimal solutions by iteratively refining target values, addressing the instability and inefficiency of existing methods like the Newton method.

JP7625180B2Active Publication Date: 2025-02-03MAZDA MOTOR CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2021074043
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-04-26
Publication Date
2025-02-03
Estimated Expiration
2041-04-26

AI Technical Summary

Technical Problem

Existing methods for calculating the optimal solution of a target function, such as topology optimization, face challenges with unstable and time-consuming calculations, particularly when using the Newton method.

Method used

A method that stabilizes and speeds up the calculation of the optimal solution by employing a restriction fluctuation method, which includes setting a target value and adjusting it based on compliance values, using a linear approximation and constraint conditions to iteratively refine the solution.

Benefits of technology

The method allows for stable and efficient calculation of the optimal solution, reducing the number of calculation steps and ensuring convergence to accurate results.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007625180000007
    Figure 0007625180000007
  • Figure 0007625180000008
    Figure 0007625180000008
  • Figure 0007625180000009
    Figure 0007625180000009
Patent Text Reader

Abstract

To provide an optimum solution calculation method that finds an optimum solution stably and at high speed.SOLUTION: A calculation method for an optimum solution comprises: a first step for finding a solution where a linear approximation of an object function in a certain internal variable satisfies a target value; a second step for setting, when an object function value corresponding to the solution is less than the object function value of the first step, the solution as an internal variable to which the first step should be performed next; a third step for repeating, when the object function value corresponding to the solution is greater than or equal to the object function value of the first step, a change to bring the target value closer to the object function value corresponding to the internal variable and a calculation of the solution based on the linearly approximated function and a changed target value; a fourth step of setting, when the object function value corresponding to the solution by the third step is less than the object function value of the first step, the solution as an internal variable to which the first step should be performed next; and a fifth step for determining the optimum solution from the internal variable set in the second or fourth step.SELECTED DRAWING: Figure 19
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a method, an apparatus, and a program for calculating an optimal solution of an objective function. [Background technology]

[0002] Conventionally, a technique for calculating an optimal solution of an objective function defined by a predetermined internal variable has been known. In one example, this technique is applied to topology optimization for obtaining an optimal packing rate distribution (density distribution) of a material constituting a given component within the design domain (within the material distribution range) of the component. In this example, the objective function is defined by a parameter (e.g., compliance) according to the amount of displacement of the component due to a load, and a parameter corresponding to the packing rate distribution is applied to the internal variable that defines this objective function.

[0003] In addition, in order to find the optimal solution of the objective function, the gradient method, which uses information on the gradient of the objective function in the optimization problem to search for a solution, the Newton method (Newton-Raphson method), which is an iterative algorithm for solving a system of equations by numerical calculation, etc. For example, Patent Document 1 discloses a technology for speeding up parameter optimization by simultaneously selecting values ​​of multiple parameters by performing multiple calculations using the gradient method. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] JP 2020-181318 A Summary of the Invention [Problem to be solved by the invention]

[0005] However, the gradient method has a problem that it takes a huge amount of time to calculate, and the Newton method has a problem that the calculations can be unstable. Therefore, the inventors of the present application conducted extensive research to solve these problems and discovered a calculation method that can stably and quickly find the optimal solution to the objective function.

[0006] The present invention has been made to solve the above-mentioned problems with the conventional technology, and has an object to stably and quickly obtain an optimal solution in a method, device, and program for calculating an optimal solution of an objective function that is defined by internal variables and is a convex function. [Means for solving the problem]

[0007] In order to achieve the above object, the present invention provides an optimal solution calculation method executed by a computer device to calculate an optimal solution of an objective function that is defined by internal variables and is a convex function, the method comprising: a first step of finding a solution in which a function obtained by linearly approximating an objective function based on a certain internal variable and an objective function value that is a value of the objective function corresponding to the internal variable satisfies a predetermined target value; a second step of setting the solution as a new internal variable for which the first step is to be performed next when the objective function value corresponding to the solution obtained in the first step is less than the objective function value corresponding to the internal variable used in the first step; and a second step of changing the target value to a value that is closer to the objective function value used in the first step, so that the linearly approximated function satisfies the changed target value when the objective function value corresponding to the solution obtained in the first step is equal to or greater than the objective function value corresponding to the internal variable used in the first step. a third step of finding an addition solution, in which the target value is repeatedly changed to gradually approach the objective function value used in the first step until the objective function value corresponding to the solution found from the changed target value becomes less than the objective function value used in the first step, and a solution in which the linearly approximated function satisfies the changed target value is repeatedly found; a fourth step of setting the solution as a new internal variable for which the first step is to be performed next, when the objective function value corresponding to the solution found in the third step becomes less than the objective function value used in the first step; and a fifth step of repeating the first to fourth steps until the difference between the objective function value corresponding to the internal variable set in the second or fourth step and the target value becomes less than a predetermined value, and determining the internal variable used at this time as the optimal solution, when the difference becomes less than the predetermined value.

[0008] In the present invention thus configured, when the objective function value corresponding to the solution obtained in the first step is equal to or greater than the objective function value used in the first step, the target value is repeatedly changed to gradually approach the objective function value used in the first step until the objective function value corresponding to the solution obtained from the target value becomes less than the objective function value used in the first step, and a solution in which a linearly approximated function (linear function) satisfies the changed target value is repeatedly obtained, and when the objective function value corresponding to the solution becomes less than the objective function value used in the first step, the solution is set as a new internal variable for which the first step should be next performed. According to the present invention, unlike conventional methods (especially Newton's method) that have no choice but to accept bad solutions, it is possible to discard bad solutions and reliably find good solutions by varying the target value as a constraint value used to derive the optimal solution, making it possible to perform stable calculations. Furthermore, according to the present invention, in the repeated processing until a good solution is found, a function obtained by linearly approximating the objective function and the objective function value corresponding to the internal variable used in the first step can be reused, so that an increase in the number of calculation steps can be effectively suppressed. As described above, according to the present invention, an optimal solution can be stably and quickly found.

[0009] In the present invention, preferably, in the third step, a median between the objective function value corresponding to the internal variable used in the first step and the target value is found, and the target value is changed based on this median. According to the present invention configured in this manner, the target value can be updated to an appropriate value according to the objective function value corresponding to the internal variable used in the first step and the original target value.

[0010] In the present invention, preferably, the method further comprises a sixth step of changing the target value to a value smaller than the objective function value when the objective function value corresponding to the solution obtained in the first or third step is smaller than the target value. According to the present invention thus configured, the target value can be updated to an appropriate value in accordance with the objective function value corresponding to the solution sequentially obtained in the process of calculating the optimal solution.

[0011] In the present invention, preferably, in the sixth step, if the objective function value corresponding to the solution obtained in the first or third step is less than the target value, a median between the objective function value and the target value used before the target value was changed is obtained, and the target value is changed based on this median. According to the present invention thus configured, it is possible to update the tentative target value to an appropriate value according to the objective function value corresponding to the solution and the target value used previously.

[0012] In the present invention, preferably, in the fifth step, when the difference between the objective function value corresponding to the internal variable set in the second or fourth step and the target value is less than a predetermined value, and the difference between the objective function value corresponding to the internal variable set in the second or fourth step and the target value used before the target value was changed is less than a predetermined value, the internal variable used at that time is determined to be the optimal solution. According to the present invention configured as described above, by using the difference between the objective function value and the current target value, as well as the difference between the objective function value and the previously used target value, it is possible to accurately determine the convergence of the solution, i.e., it is possible to obtain a more accurate optimal solution.

[0013] In the present invention, the method of calculating an optimum solution is preferably used to obtain an optimum packing rate distribution of a material constituting a component, at least a portion of which is fixed and to which a load is applied at least to a part of the component, the internal variables being parameters corresponding to the packing rate distribution, and the objective function being defined by parameters according to the amount of displacement of the component due to the load. According to the present invention configured as described above, by applying the above-mentioned calculation method to topology optimization, it is possible to stably and quickly obtain the optimal packing rate distribution (density distribution) of a material.

[0014] In the present invention, it is preferable to determine the volume of the component from the solution obtained in the first step, and if this volume is equal to or greater than a predetermined constraint value, to repeatedly perform the first step without performing the second and third steps until the volume becomes less than the constraint value. According to the present invention configured in this way, it is possible to obtain a solution (optimum packing rate distribution) that reliably satisfies the volume constraint.

[0015] In another aspect, in order to achieve the above object, the present invention provides an optimal solution calculation device that calculates an optimal solution of an objective function that is defined by internal variables and is a convex function, comprising: a first means for calculating a solution in which a function obtained by linearly approximating an objective function based on a certain internal variable and an objective function value that is a value of the objective function corresponding to the internal variable, satisfies a predetermined target value; a second means for setting the solution as a new internal variable for which the first means is to be executed next, when the objective function value corresponding to the solution obtained by the first means is less than the objective function value corresponding to the internal variable used in the first means; and a second means for changing the target value to a value that is closer to the objective function value used in the first means, and calculating a solution in which the linearly approximating function satisfies the changed target value, when the objective function value corresponding to the solution obtained by the first means is equal to or greater than the objective function value corresponding to the internal variable used in the first means. the third means for repeatedly changing the target value to gradually approach the objective function value used in the first means until the objective function value corresponding to the solution obtained from the changed target value becomes less than the objective function value used in the first means, and repeatedly obtaining a solution in which a linearly approximated function satisfies the changed target value; a fourth means for setting the solution as a new internal variable for which the first means is to be executed next, when the objective function value corresponding to the solution obtained by the third means becomes less than the objective function value used in the first means; and a fifth means for repeatedly executing the first to fourth means until the difference between the objective function value corresponding to the internal variable set by the second or fourth means and the target value becomes less than a predetermined value, and determining the internal variable used at this time as the optimal solution, when the difference becomes less than the predetermined value. The present invention thus configured also makes it possible to stably and quickly find an optimal solution.

[0016] In still another aspect, in order to achieve the above object, the present invention provides an optimal solution calculation program executed by a computer device to calculate an optimal solution of an objective function that is defined by internal variables and is a convex function, the computer device comprising: a first means for calculating a solution in which a function obtained by linearly approximating the objective function based on a certain internal variable and an objective function value that is a value of the objective function corresponding to the internal variable, satisfies a predetermined target value; a second means for setting the solution as a new internal variable for next execution of the first means, when the objective function value corresponding to the solution obtained by the first means is less than the objective function value corresponding to the internal variable used in the first means; and a second means for changing the target value to a value that is closer to the objective function value used in the first means, to calculate the optimal solution of the linearly approximated function, the objective function value being a convex function, based on the certain internal variable and an objective function value that is a value of the objective function corresponding to the internal variable, the computer device comprising: a third means for obtaining a solution that satisfies the changed target value, which repeatedly performs a change to gradually bring the target value closer to the objective function value used in the first means until an objective function value corresponding to a solution obtained from the changed target value becomes less than the objective function value used in the first means, and repeatedly searches for a solution in which a linearly approximated function satisfies the changed target value; a fourth means for setting the solution as a new internal variable for which the first means is to be executed next when the objective function value corresponding to the solution obtained by the third means becomes less than the objective function value used in the first means; and a fifth means for repeatedly performing the first to fourth means until a difference between the objective function value corresponding to the internal variable set by the second or fourth means and the target value becomes less than a predetermined value, and determining the internal variable used at this time as an optimal solution when the difference becomes less than the predetermined value. The present invention thus configured also makes it possible to stably and quickly find an optimal solution. Effect of the Invention

[0017] According to the present invention, in a method, device and program for calculating an optimal solution of an objective function that is defined by internal variables and is a convex function, it is possible to stably and quickly find an optimal solution. [Brief description of the drawings]

[0018] [Figure 1] FIG. 1 is a schematic diagram of a computer device that is an example of an entity that executes an optimal solution calculation method according to an embodiment of the present invention. [Diagram 2] FIG. 1 is an explanatory diagram of a basic concept of an embodiment of the present invention. [Diagram 3] FIG. 1 is an explanatory diagram of the basic contents of a topology optimization method. [Figure 4] FIG. 1 is an explanatory diagram of an optimal solution in a topology optimization method. [Diagram 5] FIG. 13 is an explanatory diagram of a curve showing the compliance characteristic in the phase optimization method. [Figure 6] FIG. 1 is an explanatory diagram of a basic concept for finding an optimal solution in a topology optimization method. [Figure 7] FIG. 1 is an explanatory diagram of a method for obtaining an optimal solution by a conventional gradient method in a topology optimization method. [Figure 8] An example of the results when the conventional gradient method is applied to the topology optimization method is shown. [Figure 9] FIG. 1 is an explanatory diagram of a method for obtaining an optimal solution by a conventional Newton method in a topology optimization method. [Figure 10] An example of the results when the conventional Newton method is applied to the topology optimization method is shown. [Figure 11] Another example of the result when the conventional Newton method is applied to the topology optimization method will be shown. [Figure 12] FIG. 1 is an explanatory diagram of one cause of instability in calculations using Newton's method. [Figure 13] FIG. 13 is an explanatory diagram of another cause of instability in calculations using the Newton method. [Figure 14] FIG. 1 is an explanatory diagram of a trial solution used in a constraint variation method according to an embodiment of the present invention. [Figure 15] FIG. 2 is an explanatory diagram of a first process performed in the constraint variation method according to the embodiment of the present invention. [Figure 16]FIG. 11 is an explanatory diagram of a second process performed in the constraint variation method according to the embodiment of the present invention. [Figure 17] FIG. 11 is an explanatory diagram of a third process performed in the constraint variation method according to the embodiment of the present invention. [Figure 18] 1 is a flowchart showing the overall process of a topology optimization method according to an embodiment of the present invention; [Figure 19] 11 is a flowchart showing a constraint variation method process according to an embodiment of the present invention. [Figure 20] 13 shows an example of a result obtained by the constrained variation method according to an embodiment of the present invention. [Figure 21] 13 shows another example of the results of the constrained variation method according to the embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0019] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, an optimal solution calculation method, an apparatus, and a program according to an embodiment of the present invention will be described with reference to the accompanying drawings.

[0020] <Computer equipment> First, a computer device that is an example of an entity that executes the method for calculating an optimal solution according to an embodiment of the present invention will be described with reference to Fig. 1. As shown in Fig. 1, a computer device 10 has an input device 1 to which information is input by a user or the like, a processing device 3 that processes various information, and an output device 5 that outputs information.

[0021] The input device 1 is, for example, a mouse, a keyboard, a touch panel, a microphone, etc., and the output device 5 is, for example, a display device, a speaker, etc. The processing device 3 has one or more microprocessors 3a as a central processing unit (CPU) that executes programs, and a memory 3b that is configured, for example, of a RAM (Random Access Memory), a ROM (Read Only Memory), a hard disk, etc., and that stores programs and data.

[0022] The method for calculating an optimal solution according to this embodiment is executed by the processing device 3 of the computer device 10. Specifically, a program corresponding to this method for calculating an optimal solution (a program for calculating an optimal solution according to the present invention) is stored in the memory 3b of the processing device 3, and the microprocessor 3a of the processing device 3 reads out this program from the memory 3b and executes it. This causes the computer device 10 (particularly the processing device 3) to function as the optimal solution calculation device of the present invention. Specifically, the processing device 3 functions as the first to fifth means of the present invention.

[0023] <Basic concept> Next, the basic concept of an embodiment of the present invention will be described with reference to Fig. 2. Fig. 2 shows an example of an objective function. Specifically, in Fig. 2, the horizontal axis shows internal variables (e.g., design variables) that define the objective function, and the vertical axis shows the objective function according to the internal variables (i.e., the value of the objective function (objective function value) corresponding to the internal variable). As shown in Fig. 2, the objective function has a downward convex shape and includes a minimum value. The method for calculating an optimal solution according to this embodiment aims to stably and quickly find an optimal solution that corresponds to the minimum value of such an objective function.

[0024] <Phase optimization method> Next, the method for calculating an optimum solution according to this embodiment will be specifically described. Here, an example in which the method for calculating an optimum solution according to this embodiment is applied to a topology optimization method will be described with reference to Figs. 3 to 19.

[0025] First, FIG. 3 is an explanatory diagram of the basic contents of the topology optimization method. As shown in FIG. 3(A), the topology optimization method is to obtain an optimal packing rate distribution of the material constituting the member 20, at least a part of which is fixed and to which a load is applied at least to a part of the member 20. Here, a case is illustrated in which the left side of the member 20 is fixed and a load is applied near the center of the right side of the member 20. In the topology optimization method, the objective function corresponds to compliance indicating the amount of displacement of the member 20 due to the load, and this compliance is determined by the packing rate distribution as an internal variable. In particular, the compliance is determined by "load (external force) x displacement", and the displacement in this formula changes according to the packing rate distribution.

[0026] In this embodiment, with regard to such a topology optimization method, a spatial discretization model and boundary conditions (e.g., mesh of the finite element method) are used to impose a volume constraint on the member 20, and a packing rate distribution with minimum compliance (i.e., optimal packing rate distribution) is obtained as an optimal solution. Fig. 3(B) shows an example of an optimal packing rate distribution obtained when a volume constraint of 30% is applied (the packing rate when the entire member 20 is filled is set to 100%). Note that Fig. 3(B) expresses the packing rate distribution by grayscale colors (the same applies below).

[0027] Next, FIG. 4 is an explanatory diagram of the basic contents of the optimal solution in the topology optimization method. In FIG. 4, the horizontal axis shows the packing ratio distribution, and the vertical axis shows the compliance as the objective function. If the packing ratio is "ρ", the stiffness according to the packing ratio ρ is "K(ρ)", the displacement is "u", and the load is "b", the stiffness equation is expressed as "K(ρ)u=b". If the compliance as the objective function is "f0", the compliance f0 is expressed as "f0=b·u". As shown in FIG. 4, when the packing ratio ρ distribution is changed, various compliances f0 are obtained, and the packing ratio ρ distribution when the compliance f0 is the smallest among those that satisfy the volume constraint is the optimal solution. The optimal solution can be obtained by calculating the compliance f0 for all patterns of the packing ratio ρ distribution (i.e., performing a brute force calculation), but in reality, since the number of elements in the finite element method is enormous, this method is practically impossible.

[0028] Here, one distribution of the filling rate ρ includes components (node ​​values) of a plurality of node numbers defined for the member 20 by the finite element method or the like. Also, "u" is the node value (component of dimension × number of nodes) of the global displacement vector of the member 20 obtained by solving the stiffness equation, "b" is the node value (component of dimension × number of nodes) of the global external force vector applied to the member 20, and "K(ρ)" is the stiffness matrix ((dimension × number of nodes) × (dimension × number of nodes)) that depends on the filling rate ρ.

[0029] Next, Fig. 5 is an explanatory diagram of a curve expressing the characteristics of compliance f0 in the phase optimization method. Fig. 5 also shows the packing rate ρ distribution on the horizontal axis and compliance f0 on the vertical axis. As shown in Fig. 5, if the curve expressing the characteristics of compliance f0 as the objective function is known, it is possible to obtain the above-mentioned optimal solution, and it can be said that the curve expressing the characteristics of this compliance f0 can be known by slightly changing (subtle change) the packing rate ρ distribution and calculating a large number of points.

[0030] However, if the packing ratio ρ itself is used as a design variable (internal variable), an abnormal solution may result in which ρ becomes negative or exceeds the upper limit (100%). In this case, it is possible to perform special processing such as a move limit to limit the packing ratio ρ to "0≦ρ≦1.0", but this will deteriorate the performance of the solution. Therefore, in this embodiment, the packing ratio ρ is indirectly expressed using a predetermined variable θ. In other words, instead of the packing ratio ρ, the variable θ is set as the design variable of each node. Specifically, the packing ratio ρ is defined by the design variable θ using a sigmoid function "ρ(θ)=1 / 2×tanhθ+1 / 2". By doing so, there is no range limit for the design variable θ (-∞<θ<∞), so there is no need to use a move limit. In other words, "0≦ρ(θ)≦1.0" is automatically established without using a move limit.

[0031] When such a design variable θ is used, compliance f0 is determined by the design variable θ distribution (hereinafter simply referred to as "θ distribution") instead of the packing fraction ρ distribution, as shown in Fig. 5, and the stiffness equation related to compliance f0 is expressed as "K(ρ(θ))u=b". In this case, the optimal shape of the member 20 can be found by finding the design variable θ that minimizes compliance f0 and finding the packing fraction ρ that corresponds to this design variable θ. Note that, like the packing fraction ρ distribution, the design variable θ also includes components (nodal values) of a plurality of nodal numbers defined by the finite element method or the like.

[0032] Next, Fig. 6 is an explanatory diagram of the basic concept for finding an optimal solution in the topology optimization method. In Fig. 6, the horizontal axis shows the design variable θ distribution, and the vertical axis shows the compliance f0. As mentioned above, since the number of elements in the finite element method is enormous, it is practically impossible to calculate the compliance f0 by exhaustive calculation. On the other hand, as shown in Fig. 6, it can be said that the optimal solution for the θ distribution can be found by updating the θ distribution so as to improve the compliance f0 using only the "height f0" and "gradient (inclination) g0" related to a certain design variable θ distribution.

[0033] Next, FIG. 7 is an explanatory diagram of a method for finding an optimal solution by a conventional gradient method in a topology optimization method. In FIG. 7, the horizontal axis also shows the θ distribution, and the vertical axis shows compliance f0. The gradient method is a technique that considers the characteristics of compliance f0 (objective function) as a mountain, and rolls a ball along this mountain to find an optimal solution. Specifically, in this gradient method, the ball is rolled only by a change vector Δθ (descent vector) according to the gradient g0 at a certain height f0. In this case, the gradient g0 is expressed as "g0=∂f0 / ∂θ", and the change vector Δθ is calculated by adjusting this gradient g0 by a predetermined adjustment constant C a By applying "Δθ=-g0 / C a " The adjustment constant C a is a parameter that adjusts the change vector Δθ, and the adjustment constant C a The larger the value of the vector Δθ, the smaller the magnitude (absolute value) of the adjustment constant C a The smaller is, the larger is the magnitude (absolute value) of the change vector Δθ.

[0034] Next, FIG. 8 shows an example of the results when the conventional gradient method is applied to the phase optimization method. In FIG. 8, the horizontal axis shows the calculation step (corresponding to the calculation time) and the vertical axis shows the compliance f0 (mJ). Graph G11 shows the results when the comparatively large adjustment constant C a Graph G13 shows the results when using a relatively small adjustment constant C a The graph G12 shows the results when using the adjustment constant C between these graphs G11 and G13. a As shown in Fig. 8, the gradient method requires many calculation steps to find the minimum compliance f0 (optimal solution). In particular, the relatively large adjustment constant C a When using (graph G11), the number of calculation steps increases, and a smaller adjustment constant C a When using (graph G12), the number of calculation steps is reduced, but the smaller adjustment constant C a When using (graph G13), it can be seen that the solution diverges.

[0035] Next, Fig. 9 is an explanatory diagram of a method for obtaining an optimal solution by a conventional Newton method in a topology optimization method. In Fig. 9, the horizontal axis also indicates θ distribution, and the vertical axis indicates compliance f0. The Newton method is a technique for obtaining an optimal solution by repeating a process in which an objective function (compliance f0) is approximated by a quadratic function at a certain θ distribution point, and the value of the θ distribution to be next approximated by the quadratic function is updated by the extreme point of this approximated quadratic function.

[0036] In the example of the Newton method shown in FIG. 9, first, a quadratic function QF1 approximating the objective function is obtained based on a value θ1 of the θ distribution (hereinafter, the value of the θ distribution is appropriately referred to as a “θ distribution value”) and a value f0(θ1) of the compliance f0 corresponding to the θ distribution value θ1 (hereinafter, the value of the compliance f0 (objective function value) is appropriately referred to as a “compliance value”), thereby obtaining a θ distribution value θ2 corresponding to an extreme value point of the quadratic function QF1. Next, a quadratic function QF2 approximating the objective function is obtained based on the θ distribution value θ2 and the compliance value f0(θ2) corresponding to the θ distribution value θ2, thereby obtaining a θ distribution value θ3 corresponding to an extreme value point of the quadratic function QF2, and a quadratic function QF3 approximating the objective function is obtained based on the θ distribution value θ3 and the compliance value f0(θ3) corresponding to the θ distribution value θ3, thereby obtaining a θ distribution value θ4 corresponding to an extreme value point of the quadratic function QF3. This process is repeated. Each compliance value is calculated from the compliance f0 equation, "f0=b u," using the stiffness equation, "K(ρ)u=b." This Newton method can reduce the number of calculation steps required to find the optimal solution compared to the gradient method described above.

[0037] Next, Fig. 10 shows an example of the results when the conventional Newton method is applied to the topology optimization method. In Fig. 10, the horizontal axis also shows the calculation steps, and the vertical axis shows the compliance f0 (mJ). Graph G12 shows the results using the same gradient method as shown in Fig. 8, and graph G2 shows the results using the Newton method. In the example shown in Fig. 10, it can be seen that the Newton method requires fewer calculation steps to find the minimum compliance f0 (optimum solution) compared to the gradient method.

[0038] Next, Fig. 11 shows another example of the result when the conventional Newton method is applied to the topology optimization method. In Fig. 11, the horizontal axis also shows the calculation step, and the vertical axis shows the compliance f0 (mJ). In the example shown in Fig. 11 (see graph G3), it can be seen that the calculation by the Newton method is very unstable. In this example, the solution finally converges, but there are also cases where the solution does not converge and diverges.

[0039] Next, referring to FIG. 12 and FIG. 13, the reason why the calculation by the Newton method becomes unstable as described above will be explained. FIG. 12 is an explanatory diagram of one reason why the calculation by the Newton method becomes unstable. In FIG. 12, the left diagram shows a graph of the θ distribution and the compliance f0 (objective function), and the right diagram shows a graph of the calculation steps and the compliance value. In the example shown in FIG. 12, the calculation is sequentially performed by the procedure of the Newton method similar to that described in FIG. 11. In this case, in step S1, the compliance value f0(θ1) is obtained, in step S2, the compliance value f0(θ2) smaller than this compliance value f0(θ1) is obtained, and in step S3, the compliance value f0(θ3) larger than this compliance value f0(θ2) is obtained. Therefore, it can be said that the solution oscillates. It is considered that this is because the compliance f0 (objective function) is highly nonlinear. It is considered that the gradient method converges the solution more stably than the Newton method for the compliance f0 with a strong nonlinearity.

[0040] Next, FIG. 13 is an explanatory diagram of another cause of the instability of the calculation by the Newton method. In FIG. 13, the left diagram shows a graph of the θ distribution and the compliance f0 (objective function), and the right diagram shows a graph of the calculation steps and the compliance value. In the example shown in FIG. 13, the calculation is performed sequentially by the procedure of the Newton method similar to that described in FIG. 11. In this case, in step S1, a compliance value f0(θ1) is obtained, in step S2, a compliance value f0(θ2) smaller than this compliance value f0(θ1) is obtained, in step S3, a compliance value f0(θ3) larger than this compliance value f0(θ2) is obtained, and in step S4, a compliance value f0(θ4) smaller than this compliance value f0(θ3) is obtained. Therefore, it can be said that the oscillation of the solution occurs. It is considered that this has occurred because the direction of the convexity of the quadratic function QF2 that approximates the objective function has changed (from convex downward to convex upward). This can be alleviated by adjusting the adjustment constant (intensity), but trial and error is required to determine this constant. Even in such a case, it is believed that the gradient method will converge to a solution more stably than the Newton method.

[0041] From the above, it can be said that in the Newton method, if the objective function does not have a regular shape, the calculation is unstable and it is difficult to obtain an optimal solution. On the other hand, the gradient method is more stable in calculation than the Newton method, but it takes a long time to calculate. Therefore, in this embodiment, a method other than the gradient method and the Newton method (the calculation method of the optimal solution according to this embodiment is hereinafter appropriately referred to as the "constraint variation method") is applied to the topology optimization method, thereby aiming to stably and quickly obtain the optimal solution of the objective function. Below, the contents of the constraint variation method according to this embodiment will be specifically described with reference to Figs. 14 to 19.

[0042] 14 is an explanatory diagram of a trial solution used in the constraint variation method according to this embodiment. In FIG. 14, the horizontal axis indicates the θ distribution, and the vertical axis indicates the compliance f0. In this embodiment, the processing device 3 of the computer device 10 calculates a certain θ distribution value θ kAt (θ distribution value at a certain calculation step k), the linear function LF1, which is a linear approximation of the objective function, is the tentative target value f 0c The solution that satisfies the following is the trial solution θ Try Specifically, the linear function LF1 is calculated as follows: k and the θ distribution value θ k The corresponding compliance value f0(θ k ) is a linear approximation function defined in the trial solution θ Try This linear function LF1 is expressed as "compliance value f0 = tentative target value f 0c " is the θ distribution value of the point where it intersects with the horizontal line. Try The linear function that linearly approximates the objective function is the tentative target value f 0c A trial solution θ that satisfies Try is applied as a new θ distribution value to be calculated next. Therefore, in this embodiment, the trial solution θ Try By repeatedly calculating and updating, the optimal solution of the θ distribution value, that is, the θ distribution value when the compliance value f0 is minimized, is finally obtained. Note that the tentative target value f 0c is a provisional target value of the compliance value set to obtain an optimal solution, and is changed (updated) successively, as will be described later in detail. 0c The initial value is set to, for example, 0 (corresponding to a displacement of 0).

[0043] Next, the trial solution θ Try A specific method for determining the θ distribution value θ will be described. k and trial solution θ Try The difference Δθ between is {Δθ}={θ k}-{θ Try These {Δθ}, {θ k}, {θ Try} means that each parameter includes a component of the number of nodes (hereinafter the same). When there are no constraints, Δθ is calculated as follows: {Δθ}=-{g0} / C aThis formula is expressed as the formula "q({Δθ})=({Δθ}·{Δθ}) / 2+({g0}·{Δθ}) / C" which shows the minimization of the function q({Δθ}). a However, in this embodiment, since constraint conditions such as a volume constraint are used, the Lagrange method of undetermined multipliers is used to reduce the function q({Δθ}) while satisfying the constraint conditions.

[0044] Here, "f i ({θ k}+{Δθ})=f ic " (where "i" is the constraint function number and "f ic " is the constraint value.) Linearizing the left side of this equation gives the following equation (the first term of the Taylor expansion is taken and made into a linearized constraint condition). TIFF0007625180000001.tif22170The second term of this equation is "g i ({θ k}", so by transforming the formula, we get "f i ({θ k})+g i ({θ k})·{Δθ}-f ic =0".

[0045] On the other hand, the formula for Lagrange's method of undetermined multipliers is as follows: i " is the Lagrange multiplier, and the constraint G i ({x}) shall use the form "=0". TIFF0007625180000002.tif22170

[0046] The first term that satisfies the constraints can be minimized by solving the following simultaneous equations. i After finding {x}, we just need to find {x}. TIFF0007625180000003.tif27170

[0047] As mentioned above, the function we want to minimize is ({Δθ}·{Δθ}) / 2+({g0}·{Δθ}) / C a" and the linearized constraint is "f i ({θ k})+g i ({θ k})·{Δθ}-f ic =0", so when these are applied to the undetermined multiplier method, we get the following equation. TIFF0007625180000004.tif32170

[0048] Therefore, the formula for finding {Δθ} is as follows: In the constraint variation method according to the present embodiment, the objective function f0 is linearized to make it a constraint function (so as to satisfy the tentative target), so "{g0} / C a " will disappear. TIFF0007625180000005.tif27170

[0049] By applying such an equation to the constraint variation method according to the present embodiment, the trial solution θ Try The formula (1) is as described above, and the formulas (2) to (4) are obtained from the above formula. "λ0" and "λ1" in the formula (2) are undetermined Lagrange multipliers. The formula (3) is the tentative target value f 0c The objective function f0 is constrained using the above formula, and the left side of the formula represents the linearized compliance function. Equation (4) represents the volume constraint, and the left side of the formula represents the linearized volume constraint function, and the right side of the formula represents the volume constraint value f 1c Shows. TIFF0007625180000006.tif43170

[0050] Specifically, the Lagrange multipliers λ0, λ1, and Δθ are calculated from equations (2) to (4), and the trial solution θ is obtained by substituting this Δθ into equation (1). Try is required.

[0051] Next, the first to third processes performed in the constraint variation method according to the present embodiment will be described with reference to Figs. 15 to 17. Note that the first to third processes are performed using the trial solution θ Try Volume f1(θTry ) is the volume constraint value f 1c This is done on the condition that the volume constraint that the volume f1(θ Try ) is the volume constraint value f 1c If this is the case, the first to third processes are not performed.

[0052] FIG. 15 is an explanatory diagram of the first process performed in the constraint variation method according to this embodiment. In FIG. 15, the horizontal axis indicates the θ distribution, and the vertical axis indicates the compliance f0. In the first process, the processing device 3 calculates the trial solution θ obtained by the above-mentioned procedure. Try The corresponding compliance value f0(θ Try ) is the original θ distribution value θ k The corresponding compliance value f0(θ k ) if f0(θ Try ) <f0(θ k )), it is determined that the compliance value has improved. Then, the processing device 3 uses this trial solution θ Try The next trial solution θ Try The θ distribution value is updated to be used to find

[0053] Next, Fig. 16 is an explanatory diagram of the second process performed in the constraint variation method according to this embodiment. Fig. 16 shows two graphs arranged side by side, with the horizontal axis indicating the θ distribution and the vertical axis indicating the compliance f0. In this embodiment, the processing device 3 calculates the trial solution θ obtained by the above-mentioned procedure. Try The corresponding compliance value f0(θ Try ) is the θ distribution value θ k The corresponding compliance value f0(θ k ) or more, then (f0(θ Try ) ≧ f0(θ k In this case, the processing device 3 does not perform the first process, that is, the processing device 3 determines that the compliance value has deteriorated. Try As a new θ distribution value to be used next, the following second process is performed. That is, in the second process, the processing device 3 updates the tentative target value f 0c The compliance value f0(θk ) and the linear function LF1 (which is reused without any new calculation) that linearly approximates the objective function as above is the tentative target value f 0c A trial solution θ that satisfies Try (In the following, we will refer to the tentative trial solution θ Try Specifically, the processing device 3 newly calculates the original tentative target value f 0c The failure value f fail While this failure value f fail and compliance value f0(θ k ) and the provisional target value f 0c Therefore, the updated tentative target value f 0c "f 0c =0.5×(f fail +f0(θ k ))".

[0054] The processing device 3 outputs the updated tentative target value f 0c and the tentative trial solution θ obtained from the linear function LF1 Try The corresponding compliance value f0(θ Try ) is the original θ distribution value θ k The corresponding compliance value f0(θ k ) until the temporary target value f 0c Update of the tentative trial solution θ Try Repeatedly calculate the failure value f fail The processing device 3 then repeats updating the tentative trial solution θ Try The corresponding compliance value f0(θ Try ) is the compliance value f0(θ k When the compliance value is less than the provisional trial solution θ Try Let θ be the formal trial solution. Try This trial solution θ Try The next trial solution θ Try The θ distribution value is updated to be used to find

[0055] According to such a second process, an accurate trial solution θ TryIn the repeated process until the original θ distribution value θ is found, k The corresponding compliance value f0(θ k ) and the linear function LF1 that is a linear approximation of the objective function can be reused, so the impact on the calculation time is small. In other words, it can be said that the second process does not result in a large increase in calculation time.

[0056] Next, Fig. 17 is an explanatory diagram of the third process performed in the constraint variation method according to this embodiment. This third process is a process performed after the first and second processes. Fig. 17 shows two graphs arranged side by side, with the horizontal axis indicating the θ distribution and the vertical axis indicating the compliance f0. In the third process, the processing device 3 calculates the trial solution θ obtained by the above-mentioned procedure. Try The corresponding compliance value f0(θ Try ) is the tentative target value f 0c If it is less than (f0(θ Try ) <f 0c ), it is determined that the compliance value has been excessively improved. Then, the processing device 3 sets the tentative target value f 0c The compliance value f0(θ Try Specifically, the processing device 3 changes the compliance value f0(θ Try ) and the stored failure value f fail (The tentative target value f 0c ) and the provisional target value f 0c Therefore, the updated tentative target value f 0c "f 0c =0.5×(f fail +f0(θ Try According to the third process, the trial solutions θ Try The corresponding compliance value f0(θ Try ) according to the tentative target value f 0c can be updated to the correct value.

[0057] The first to third processes described above are carried out using a trial solution θ Try Volume f1(θ Try ) is the volume constraint value f 1cThis is done when the volume constraint is satisfied, i.e., when the volume f1(θ Try ) is the volume constraint value f 1c If it is equal to or greater than this, that is, if the volume constraint is not satisfied, the processing device 3 performs a fourth process. In this fourth process, the processing device 3 calculates the volume f1(θ Try ) is the volume constraint value f 1c The trial solution θ obtained when Try The update is performed by the volume f1(θ Try ) is the volume constraint value f 1c This trial solution θ Try Iteratively update the trial solution θ Try In this case, the processing device 3 repeatedly calculates the tentative target value f 0c Then, the processing device 3 does not update the volume f1(θ Try ) is the volume constraint value f 1c When it becomes less than θ Try The above first or second process is carried out using the above.

[0058] Next, specific processing of the topology optimization method and the constraint variation method according to this embodiment will be described with reference to Fig. 18 and Fig. 19. Fig. 18 is a flowchart showing the overall processing of the topology optimization method according to this embodiment, and Fig. 19 is a flowchart showing processing of the constraint variation method according to this embodiment (constraint variation method processing). The processing shown in Fig. 18 and Fig. 19 is realized by the processing device 3 (more specifically, the microprocessor 3a) of the computer device 10 reading and executing a program stored in the memory 3b. Moreover, these processing are repeatedly executed at a predetermined cycle.

[0059] When the entire process of the topology optimization method is started, in step S11, the processing device 3 acquires various data necessary for this process. Specifically, the processing device 3 acquires data on a numerical calculation model for structural analysis, that is, data on a discretized model of space and boundary conditions (e.g., meshes for the finite element method), an initial value {θ0} of the θ distribution value as a design variable value, a volume constraint value f 1c , tentative target value f 0c, a convergence criterion value eps for judging the convergence of the topology optimization method is obtained. In one example, a value corresponding to 50% of the filling rate ρ (i.e., 0) is applied to {θ0}, and a volume constraint value f 1c is applied with 30%, and the tentative target value f 0c is applied as 0.

[0060] Next, in step S12, the processing device 3 calculates "K(ρ k ({θ k}))){u k}={b}" to obtain the displacement {u k} is calculated, where {θ k} is the θ distribution value (node ​​value (node ​​number component)) at the kth step, and {u k} is the nodal value (component of dimension × number of nodes) of the global displacement vector of the member 20 obtained by solving the stiffness equation at the kth step, “b” is the nodal value (component of dimension × number of nodes) of the global external force vector applied to the member 20, and “[K(ρ k ({θ k}))」 is the filling rate ρ k ({θ k}), it is a stiffness matrix (components of (dimension × number of nodes) × (dimension × number of nodes).

[0061] Next, in step S13, the processing device 3 calculates {u k}, the compliance value f0 is calculated, and the volume f1 of the member 20 is calculated. k}" to obtain the compliance value f0 and "ρ k ({θ k})" is integrated by the spatial capacity of the member 20 to obtain the volume f1.

[0062] Next, in step S14, the processing device 3 calculates the compliance value f0 as {θ k} to obtain the gradient {g0} of the compliance value f0 ({g0}=∂f0 / ∂{θ k}), and the volume f1 is {θ k} By differentiating, the gradient {g1} of the volume f1 is obtained ({g1}=∂f1 / ∂{θ k}).

[0063] Next, in step S15, the processing device 3 executes the constraint variation method process according to the present embodiment. Specifically, the processing device 3 calculates a trial solution θ Try and performs first to fourth processes according to this trial solution θ Try . Details thereof will be described later with reference to FIG. 19.

[0064] Next, in step S16, the processing device 3 determines whether the solution (θ k ) has converged. Specifically, it determines whether the absolute value of the difference between the current (k-th step) compliance value f0(θ k ) and the temporary target value f 0c is less than the convergence determination value eps (|f0(θ k ) - f 0c | < eps), and determines whether the absolute value of the difference between the current (k-th step) compliance value f0(θ k ) and the failure value f fail is less than the convergence determination value eps (|f0(θ k ) - f fail | < eps). If both of these conditions are not satisfied, the processing device 3 determines that the solution has not converged (step S16: No) and returns to step S12. In this case, the processing device 3 repeats the processes of steps S12 to S16 until it is determined that the solution has converged.

[0065] On the other hand, when both conditions of "|f0(θ k ) - f 0c | < eps" and "|f0(θ k ) - f fail | < eps" are satisfied, the processing device 3 determines that the solution has converged (step S16: Yes) and ends the overall process of the phase optimization method. In this case, the processing device 3 uses the current solution (θ k) is determined as the optimal solution of the θ distribution value (i.e., the θ distribution value when the compliance value f0 is minimized). Then, the processing device 3 obtains an optimal packing rate ρ distribution (optimum shape of the member 20) corresponding to this optimal solution. For example, the processing device 3 causes the display device of the output device 5 to display an image corresponding to the optimal packing rate ρ distribution thus obtained and information related thereto.

[0066] Next, the constraint variation method process according to this embodiment will be described with reference to Fig. 19. First, in step S21, the processing device 3 solves the simultaneous equations of the above formulas (1) to (4) to obtain a trial solution θ Try Specifically, the processing device 3 obtains Lagrange's undetermined multipliers λ0, λ1, and Δθ from the equations (2) to (4), and substitutes this Δθ into the equation (1) to obtain a trial solution θ Try Request.

[0067] Next, in step S22, the processing device 3 calculates the trial solution θ obtained in step S21. Try From the volume f1(θ Try ) and calculate the volume f1(θ Try ) is the volume constraint value f 1c Is it less than (f1(θ Try ) <f 1c ), that is, whether the volume constraint is satisfied. If the volume constraint is satisfied (step S22: Yes), the processing device 3 proceeds to step S24, and if the volume constraint is not satisfied (step S22: No), the processing device 3 proceeds to step S23.

[0068] In step S23, since the volume constraint is not satisfied, the processing device 3 performs the fourth process. 0c Do not update, and use the current trial solution θ Try As the θ distribution value to be used for step S21 next, the processing device 3 returns to step S21 and updates the trial solution θ Try Then, proceed to step S22 and use this trial solution θ Try The volume f1(θ Try) to determine whether the volume constraint is satisfied. That is, in steps S21 to S23, the processing device 3 performs the trial solution θ Try Repeatedly ask for:

[0069] On the other hand, in step S24, the processing device 3 calculates the trial solution θ Try From the compliance value f0(θ Try ) and calculate the compliance value f0(θ Try ) is the original compliance value f0(θ k ) or not (f0(θ Try ) <f0(θ k )), that is, the trial solution θ Try The processing device 3 judges whether the trial solution θ Try If has improved (step S24: Yes), the process proceeds to step S25. In this case, the processing device 3 performs the first process (step S25). Specifically, the processing device 3 performs the first process on the current trial solution θ Try The next trial solution θ Try The processor 3 then updates the θ distribution value to be used for determining the θ distribution value. Then, the processor 3 proceeds to step S27.

[0070] In response to this, the processing device 3 calculates a trial solution θ Try If there is no improvement (step S24: No), that is, the trial solution θ Try If the current tentative target value f has deteriorated, the process proceeds to step S26. In this case, the processing device 3 performs the second process (step S26). Specifically, the processing device 3 performs the second process by 0c The failure value f fail While this failure value f fail and the original compliance value f0(θ k ) and the provisional target value f 0c Update (f 0c =0.5×(f fail +f0(θ k ))), and the updated tentative target value f 0c Based on the trial solution θ Try (Tentative trial solution θ Try The processing device 3 newly calculates the tentative trial solution θTry The corresponding compliance value f0(θ Try ) is the original compliance value f0(θ k ) until the temporary target value f 0c Update of the tentative trial solution θ Try Repeatedly calculate the failure value f fail The processing device 3 then repeats updating the tentative trial solution θ Try The corresponding compliance value f0(θ Try ) is the compliance value f0(θ k When the compliance value is less than the provisional trial solution θ Try Let θ be the formal trial solution. Try This trial solution θ Try The next trial solution θ Try The processor 3 then updates the θ distribution value to be used for determining the θ distribution value. Then, the processor 3 proceeds to step S27.

[0071] Next, in step S27, the processing device 3 calculates the trial solution θ Try The corresponding compliance value f0(θ Try ) is the tentative target value f 0c Is it less than (f0(θ Try ) <f 0c ), i.e., the trial solution θ Try The processing device 3 judges whether the trial solution θ Try If the solution θ is over-improved (step S27: Yes), the process proceeds to step S28. Try If it is not excessively improved (step S27: No), the constraint variation method process ends.

[0072] In step S28, the processing device 3 calculates the trial solution θ Try Since the trial solution θ Try The corresponding compliance value f0(θ Try ) and the stored failure value f fail (The tentative target value f 0c ) and the provisional target value f 0c Update (f0c =0.5×(f fail +f0(θ Try Then, the processing device 3 ends the constrained variation method processing.

[0073] In addition, in FIG. 19, step S21 corresponds to the first step in the present invention, steps S24 and S25 correspond to the second step in the present invention, steps S24 and S26 correspond to the third and fourth steps in the present invention, steps S27 and S28 correspond to the sixth step in the present invention, and step S16 in FIG. 18 corresponds to the fifth step in the present invention.

[0074] <Action and Effects> Next, the actions and effects of the optimum solution calculation method according to this embodiment will be specifically described with reference to FIGS.

[0075] FIG. 20 shows an example of the result by the constraint variation method according to the present embodiment. FIG. 20(A) shows the optimal packing ratio distribution obtained when the gradient method, the Newton method, and the constraint variation method are applied to the topology optimization method. Here, the case where the left side of the member 20 is fixed and a load is applied to the center of the right side of the member 20 is illustrated. FIG. 20(B) shows the calculation steps (corresponding to the calculation time) until the optimal packing ratio distribution (i.e., the minimum (optimum) compliance) is obtained by each of the gradient method, the Newton method, and the constraint variation method. Specifically, the graph G12 shows the result by the gradient method shown in FIG. 8, the graph G3 shows the result by the Newton method shown in FIG. 11, and the graph G4 shows the result by the constraint variation method according to the present embodiment. From FIG. 20(B), it can be seen that the constraint variation method according to the present embodiment requires a much smaller number of calculation steps until the optimal solution (minimum compliance) is obtained than the gradient method and the Newton method, and the calculation is very stable compared to the Newton method.

[0076] FIG. 21 shows another example of the result by the constraint variation method according to the present embodiment. FIG. 21(A) shows the optimal packing ratio distribution obtained when the gradient method, the Newton method, and the constraint variation method are applied to the topology optimization method. Here, the case where two points on the bottom side of the member 20 are fixed and a load is applied to five points in the member 20 is illustrated. FIG. 21(B) shows the calculation steps (corresponding to the calculation time) until the optimal packing ratio distribution (i.e., the minimum (optimum) compliance) is obtained by each of the gradient method, the Newton method, and the constraint variation method. Specifically, the graph G51 shows the result by the gradient method, the graph G52 shows the result by the Newton method, and the graph G53 shows the result by the constraint variation method according to the present embodiment. From FIG. 21(B), it can be seen that the number of calculation steps required to obtain the optimal solution (minimum compliance) is very small and the calculation is very stable according to the constraint variation method according to the present embodiment, compared with the gradient method and the Newton method.

[0077] From the above, it can be said that the constraint variation method according to this embodiment can stably and quickly obtain an optimal solution in the topology optimization method. Note that, according to this embodiment, even when applied to various multi-point bending problems, L-shaped bending problems, offset bending problems, etc. in the member 20 other than the examples shown in Fig. 20 and Fig. 21, the optimal solution can be stably and quickly obtained (for example, the solution can be converged in about 15 steps).

[0078] In summary, the method for calculating the optimal solution according to this embodiment is as follows: (1) a first step of finding a trial solution in which a function obtained by linearly approximating an objective function based on a certain θ distribution value and a compliance value corresponding to the θ distribution value satisfies a tentative target value; (2) a second step of setting the trial solution obtained in the first step as a new θ distribution value for the next first step if the compliance value corresponding to the trial solution obtained in the first step is less than the compliance value corresponding to the θ distribution value used in the first step; (3) a third step of changing the tentative target value to a value close to the compliance value used in the first step when the compliance value corresponding to the trial solution obtained in the first step is equal to or greater than the compliance value corresponding to the θ distribution value used in the first step, and obtaining a trial solution in which the linearly approximated function satisfies the changed tentative target value, in which the tentative target value is changed so as to gradually approach the compliance value used in the first step until the compliance value corresponding to the trial solution obtained from the changed tentative target value becomes less than the compliance value used in the first step, and a third step of repeatedly obtaining a trial solution in which the linearly approximated function satisfies the changed tentative target value; (4) a fourth step of setting the trial solution obtained in the third step as a new θ distribution value for the next first step when the compliance value corresponding to the trial solution obtained in the third step becomes less than the compliance value used in the first step; (5) a fifth step of repeating the first to fourth steps until a difference between a compliance value corresponding to the θ distribution value set in the second or fourth step and a tentative target value becomes less than a predetermined value, and when the difference becomes less than the predetermined value, determining the θ distribution value used at this time as an optimal solution; has.

[0079] According to this embodiment, unlike the conventional methods (especially the Newton method) that had no choice but to accept bad solutions, it is possible to discard bad solutions and reliably find good solutions by varying the constraint value, making it possible to perform stable calculations. Furthermore, according to the method for calculating an optimal solution of this embodiment, in the repeated processing until a good solution is found, a linear function obtained by linearly approximating the objective function and a compliance value corresponding to the original θ distribution value can be reused, so that an increase in the number of calculation steps can be effectively suppressed. Therefore, according to the method for calculating an optimal solution of this embodiment, an optimal solution can be stably and quickly found.

[0080] Moreover, according to the method for calculating the optimal solution according to this embodiment, in the third step, the median between the compliance value corresponding to the θ distribution value used in the first step and the tentative target value is calculated, and the tentative target value is changed by this median. This makes it possible to update the tentative target value to an appropriate value according to the original compliance value and the original tentative target value.

[0081] Moreover, the method for calculating an optimal solution according to this embodiment includes a sixth step of changing the tentative target value to a value smaller than the compliance value when the compliance value corresponding to the trial solution obtained in the first or third step is smaller than the tentative target value. This makes it possible to update the tentative target value to an appropriate value according to the compliance values ​​corresponding to the trial solutions sequentially obtained during execution of the constraint variation method.

[0082] Furthermore, according to the method for calculating the optimal solution according to this embodiment, in the sixth step, if the compliance value corresponding to the trial solution obtained in the first or third step is less than the tentative target value, the median between the compliance value and the tentative target value (failure value) used before the tentative target value was changed is obtained, and the tentative target value is changed by this median. This makes it possible to update the tentative target value to an appropriate value according to the compliance value corresponding to the trial solution and the tentative target value (failure value) used previously.

[0083] Moreover, according to the method for calculating the optimal solution according to the present embodiment, in the fifth step, when the difference between the compliance value corresponding to the θ distribution value set in the second or fourth step and the tentative target value is less than a predetermined value, and the difference between the compliance value corresponding to the θ distribution value set in the second or fourth step and the tentative target value (failure value) used before the tentative target value is changed is less than a predetermined value, the θ distribution value used at this time is determined as the optimal solution. This allows the convergence of the solution to be determined with high accuracy, that is, a more accurate optimal solution can be obtained.

[0084] Furthermore, according to the method for calculating the optimal solution according to this embodiment, the volume of the member 20 is calculated from the trial solution obtained in the first step, and if this volume is equal to or greater than a predetermined constraint value, the first step is repeated without performing the second and third steps until the volume becomes less than the constraint value. This makes it possible to find a solution that reliably satisfies the volume constraint.

[0085] <Application examples of the present invention> In the above embodiment, an example was shown in which the method for calculating an optimal solution according to the present invention is applied to a topology optimization method, but the application of the method for calculating an optimal solution according to the present invention is not limited to this. Here, an application example of the method for calculating an optimal solution according to the present invention will be described.

[0086] The method for calculating an optimal solution according to the present invention can be applied to, for example, cases where various natural phenomena are calculated by numerical calculation. In this case, the method for calculating an optimal solution according to the present invention is used to solve system equations (simultaneous linear equations) that represent various natural phenomena. In one example, the method for calculating an optimal solution according to the present invention can be applied to a system equation called a stiffness equation "[K]{u}={b}" ([K]: stiffness matrix, {u}: displacement vector, {b}: load vector) in the field of structural mechanics, a system equation called a heat conduction equation "[A]{T}={F}" ([A]: heat conduction matrix, {T}: temperature, {F}: heat flux vector) in the field of heat transfer, and a system equation called a Navier-Stokes equation "[B]{p}={v}" ([B]: Poisson matrix, {p}: pressure, {v}: intermediate flow velocity vector) in fluid mechanics.

[0087] Here, we take the stiffness equation "Ku = b" as an example (an example of one degree of freedom) when a force b acts on a spring with a spring constant K, causing a displacement u. In this case, "F(u) = Ku 2We define a function called "∂F(u) / 2-bu". Since the spring constant K is a positive value, "F(u)" is a downward convex function. When this "F(u)" is differentiated with respect to "u", we get "∂F(u) / ∂u=Ku-b". When "∂F(u) / ∂u=0", the slope of "F(u)" becomes 0. Therefore, when the slope becomes 0, "Ku-b=0", and solving this gives the solution "Ku=b". Therefore, solving the stiffness equation is equivalent to finding the minimum value of "F(u)".

[0088] Next, let us take as an example a stiffness equation with multiple degrees of freedom, "[K]{u}={b}" (where {u} is the displacement of each node). In this case, we define a scalar function, "F({u})=([K]{u}·{u}) / 2-{b}·{u}". If [K] is a positive definite matrix, F({u}) becomes a convex function (note that many system equations in nature are defined by positive definite matrices). Here, differentiating "F({u})" with respect to "{u}", we get "∂F({u}) / ∂{u}=[K]{u}-{b}". Therefore, solving "∂F({u}) / ∂{u}=0", in other words, finding the minimum value of "F({u}), is the same as solving "[K]{u}={b}".

[0089] For this reason, in conventional methods, it was necessary to solve a huge number of simultaneous equations (system equations) that represent various natural phenomena, but in the present invention, it is sufficient to solve one scalar equation (such as the above-mentioned "F({u})=([K]{u}·{u}) / 2-{b}·{u}"), specifically, to find the minimum value of a scalar convex function. As described above, according to the present invention, it is possible to stably and quickly find an optimal solution to an objective function that is a convex function. Therefore, according to the present invention, it is possible to stably and quickly solve system equations that represent various natural phenomena.

[0090] The present invention is not limited to application to cases where natural phenomena are calculated by numerical calculation, but can be applied to various other numerical calculations. In short, the present invention is applied to calculate an optimal solution of an objective function that is defined by internal variables and is a convex function. In addition, in the above embodiment, an example in which the present invention is applied to a downwardly convex objective function is shown, but the present invention can also be applied to an upwardly convex objective function. In this case, it is sufficient to find an optimal solution corresponding to the maximum value of the objective function. [Explanation of symbols]

[0091] 1 Input Device 3 Processing equipment 3a Microprocessor 3b Memory 5 Output Device 10 Computer equipment 20 Materials

Claims

1. A method for computing an optimal solution to an objective function that is a convex function defined by internal variables, the method comprising the steps of: a first step of finding a solution in which a function obtained by linearly approximating an objective function based on a certain internal variable and an objective function value that is a value of the objective function corresponding to the internal variable satisfies a predetermined target value; a second step of setting the solution as a new internal variable for next execution of the first step when an objective function value corresponding to the solution obtained in the first step is less than an objective function value corresponding to an internal variable used in the first step; a third step of changing the target value to a value close to the objective function value used in the first step when an objective function value corresponding to the solution obtained in the first step is equal to or greater than an objective function value corresponding to an internal variable used in the first step, and obtaining a solution in which the linearly approximated function satisfies the changed target value, the third step repeatedly changing the target value to gradually approach the objective function value used in the first step until an objective function value corresponding to the solution obtained from the changed target value becomes less than the objective function value used in the first step, and repeatedly obtaining a solution in which the linearly approximated function satisfies the changed target value; a fourth step of setting the solution as a new internal variable for next execution of the first step when an objective function value corresponding to the solution obtained in the third step becomes less than the objective function value used in the first step; a fifth step of repeatedly performing the first to fourth steps until a difference between an objective function value corresponding to the internal variable set in the second or fourth step and the target value becomes less than a predetermined value, and when the difference becomes less than the predetermined value, determining the internal variable used at this time as the optimal solution; A method for calculating an optimal solution, comprising the steps of:

2. 2. The method for calculating an optimal solution according to claim 1, wherein in the third step, a median between an objective function value corresponding to an internal variable used in the first step and the target value is calculated, and the target value is changed based on this median.

3. 3. The method for calculating an optimal solution according to claim 1, further comprising a sixth step of changing the target value to a value smaller than the objective function value if the objective function value corresponding to the solution obtained in the first or third step is smaller than the target value.

4. 4. The method for calculating an optimal solution according to claim 3, wherein in the sixth step, if an objective function value corresponding to the solution obtained in the first or third step is less than the target value, a median between the objective function value and the target value used before the target value was changed is obtained, and the target value is changed based on this median.

5. 5. The method for computing an optimal solution according to claim 1, wherein in the fifth step, when a difference between an objective function value corresponding to the internal variable set in the second or fourth step and the target value is less than the predetermined value, and a difference between an objective function value corresponding to the internal variable set in the second or fourth step and the target value used before the target value is changed is less than the predetermined value, the internal variable used at that time is determined as the optimal solution.

6. The method for calculating an optimal solution is used for determining an optimal packing rate distribution of a material constituting a member, at least a portion of which is fixed and to which a load is applied at least a portion of the member; the internal variables are parameters corresponding to the packing rate distribution, and the objective function is defined by parameters corresponding to a displacement amount of the member due to the load; A method for calculating an optimum solution according to any one of claims 1 to 5.

7. 7. The method for calculating an optimal solution according to claim 6, further comprising the steps of: calculating a volume of the component from the solution obtained in the first step; and if the volume is equal to or greater than a predetermined constraint value, repeatedly performing the first step without performing the second and third steps until the volume becomes less than the constraint value.

8. An optimal solution calculation device that calculates an optimal solution of an objective function that is a convex function and is defined by internal variables, comprising: a first means for finding a solution in which a function obtained by linearly approximating an objective function based on an internal variable and an objective function value that is a value of the objective function corresponding to the internal variable satisfies a predetermined target value; a second means for setting the solution obtained by the first means as a new internal variable for next execution of the first means when an objective function value corresponding to the solution obtained by the first means is less than an objective function value corresponding to an internal variable used by the first means; a third means for changing the target value to a value closer to the objective function value used by the first means when an objective function value corresponding to the solution obtained by the first means is equal to or greater than an objective function value corresponding to an internal variable used by the first means, and for obtaining a solution in which the linear approximation function satisfies the changed target value, the third means repeatedly changing the target value to gradually approach the objective function value used by the first means until an objective function value corresponding to the solution obtained from the changed target value becomes less than the objective function value used by the first means, and repeatedly obtaining a solution in which the linear approximation function satisfies the changed target value; a fourth means for, when an objective function value corresponding to the solution obtained by the third means becomes less than the objective function value used by the first means, setting the solution as a new internal variable for next execution of the first means; a fifth means for repeatedly executing the first to fourth means until a difference between an objective function value corresponding to an internal variable set by the second or fourth means and the target value becomes less than a predetermined value, and when the difference becomes less than the predetermined value, for determining the internal variable used at this time as the optimal solution; An optimal solution calculation device comprising:

9. An optimal solution calculation program executed by a computer device to calculate an optimal solution of an objective function that is a convex function defined by internal variables, comprising: The computer device, a first means for finding a solution in which a function obtained by linearly approximating an objective function based on an internal variable and an objective function value that is a value of the objective function corresponding to the internal variable satisfies a predetermined target value; a second means for setting the solution obtained by the first means as a new internal variable for next execution of the first means when an objective function value corresponding to the solution obtained by the first means is less than an objective function value corresponding to an internal variable used by the first means; a third means for changing the target value to a value closer to the objective function value used by the first means when an objective function value corresponding to the solution obtained by the first means is equal to or greater than an objective function value corresponding to an internal variable used by the first means, and for obtaining a solution in which the linear approximation function satisfies the changed target value, the third means repeatedly changing the target value to gradually approach the objective function value used by the first means until an objective function value corresponding to the solution obtained from the changed target value becomes less than the objective function value used by the first means, and repeatedly obtaining a solution in which the linear approximation function satisfies the changed target value; a fourth means for, when an objective function value corresponding to the solution obtained by the third means becomes less than the objective function value used by the first means, setting the solution as a new internal variable for next execution of the first means; a fifth means for repeatedly executing the first to fourth means until a difference between an objective function value corresponding to an internal variable set by the second or fourth means and the target value becomes less than a predetermined value, and when the difference becomes less than the predetermined value, for determining the internal variable used at this time as the optimal solution; The present invention relates to a calculation program for an optimal solution, the program being characterized by functioning as follows.

Citation Information

Patent Citations

  • Plant control device

    JP2019121281A

  • Optimization device, optimization method, and program

    JP2020181318A

  • Systems and methods for controlling support structures in manufacturing

    US20200108560A1