Information processing device, information processing method, and information processing program

By employing different weighting coefficients and parallel optimization with evaluation functions, the method addresses the high computational demand of conventional multi-objective optimization, efficiently calculating diverse Pareto solutions.

JP7600887B2Active Publication Date: 2024-12-17FUJITSU LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2021096634
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-06-09
Publication Date
2024-12-17
Estimated Expiration
2041-06-09

AI Technical Summary

Technical Problem

Conventional multi-objective optimization methods require a large amount of calculation to obtain Pareto solutions, leading to concentration of solutions in specific directions and increased computational burden.

Method used

An information processing device that sets different weighting coefficients for multiple objective functions, performs parallel optimization calculations, and uses evaluation objective functions to identify Pareto solutions based on minimum output values, reducing the overall calculation load.

Benefits of technology

The method effectively reduces the computational requirements for finding Pareto solutions by utilizing diverse weighting coefficients and parallel processing, enabling efficient calculation of various Pareto solutions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007600887000001
    Figure 0007600887000001
  • Figure 0007600887000002
    Figure 0007600887000002
  • Figure 0007600887000003
    Figure 0007600887000003
Patent Text Reader

Abstract

To reduce the amount of calculation for obtaining Pareto solutions of multi-objective optimization problems.SOLUTION: An information processing device generates, for objective functions including a plurality of elemental objective functions, a first objective function, a second objective function, and a third objective function by differentiating values of weighting coefficients to be multiplied with respective elemental objective functions. The information processing device calculates values of the first objective function and the second objective function and executes solution search. The information processing device calculates the value of the third objective function by inputting, into the third objective function, a solution obtained by the solution search using the first objective function and a solution obtained by the solution search using the second objective function. The information processing device outputs the solution obtained by the solution search using the first objective function, the solution obtained by the solution search using the second objective function, and the solution obtained based on the value of the third objective function.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to an information processing device and the like. [Background technology]

[0002] As a method for solving multi-objective optimization that simultaneously evaluates two objective functions P(x) and Q(x), a method for solving a single-objective optimization problem by making the objective function in the form of equation (1) is known. α and β in equation (1) are weighting coefficients.

[0003] F(x) = αP(x) + βQ(x) (1)

[0004] In the following explanation, objective function P(x) will be written as P and objective function Q(x) as Q where appropriate. P and Q may also be called element objective functions. When element objective functions P and Q have a trade-off relationship, in other words, when P is reduced, Q increases, the balance between P and Q can be changed by changing the weighting coefficients α and β. For example, when α in formula (1) is increased, a force acts to reduce the value of P more than the value of Q.

[0005] In order to obtain multiple optimal solutions with different trade-off balances, multiple objective functions F with different weighting coefficients α and β are prepared, and the optimal solution is calculated for each. These optimal solutions become the Pareto solutions. By calculating more types of Pareto solutions and visualizing the distribution of the Pareto solutions, designers can obtain a lot of information.

[0006] FIG. 14 is a diagram showing an example of a Pareto solution. The horizontal axis of FIG. 14 corresponds to the value of the element objective function Q, and the vertical axis corresponds to the value of the element objective function P. For example, a Pareto solution 10a corresponds to the optimal solution of the objective function F where the relationship between α and β is "α / β=10". Pareto solutions 10b to 10g correspond to the optimal solutions of the objective function F where the relationships between α and β are "α / β=5", "α / β=2", "α / β=1", "α / β=0.5", "α / β=0.2", and "α / β=0.1", respectively. Each arrow indicates the direction of searching for the optimal solution of the objective function F.

[0007] For example, the optimal solution x of the objective function F changes depending on the weighting coefficients α and β, but there may be many local solutions other than the optimal solution. When there are many local solutions, the challenge is to escape from the local solutions and reach the optimal solution.

[0008] Here, in order to escape from a local solution and to possibly create an initial solution that is effective for other objective functions, there is a conventional technique in which optimization calculations for multiple objective functions are performed in parallel and the optimal solutions are exchanged. By storing multiple minimum solutions, it is possible to create a variety of solutions. In addition, the objective function may be set so that the solution in which the objective function value is maximized is the optimal solution. For example, if the sign on the right-hand side of the above formula (1) is set to minus (-), an objective function that searches for the maximum solution is obtained.

[0009] Fig. 15 is a flowchart showing the procedure of the optimization calculation of the objective function in the conventional technology. Fig. 15 shows the procedure of the optimization calculation of the objective function F1, but the optimization calculation of the other objective functions is also performed in parallel by the same procedure. Here, the other objective functions are objective functions F2 and F3.

[0010] The weighting coefficients of objective function F1 are α1 and β1. The weighting coefficients of objective function F2 are α2 and β2. The weighting coefficients of objective function F3 are α3 and β3. For convenience, the optimization calculation of objective function F1 is referred to as the first optimization calculation. The optimization calculation of objective function F2 is referred to as the second optimization calculation. The optimization calculation of objective function F3 is referred to as the third optimization calculation.

[0011] As shown in FIG. 15, in the first optimization calculation, the initial solution x i1 (Step S11), and execute a search calculation for an optimal solution of the objective function F1 (Step S12). In the conventional technology, the minimum value f1 and the minimum solution x o1 is output and used in the second optimization calculation, the second optimization calculation (step S13).

[0012] In the conventional technology, the other minimal solutions (x o2 , x o3 ) and calculates the objective function F1 (step S14). In the conventional technology, if the process is to be continued (step S15, Yes), the process proceeds to step S16.

[0013] In the conventional technology, the smallest value including the minimum value f1 is set as f m1 Then, the solution is the initial solution x i1 (step S16), and the process proceeds to step S11. For example, in step S16, the minimum solution x o2 The input value, F1, is the minimum solution x of the third optimization calculation. o3 The smallest value among the input values ​​and the minimum value f1 is f m1 Let us assume that.

[0014] On the other hand, in the conventional technology, when the process is not continued (step S15, No), the minimum value f 1m , minimum solution x i1 The N smallest minimum values ​​are stored in the storage unit (step S17).

[0015] Although not shown in the figures, in the second optimization calculation, objective function F2 is used to execute the optimization calculation corresponding to Fig. 15. In the third optimization calculation, objective function F3 is used to execute the optimization calculation corresponding to Fig. 15. As described above, in the conventional technology, optimization calculations of a plurality of objective functions are executed in parallel, and the optimal solutions are exchanged to obtain a variety of optimal solutions (Pareto solutions). [Prior art documents] [Patent documents]

[0016] [Patent Document 1] JP 2010-152851 A [Patent Document 2] JP 2000-268018 A [Patent Document 3] US Patent Application Publication No. 2020 / 0074348 Summary of the Invention [Problem to be solved by the invention]

[0017] However, the above-mentioned conventional techniques have a problem in that the amount of calculation required to obtain a Pareto solution to a multi-objective optimization problem is large.

[0018] Fig. 16 is a diagram for explaining the problems of the conventional technology. The horizontal axis of Fig. 16 corresponds to the value of objective function Q, and the vertical axis corresponds to the value of objective function P. In the conventional technology, Pareto solutions tend to gather in the optimal solution search direction of each objective function.

[0019] For example, the Pareto solutions corresponding to the minimum solutions searched for by the first optimization calculation are Pareto solutions 11a, 11b, and 11c. The Pareto solutions corresponding to the minimum solutions searched for by the second optimization calculation are Pareto solutions 12a, 12b, and 12c. The Pareto solutions corresponding to the minimum solutions searched for by the third optimization calculation are Pareto solutions 13a, 13b, and 13c.

[0020] As shown in Fig. 16, in the conventional technology, when objective functions with the same weighting factors α and β are used, the Pareto solutions are concentrated. In order to disperse the Pareto solutions in order to calculate a greater variety of Pareto solutions, it is possible to use multiple objective functions with different weighting factors α and β, but performing optimization calculations for each of them would increase the amount of calculations.

[0021] In one aspect, the present invention has an object to provide an information processing device, an information processing method, and an information processing program capable of reducing the amount of calculations required to obtain a Pareto solution of a multi-objective optimization problem. [Means for solving the problem]

[0022] In a first proposal, an information processing device generates a first objective function, a second objective function, and a third objective function by making the values ​​of weighting coefficients multiplied by each of a plurality of component objective functions different from each other for an objective function including a plurality of component objective functions. The information processing device calculates the values ​​of the first objective function and the second objective function to execute a solution search. The information processing device inputs a solution obtained by a solution search using the first objective function and a solution obtained by a solution search using the second objective function to the third objective function, and calculates a value of the third objective function. The information processing device outputs the solution obtained by the solution search using the first objective function, the solution obtained by the solution search using the second objective function, and the solution obtained based on the value of the third objective function. Effect of the Invention

[0023] The amount of calculation required to find a Pareto solution for a multi-objective optimization problem can be reduced. [Brief description of the drawings]

[0024] [Figure 1] FIG. 1 is a diagram for explaining the process of the information processing device according to the first embodiment. [Diagram 2] FIG. 2 is a functional block diagram of the information processing device according to the first embodiment. [Diagram 3] FIG. 3 is a diagram illustrating an example of a data structure of the weighting coefficient table. [Figure 4] FIG. 4 illustrates an example of a data structure of the shared buffer. [Diagram 5] FIG. 5 is a diagram illustrating an example of a data structure of the calculation result table. [Figure 6] FIG. 6 is a flowchart of a process performed by the calculation unit according to the first embodiment. [Figure 7] FIG. 7 is a flowchart of the optimization calculation process according to the first embodiment. [Figure 8] FIG. 8 is a flowchart of the evaluation objective function executing process according to the first embodiment. [Figure 9]FIG. 9 is a diagram for explaining the process of the information processing device according to the second embodiment. [Figure 10] FIG. 10 is a functional block diagram illustrating a configuration of an information processing device according to the second embodiment. [Figure 11] FIG. 11 is a flowchart of the optimization calculation process according to the second embodiment. [Figure 12] FIG. 12 is a flowchart of the evaluation objective function executing process according to the second embodiment. [Figure 13] FIG. 13 is a diagram illustrating an example of a hardware configuration of a computer that realizes the same functions as the information processing apparatus of the embodiment. [Figure 14] FIG. 14 is a diagram illustrating an example of the Pareto solutions. [Figure 15] FIG. 15 is a flowchart showing a processing procedure for optimizing calculation of an objective function according to the prior art. [Figure 16] FIG. 16 is a diagram for explaining the problem with the conventional technology. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0025] Hereinafter, an information processing device, an information processing method, and an information processing program disclosed in the present application will be described in detail with reference to the accompanying drawings. Note that the present invention is not limited to the embodiments. EXAMPLES

[0026] The information processing device according to the first embodiment is capable of calculating a variety of Pareto solutions (output values ​​corresponding to the minimum solutions) while reducing the amount of calculations by using an objective function for searching for an optimal solution and an objective function for evaluation to calculate a plurality of minimum solutions and minimum values. In the following description, the objective function for searching for an optimal solution is appropriately referred to as a "search objective function" and the objective function for evaluation is appropriately referred to as an "evaluation objective function". When there is no need to distinguish between the objective functions, they are simply referred to as objective functions.

[0027] When the information processing device uses a search objective function, it inputs an initial solution to the search objective function to calculate an output value of the search objective function, and then it repeatedly calculates the output value of the search objective function while gradually changing the initial solution to calculate a minimum solution that minimizes the output value of the search objective function. Through this process, the information processing device obtains the relationship between the minimum solution and the output value corresponding to the minimum solution.

[0028] Furthermore, when the information processing device uses an evaluation objective function, the multiple minimum solutions obtained by the above-mentioned search objective function are input to the evaluation objective function, and an output value for each minimum solution is calculated. Note that the minimum solution input to the evaluation objective function is the minimum solution during the search by the search objective function, and is different from the minimum solution at the end of the search.

[0029] The information processing device identifies the minimum output value among the multiple output values ​​and the minimum solution corresponding to the minimum output value. The minimum solution corresponding to the minimum output value corresponds to the Pareto solution. In other words, the evaluation objective function inputs each minimum solution obtained by the search objective function and uses it to calculate an output value corresponding to the minimum solution, and does not search for the minimum solution.

[0030] FIG. 1 is a diagram for explaining the processing of an information processing device according to the first embodiment. In the first embodiment, as an example, search objective functions F1, F2, and F3 and evaluation objective functions F4, F5, F6, and F7 are used. The search objective functions F1, F2, and F3 are shown in formulas (2), (3), and (4). The evaluation objective functions F4, F5, F6, and F7 are shown in formulas (5), (6), (7), and (8).

[0031] F1(x)=α1P(x)+β1Q(x)...(2) F2(x)=α2P(x)+β2Q(x)...(3) F3(x)=α3P(x)+β3Q(x)...(4) F4(x)=α4P(x)+β4Q(x)...(5) F5(x)=α5P(x)+β5Q(x)...(6) F6(x)=α6P(x)+β6Q(x)...(7) F7(x)=α7P(x)+β7Q(x)···(8)

[0032] Different values ​​are set for the weighting coefficients α1, α2, α3, α4, α5, α6, and α7 in the equations (2) to (8). Different values ​​are set for the weighting coefficients β1, β2, β3, β4, β5, β6, and β7.

[0033] The information processing device calculates the initial solution x i1 After calculating the output value of the search objective function F1, the initial solution x i1 While gradually changing, the output value of the search objective function F1 is repeatedly calculated, and the minimum solution x o1 Calculate.

[0034] The information processing device calculates the initial solution x i2 After calculating the output value of the search objective function F2 by inputting i2 While gradually changing, the output value of the search objective function F2 is repeatedly calculated, and the minimum solution x o2 Calculate.

[0035] The information processing device calculates the initial solution x i3 After calculating the output value of the search objective function F3 by inputting i3 While gradually changing, the output value of the search objective function F3 is repeatedly calculated, and the minimum solution x o3 Calculate.

[0036] In the following description, the objective function F s to the initial value x is Enter the objective function F s After calculating the output value of the initial solution x is While gradually changing the objective function F s The output value of is calculated repeatedly, and the objective function F s The minimum solution x that minimizes the output value of osThe process of calculating F is denoted as an "optimization calculation." In addition, the optimization calculation for the search objective function F1 is denoted as a "first optimization calculation," the optimization calculation for the search objective function F2 is denoted as a "second optimization calculation," and the optimization calculation for the search objective function F3 is denoted as a "third optimization calculation."

[0037] The information processing device executes the first optimization calculation, the second optimization calculation, and the third optimization calculation in parallel. When executing the first optimization calculation, the second optimization calculation, and the third optimization calculation in parallel, the information processing device exchanges minimum solutions, resets the exchanged minimum solution to an initial solution, and performs the optimization calculation.

[0038] For example, the information processing device performs solution exchange, executes a first optimization calculation, calculates a plurality of minimum solutions, and obtains Pareto solutions 21b, 21c corresponding to the plurality of minimum solutions. The information processing device performs solution exchange, executes a second optimization calculation, calculates a plurality of minimum solutions, and obtains Pareto solutions 22b, 22c corresponding to the plurality of minimum solutions. The information processing device performs solution exchange, executes a third optimization calculation, calculates a plurality of minimum solutions, and obtains Pareto solutions 23b, 23c corresponding to the plurality of minimum solutions.

[0039] Next, the information processing device inputs each of the minimum solutions obtained during the execution of the first to third optimization calculations into the evaluation objective function F4, calculates each output value, and identifies the minimum solution corresponding to the minimum output value as the Pareto solution. For example, by performing the above process each time the first to third optimization calculations are executed, multiple Pareto solutions are obtained. In FIG. 1, Pareto solutions 24a and 24b are calculated based on the evaluation objective function F4.

[0040] The information processing device calculates the evaluation objective functions F5, F6 using the minimum solution obtained during the first to third optimization calculations. 6、 By performing similar calculations for F7, Pareto solutions 25a and 25b, Pareto solutions 26a and 26b, and Pareto solutions 27a and 27b are obtained.

[0041] As described above, the information processing device according to the first embodiment searches for a minimum solution by using a search objective function. In addition, the information processing device can calculate various Pareto solutions while reducing the amount of calculation by evaluating the minimum solution being searched by the search objective function by using an evaluation objective function in which various weighting coefficients are set.

[0042] Next, an example of the configuration of the information processing device according to the embodiment 1 will be described. Fig. 2 is a functional block diagram showing the configuration of the information processing device according to the embodiment 1. As shown in Fig. 2, the information processing device 100 has a communication unit 110, an input unit 120, a display unit 130, a storage unit 140, and a control unit 150.

[0043] The communication unit 110 is connected to an external device or the like by wire or wirelessly, and transmits and receives information to and from the external device or the like. For example, the communication unit 110 is realized by a NIC (Network Interface Card) or the like. The communication unit 110 may be connected to a network (not shown).

[0044] The input unit 120 is an input device that inputs various types of information to the information processing device 100. The input unit 120 corresponds to a keyboard, a mouse, a touch panel, or the like.

[0045] The display unit 130 is a display device that displays information output from the control unit 150. The display unit 130 corresponds to a liquid crystal display, an organic EL (Electro Luminescence) display, a touch panel, etc. For example, the calculation results of the Pareto solutions, etc. are displayed on the display unit 130.

[0046] The storage unit 140 has a weighting coefficient table 141, a shared buffer 142, and a calculation result table 143. The storage unit 140 is realized by, for example, a semiconductor memory element such as a random access memory (RAM) or a flash memory, or a storage device such as a hard disk or an optical disk.

[0047] The weighting coefficient table 141 holds information about weighting coefficients set for the search objective function and the evaluation objective function. FIG. 3 is a diagram showing an example of the data structure of the weighting coefficient table. As shown in FIG. 3, in the weighting coefficient table 141, identification information and weighting coefficients are associated with each other. The identification information is information for identifying an objective function. The weighting coefficient indicates a weighting coefficient set for a corresponding objective function. For example, the identification information F-1 indicates the search objective function F1 defined in equation (2). The identification information F-2 indicates the search objective function F2 defined in equation (3). The identification information F-3 indicates the search objective function F3 defined in equation (4).

[0048] Identification information F-4 indicates the objective function for evaluation F4 defined in formula (5). Identification information F-5 indicates the objective function for evaluation F5 defined in formula (6). Identification information F-6 indicates the objective function for evaluation F6 defined in formula (7). Identification information F-7 indicates the objective function for evaluation F7 defined in formula (8).

[0049] The shared buffer 142 is a buffer that holds a minimum solution output in an optimization calculation for a search objective function. FIG. 4 is a diagram showing an example of a data structure of the shared buffer. As shown in FIG. 4, the shared buffer 142 associates identification information with a minimum solution. The identification information is information that identifies the search objective function. The minimum solution is a solution that is detected when searching for a minimum solution for each search objective function. The minimum solution corresponds to a local solution or an optimal solution.

[0050] The calculation result table 143 is a table that holds a pair of a minimum solution and an output value (minimum value) when the minimum solution is input to each objective function. FIG. 5 is a diagram showing an example of a data structure of the calculation result table. As shown in FIG. 5, the calculation result table 143 associates identification information, a minimum solution, and a minimum value. The identification information is information that identifies the objective function. The minimum solution is a solution that is detected when searching for a minimum solution of each search objective function (when performing optimization calculation).

[0051] Although not shown in the figure, the storage unit 140 may have information on each parameter set in the original objective functions P(x) and Q(x) of the objective functions F1 to F7.

[0052] Returning to the description of Fig. 2, the control unit 150 has a calculation unit 151 and an output unit 152. The control unit 150 is realized by, for example, a central processing unit (CPU) or a micro processing unit (MPU). The control unit 150 may also be executed by, for example, an integrated circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA).

[0053] The calculation unit 151 executes optimization calculations for the search objective functions in parallel. In the process of executing the optimization calculations in parallel, the calculation unit 151 exchanges minimization between the search objective functions and calculates a plurality of pairs of a minimum solution and a minimum value.

[0054] Moreover, the calculation unit 151 inputs a plurality of minimum solutions obtained by the optimization calculation of the search objective function to the evaluation objective function to calculate a plurality of output values, and identifies the minimum output value among the plurality of output values ​​and the minimum solution (Pareto solution) corresponding to the minimum output value. The calculation unit 151 registers the relationship between the Pareto solutions and the minimum values ​​in the calculation result table 143.

[0055] Fig. 6 is a flowchart showing the processing procedure of the calculation unit according to the embodiment 1. As shown in Fig. 6, the calculation unit 151 of the information processing device 100 performs initial setting (step S101). The initial setting includes setting the number of optimization calculations to be executed in parallel, setting each objective function, setting an initial solution, and the number of iterations L of the search calculation for the optimal solution.

[0056] The calculation unit 151 starts optimization calculations 1 to D in parallel (step S102). In the present embodiment 1, D=3, but is not limited to this. The calculation unit 151 secures the shared buffer 142 (step S103). The calculation unit 151 executes the optimization calculation process in parallel for each optimization calculation (step S104).

[0057] In the optimization calculation process in step 104 in FIG. 6, optimization calculations for the search objective functions F1 to F3 are executed in parallel, but the optimization calculation process for one search objective function will be described below with reference to FIG.

[0058] Fig. 7 is a flowchart showing the procedure of the optimization calculation process according to the embodiment 1. As shown in Fig. 7, the calculation unit 151 of the information processing device 100 sets the number of iterations c to an initial value (step S201).

[0059] The calculation unit 151 calculates the initial solution x is (Step S202). The calculation unit 151 executes a search calculation for a minimum solution of the search objective function Fs (Step S203). If the calculation unit 151 does not detect a minimum solution (Step S204, No), the calculation unit 151 returns to Step S203.

[0060] When the calculation unit 151 detects the minimum solution (step S204, Yes), the calculation unit 151 calculates the minimum value f s , minimum solution x os The N repetition counts c are stored in ascending order of minimum value (step S205). The calculation unit 151 adds 1 to the repetition count c to update the repetition count c (step S206).

[0061] When the number of iterations c is equal to or greater than L (step S207, Yes), the calculation unit 151 calculates the search objective function F s On the other hand, if the number of repetitions c is not equal to or greater than L (step S207, No), the calculation unit 151 proceeds to step S208.

[0062] The calculation unit 151 calculates the minimum solution x osThe calculation unit 151 registers the minimum solution x on is obtained (step S210).

[0063] The calculation unit 151 calculates each minimum solution x on Let F be the objective function s Calculate each value when inputting, and select the solution with the smallest value as the initial solution x is (step S211), and the process proceeds to step S202.

[0064] The calculation unit 151 performs the optimization calculation process shown in FIG. D The calculation unit 151 executes the calculation in parallel for each of the objective functions F1 to F D The optimum solution, which is the optimum solution calculation result for, and the relationship between the output value are registered in the calculation result table 143.

[0065] Next, an example of the evaluation objective function execution process shown in step S209 in Fig. 7 will be described. Fig. 8 is a flowchart showing the processing procedure of the evaluation objective function execution process. As shown in Fig. 8, the calculation unit 151 of the information processing device 100 reads out a plurality of evaluation objective functions (step S301). The calculation unit 151 acquires the minimum solution searched for by the search objective function from the shared buffer 142 (step S302).

[0066] The calculation unit 151 executes the following process for each evaluation objective function (step S303). The calculation unit 151 inputs a plurality of minimum solutions to the evaluation objective function and calculates the output values ​​(step S304). The calculation unit 151 identifies the minimum solution corresponding to the minimum output value (step S305).

[0067] The calculation unit 151 stores N pairs of the identified minimum solution and output value (minimum value) for the calculation results of each evaluation objective function, beginning with the pair with the smallest minimum value (step S306).

[0068] Incidentally, the evaluation objective function execution process shown in Fig. 8 is described as being executed after step S208 as shown in Fig. 7, but is not limited to this. For example, the calculation unit 151 may execute the evaluation objective function execution process after step S207. By executing it after step S207, the evaluation objective function execution process is executed only once after the optimization calculation of the search objective function is completed, so that the amount of calculation can be suppressed.

[0069] The calculation unit 151 performs the optimization calculation process shown in FIG. 7 on each of the search objective functions F1 to F D The calculation unit 151 executes the search objective functions F1 to F D A pair of the minimum solution and the output value, which is the optimum solution calculation result for , and a pair of the minimum value and the output value obtained from the evaluation objective function are registered in the calculation result table 143.

[0070] The output unit 152 outputs the information of the calculation result table 143 to the display unit 130 for display.

[0071] Next, the effects of the information processing device 100 according to the first embodiment will be described. The information processing device 100 executes an optimization calculation using a search objective function to search for a relationship between a minimum solution and a minimum value. The information processing device 100 also inputs a plurality of minimum values ​​during a search of the search objective function to an evaluation objective function, calculates a plurality of output values, and identifies a minimum solution corresponding to the minimum output value, thereby supplementing the Pareto solution. This process makes it possible to calculate a variety of Pareto solutions (output values ​​corresponding to the minimum solution) while reducing the amount of calculation. EXAMPLES

[0072] The information processing device 100 according to the first embodiment prepares an evaluation objective function in which weighting factors α and β are set in advance, and supplements the Pareto solutions using the evaluation objective function, but is not limited to this. In the information processing device according to the second embodiment, the weighting factors α and β of the evaluation objective function are dynamically set using the weighting factors α and β set for the pair of search objective functions with the closest minimum value.

[0073] 9 is a diagram for explaining the process of the information processing device according to the embodiment 2. In the embodiment 2, as an example, the search objective functions F1, F2, and F3 are used. The explanation of the search objective functions F1, F2, and F3 is the same as that of the embodiment 1.

[0074] The information processing device executes the first optimization calculation, the second optimization calculation, and the third optimization calculation in parallel. The information processing device calculates an output value f1 for a minimum solution of the search objective function F1, an output value f2 corresponding to the minimum solution of the search objective function F2, and an output value f3 corresponding to the minimum solution of the search objective function F3.

[0075] The information processing device compares the output values ​​f1 to f3 and identifies a search objective function corresponding to the output value closest to the output value f1. For example, when the output value f1 and the output value f2 are closest in value, the information processing device identifies a pair of the search objective function F1 and the search objective function F2.

[0076] The information processing device executes the following process when the distance between position 31a when the minimum solution is input to search objective function F1 and position 32a when the minimum solution is input to search objective function F2 is equal to or greater than a threshold in the P, Q space shown in Fig. 9. The information processing device calculates weighting coefficients of the evaluation objective function based on weighting coefficients α1, β1 set in search objective function F1 and weighting coefficients α2, β2 set in search objective function F2. For example, the information processing device calculates the weighting coefficients of the evaluation objective function based on the average value of weighting coefficients α1, α2, the average value of weighting coefficients β1, β2, and weighting coefficient α e , β e Let us assume that.

[0077] The information processing device compares the output values ​​f1 to f3, identifies a search objective function corresponding to an output value close to the output value f2, and identifies a weighting factor for the evaluation objective function in the same manner as the above process. The information processing device also compares the output values ​​f1 to f3, identifies a search objective function corresponding to an output value close to the output value f3, and identifies a weighting factor for the evaluation objective function in the same manner as the above process.

[0078] As described above, the information processing device according to the second embodiment can calculate various Pareto solutions by dynamically setting the weighting factors α and β of the evaluation objective function using the weighting factors α and β set in the search objective function close to the minimum value (output value).

[0079] Next, an example of the configuration of an information processing device according to the present embodiment 2 will be described. Fig. 10 is a functional block diagram showing the configuration of the information processing device according to the present embodiment 2. As shown in Fig. 10, the information processing device 200 has a communication unit 210, an input unit 220, a display unit 230, a storage unit 240, and a control unit 250.

[0080] 10, the description of the communication unit 210, the input unit 220, and the display unit 230 is similar to the description of the communication unit 110, the input unit 120, and the display unit 130 described in FIG.

[0081] The storage unit 240 has a weighting coefficient table 241, a shared buffer 242, and a calculation result table 243. The storage unit 240 is realized by, for example, a semiconductor memory element such as a RAM or a flash memory, or a storage device such as a hard disk or an optical disk.

[0082] The weighting coefficient table 241 holds information about weighting coefficients set in the objective function. Other explanations about the weighting coefficient table 241 are the same as those about the weighting coefficient table 141. Note that the weighting coefficients about the evaluation objective function are dynamically generated and registered in the weighting coefficient table 241, as described in FIG.

[0083] The shared buffer 242 is a buffer that holds the minimum solution output in the optimization calculation for the search objective function. The rest of the description of the shared buffer 242 is the same as the description of the shared buffer 142.

[0084] The calculation result table 243 is a table that holds a pair of a minimum solution and an output value (minimum value) when the minimum solution is input to each objective function. The rest of the explanation of the calculation result table 243 is the same as the explanation of the calculation result table 143.

[0085] Although not shown in the figure, the storage unit 240 may have information on each parameter set in the original objective functions P(x) and Q(x) of each objective function.

[0086] The control unit 250 includes a calculation unit 251 and an output unit 252. The control unit 250 is realized by, for example, a CPU or an MPU. The control unit 250 may also be implemented by, for example, an integrated circuit such as an ASIC or an FPGA.

[0087] The calculation unit 251 executes the first optimization calculation, the second optimization calculation, and the third optimization calculation in parallel. The information processing device calculates an output value f1 for the minimum solution of the search objective function F1, an output value f2 corresponding to the minimum solution of the search objective function F2, and an output value f3 corresponding to the minimum solution of the search objective function F3.

[0088] The calculation unit 251 compares the output values ​​f1 to f3 and identifies a search objective function corresponding to an output value close to the output value f1. For example, when the output value f1 and the output value f2 are close to each other, the calculation unit 251 identifies a pair of the search objective function F1 and the search objective function F2.

[0089] 9, the calculation unit 251 executes the following process when the distance between the position 31a when the minimum solution is input to the search objective function F1 and the position 32a when the minimum solution is input to the search objective function F2 is equal to or greater than a threshold in the P, Q space. The calculation unit 251 calculates the weighting coefficients of the evaluation objective function based on the weighting coefficients α1, β1 set in the search objective function F1 and the weighting coefficients α2, β2 set in the search objective function F2. On the other hand, when each distance is less than a threshold, the calculation unit 251 does not calculate the weighting coefficients of the evaluation objective function.

[0090] The calculation unit 251 compares the output values ​​f1 to f3, identifies a search objective function corresponding to an output value close to the output value f2, and identifies a weighting coefficient for the evaluation objective function in the same manner as the above process. The calculation unit 251 also compares the output values ​​f1 to f3, identifies a search objective function corresponding to an output value close to the output value f3, and identifies a weighting coefficient for the evaluation objective function in the same manner as the above process.

[0091] The calculation unit 251 inputs the minimum solution, which is the search result of the search objective function, to the multiple evaluation functions whose weighting coefficients have been specified by the above process, to calculate the output value (minimum value). The calculation unit 251 registers the relationship between the minimum solution input to each objective function and the minimum value in the calculation result table 243.

[0092] Next, an example of the processing procedure of the calculation unit 251 will be described. The processing procedure of the calculation unit 251 is different from the processing procedure of the calculation unit 151 described in Fig. 6 of the first embodiment in the content of the optimization calculation processing from the processing procedure of the calculation unit 151. Therefore, the optimization calculation processing executed by the calculation unit 251 according to the second embodiment will be described.

[0093] 11 is a flowchart showing the procedure of the optimization calculation process according to the embodiment 2. The calculation unit 251 of the information processing device 200 sets the number of iterations c to an initial value (step S401).

[0094] The calculation unit 251 calculates the initial solution x is (Step S402). The calculation unit 251 sets the objective function F s (Step S403) When the calculation unit 251 does not detect the minimum solution (Step S404, No), the calculation unit 251 proceeds to Step S403.

[0095] When the calculation unit 251 detects the minimum solution (step S404, Yes), the calculation unit 251 calculates the minimum value f s , minimum solution x os The N repetition counts c are stored in ascending order of minimum value (step S405). The calculation unit 251 adds 1 to the repetition count c to update the repetition count c (step S406).

[0096] If the number of repetitions c is equal to or greater than L (step S407, Yes), the calculation unit 251 calculates the objective function F s On the other hand, if the number of repetitions c is not equal to or greater than L (step S407, No), the calculation unit 251 proceeds to step S408.

[0097] The calculation unit 251 calculates the minimum solution x os The calculation unit 251 registers the minimum solution x on is obtained (step S410).

[0098] The calculation unit 251 calculates each minimum solution x on Let F be the objective function s Calculate each value when inputting, and select the solution with the smallest value as the initial solution x is (step S411), and the process proceeds to step S402.

[0099] The calculation unit 251 performs the optimization calculation process shown in FIG. 11 for each of the objective functions F1 to F D The calculation unit 251 executes the calculation in parallel for each of the objective functions F1 to F D The relationship between the optimum solution (minimum value) that is the optimum solution calculation result for and the output value is registered in the calculation result table 243.

[0100] Next, an example of the evaluation objective function execution process shown in step S409 in Fig. 11 will be described. Fig. 12 is a flowchart showing the processing procedure of the evaluation objective function execution process according to the second embodiment. As shown in Fig. 12, the calculation unit 251 of the information processing device 100 calculates the same minimum solution using the search objective functions F1 to F2. D and the objective function F for searching the output value closest to the minimum value fs is n (Step S501).

[0101] The calculation unit 251 calculates a search objective function F s, F n The calculation unit 251 determines whether the output values ​​of the two are different by a threshold or more (step S502). If the difference is not the threshold or more (step S503, No), the calculation unit 251 ends the evaluation objective function execution process.

[0102] If the difference is equal to or greater than the threshold (step S503, Yes), the calculation unit 251 calculates the search objective function F s , F n Based on the weighting coefficients, the weighting coefficients of the evaluation function are specified (step S504).

[0103] The calculation unit 251 inputs a plurality of minimum solutions to the objective function for evaluation and calculates the output value for each (step S505). The calculation unit 251 identifies the minimum solution corresponding to the minimum output value (step S506). The calculation unit 251 saves N pairs of the minimum value and the minimum solution from the calculation result of the objective function for evaluation, beginning with the pair with the smallest minimum value (step S507).

[0104] Incidentally, the evaluation objective function execution process shown in Fig. 12 is described as being executed after step S408 as shown in Fig. 11, but is not limited to this. For example, the calculation unit 251 may execute the evaluation objective function execution process after step S407. By executing it after step S407, the evaluation objective function execution process is executed only once after the optimization calculation of the search objective function is completed, so that the amount of calculation can be suppressed.

[0105] The calculation unit 251 performs the optimization calculation process shown in FIG. 11 on each of the search objective functions F1 to F D The calculation unit 251 executes the search objective functions F1 to F D A pair of the minimum solution and the output value which is the optimum solution calculation result for and a pair of the minimum value and the output value input in the evaluation objective function are registered in the calculation result table 243.

[0106] The output unit 252 outputs the information of the calculation result table 243 to the display unit 230 for display.

[0107] Next, the effect of the information processing device 200 according to the second embodiment will be described. When the search objective function has close minimum values ​​and the positions of the values ​​in the P and Q regions are equal to or greater than a threshold, the information processing device 200 dynamically sets the weighting coefficients α and β of the evaluation objective function using the weighting coefficients α and β of the search objective function. This makes it possible to set an evaluation objective function capable of calculating a Pareto solution that cannot be achieved by the search objective function alone.

[0108] Next, an example of a hardware configuration of a computer that realizes the same functions as the information processing device 100 (200) shown in the above embodiment will be described. Fig. 13 is a diagram showing an example of a hardware configuration of a computer that realizes the same functions as the information processing device of the embodiment.

[0109] 13, computer 300 includes CPU 301 for executing various arithmetic processes, input device 302 for receiving data input from a user, and display 303. Computer 300 also includes communication device 304 for transmitting and receiving data to and from external devices via a wired or wireless network, and interface device 305. Computer 300 also includes RAM 306 for temporarily storing various information, and hard disk device 307. Each of devices 301 to 307 is connected to bus 308.

[0110] The hard disk device 307 stores a calculation program 307a and an output program 307b. The CPU 301 reads out the programs 307a and 307b and develops them in the RAM 306.

[0111] The calculation program 307a functions as the calculation process 306a, and the output program 307b functions as the output process 306b.

[0112] The processing of the calculation process 306a corresponds to the processing of the calculation units 151 and 251. The processing of the output process 306b corresponds to the processing of the output units 152 and 252.

[0113] It should be noted that each of the programs 307a and 307b does not necessarily have to be stored in the hard disk device 307 from the beginning. For example, each of the programs may be stored in a "portable physical medium" such as a flexible disk (FD), CD-ROM, DVD, magneto-optical disk, or IC card that is inserted into the computer 300. Then, the computer 300 may read and execute each of the programs 307a and 307b.

[0114] The following supplementary notes are further disclosed regarding the embodiments including the above examples.

[0115] (Note 1) For an objective function including a plurality of component objective functions, a first objective function, a second objective function, and a third objective function are generated by making the values ​​of weighting coefficients by which the plurality of component objective functions are multiplied differently from one another; Calculating values ​​of the first objective function and the second objective function to perform a solution search; a solution obtained by the solution search using the first objective function and a solution obtained by the solution search using the second objective function are input to the third objective function to calculate a value of the third objective function; outputting a solution obtained by the solution search using the first objective function, a solution obtained by the solution search using the second objective function, and a solution obtained based on the value of the third objective function; An information processing device comprising a control unit for executing processing.

[0116] (Supplementary Note 2) The information processing device according to Supplementary Note 1, characterized in that the control unit further executes a process of generating a plurality of objective functions including the first objective function and the second objective function by making the values ​​of weighting coefficients different from each other, identifying an objective function among the plurality of objective functions having the closest minimum value as the second objective function based on a minimum value of the first objective function, and calculating a value of a weighting coefficient of the third objective function based on values ​​of weighting coefficients set for the first objective function and the second objective function.

[0117] (Supplementary Note 3) The information processing device according to Supplementary Note 2, wherein the control unit further determines whether a distance between the minimum values ​​of the first objective function and the second objective function is greater than or equal to a threshold, and if the distance between the minimum values ​​is greater than or equal to the threshold, calculates a value of a weighting coefficient of the third objective function based on values ​​of weighting coefficients set for the first objective function and the second objective function.

[0118] (Note 4) For an objective function including a plurality of component objective functions, a first objective function, a second objective function, and a third objective function are generated by making the values ​​of weighting coefficients multiplied by each of the plurality of component objective functions different from each other; Calculating values ​​of the first objective function and the second objective function to perform a solution search; a solution obtained by the solution search using the first objective function and a solution obtained by the solution search using the second objective function are input to the third objective function to calculate a value of the third objective function; outputting a solution obtained by the solution search using the first objective function, a solution obtained by the solution search using the second objective function, and a solution obtained based on the value of the third objective function; An information processing method characterized in that the processing is executed by a computer.

[0119] (Supplementary Note 5) The information processing method according to Supplementary Note 4, further comprising the steps of: generating a plurality of objective functions including the first objective function and the second objective function by making the values ​​of weighting coefficients different from each other; identifying, based on the minimum value of the first objective function, an objective function among the plurality of objective functions which has the closest minimum value as the second objective function; and calculating, based on the values ​​of weighting coefficients set for the first objective function and the second objective function, a weighting coefficient value for the third objective function.

[0120] (Appendix 6) The information processing method according to appendix 5, further comprising determining whether a distance between the respective minimum values ​​of the first objective function and the second objective function is equal to or greater than a threshold, and if the distance between the respective minimum values ​​is equal to or greater than a threshold, calculating a value of a weighting coefficient of the third objective function based on values ​​of weighting coefficients set for the first objective function and the second objective function.

[0121] (Appendix 7) For an objective function including a plurality of component objective functions, a first objective function, a second objective function, and a third objective function are generated by making the values ​​of weighting coefficients multiplied by each of the plurality of component objective functions different from each other; Calculating values ​​of the first objective function and the second objective function to perform a solution search; a solution obtained by the solution search using the first objective function and a solution obtained by the solution search using the second objective function are input to the third objective function to calculate a value of the third objective function; outputting a solution obtained by the solution search using the first objective function, a solution obtained by the solution search using the second objective function, and a solution obtained based on the value of the third objective function; An information processing program that causes a computer to execute a process.

[0122] (Appendix 8) The information processing program according to appendix 7, further comprising the steps of: generating a plurality of objective functions including the first objective function and the second objective function by varying values ​​of weighting coefficients; identifying an objective function among the plurality of objective functions having the closest minimum value as the second objective function based on a minimum value of the first objective function; and calculating a value of a weighting coefficient of the third objective function based on values ​​of weighting coefficients set for the first objective function and the second objective function.

[0123] (Appendix 9) The information processing program according to appendix 8, further comprising determining whether a distance between the minimum values ​​of the first objective function and the second objective function is equal to or greater than a threshold, and if the distance between the minimum values ​​is equal to or greater than a threshold, calculating a value of a weighting coefficient of the third objective function based on values ​​of weighting coefficients set for the first objective function and the second objective function. [Explanation of symbols]

[0124] 100,200 Information processing equipment 110,210 Communications Department 120,220 Input section 130,230 Display section 140,240 storage section 141,241 Weighting factor table 142,242 shared buffers 143,243 Calculation result table 150,250 Control section 151,251 calculation section 152,252 Output section

Claims

1. generating a first objective function, a second objective function, and a third objective function by making values ​​of weighting coefficients by which the plurality of component objective functions are multiplied differently from one another for an objective function including a plurality of component objective functions; Calculating values ​​of the first objective function and the second objective function to perform a solution search; a solution obtained by the solution search using the first objective function and a solution obtained by the solution search using the second objective function are input to the third objective function to calculate a value of the third objective function; outputting a solution obtained by the solution search using the first objective function, a solution obtained by the solution search using the second objective function, and a solution obtained based on the value of the third objective function; An information processing device comprising a control unit for executing processing.

2. The information processing device according to claim 1, characterized in that the control unit further performs a process of generating a plurality of objective functions including the first objective function and the second objective function by making the values ​​of weighting coefficients different from each other, identifying an objective function among the plurality of objective functions having the closest minimum value as the second objective function based on a minimum value of the first objective function, and calculating a value of a weighting coefficient of the third objective function based on values ​​of weighting coefficients set for the first objective function and the second objective function.

3. The information processing device according to claim 2, characterized in that the control unit further determines whether a distance between the respective minimum values ​​of the first objective function and the second objective function is equal to or greater than a threshold, and if the distance between the respective minimum values ​​is equal to or greater than the threshold, calculates a value of a weighting coefficient of the third objective function based on values ​​of weighting coefficients set for the first objective function and the second objective function.

4. generating a first objective function, a second objective function, and a third objective function by making values ​​of weighting coefficients by which the plurality of component objective functions are multiplied differently from one another for an objective function including a plurality of component objective functions; Calculating values ​​of the first objective function and the second objective function to perform a solution search; a solution obtained by the solution search using the first objective function and a solution obtained by the solution search using the second objective function are input to the third objective function to calculate a value of the third objective function; outputting a solution obtained by the solution search using the first objective function, a solution obtained by the solution search using the second objective function, and a solution obtained based on the value of the third objective function; An information processing method characterized in that the processing is executed by a computer.

5. generating a first objective function, a second objective function, and a third objective function by making values ​​of weighting coefficients by which the plurality of component objective functions are multiplied differently from one another for an objective function including a plurality of component objective functions; Calculating values ​​of the first objective function and the second objective function to perform a solution search; a solution obtained by the solution search using the first objective function and a solution obtained by the solution search using the second objective function are input to the third objective function to calculate a value of the third objective function; outputting a solution obtained by the solution search using the first objective function, a solution obtained by the solution search using the second objective function, and a solution obtained based on the value of the third objective function; An information processing program that causes a computer to execute a process.

Citation Information

Patent Citations

  • Device and method for multipurpose optimization and storage medium storing multipurpose optimization program

    JP2000268018A

  • Optimization processing apparatus

    JP2004030413A

  • Apparatus, method and program for multiobjective optimization

    JP2010152851A

  • Multi-function improvement for machine learning systems

    US20200074348A1