Computation program, computation method, and information processing device

JPWO2024047682A5Active Publication Date: 2025-03-03FUJITSU LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024543601
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-12-18
Publication Date
2025-03-03
Estimated Expiration
2042-08-29

AI Technical Summary

Technical Problem

Multi-objective optimization problems, such as optimizing production cost and time in manufacturing, face a wide solution space, leading to prolonged calculation times in finding Pareto optimal solutions, especially when using genetic algorithms or linear weighted sum methods, which struggle with different scales and time constraints.

Method used

The approach involves performing single-objective optimization on each objective function to obtain optimal solutions, then using these solutions as starting points for multi-objective optimization with a linear weighted sum evaluation function, reducing computational load and time by focusing on the Pareto front.

Benefits of technology

This method significantly shortens calculation time and improves the range of Pareto front solutions, achieving more optimal results within a finite time frame by leveraging the efficiency of single-objective optimization before transitioning to multi-objective optimization.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

This computation program executes: a process for using each of a plurality of objective functions as a first evaluation function to perform single-objective optimization on an initial solution, thereby calculating a single-objective optimal solution that has a better value than the initial solution; and a process for using, as a second evaluation function, a linear weighted sum obtained by weighting each of the plurality of objective functions in accordance with the single-objective optimal solution to perform multi-objective optimization on the second evaluation function, starting from the single-objective optimal solution. 
Need to check novelty before this filing date? Find Prior Art

Description

Calculation program, calculation method, and information processing device

[0001] The present invention relates to a computing program, a computing method, and an information processing device.

[0002] In optimizing the order in which products are put into a production line, techniques have been disclosed for optimizing a plurality of objective functions such as production cost and production completion time (see, for example, Patent Documents 1 to 4).

[0003] Japanese Patent Publication No. 2022-83200 Japanese Patent Publication No. 2002-366587 U.S. Patent Publication No. 2015 / 0019173 U.S. Patent Publication No. 2016 / 0306899

[0004] However, when performing multi-objective optimization with multiple objective functions, the solution space becomes large, and it takes a long time to start searching from the initial input order as the initial solution and calculate the Pareto-optimal solution set that is a candidate for the optimal solution.

[0005] In one aspect, the present invention aims to provide an information processing device, a calculation method, and a calculation program that can reduce calculation time.

[0006] In one aspect, the computation program executes the following processes: a process of calculating a single-objective optimal solution having a better value than the initial solution by performing single-objective optimization using each of a plurality of objective functions as a first evaluation function for an initial solution; and a process of performing multi-objective optimization for the second evaluation function starting from the single-objective optimal solution by using a linear weighted sum, in which each of the plurality of objective functions is weighted according to the single-objective optimal solution, as a second evaluation function.

[0007] The calculation time can be reduced.

[0008] FIG. 1 is a diagram illustrating a Pareto solution. FIG. 2 is a diagram illustrating a case where a genetic algorithm is used in a multi-objective optimization engine. FIG. 3 is a diagram illustrating a linear weighted sum method. (a) is a functional block diagram showing the overall configuration of an information processing device according to a first embodiment, and (b) is a hardware configuration diagram of the information processing device. FIG. 4 is a diagram illustrating a flowchart of the first embodiment. (a) and (b) are explanatory diagrams of the first embodiment. (a) and (b) are explanatory diagrams of the second embodiment. FIG. 5 is a diagram illustrating a calculation result. FIG. 6 is a diagram illustrating a calculation result. FIG. 7 is a diagram for explaining hypervolume. FIG. 8 is a diagram illustrating a production line model. (a) to (c) are diagrams illustrating product information. FIG. 9 is a diagram illustrating a calculation result. FIG. 10 is a diagram illustrating a calculation result.

[0009] Optimization problems exist in various industries, including manufacturing and distribution. For example, in the optimization of production plans at manufacturing sites, there is a trade-off between the manufacturing time required for a certain production plan and the costs incurred in proportion to the operating time of the equipment. For example, there are trade-off problems such as shortening the manufacturing time increasing the operating time of legacy equipment with high operating costs, which increases costs.

[0010] A multi-objective optimization problem, which simultaneously optimizes multiple objective functions that are in a trade-off relationship, is generally a problem of finding a Pareto solution. In the above example, the manufacturing time required for a certain production plan and the cost that occurs in proportion to the operating time of the equipment are each objective functions. The explanatory variables are the production plan, such as the order in which each product is introduced into the production process. A Pareto solution is a solution in which there is at least one objective function that is superior to any other solution among multiple objective functions. Figure 1 is a diagram illustrating a Pareto solution. In Figure 1, (f 1 , f 2 ) = (9, 3) is solved by (f 1 , f 2 ) = (8,2), there is no objective function that is superior to it, so it is not a Pareto solution.

[0011] In the example shown in Figure 1, optimization is performed to minimize each objective function, resulting in the Pareto solution located in the lower left. The line connecting each Pareto solution (the arrangement of each Pareto solution) is called the Pareto front. From the Pareto solutions obtained by multi-objective optimization calculations, the user selects the optimal solution that suits their purpose. Therefore, in order to provide the user with more optimal and more options, multi-objective optimization calculations are required to calculate the most optimal and widest range of Pareto fronts in as short a calculation time as possible.

[0012] For example, a multi-objective optimization calculation may be performed by setting multiple objective functions to be optimized as evaluation functions of a multi-objective optimization engine. FIG. 2 illustrates an example of a case in which a genetic algorithm is used in a multi-objective optimization engine. A genetic algorithm is a method that incorporates genetic elements to find a solution from a group of initial solutions that minimizes each objective function. In the example of FIG. 2, the search direction corresponds to moving left and down from the initial solution. With such a method, it is often impossible to calculate an exact solution within real time for large-scale real-world problems, so it is necessary to calculate a more optimal solution within a finite calculation time.

[0013] Therefore, it is possible to weight multiple objective functions to be optimized, set one evaluation function, and perform optimization calculations using a single-objective optimization engine. Figure 3 illustrates the linear weighted sum method in this case. For example, if the objective function f 1 (x 1 ) w + objective function f 2 (x 1 ) (1-w) is obtained, and the objective function f 1 (x 2 ) w + objective function f 2 (x 2 ) (1-w) is obtained, and the objective function f 1 (x 3 ) w + objective function f 2 (x 3)·(1-w) is obtained, where "w" corresponds to the weight, and has a value between 0 and 1. However, with this method, it is difficult to determine appropriate weights for multiple indicators with different scales as an evaluation function. It is also difficult to reduce the calculation time.

[0014] Therefore, in the following embodiments, an information processing device, a calculation method, and a calculation program that can reduce the calculation time will be described.

[0015] 4A is a functional block diagram illustrating the overall configuration of an information processing device 100 according to the first embodiment. The information processing device 100 is, for example, a server for optimization processing. As illustrated in FIG. 4A, the information processing device 100 functions as an objective function setting unit 10, an optimization execution unit 20, an intermediate progress recording unit 30, a result output unit 40, and the like.

[0016] Fig. 4B is a hardware configuration diagram of the information processing device 100. As illustrated in Fig. 4B, the information processing device 100 includes a CPU 101, a RAM 102, a storage device 103, an input device 104, a display device 105, and the like.

[0017] The CPU (Central Processing Unit) 101 is a central processing unit. The CPU 101 includes one or more cores. The RAM (Random Access Memory) 102 is a volatile memory that temporarily stores programs executed by the CPU 101, data processed by the CPU 101, and the like. The storage device 103 is a non-volatile storage device. Examples of the storage device 103 include a read-only memory (ROM), a solid-state drive (SSD) such as a flash memory, and a hard disk driven by a hard disk drive. The storage device 103 stores a calculation program. The input device 104 is a device for a user to input necessary information, such as a keyboard or a mouse. The display device 105 displays results output by the result output unit 40 on a screen. The CPU 101 executes the calculation program, thereby realizing each unit of the information processing device 100. Each unit of the information processing device 100 may be implemented by hardware such as a dedicated circuit.

[0018] The objective function setting unit 10 sets a plurality of objective functions. The objective function setting unit 10 may set two objective functions, or may set three or more objective functions. In this embodiment, the objective function setting unit 10 sets N objective functions f 1 ~f N The optimization execution unit 20 sets the objective function f 1 ~f N The optimization is performed so that the following is optimized. The progress recording unit 30 records the results obtained during the optimization performed by the optimization performing unit 20. The result output unit 40 outputs the results of the optimization performed by the optimization performing unit 20.

[0019] The calculation process of the Pareto optimal solution will be described below with reference to the flowchart of FIG. 5 and the explanatory diagrams of FIG. 6(a) and FIG. 6(b). Note that FIG. 6(a) and FIG. 6(b) show the calculation process of the Pareto optimal solution for two objective functions f 1 , f 2 FIG.

[0020] First, the objective function setting unit 10 sets N objective functions (f n ; n = 1 to N) are set (step S1). Each objective function is, for example, the production completion time in the production process, the cost related to production, etc. The shorter the production completion time, the better, and the lower the cost, the better.

[0021] Next, the optimization execution unit 20 sets n to 1 (step S2). As a result, first, the objective function f 1 Focus on.

[0022] Next, the optimization execution unit 20 sets the initial value of each explanatory variable to a random value (step S3). The initial value may be one or more. The initial value may be input by the user using the input device 104.

[0023] Next, the optimization execution unit 20 calculates the objective function f 1 ~f N When step S4 is executed for the first time, the value of the objective function f is calculated from the initial values ​​of the explanatory variables. 1 ~f NWhen there are multiple initial values, a group of initial solutions is generated as shown in FIG.

[0024] Next, the progress recording unit 30 records the explanatory variables used in step S4 and the objective function f 1 ~f N (Step S5). Therefore, the progress recording unit 30 records the initial solution group.

[0025] Next, the optimization execution unit 20 calculates the objective function f n It is determined whether the optimal solution of the objective function f has converged (step S6). n It is also possible to determine whether a solution better than the initial value has been obtained.

[0026] If the determination in step S6 is "No," the optimization execution unit 20 updates the explanatory variables so that the evaluation function is optimized by the single-objective optimization engine (step S7). Thereafter, the process is executed again from step S4.

[0027] If the determination in step S6 is "Yes," the optimization execution unit 20 determines whether n is equal to or greater than N (step S8). By executing step S8, it is possible to determine whether single-objective optimization has been completed for all objective functions.

[0028] If the determination in step S8 is "No", the optimization execution unit 20 adds 1 to n to make it n+1 (step S9), and then the process is executed again from step S3.

[0029] If the answer to step S8 is "Yes," the optimization execution unit 20 extracts Pareto solutions from all the calculation results (step S10). As a result, it is possible to extract Pareto solutions obtained by single-objective optimization of each objective function, as illustrated in FIG. 6A. The extracted Pareto solutions are recorded by the progress recording unit 30.

[0030] Next, the optimization execution unit 20 calculates a linear weighted sum weighted according to the arrangement of the Pareto solutions extracted in step S10 (step S11). For example, weighting is performed in the perpendicular direction to an approximation plane that approximates the arrangement of the Pareto solutions. If there are two objective functions, an approximation line of the Pareto solutions is used instead of the approximation plane. In FIG. 6(a), an approximation line that approximates the Pareto solutions is obtained. The approximation method is not particularly limited, but may be, for example, the least squares method. In FIG. 6(b), an approximation line and a direction that intersects with the approximation line (for example, a perpendicular direction) are depicted. This direction corresponds to the solution search direction.

[0031] Next, the optimization execution unit 20 calculates the objective function f 1 ~f N and multi-objective optimization is performed using the linear weighted sum as an evaluation function (step S12). The initial values ​​of the explanatory variables in this case are the explanatory variables corresponding to the Pareto solutions extracted in step S10.

[0032] Next, the optimization execution unit 20 calculates the Pareto solutions using the execution results of step S12 (step S13). The Pareto solutions are illustrated in Fig. 6(b). The calculation results of step S13 are output by the result output unit 40.

[0033] As described above, the N objective functions f n (x) (n = 1, ..., N) are set as the evaluation function for single-objective optimization, and optimization is performed using the single-objective optimization engine to find the optimal solution for each single-objective optimization and its explanatory variables. Starting from each optimal solution for single-objective optimization, a linear weighted sum, weighted by each objective function in a direction perpendicular to the Pareto front, is set as the evaluation function, and multi-objective optimization calculations are performed to find the Pareto solution. While minimizing each objective function, the search direction for the optimal solution is set using the linear weighted sum, and the true Pareto front is found.

[0034] In this method, single-objective optimization is performed for each objective function before multi-objective optimization. Since multi-objective optimization is performed starting from the optimal solution obtained by single-objective optimization, the calculation time required to reach the true Pareto front is shortened. Furthermore, since the calculation load of single-objective optimization is significantly smaller than that of multi-objective optimization, the calculation load is reduced as a result, and calculation time can be shortened compared to performing multi-objective optimization without single-objective optimization.

[0035] In the first embodiment, the result of the optimization calculation process is used in single-objective optimization, but this is not limiting. In the second embodiment, a case where the result of the optimization calculation process is not used in single-objective optimization will be described.

[0036] Hereinafter, the calculation process of the Pareto optimal solution according to the second embodiment will be described with reference to the flowchart of FIG. 7 and the explanatory diagrams of FIG. 8(a) and FIG. 8(b). Note that FIG. 8(a) and FIG. 8(b) show the calculation process of the Pareto optimal solution according to the second embodiment with respect to two objective functions f 1 , f 2 FIG.

[0037] First, the objective function setting unit 10 sets N objective functions (f n ; n = 1 to N) is set (step S21). Each objective function is, for example, the production completion time in the production process, the cost related to production, etc. The shorter the production completion time, the better, and the lower the cost, the better.

[0038] Next, the optimization execution unit 20 sets n to 1 (step S22). As a result, first, the objective function f 1 Focus on.

[0039] Next, the optimization execution unit 20 sets the initial values ​​of the explanatory variables to random values ​​(step S23). The initial values ​​may be one or more. The initial values ​​may be input by the user using the input device 104.

[0040] Next, the optimization execution unit 20 calculates the objective function f 1 ~f N When step S24 is executed for the first time, the value of the objective function f is calculated from the initial values ​​of the explanatory variables. 1 ~fN When there are multiple initial values, a group of initial solutions is generated as shown in FIG.

[0041] Next, the optimization execution unit 20 calculates the objective function f n It is determined whether the optimal solution of the objective function f has converged (step S25). n It is also possible to determine whether a solution better than the initial value has been obtained.

[0042] If the determination in step S25 is "No," the optimization execution unit 20 updates the explanatory variables so as to optimize the evaluation function using the single-objective optimization engine (step S26), and then the process is executed again from step S24.

[0043] If the determination in step S26 is "Yes," the optimization execution unit 20 determines whether n is equal to or greater than N (step S27). By executing step S27, it is possible to determine whether single-objective optimization has been completed for all objective functions.

[0044] If the determination in step S27 is "No", the optimization execution unit 20 adds 1 to n to make it n+1 (step S28), and then the process is executed again from step S23.

[0045] If the answer to step S27 is "Yes," the optimization execution unit 20 extracts an optimal solution for each objective function (step S29). 1 The solution with the lowest value of f 2 The solution with the lowest value of is extracted as the optimal solution. Each extracted optimal solution is recorded by the progress recording unit 30.

[0046] Next, the optimization execution unit 20 calculates a linear sum weighted according to the arrangement of the optimal solutions extracted in step S29 (step S30). For example, weighting is performed in the direction perpendicular to the plane connecting the optimal solutions. If there are two objective functions, a straight line connecting the optimal solutions is used. In FIG. 8(a), a straight line connecting the optimal solutions is obtained. In FIG. 8(b), a line connecting the optimal solutions and a direction intersecting the line (for example, a perpendicular direction) are drawn. This direction corresponds to the solution search direction.

[0047] Next, the optimization execution unit 20 calculates the objective function f 1 ~f N and multi-objective optimization is performed using the linear weighted sum as an evaluation function (step S31). The initial values ​​of the explanatory variables in this case are the explanatory variables corresponding to the optimal solution extracted in step S29.

[0048] Next, the optimization execution unit 20 calculates the Pareto solutions using the execution results of step S31 (step S32). The Pareto solutions are illustrated in Fig. 8(b). The calculation results of step S32 are output by the result output unit 40.

[0049] As described above, the N number of objective functions fn(x) (n=1, ..., N) to be optimized are set as evaluation functions for single-objective optimization, and are optimized by the single-objective optimization engine, and the optimal solution and its explanatory variables for each single-objective optimization are found. Starting from each optimal solution for single-objective optimization, each objective function f n Then, a linear weighted sum of objective functions weighted in a direction perpendicular to the Pareto front is set as the evaluation function, and a multi-objective optimization calculation is performed to find a Pareto solution. While minimizing each objective function, the search direction for the optimal solution is set using the linear weighted sum, and the true Pareto front is found.

[0050] In this method, single-objective optimization is performed for each objective function before multi-objective optimization. Since multi-objective optimization is performed starting from the optimal solution obtained by single-objective optimization, the calculation time required to reach the true Pareto front is shortened. Furthermore, since the calculation load of single-objective optimization is significantly smaller than that of multi-objective optimization, the calculation load is reduced as a result, and calculation time can be shortened compared to performing multi-objective optimization without single-objective optimization.

[0051] (Simulation Results of Example 1) Simulation results for Example 1 will be described below. 1 and f 2 We performed multi-objective optimization to minimize these objective functions. As an example, we used the standard problem of the following formula. This standard problem is disclosed in "Eckart Zitzler, Kalyanmoy Ded, and Lothar Thiele, Comparison of Multiobjective Evolutionary Algorithms: Empirical Results, Evolutionary Computation, vol. 8, Issue 2, pp. 173-195 (2000)."

[0052] Objective function f 1 and the objective function f 2 As an example, the following formula is used.

[0053] Here, g(x 2 , ..., x m ) can be expressed as follows:

[0054] It is assumed that m=30 and the following formula holds.

[0055] Single-objective optimization was performed for each of the above objective functions. Explanatory variable x = (x 1 , x 2 , ..., x 30 ) were initially set to random values, and were updated by the single-objective optimization engine to minimize the objective function. In each single-objective optimization, the results of the calculation process (explanatory variables x and f 1 (x) and f 2 The value of (x) was also output. From all the calculation results, including the results of the single-objective optimization calculation process, the Pareto solutions and their explanatory variables were obtained. Figure 9 shows the calculation results. As shown in the results of Figure 9, in single-objective optimization, 1 The area where the value of (x) is small and f2 The values ​​of (x) were concentrated in the small region.

[0056] Next, f 1 (x) and f 2 Starting from the Pareto solution of (x), a linear weighted sum weighted in the vertical direction of the approximate line of the Pareto front is calculated, and f 1 (f) and f 2 Multi-objective optimization was performed using three objective functions (x). The results are shown in FIG. 10. FIG. 10 also shows the Pareto solutions obtained using the method in FIG. 2. When the method in FIG. 2 and the method according to Example 1 are compared using the same number of calculations (approximately 4,900), it can be seen that the method according to Example 1 was able to calculate a more optimal Pareto front. Therefore, it can be seen that the calculation time required to obtain the same Pareto front was shortened. When comparing the hypervolumes, the method according to Example 1 achieved a hypervolume that was 1.3% lower than the method according to FIG. 2.

[0057] FIG. 11 is a diagram for explaining hypervolume. Hypervolume is a performance index of Pareto solutions. Specifically, hypervolume represents the area or volume of a region formed by a certain reference point and a solution set obtained by an algorithm in the objective function space. As an example, the reference point can be set to (0,0) and the standardized values ​​of each objective function can be used. When there are two objective functions, the area shown in FIG. 11 is the hypervolume. The larger this hypervolume, the wider the solutions will be, and it can be determined that a better result has been obtained.

[0058] (Simulation Results of Example 2) Next, a description will be given of the simulation results of Example 2. In Example 2, the objective function was set using a specific layout of the manufacturing site.

[0059] Fig. 12 is a diagram illustrating an example of a production line model. As illustrated in Fig. 12, the production line model has branches and merges, and multiple products are input one by one. Multiple operations are performed in sequence for each of the multiple products. At least some of the operations are different for the multiple products.

[0060] The production line model in Figure 12 is a production line model consisting of process 1 and process 2. As products pass through process 1 and process 2 in accordance with the input order, they repeatedly branch and merge, and finally go through inspection and packaging processes before being shipped. In process 1, three manufacturing devices 1 with the same specifications are installed. Before each manufacturing device 1 starts work, a changeover (the process of changing the jig or device settings of the processing machine to suit the type of product being produced) is performed.

[0061] No changeover is required in process 2. In process 2, three manufacturing devices 2 and two legacy devices with specifications different from those of manufacturing devices 2 are installed. Legacy devices are devices that require both cost and time.

[0062] For example, there are two workers required for changeover. Therefore, changeover can be performed simultaneously on up to two machines in parallel. The cost of each machine increases in proportion to the operating time of the machine.

[0063] As an example, a plan is created to optimize manufacturing time and costs using this layout. For example, if we try to shorten manufacturing time by reducing changeovers, the use of legacy equipment will increase, which will increase costs, so there is a trade-off between manufacturing time and cost.

[0064] Figures 13(a) to 13(c) are diagrams illustrating product information. Figure 13(a) is a diagram illustrating master information from the production master. Figure 13(b) is a diagram illustrating operating costs from the production master. Figure 13(c) is a diagram illustrating takt time for changeovers from the production master.

[0065] As shown in FIG. 13( a), each product type A to E is associated with the number of products to be manufactured, the processing takt time of manufacturing equipment 1, the processing takt time of manufacturing equipment 2, the processing takt time of the legacy equipment, and the changeover specifications. As shown in FIG. 13( b), an equipment operation cost coefficient is associated with each manufacturing equipment. The operation cost is calculated by multiplying this coefficient by the processing takt time. As shown in FIG. 13( c), a changeover takt time is associated with each combination of subsequent product / previous product. The previous product for a certain equipment is the type of product that has been manufactured by that equipment up until now. The subsequent product is the type of product that will be manufactured by that equipment next. Each product combination is linked to the "successor product / previous product" number.

[0066] The objective functions were set to two: manufacturing time and cost. By using a specialized single-objective solution engine capable of high-speed solution generation, it was assumed that the calculation time would be extremely short. Random values ​​were set as the initial values. The results are shown in Figure 14. The horizontal axis represents manufacturing time, and the vertical axis represents cost. Single-objective optimal solutions were obtained for both manufacturing time and cost.

[0067] Next, starting from the single-objective optimal solutions for manufacturing time and cost, multi-objective optimization was performed using three objective functions: a linear weighted sum weighted in the vertical direction of the line connecting the optimal solutions, manufacturing time, and cost. The results are shown in FIG. 15. The method of FIG. 2 achieved a result (HV = 0.576) equivalent to the Pareto front obtained by the method of Example 2 (approximately 600 calculations) with 1,600 calculations, thereby reducing the amount of calculation by approximately 60%. Comparing the results of the method of FIG. 2 and the method of Example 2 using the same number of calculations (approximately 600), a wider optimal Pareto front (HV approximately twice as large) was calculated.

[0068] Although the above examples use a genetic algorithm as the optimization algorithm, the present invention is not limited to this and other optimization algorithms such as an evolutionary algorithm may also be used.

[0069] In each of the above examples, the optimization execution unit 20 executes single-objective optimization for an initial solution using each of a plurality of objective functions as a first evaluation function, thereby calculating a single-objective optimal solution whose value is better than the initial solution, and then executes multi-objective optimization for the second evaluation function using a linear weighted sum obtained by weighting each of the plurality of objective functions according to the single-objective optimal solution as a second evaluation function, starting from the single-objective optimal solution.

[0070] Although the embodiments of the present invention have been described in detail above, the present invention is not limited to such specific embodiments, and various modifications and changes are possible within the scope of the gist of the present invention as described in the claims.

[0071] REFERENCE SIGNS LIST 10 Objective function setting unit 20 Optimization execution unit 30 Progress record unit 40 Result output unit 100 Information processing device 101 CPU 102 RAM 103 Storage device 104 Input device 105 Display device

Claims

1. On the computer, A process of calculating a single-objective optimal solution having a better value than the initial solution by performing single-objective optimization using each of a plurality of objective functions as a first evaluation function for the initial solution; and using, as a second evaluation function, a linear weighted sum obtained by weighting each of the plurality of objective functions according to the single-objective optimal solution, and performing a multi-objective optimization on the second evaluation function starting from the single-objective optimal solution.

2. the number of the objective functions is two; 2. The computational program according to claim 1, further comprising a step of causing the computer to execute a process of calculating an approximation line that approximates an arrangement of the single-objective optimal solution obtained by executing the single-objective optimization and an intermediate solution, and setting the weighting in a direction that intersects with the approximation line.

3. 3. The arithmetic program according to claim 2, wherein the direction intersecting the approximation line is a direction perpendicular to the approximation line.

4. the number of the objective functions is two; 2. The computing program according to claim 1, wherein the computer is caused to execute a process of setting the weighting in a direction intersecting a line connecting the single-objective optimal solutions obtained by executing the single-objective optimization.

5. 5. The computing program according to claim 4, wherein a direction intersecting the line connecting the single-objective optimal solutions is a direction perpendicular to the line connecting the single-objective optimal solutions.

6. the number of the objective functions is three or more; 2. The computational program according to claim 1, further comprising a step of causing the computer to execute a process of calculating an approximation plane that approximates an arrangement of the single-objective optimal solution obtained by executing the single-objective optimization and an intermediate solution, and setting the weighting in a direction intersecting the approximation plane.

7. 7. The computing program according to claim 6, wherein the direction intersecting the approximation plane is a direction perpendicular to the approximation plane.

8. the number of the objective functions is three or more; 2. The computational program according to claim 1, wherein the computational program causes the computer to execute a process of setting the weighting in a direction intersecting a plane connecting the single-objective optimal solutions obtained by executing the single-objective optimization.

9. 9. The computing program according to claim 8, wherein a direction intersecting with a plane connecting the single-objective optimal solutions is a direction perpendicular to the plane connecting the single-objective optimal solutions.

10. A process of calculating a single-objective optimal solution having a better value than the initial solution by performing single-objective optimization using each of a plurality of objective functions as a first evaluation function for the initial solution; a process of using a linear weighted sum obtained by weighting each of the plurality of objective functions according to the single-objective optimal solution as a second evaluation function, and performing multi-objective optimization on the second evaluation function starting from the single-objective optimal solution; A computation method characterized by being executed by a computer.

11. an execution unit that performs single-objective optimization for an initial solution using each of a plurality of objective functions as a first evaluation function, thereby calculating a single-objective optimal solution whose value is better than the initial solution, and performs multi-objective optimization for the second evaluation function starting from the single-objective optimal solution using a linear weighted sum, in which each of the plurality of objective functions is weighted according to the single-objective optimal solution, as a second evaluation function.