Coefficient determination device, coefficient determination method and coefficient determination program
The coefficient determination device and method address the challenge of large search spaces and convergence issues in optimization systems by calculating evaluation values and determining weighting coefficients efficiently, enhancing performance and reducing processing time.
Patent Information
- Application Number
- JP2024064146
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-11
- Publication Date
- 2025-10-24
AI Technical Summary
The optimization system requires numerous updates of weighting factors and has concerns about convergence performance due to a large search space, especially when considering realistic processing time constraints.
A coefficient determination device and method that reduce the search space for weighting coefficients by calculating first and second evaluation values based on optimal and assumed solution data, determining weighting coefficients based on the differences between these values.
Improves convergence performance within limited processing time by reducing the search space for weighting factors and facilitating the design or adjustment of evaluation functions.
Smart Images

Figure 2025161177000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a coefficient determination device and the like. [Background technology]
[0002] Patent Document 1 discloses an optimization system including a forward optimizer and a backward optimizer. The forward optimizer calculates an initial objective and constraints based on problem data, or calculates an optimal decision based on the objective and constraints learned from the backward optimizer. The backward optimizer acts as an updater of the objective and constraints. The learned objective and constraints are sent to the forward optimizer. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Special Publication No. 2022-502795 Summary of the Invention [Problem to be solved by the invention]
[0004] The optimization system of Patent Document 1 requires an enormous number of repeated updates of weighting factors (weight parameters) to optimize the weighting factors as objectives and constraints. Furthermore, since the search space for weighting factors is enormous, there are concerns about the convergence performance of the weighting factors when realistic processing time is taken into consideration.
[0005] One aspect of the present disclosure aims to reduce the search space for weighting coefficients and improve convergence performance within a limited processing time. [Means for solving the problem]
[0006] A coefficient determination device according to one aspect of the present disclosure includes an optimization unit that inputs a plurality of problem data prepared in advance into an optimization model that optimizes a plan based on an evaluation index, and outputs optimal solution data that optimizes the plan; a first evaluation value calculation unit that calculates a first evaluation value as a value of the evaluation index based on the optimal solution data output by the optimization unit; and a second evaluation value calculation unit that calculates a second evaluation value as a value of the evaluation index based on assumed solution data that indicates the plan that is assumed to be optimal and that is prepared in advance corresponding to each of the plurality of problem data. and a coefficient determination unit that determines a weighting coefficient that constitutes the evaluation index based on the difference between the first evaluation value and the second evaluation value, wherein each of a plurality of candidate values prepared in advance is set as the weighting coefficient of the evaluation index, so that the first evaluation value calculation unit and the second evaluation value calculation unit calculate the first evaluation value and the second evaluation value for each candidate value, and the coefficient determination unit determines the weighting coefficient based on the difference for each candidate value.
[0007] A coefficient determination method according to one embodiment of the present disclosure includes: an optimization step of inputting a plurality of problem data sets prepared in advance into an optimization model that optimizes a plan based on an evaluation index, and outputting optimal solution data that optimizes the plan; a first evaluation value calculation step of calculating a first evaluation value as a value of the evaluation index based on the optimal solution data output in the optimization step; a second evaluation value calculation step of calculating a second evaluation value as a value of the evaluation index based on assumed solution data that indicates the plan that is assumed to be optimal, which is prepared in advance corresponding to each of the plurality of problem data; and a coefficient determination step of determining a weight coefficient constituting the evaluation index based on the difference between the first evaluation value and the second evaluation value, wherein each of a plurality of candidate values prepared in advance is set as the weight coefficient of the evaluation index, so that in the first evaluation value calculation step and the second evaluation value calculation step, the first evaluation value and the second evaluation value are calculated for each of the candidate values, and in the coefficient determination step, the weight coefficient is determined based on the difference for each of the candidate values. [Effects of the Invention]
[0008] According to one aspect of the present disclosure, the search space for weighting factors can be reduced, and convergence performance can be improved within a limited processing time. [Brief explanation of the drawings]
[0009] [Figure 1] 1 is a block diagram showing an example of a system including a coefficient determination device and a planning device according to a first embodiment. [Figure 2] FIG. 10 is a schematic diagram showing an example of a cast allocation plan. [Figure 3] 10 is an example of a graph in which a plurality of candidate values are applied to the weighting coefficient of an evaluation index. [Figure 4] 4 is a flowchart showing an example of processing by the coefficient determination device according to the first embodiment. [Figure 5] 10 is another example of a graph in which a plurality of candidate values are applied to the weighting coefficient of the evaluation index. [Figure 6] 10 is another example of a graph in which a plurality of candidate values are applied to the weighting coefficient of the evaluation index. [Figure 7] FIG. 10 is a schematic diagram illustrating an example of optimization of an ordering plan according to the second embodiment. [Figure 8] FIG. 11 is a schematic diagram showing an example of optimization of a cutting plan for a hat-shaped steel sheet pile according to a third embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0010] Optimization methods are widely used when automatically creating plans. Optimization methods utilize an optimization model that optimizes a plan and functions as a scheduler that creates the plan. The optimization model includes an evaluation function that evaluates the plan (the performance of the schedule), and is given business constraints. The optimization model functions as a model that searches for a plan that minimizes (or maximizes) the evaluation function within the range of the constraints.
[0011] The evaluation function is a function used to evaluate the performance of a schedule using a score. The evaluation function is designed by the designer of the evaluation function through repeated interviews with experts in the business. Furthermore, if constraints change during the operation and maintenance phase, the evaluation function must be adjusted. Since it is difficult for the operation and maintenance staff to adjust the evaluation function, the designer of the evaluation function must conduct repeated interviews with experts, just as during the design phase. Therefore, the designer's burden in designing or adjusting the evaluation function is heavy.
[0012] One object of one aspect of the present disclosure is to facilitate the design or adjustment of an evaluation function and reduce the burden on a designer. One object of one aspect of the present disclosure is to facilitate the adjustment of weighting coefficients included in the evaluation function, thereby reducing the burden on a designer and improving convergence performance within a limited processing time.
[0013] In this embodiment, planning in a steel manufacturing process will be described as an example of a method for adjusting weight coefficients included in an evaluation function. First, in embodiment 1, a cast allocation plan will be used as an example of planning in a steel manufacturing process to describe an example of determining weight coefficients included in an evaluation function. Below, before describing the example of determining weight coefficients, an example of a method for formulating a cast allocation plan will be described.
[0014] [Embodiment 1] <Optimization of cast allocation plan> In the steel manufacturing process, pig iron produced in a blast furnace is transported to a converter, where the composition is adjusted in ladle (charge) units. The molten steel is then poured into a tundish, where it is continuously cast and cut to produce intermediate products such as slabs, blooms, and billets. This continuous casting and cutting process is called the continuous casting process. The continuous casting process is carried out using a continuous casting machine. In the continuous casting process, a unit (production lot) of intermediate products is continuously produced without interrupting the continuous casting of molten steel. Multiple intermediate products are produced from one cast in a single continuous operation. Each intermediate product has a composition and size according to a customer's order. A grouping of compositional compositions according to a specified tolerance range is called a steel grade.
[0015] The planning device creates a casting allocation plan for allocating slabs to be produced to casts, which are units of continuous casting, for a predetermined period (e.g., the next week) based on an order. The casting allocation plan is an example of a plan for producing steel products (specifically, intermediate products thereof). In the following description of the first embodiment, the intermediate products to be produced are slabs.
[0016] FIG. 2 is a schematic diagram showing an example of a cast allocation plan in which slabs SL are allocated to cast CAs for a certain period of time based on an order. The planning device allocates at least one cast CA, which aggregates multiple slabs SL, to a continuous casting machine. FIG. 2 shows an example in which the cast CA includes multiple aggregates of slabs SL of the same steel type, but the steel types of the aggregates are different from one another. FIG. 2 shows an example in which the cast CA includes a first aggregate CA1, a second aggregate CA2, and a third aggregate CA3.
[0017] Although the continuous casting machine can change the width of the slab SL during production of the slab SL, the width cannot be changed suddenly due to equipment restrictions. Therefore, the planning device assigns each slab SL to a cast CA so that the width difference (or the total width difference) between two continuously cast slabs SL is within the width difference allowable by the continuous casting machine and is as small as possible.
[0018] As shown in Fig. 2, the planning device assigns each slab SL to a cast CA so that the difference in width WI between the continuously cast slabs SL1 and SL2 is as small as possible. The planning device also assigns each slab SL to a cast CA so that the difference in width WI between the slab SL2 of the first continuously cast assembly CA1 and the slab SL3 of the second continuously cast assembly CA2 is as small as possible. Similarly, the planning device assigns each slab SL to a cast CA so that the difference in width WI between the slab SL4 of the second continuously cast assembly CA2 and the slab SL5 of the third continuously cast assembly CA3 is as small as possible.
[0019] Furthermore, the chemical compositions of cast CAs of different steel grades are different from each other. Therefore, when cast CAs of different chemical compositions are continuously cast, the chemical compositions at the joints between them become mixed, and the slabs SL produced from the joints become inferior or scrap. For example, in FIG. 2, the chemical compositions at the joints between different cast CAs become mixed, resulting in inferior quality or scrap in a certain range along the casting length of slab SL2, which is the last slab produced in the first assembly CA1 at the front stage, and slab SL3, which is the first slab produced in the second assembly CA2 at the rear stage. Similarly, the chemical compositions at the joints between slabs SL4 and SL5 also become inferior quality or scrap to a certain extent due to the mixing of chemical compositions at the joints.
[0020] Therefore, the planning device allocates slabs SL to casts CA so that the slabs allocated to each cast have as similar compositions as possible and so that continuous casting of molten steels with different compositions is minimized. Even when molten steels with different compositions are continuously cast, the planning device allocates slabs SL to casts CA so that molten steels with compositions that are less likely to be reduced to low-grade or scrap are continuously cast. By allocating slabs in this manner, the casting yield is improved.
[0021] In addition, the planning device allocates slabs SL to the cast CA so that the weight of excess material (excess material weight) that cannot be allocated to the slab to be planned in each charge is as small as possible. Also, the planning device allocates slabs SL to the cast CA so that the weight of slabs that cannot be used for the current production due to equipment constraints of the continuous casting machine, etc., and that will be incorporated into the next plan (next slab weight) is as small as possible.
[0022] <Evaluation function> An optimization model is designed to realize the above-described allocation of slabs and casts. The optimization model is a model that optimizes a plan based on evaluation indices (evaluation axes). The optimization model of this embodiment is a model that optimizes a plan related to slab production, and includes multiple evaluation indices for evaluating the plan. Specifically, the optimization model includes an evaluation function that includes multiple evaluation indices. The evaluation function is, for example, the following equation: Evaluation function = α1×x1+α2×x2+…+αn×xn The value of each term of the evaluation function (α1×x1, α2×x2, ..., αn×xn) is the evaluation value of each evaluation index. α1, α2, ..., αn are weighting coefficients for each evaluation index. x1, x2, ..., xn are index values for each evaluation index. In this embodiment, n is an integer equal to or greater than 2. However, n may also be 1.
[0023] Examples of evaluation indices include the number of casts, the number of joints of different steel types, the weight of excess material [t], and the weight of the next slab [t].
[0024] Constraints include, for example, equipment constraints on the continuous casting machine (for example, the amount of change in slab width that can be changed, the number of slabs that can be continuously cast in a given period, etc.), the number of orders, and delivery dates.
[0025] <Product data and optimal solution data> The optimization model inputs product data related to slabs that have been prepared in advance, and outputs (solves) optimal solution data that optimizes the plan. The product data is an example of problem data that is input to the optimization model.
[0026] The product data is data related to the slabs to be manufactured. The product data includes, for example, data on the slab weight [t], slab width [mm], steel type, and delivery date, all of which are associated with the slab's unique number. The optimal solution data includes, for example, data on the cast to which each slab is assigned and the steel type, associated with the product data.
[0027] The optimization model receives input of multiple product data and outputs solution data corresponding to each product data. The solution data has the same indices as the indices (such as data related to casting) included in the optimization data. The optimization model calculates the index value of each evaluation index based on the solution data. The optimization model inputs the index value of each evaluation index into an evaluation function and calculates the evaluation value of the evaluation function (the sum of the evaluation values of each evaluation index (α × x)). The optimization model searches for solution data that minimizes the evaluation value of the evaluation function and outputs that solution data as optimization data. At this time, the optimization model may search for solution data that minimizes the evaluation value of the evaluation function while applying random numbers to the solution data to change the solution data.
[0028] The value of each of the above-mentioned evaluation indexes is calculated using at least one data item included in the solution data. The number of casts is calculated, for example, using data related to the casts. The number of joints between different steel types is calculated, for example, using data related to the casts and the steel type. The weight of excess material is calculated, for example, using the number of casts and the steel type. The weight of the next slab is calculated, for example, using the delivery date.
[0029] <System> Next, a method for determining weighting coefficients of an evaluation function included in an optimization model used in a planning device will be described. Fig. 1 is a block diagram showing an example of a system including a coefficient determination device 1 and a planning device 2 according to this embodiment. Before describing the coefficient determination device 1, a brief description will be given of the planning device 2.
[0030] <Planning Device> The planning device 2 is a device that creates a plan using an optimization model 143. In this embodiment, the planning device 2 creates a cast allocation plan. The planning device 2 includes, for example, a communication unit 21, a control unit 22, and a memory unit 23. The memory unit 23 stores, for example, the optimization model 143.
[0031] The communication unit 21 transmits and receives data to and from the coefficient determination device 1. For example, the communication unit 21 receives an optimization model 143 for which the coefficient determination device 1 has determined weighting coefficients of an evaluation function, and stores the received optimization model 143 in the storage unit 23. This allows the planning device 2 to create a plan using the optimization model 143 for which the weighting coefficients have been adjusted. The communication unit 21 may also transmit the optimization model 143 used to create the plan to the coefficient determination device 1. This allows the coefficient determination device 1 to adjust the weighting coefficients of the optimization model 143 actually used by the planning device 2, and the planning device 2 to create a plan using the optimization model 143 for which the weighting coefficients have been adjusted.
[0032] The control unit 22 includes an optimization unit 221. The optimization unit 221 outputs optimal solution data obtained by optimizing the plan by inputting product data related to the slab into the optimization model 143. The product data and optimal solution data are as described above, and the processing of the optimization unit 221 is the same as one example of the solution-finding method for the optimization model described above.
[0033] In this embodiment, the optimization unit 221 inputs product data into the optimization model 143 stored in the storage unit 23, but this is not limiting, and the optimization model 143 may not be stored in the storage unit 23. The optimization model 143 may be stored in an external device communicatively connected to the planning device 2. In this case, the optimization unit 221 may transmit the product data to the external device via the communication unit 21, and obtain optimal solution data as a result.
[0034] <Coefficient determination device> As shown in FIG. 1, the coefficient determination device 1 includes, for example, a display unit 11, an input unit 12, a control unit 13, a storage unit 14, and a communication unit 15.
[0035] The display unit 11 displays various information. In this embodiment, the display unit 11 is, for example, a display device that displays output information from the control unit 13, such as a graph as shown in FIG. 3 or determined weighting coefficients, under the control of the display control unit 135. The input unit 12 is an input device that accepts input operations to the coefficient determination device 1. The control unit 13 is a control device that controls the operation of the coefficient determination device 1. The memory unit 14 is a storage device that stores data necessary for control by the control unit 13. The memory unit 14 stores, for example, product data 141, assumed solution data 142, an optimization model 143, and coefficient data 144. The communication unit 15 transmits and receives data to and from the planning device 2. The communication unit 15 transmits and receives, for example, the optimization model 143.
[0036] The coefficient determination device 1 may not include at least one of the display unit 11, the input unit 12, and the storage unit 14. In this case, the coefficient determination device 1 is communicably connected to the display unit 11, the input unit 12, and / or the storage unit 14.
[0037] The control unit 13 includes an optimization unit 131 , a first evaluation value calculation unit 132 , a second evaluation value calculation unit 133 , a difference calculation unit 134 , a display control unit 135 , and a coefficient determination unit 136 .
[0038] The optimization unit 131 inputs product data 141 related to slabs prepared in advance into the optimization model 143, and outputs optimal solution data obtained by optimizing the plan. The optimization unit 131, product data 141, and optimal solution data are as described above, and the processing of the optimization unit 131 is the same as the example of the solution-finding method for the optimization model described above. However, the optimization unit 131 sets the same weight coefficients as the weight coefficients set by the first evaluation value calculation unit 132, which will be described later, as the weight coefficients of the evaluation function of the optimization model 143.
[0039] In this embodiment, the optimization unit 131 inputs the product data 141 to the optimization model 143 stored in the storage unit 14, but this is not limiting, and the optimization model 143 may not be stored in the storage unit 14. The optimization model 143 may be stored in an external device communicatively connected to the coefficient determination device 1. In this case, the optimization unit 131 may transmit the product data 141 to the external device via the communication unit 15, and obtain optimal solution data as a result. This external device may be the same as the external device communicatively connected to the planning device 2.
[0040] The storage unit 14 stores assumed solution data 142 prepared in advance corresponding to the product data 141. The weighting coefficients determined by the coefficient determination unit 136 are coefficients adjusted so that, when the product data 141 is input to the optimization model 143, the assumed solution data 142 will be the same as or close to the assumed solution data 142 as optimal solution data. Therefore, the data prepared (collected) as the assumed solution data 142 for the product data 141 is operationally appropriate data (operationally desirable data). As such assumed solution data 142, for example, a skilled worker can prepare data that is reasonably appropriate. In other words, the assumed solution data 142 is model solution data (data indicating a plan that is assumed to be optimal) desired as the optimal solution of the optimization model 143, and can also be said to be model solution data for the product data 141 input to the optimization unit 131.
[0041] In this embodiment, a plurality of pieces of product data 141 are prepared in the storage unit 14. The product data 141 is one data set including at least one piece of data related to a product (in this embodiment, one data set including at least one piece of data related to a slab, such as slab weight). In this embodiment, a plurality of pieces of product data 141, each consisting of one data set, are stored in the storage unit 14. Therefore, in this embodiment, a plurality of pieces of assumed solution data 142 corresponding to each piece of product data 141 are prepared in the storage unit 14. In addition, the optimization unit 131 outputs optimal solution data for each of the plurality of pieces of product data 141.
[0042] The number of product data 141 may be set according to the content of the plan output by the optimization model 143. The greater the number of product data 141 and assumed solution data 142, the higher the accuracy of determining (estimating) the weighting coefficients. On the other hand, the greater the number of product data 141 and assumed solution data 142, the longer the processing time required by the optimization unit 131, the first evaluation value calculation unit 132, the second evaluation value calculation unit 133, etc. Therefore, the number of product data 141 and assumed solution data 142 may be determined taking into consideration the trade-off between the estimation accuracy of the weighting coefficients and the processing time. The number of product data 141 and assumed solution data 142 may be, for example, several tens to 100 sets. However, approximately 1,000 sets of product data 141 and assumed solution data 142 may be prepared.
[0043] The first evaluation value calculation unit 132 calculates a first evaluation value as the value of an evaluation index in the evaluation function based on the optimal solution data output by the optimization unit 131. In this embodiment, the evaluation function includes multiple evaluation indexes. Therefore, the first evaluation value calculation unit 132 calculates a first evaluation value for each of the multiple evaluation indexes. The first evaluation value calculation unit 132 calculates an index value for each evaluation index based on the optimal solution data calculated by the optimization unit 131. This calculation is the same as the method for calculating the index value of each evaluation index based on the solution data described above. The first evaluation value calculation unit 132 calculates a first evaluation value as the evaluation value of each evaluation index by multiplying the index value of each evaluation index by a weighting coefficient for each evaluation index.
[0044] The first evaluation value calculation unit 132 calculates a first evaluation value for each candidate value by setting each of a plurality of candidate values prepared in advance for one evaluation index. In this embodiment, the first evaluation value calculation unit 132 sets each of a plurality of candidate values prepared in advance for the weight coefficient of the evaluation index to be determined (investigated) in the evaluation function, and sets a fixed value for the weight coefficient of at least one evaluation index that is not to be determined. By setting the weight coefficients in this manner, the first evaluation value calculation unit 132 calculates a first evaluation value corresponding to each candidate value for each evaluation index. This makes it possible to calculate the first evaluation value of each evaluation index when the optimization unit 131 outputs optimal solution data using an evaluation function in which a candidate value or a fixed value is set for the weight coefficient of each evaluation index.
[0045] In this embodiment, the control unit 13 selects one evaluation index as the evaluation index to be determined at a time. Specifically, for example, when the weighting coefficient "α1" of the number of cast members is set as the weighting coefficient to be determined, the first evaluation value calculation unit 132 sets each of multiple candidate values for the weighting coefficient "α1", and sets fixed values for the weighting coefficients "α2" to "αn" of the other evaluation indexes. In this embodiment, the first evaluation value calculation unit 132 is described as setting a candidate value or a fixed value, but the control unit 13 may also be provided with a function (setting unit) to set a candidate value or a fixed value.
[0046] The candidate values and fixed values of the weighting coefficients are stored in the storage unit 14 as coefficient data 144.
[0047] The multiple candidate values are set to increase exponentially (e.g., 1, 2, 5, 10, 20, 50, 100, ...). By setting them in this way, it becomes easier to recognize significant differences in the target difference (described below) for each candidate value. In addition, the range of candidate values is set to include values that are sufficiently small to large so that the weighting coefficient determination method described below can be realized.
[0048] For example, an expert can prepare a weighting coefficient for each evaluation index that is reasonably appropriate for the operation. Therefore, as multiple candidate values and fixed values set for each evaluation index, values that are reasonably appropriate for the operation (values that are considered optimal) can be prepared. In this embodiment, different candidate values and fixed values are prepared for each evaluation index. However, the candidate values and fixed values may be common values for multiple evaluation indexes.
[0049] When the optimization unit 131 performs processing using random numbers, the optimization unit 131 may perform processing while changing the random number seed, for example, once every 3 to 5 times, taking into consideration the stability of the random numbers. Furthermore, when calculating the first evaluation value for each candidate value (serial processing), the calculation may take several days depending on the number of candidate values and the number of random number seeds. Therefore, the calculation of the first evaluation value may be performed by parallel processing, for example, by calculating the first evaluation value for each candidate value in parallel.
[0050] The second evaluation value calculation unit 133 calculates a second evaluation value as a value of an evaluation index in an evaluation function based on the assumed solution data 142 stored in the storage unit 14. Specifically, the second evaluation value calculation unit 133 calculates a second evaluation value for each candidate value by setting a candidate value for the weight coefficient of one evaluation index. In this embodiment, the second evaluation value calculation unit 133 calculates a second evaluation value corresponding to each candidate value for each evaluation index by setting a candidate value and a fixed value for the weight coefficient of each evaluation index. The second evaluation value calculation unit 133 sets the same weight coefficients (candidate value and fixed value) as the weight coefficients set by the first evaluation value calculation unit 132 as the weight coefficients of each evaluation index.
[0051] The second evaluation value calculation unit 133 calculates the index value of each evaluation index based on the assumed solution data 142. This calculation is the same as the calculation method for the index value of each evaluation index based on the solution data described above. The second evaluation value calculation unit 133 calculates a second evaluation value as the evaluation value of each evaluation index by multiplying the index value of each evaluation index by the weighting coefficient of each evaluation index.
[0052] The difference calculation unit 134 calculates the difference between the first evaluation value calculated by the first evaluation value calculation unit 132 and the second evaluation value calculated by the second evaluation value calculation unit 133. Specifically, the difference calculation unit 134 calculates a target difference and a non-target difference using the first evaluation value and the second evaluation value. The target difference is the difference between the first evaluation value and the second evaluation value for the weight coefficient of the evaluation index that is the determination target. The non-target difference is the difference between the first evaluation value and the second evaluation value for the weight coefficient of at least one evaluation index that is not the determination target.
[0053] For example, when the weighting factor "α1" is the weighting factor to be determined, the first evaluation value calculation unit 132 calculates a first evaluation value when one of multiple candidate values is set as the weighting factor "α1." The second evaluation value calculation unit 133 calculates a second evaluation value when the candidate value is set as the weighting factor "α1." The difference calculation unit 134 then calculates the difference between this first evaluation value and the second evaluation value as the target difference. The difference calculation unit 134 similarly calculates target differences for each of the other candidate values.
[0054] Furthermore, when the weighting coefficient "α1" is the weighting coefficient to be determined, the first evaluation value calculation unit 132 calculates a first evaluation value when fixed values are set for the weighting coefficients "α2" to "αn." The second evaluation value calculation unit 133 calculates a second evaluation value when fixed values are set for the weighting coefficients "α2" to "αn." The difference calculation unit 134 then calculates the difference between this first evaluation value and the second evaluation value as a non-target difference.
[0055] The display control unit 135 displays on the display unit 11 a graph in which the horizontal axis represents a plurality of candidate values and the vertical axis represents the target difference and the non-target difference calculated by the difference calculation unit 134.
[0056] Figure 3 is an example of a graph when multiple candidate values are applied to the weighting coefficient of an evaluation index. Figure 3 shows an example of a graph when multiple candidate values are applied to the weighting coefficient of the evaluation index "next slab weight." The graph is a stacked graph in which a bar graph GR1 of the target difference and a bar graph GR2 of the non-target difference are stacked. The bar graph GR2 of the non-target difference shows the entire bar graph of multiple non-target differences.
[0057] The display control unit 135 displays a bar graph GR1 of the target difference and a bar graph GR2 of the non-target difference as the graphs. Furthermore, as shown in Fig. 3, the display control unit 135 displays a line graph TG connecting the target differences for each candidate value and a line graph NTG connecting the total values of the non-target differences for each candidate value on the display unit 11. The display control unit 135 can display such graphs for each evaluation index.
[0058] In this embodiment, the difference calculation unit 134 calculates "first evaluation value (evaluation value based on the solution result (optimal solution data) of the optimization model 143) - second evaluation value (evaluation value based on the assumed solution data 142)." Therefore, the larger the difference value in the positive direction, the more undesirable the first evaluation value is. On the other hand, the larger the difference value in the negative direction, the more undesirable the second evaluation value is.
[0059] As shown in Figure 3, the smaller the weighting coefficient of the evaluation index to be determined (the further to the left in Figure 3), the larger the target difference, which is the difference between the evaluation indexes to be determined, becomes in the positive direction, and the larger the non-target difference, which is the difference between the evaluation indexes to be not determined, becomes in the negative direction. In other words, the smaller the weighting coefficient of the evaluation index to be determined, the less desirable the first evaluation value of the evaluation index for which the weighting coefficient is determined, and the more desirable the first evaluation value of the evaluation index for which the weighting coefficient is not determined.
[0060] On the other hand, it can be seen that the larger the weighting coefficient of the evaluation index to be determined (the further to the right in Figure 3), the smaller the target difference and the larger the non-target difference. In other words, it can be seen that the larger the weighting coefficient of the evaluation index to be determined, the more desirable the first evaluation value of the evaluation index for which the weighting coefficient is determined, and the more undesirable the first evaluation value of the evaluation index for which the weighting coefficient is not determined.
[0061] This tendency appears because the optimization model 143 functions to minimize the evaluation value of the entire evaluation function by concentrating the violation penalty on the evaluation index with a small weighting coefficient.
[0062] 3, the following can be assumed. That is, it can be assumed that the candidate value or a value P close to the candidate value when the difference between the target difference and the sum of the non-target differences is minimum (zero) is the value closest to the weighting coefficient in the weight balance (balance of the weighting coefficients of the evaluation indexes) that can obtain the assumed solution data 142. The value P corresponds to the value of the weighting coefficient at the intersection of the line graph TG of the target difference and the line graph NTG of the non-target difference.
[0063] The coefficient determination unit 136 determines weighting coefficients constituting the evaluation index based on the difference between the first evaluation value and the second evaluation value corresponding to each of the multiple candidate values. In this embodiment, the coefficient determination unit 136 determines the weighting coefficient of the evaluation index to be determined based on the target difference and the non-target difference calculated by the difference calculation unit 134 corresponding to each of the multiple candidate values for each of the multiple evaluation indexes. Based on the above assumptions, the coefficient determination unit 136 determines the candidate value or value P near the candidate value when the difference between the target difference and the non-target difference is minimum as the weighting coefficient of the evaluation index to be determined.
[0064] In this embodiment, the coefficient determination unit 136 determines a weighting coefficient of the evaluation index to be determined by acquiring an input based on the display result of the graph displayed by the display control unit 135. A user such as a designer or an operation and maintenance person visually checks the graph displayed on the display unit 11 to identify a candidate value P or a value P near the candidate value when the difference between the target difference and the non-target difference is minimum. The user inputs the identified value P via the input unit 12. The coefficient determination unit 136 determines this input value P as the weighting coefficient of the evaluation index to be determined.
[0065] The coefficient determination unit 136 sets the weight coefficient of the evaluation index for which it has determined the weight coefficient as a fixed value, and specifies a weight coefficient of an evaluation index other than the evaluation index for which it has determined the weight coefficient. This allows the control unit 13 to perform the above-mentioned processing and determine the value of the weight coefficient of the other evaluation index.
[0066] For example, when the coefficient determination unit 136 determines the weighting coefficient "α1," it identifies a weighting coefficient (e.g., "α2") for another evaluation index and determines the weighting coefficient "α2" through the above-mentioned processing. In this determination, the weighting coefficient "α1" is set to the value determined by the coefficient determination unit 136. Thereafter, the coefficient determination unit 136 also sets the weighting coefficient "α2" to the determined value, identifies a weighting coefficient (e.g., "α3") for another evaluation index, and determines the weighting coefficient "α3" through the above-mentioned processing. In this way, the control unit 13 can determine weighting coefficients for all evaluation indexes included in the evaluation function.
[0067] <Coefficient determination method> FIG. 4 is a flowchart showing an example of processing by the coefficient determination device 1 according to this embodiment.
[0068] First, the first evaluation value calculation unit 132 sets one candidate value out of multiple candidate values as the weighting coefficient of the evaluation index to be determined in the evaluation function, and sets a fixed value as the weighting coefficient of the evaluation index not to be determined (S1).
[0069] The optimization unit 131 inputs the product data 141 to the optimization model 143 having the evaluation function for which the weighting coefficients were set in S1. As a result, the optimization unit 131 outputs optimal solution data for the product data 141 (S2; optimization step).
[0070] The first evaluation value calculation unit 132 calculates an index value for each evaluation index from the optimal solution data output in S2 (S3). The first evaluation value calculation unit 132 multiplies each calculated index value by a candidate value or a fixed value corresponding to each index value set in S1 to calculate a first evaluation value for each evaluation index (S4; first evaluation value calculation step).
[0071] Furthermore, the second evaluation value calculation unit 133 calculates an index value for each evaluation index from the assumed solution data 142 corresponding to the product data 141 input to the optimization model 143 in S2 (S5). The second evaluation value calculation unit 133 multiplies each calculated index value by a candidate value or a fixed value corresponding to each index value set in S1 to calculate a second evaluation value for each evaluation index (S6; second evaluation value calculation step). The processing by the first evaluation value calculation unit 132 (S3 and S4) and the processing by the second evaluation value calculation unit 133 (S5 and S6) may be performed in parallel or in reverse order.
[0072] The difference calculation unit 134 calculates a target difference as the difference between the first evaluation value for the evaluation index of the determination target calculated in S4 and the second evaluation value for the evaluation index of the determination target calculated in S6 (S7). The difference calculation unit 134 also calculates a non-target difference as the difference between the first evaluation value for the evaluation index of the non-determined target calculated in S4 and the second evaluation value for the evaluation index of the non-determined target calculated in S6 (S7). The non-target difference is calculated for each evaluation index.
[0073] The first evaluation value calculation unit 132 determines whether all candidate values have been set for the weighting coefficient of the evaluation index to be determined (S8). If the first evaluation value calculation unit 132 determines that all candidate values have not been set for the weighting coefficient of the evaluation index to be determined (NO in S8), it selects one of the at least one candidate value that has not been set as a new candidate value (S9). Thereafter, the first evaluation value calculation unit 132 performs the process of S1. In the process of S1, the first evaluation value calculation unit 132 sets the new candidate value selected in S9 as the weighting coefficient of the evaluation index to be determined. In this way, target differences and non-target differences corresponding to all candidate values are calculated.
[0074] When the first evaluation value calculation unit 132 determines that all candidate values have been set for the weighting coefficient of the evaluation index to be determined (YES in S8), the display control unit 135 displays a graph showing the target difference and the non-target difference for each of the multiple candidate values on the display unit 11 (S10). In this embodiment, as described above, the display control unit 135 displays a bar graph and a line graph on the display unit 11.
[0075] After displaying the graph, the control unit 13 waits for the user to input an input value of the weighting coefficient specified from the graph. When the coefficient determination unit 136 receives the input of the weighting coefficient, the coefficient determination unit 136 determines the input value as the weighting coefficient of the evaluation index to be determined (S11; coefficient determination step).
[0076] The coefficient determination unit 136 determines whether weight coefficients have been determined for all evaluation indexes (S12). If the coefficient determination unit 136 determines that weight coefficients have not been determined for all evaluation indexes (NO in S12), it specifies the determined weight coefficients as fixed values for the evaluation indexes for which weight coefficients have been determined. Furthermore, the coefficient determination unit 136 specifies weight coefficients for evaluation indexes other than the evaluation index in question as targets for determination (S13). Thereafter, the processing of S1 is performed. In this manner, weight coefficients for all evaluation indexes are determined. On the other hand, if the coefficient determination unit 136 determines that weight coefficients have been determined for all evaluation indexes (YES in S13), the control unit 13 ends the processing shown in FIG. 4.
[0077] The degree of contribution to the evaluation value of the evaluation function (importance in optimization) differs for each evaluation index. In the above process, once a weighting coefficient is determined, the weighting coefficient is set as a fixed value, and then a process for determining a weighting coefficient for another evaluation index is executed. Therefore, by determining the weighting coefficient for the evaluation index with the highest degree first, the estimation accuracy of the weighting coefficient for another evaluation index can be improved. Considering this point, the order in which weighting coefficients are determined may be determined in descending order of the evaluation index with the highest degree.
[0078] <Verification of the determined weighting coefficients> Figure 5 is another example of a graph when multiple candidate values are applied to the weighting coefficient of the evaluation index. Figure 5 shows an example of a graph when multiple candidate values are applied to the evaluation index "number of seams of different steel types" and the weighting coefficient of an arbitrary evaluation index.
[0079] The graph in Fig. 5 was obtained as a result of inputting product data 141 into an optimization model 143 in which pre-prepared correct weighting coefficients were set as weighting coefficients for each evaluation index, and using the resulting optimization data as assumed solution data 142. The correct weighting coefficients were values used in business at the time this graph was obtained. Approximately 100 pieces of product data 141 and assumed solution data 142 were used. The results shown in Fig. 3 were also obtained under these conditions. The graph shown in Fig. 6, which will be described later, was obtained under the above conditions, with only the number of product data 141 changed.
[0080] In the graph of the evaluation index "next slab weight" in Fig. 3 and the graph of the evaluation index "number of seams of different steel types" in Fig. 5, the value indicated by the correct weighting coefficient (RW1 in Fig. 3, RW2 in Fig. 5) substantially matches the value P of the weighting coefficient at the intersection of the line graph TG of the target difference and the line graph NTG of the non-target difference. This shows that the accuracy of the estimation of the weighting coefficient by the control unit 13 is high.
[0081] On the other hand, the graph of "arbitrary evaluation index" shown in Figure 5 deviates from the trend seen in the graph of Figure 3 as described above, and there are multiple points where the difference between the total of the target difference and the non-target difference is minimum (the intersections of the line graph TG of the target difference and the line graph NTG of the non-target difference). Therefore, it can be interpreted that the weight coefficients for the arbitrary evaluation index are not estimated accurately.
[0082] However, this result is assumed to be obtained because the arbitrary evaluation index is a weaker evaluation index (an evaluation index with lower importance in optimization) than the other evaluation indexes. For business purposes, some evaluation indexes are allowed to have larger index values. Here, the arbitrary evaluation index corresponds to an evaluation index whose index value is allowed to be larger. Therefore, the weighting coefficient of such an evaluation index is set relatively small. Therefore, even when optimization is performed using assumed solution data 142, the index value of such an evaluation index may become large in order to prevent the index values of other evaluation indexes from deteriorating, which tends to cause the evaluation value of the evaluation function to vary.
[0083] However, if a value that is too large is set as the candidate value for the weighting coefficient in the graph of an arbitrary evaluation index (in this example, in a range where the candidate value exceeds the correct weighting coefficient RW3), the deviation between the line graph TG of the target difference and the line graph NTG of the non-target difference becomes large. Therefore, if a value around the correct weighting coefficient RW3 or a value smaller than that value is set as the weighting coefficient of an arbitrary evaluation index, it is expected that the optimization model 143 will be able to output optimal solution data equivalent to the assumed solution data 142.
[0084] Therefore, even for evaluation indices for which the weighting coefficients are not accurately estimated, it is possible to determine appropriate values for the weighting coefficients based on the calculation results of the target difference and the non-target difference. This means that the estimation of the weighting coefficients by the control unit 13 is useful. Furthermore, an evaluation index for which such results are obtained can be interpreted as an evaluation index with a relatively low importance in optimization. Therefore, it is also possible to interpret the estimation results of the weighting coefficients by the control unit 13 as sensitivity to the influence on the optimization data.
[0085] Fig. 6 is another example of a graph when multiple candidate values are applied to the weighting coefficient of the evaluation index. The graph in Fig. 3 shows the results when about 100 pieces of product data 141 and assumed solution data 142 are used for the evaluation index "next slab weight". Each graph in Fig. 6 shows the results when NA or NB pieces of product data 141 and assumed solution data 142 are used for the evaluation index "next slab weight". In this example, NA and NB are values smaller than 100, and NA <NBである。
[0086] 6, it can be seen that for the evaluation index "next slab weight", the accuracy of the weighting coefficient estimation by the control unit 13 is high even when the number of product data 141 and assumed solution data 142 is reduced. Therefore, it can be seen that for evaluation indexes that are relatively important in optimization (evaluation indexes that are relatively sensitive to the influence of optimization data), by preparing several tens of product data 141 and assumed solution data 142, the control unit 13 can accurately estimate the weighting coefficient.
[0087] <Variation 1> In the above example, the evaluation function includes multiple evaluation indexes, but the evaluation function may include only one evaluation index. In this case, the control unit 13 may set multiple candidate values for the weight coefficient that constitutes this evaluation index, calculate a first evaluation value and a second evaluation value for each candidate value, and determine the weight coefficient of this evaluation index based on the difference between the first evaluation value and the second evaluation value for each candidate value.
[0088] <Variation 2> In the above example, the control unit 13 selects one evaluation index as the evaluation index to be determined at a time, but two or more evaluation indexes may be selected. In this case, candidate values are set for the two or more selected evaluation indexes.
[0089] <Variation 3> In the above example, the coefficient determination unit 136 determines the weighting coefficients by receiving input values specified by the user from the displayed graph. However, the coefficient determination unit 136 may automatically determine the weighting coefficients without receiving input values.
[0090] In this case, the coefficient determination unit 136 may identify a candidate value or a value near the candidate value when the difference between the target difference and the non-target difference is smallest, and determine it as the weighting coefficient of the evaluation index to be determined. The coefficient determination unit 136 may create a regression function of the target difference and a regression function of the non-target difference for multiple candidate values, and identify a candidate value or a value near the candidate value at the intersection of these two regression functions.
[0091] When the coefficient determination unit 136 automatically determines the weighting coefficients, the control unit 13 does not necessarily need to include the display control unit 135, and the target difference and non-target difference calculated by the difference calculation unit 134 are input to the coefficient determination unit 136.
[0092] <Variation 4> In the above example, the display control unit 135 displays a graph on the display unit 11, but other information may also be displayed on the display unit 11. For example, the display control unit 135 may display the weighting coefficients determined by the coefficient determination unit 136 together with the graph or instead of the graph. Furthermore, together with the graph or instead of the graph, the values of the target difference and the non-target difference for each candidate value may be displayed, or the value of the difference between the target difference and the non-target difference for each candidate value may be displayed.
[0093] [Embodiment 2] The planning device may be a device that optimizes the sequencing plan using an optimization method. FIG. 7 is a schematic diagram showing an example of optimizing the sequencing plan. As shown in FIG. 7, the planning device may optimize the sequencing plan by treating it as a traveling salesman problem, for example. That is, the planning device optimizes the rolling plan by regarding each rolled coil as a city and searching for the shortest route using the rolled coil. The rolling plan is a plan that determines the order in which multiple rolled coils will be used, and is an example of a plan for manufacturing steel products.
[0094] The planning device 2 inputs product data to the optimization model 143 under constraint conditions. In this embodiment, for example, the ranges of width difference and thickness difference are set as constraint conditions. The optimization model 143 is a model that optimizes a sequencing plan. The product data is an example of problem data, and is data related to rolled coils (for example, data on the width, thickness, etc. of the rolled coils). The evaluation function of the optimization model 143 includes multiple evaluation indexes, such as the sum of the width differences of adjacent rolled coils and the sum of the thickness differences of adjacent rolled coils. Therefore, the evaluation function is given as, for example, "α1 × (sum of width differences of adjacent rolled coils) + α2 × (sum of thickness differences of adjacent rolled coils)."
[0095] The optimization model 143 searches for solution data (solution data indicating the order in which rolled coils are used) that minimizes the evaluation value of the evaluation function for the input product data, and outputs the solution data as optimal solution data. In other words, the optimization model 143 searches for solution data that minimizes the total width difference between adjacent rolled coils and the total thickness difference between adjacent rolled coils.
[0096] 7, the ranges of the width difference and the thickness difference (for example, several mm or less) are set as constraint conditions. The optimization model 143 outputs the order in which the rolled coils are used by identifying the shortest route RUmin among the routes RU between the rolled coils CO1 to CO5 that satisfy these constraint conditions.
[0097] The optimization unit 131 inputs the product data 141 into an optimization model 143 in which candidate values and fixed values are set as weighting coefficients, and outputs optimal solution data indicating the order in which the rolled coils will be used. The first evaluation value calculation unit 132 calculates a first evaluation value for each evaluation index based on the optimal solution data output by the optimization unit 131 and the weighting coefficients in which candidate values and fixed values are set. The second evaluation value calculation unit 133 calculates a second evaluation value for each evaluation index based on the assumed solution data 142 and the weighting coefficients in which candidate values and fixed values are set. In this embodiment, the assumed solution data 142 is data prepared in advance corresponding to the product data 141, and is data indicating the order in which the rolled coils will be used that is assumed to be optimal.
[0098] As a result, the difference calculation unit 134 can calculate a target difference and a non-target difference for each evaluation index, just like in embodiment 1. Therefore, the display control unit 135 can display a graph of the target difference and the non-target difference for each evaluation index, and the coefficient determination unit 136 can determine the input value specified by the user as the weight coefficient of the evaluation index to be determined. The coefficient determination unit 136 may automatically determine the weight coefficient of the evaluation index to be determined based on the calculation result of the difference calculation unit 134.
[0099] The evaluation function may include only one evaluation index. In this case, the difference between the first evaluation value and the second evaluation value may be calculated for each candidate value set for the evaluation index, and the weighting coefficient may be determined based on this difference. Furthermore, if there are multiple evaluation indexes, two or more evaluation indexes may be selected at a time as evaluation indexes to be determined.
[0100] [Embodiment 3] The planning device may be a device that optimizes a cutting plan using an optimization method. Fig. 8 is a schematic diagram showing an example of optimizing a cutting plan. In this embodiment, a hat-shaped steel sheet pile is used as an example of a cutting plan.
[0101] Hat-shaped steel sheet piles are steel sheet piles with a hat-shaped cross section. Hat-shaped steel sheet piles are classified into several types depending on their cross-sectional properties (e.g., dimensions, cross-sectional area, moment of inertia, section modulus, unit mass, etc.).
[0102] Hat-shaped steel sheet piles are manufactured by rolling the manufactured slabs and then cutting them into steel sheet piles of a specified length. One type is cut into products of multiple lengths (for example, several dozens of different lengths). The products are then sorted into shelves. When the hat-shaped steel sheet piles are actually used, the products are joined to the length specified for each type.
[0103] FIG. 8 shows an example in which a product of an arbitrary type is cut into products having lengths of V1 [m] to Vn [m]. Then, base materials with multiple lengths are manufactured within the length range specified for this type. As shown in FIG. 8, the base material is manufactured by combining products with multiple lengths, so it is necessary to determine the combination of these types. A cutting plan is a plan that determines the length and number of base materials by combining multiple types of products, and is an example of a plan for processing steel products.
[0104] The planning device 2 inputs product data to the optimization model 143 under constraint conditions. In this embodiment, for example, a range of the length of the base material is set as the constraint condition. The optimization model 143 is a model that optimizes a cutting plan. The product data is an example of problem data, and is data related to the product (for example, data on the length and quantity of the product). The evaluation function of the optimization model 143 includes multiple evaluation indexes such as the number of base materials per pattern and the number of patterns of the base material. Therefore, the evaluation function is given as, for example, "α1 × (number of base materials per pattern) + α2 × (number of patterns of the base material)".
[0105] The optimization model 143 searches for solution data (solution data indicating the length and number of base materials) that minimizes the evaluation value of the evaluation function for the input product data 141, and outputs the solution data as optimal solution data. In other words, the optimization model 143 searches for solution data that minimizes the number of base materials per pattern and the number of patterns on the base material. Reducing the number of base materials and the number of patterns can improve productivity.
[0106] The optimization unit 131 inputs the product data 141 into an optimization model 143 in which candidate values and fixed values are set as weighting coefficients, and outputs optimal solution data indicating the length and number of base materials. The first evaluation value calculation unit 132 calculates a first evaluation value of each evaluation index based on the optimal solution data output by the optimization unit 131 and the weighting coefficients in which candidate values and fixed values are set. The second evaluation value calculation unit 133 calculates a second evaluation value of each evaluation index based on the assumed solution data 142 and the weighting coefficients in which candidate values and fixed values are set. In this embodiment, the assumed solution data 142 is data prepared in advance corresponding to the product data 141, and is data indicating the length and number of base materials that are assumed to be optimal.
[0107] As a result, the difference calculation unit 134 can calculate a target difference and a non-target difference for each evaluation index, just like in embodiment 1. Therefore, the display control unit 135 can display a graph of the target difference and the non-target difference for each evaluation index, and the coefficient determination unit 136 can determine the input value specified by the user as the weight coefficient of the evaluation index to be determined. The coefficient determination unit 136 may automatically determine the weight coefficient of the evaluation index to be determined based on the calculation result of the difference calculation unit 134.
[0108] The evaluation function may include only one evaluation index. In this case, the difference between the first evaluation value and the second evaluation value may be calculated for each candidate value set for the evaluation index, and the weighting coefficient may be determined based on this difference. Furthermore, if there are multiple evaluation indexes, two or more evaluation indexes may be selected at a time as evaluation indexes to be determined.
[0109] [Software implementation example] The functions of the coefficient determination device 1 and the planning device 2 (hereinafter referred to as "devices") can be realized by a program that causes a computer to function as the devices, and a program that causes a computer to function as each control block of the devices (particularly each unit included in the control unit 13 and the control unit 22). This program is an example of a coefficient determination program.
[0110] In this case, the device includes a computer having at least one control device (e.g., a processor) and at least one storage device (e.g., a memory) as hardware for executing the program. The control device and storage device execute the program, thereby realizing the functions described in each of the above embodiments.
[0111] The program may be non-transitory and may be recorded on one or more computer-readable recording media. The recording media may or may not be included in the device. In the latter case, the program may be supplied to the device via any wired or wireless transmission medium.
[0112] Furthermore, some or all of the functions of the control blocks can be realized by logic circuits. For example, an integrated circuit in which a logic circuit that functions as each of the control blocks is formed is also included in the scope of the present invention. In addition, the functions of the control blocks can also be realized by, for example, a quantum computer.
[0113] Furthermore, each process described in each of the above embodiments may be executed by AI (Artificial Intelligence). In this case, the AI may run on the control device or on another device (for example, an edge computer or a cloud server).
[0114] 〔summary〕 A coefficient determination device according to a first aspect of the present disclosure includes: an optimization unit that inputs a plurality of problem data sets prepared in advance into an optimization model that optimizes a plan based on an evaluation index, and outputs optimal solution data that optimizes the plan; a first evaluation value calculation unit that calculates a first evaluation value as a value of the evaluation index based on the optimal solution data output by the optimization unit; a second evaluation value calculation unit that calculates a second evaluation value as a value of the evaluation index based on assumed solution data that indicates the plan that is assumed to be optimal, the assumed solution data being prepared in advance corresponding to each of the plurality of problem data; and a coefficient determination unit that determines a weight coefficient constituting the evaluation index based on the difference between the first evaluation value and the second evaluation value. Each of a plurality of candidate values prepared in advance is set as the weight coefficient of the evaluation index, so that the first evaluation value calculation unit and the second evaluation value calculation unit calculate the first evaluation value and the second evaluation value for each of the candidate values, and the coefficient determination unit determines the weight coefficient based on the difference for each of the candidate values.
[0115] According to the above configuration, a weighting factor is determined based on the result of comparing a first evaluation value and a second evaluation value calculated by setting candidate values prepared in advance. If the weighting factor is optimized without setting a weighting factor, the number of possible values for the weighting factor is enormous, resulting in an enormous search space for searching for the weighting factor. By preparing candidate values in advance when determining the weighting factor, it is sufficient to calculate the first evaluation value and the second evaluation value for the number of candidate values. Then, the weighting factor can be determined based on the difference between the calculated first evaluation value and the second evaluation value. This reduces the search space and improves convergence performance within a limited processing time.
[0116] A coefficient determination device according to aspect 2 of the present disclosure is the same as in aspect 1, wherein the first evaluation value calculation unit calculates the first evaluation value for each of the multiple evaluation indexes, and the second evaluation value calculation unit calculates the second evaluation value for each of the multiple evaluation indexes, and the weight coefficient of the evaluation index to be determined is set to each of the multiple candidate values, and a fixed value is set to the weight coefficient of at least one of the evaluation indexes that is not to be determined, so that the first evaluation value calculation unit and the second evaluation value calculation unit calculate the first evaluation value and the second evaluation value corresponding to each of the multiple candidate values for each of the multiple evaluation indexes, and further includes a difference calculation unit that calculates a target difference that is the difference between the first evaluation value and the second evaluation value for the weight coefficient of the evaluation index to be determined, and a non-target difference that is the difference between the first evaluation value and the second evaluation value for the weight coefficient of at least one of the evaluation indexes that is not to be determined, and the coefficient determination unit determines the weight coefficient of the evaluation index to be determined based on the target difference and the non-target difference calculated corresponding to each of the multiple candidate values.
[0117] According to the above configuration, candidate values are set as weighting coefficients for evaluation indexes to be determined among a plurality of evaluation indexes, and fixed values are set as weighting coefficients for evaluation indexes not to be determined, and a first evaluation value and a second evaluation value are calculated for each candidate value for each evaluation index. Then, target differences are calculated for each candidate value for evaluation indexes to be determined, and non-target differences corresponding to each candidate value for evaluation indexes not to be determined are calculated, and the weighting coefficients for the evaluation indexes to be determined are determined based on the target differences and non-target differences.
[0118] If weight coefficients are optimized without setting them, the number of possible values for the weight coefficients will be enormous. The search space is expressed as a power where the "possible value" is the base and the "number of evaluation indexes" is the exponent. Therefore, when there are multiple evaluation indexes, the search space will become even larger. As described above, by setting a pre-prepared candidate value for the weight coefficient of the evaluation index to be determined and setting pre-prepared fixed values for the weight coefficients of the other evaluation indexes, the search space can be reduced to "number of candidate values" x "number of evaluation indexes," thereby reducing the search space. Therefore, even when there are multiple evaluation indexes, the search space can be reduced.
[0119] In a coefficient determination device according to aspect 3 of the present disclosure, in aspect 2, the coefficient determination unit determines the candidate value or a value near the candidate value when the difference between the target difference and the non-target difference is smallest as the weight coefficient of the evaluation index to be determined.
[0120] Due to the nature of the optimization model, it is assumed that the candidate value or a value close to the candidate value when the difference between the target difference and the non-target difference is smallest is the value closest to the weight coefficient in the weight balance that can obtain the expected solution data. Therefore, with the above configuration, the candidate value or a value close to the candidate value is determined as the weight coefficient, so it is possible to construct an optimal solution model that can obtain a solution result close to the expected solution data.
[0121] A coefficient determination device according to aspect 4 of the present disclosure is, in aspect 2, provided with a display control unit that displays a graph in which the plurality of candidate values are set on the horizontal axis and the target difference and the non-target difference are set on the vertical axis, and the coefficient determination unit determines the weighting coefficient by obtaining input based on the display result of the graph.
[0122] According to the above configuration, the user can determine the weighting coefficient by visually checking the graph.
[0123] A coefficient determination device according to aspect 5 of the present disclosure is any one of aspects 1 to 4, wherein the coefficient determination unit sets the weight coefficient for the evaluation index for which the weight coefficient has been determined as a fixed value, and identifies the weight coefficient of an evaluation index other than the evaluation index for which the weight coefficient has been determined as the weight coefficient to be determined.
[0124] According to the above configuration, the weighting coefficients of other evaluation indexes can be determined using the determined weighting coefficients. Therefore, by determining the weighting coefficients of evaluation indexes with high importance in optimization first, the estimation accuracy of the weighting coefficients of other evaluation indexes can be improved.
[0125] A coefficient determination method according to a sixth aspect of the present disclosure includes an optimization step of inputting a plurality of problem data sets prepared in advance into an optimization model that optimizes a plan based on an evaluation index, and outputting optimal solution data that optimizes the plan; a first evaluation value calculation step of calculating a first evaluation value as a value of the evaluation index based on the optimal solution data output in the optimization step; a second evaluation value calculation step of calculating a second evaluation value as a value of the evaluation index based on assumed solution data that indicates the plan that is assumed to be optimal, which is prepared in advance corresponding to each of the plurality of problem data; and a coefficient determination step of determining a weight coefficient constituting the evaluation index based on the difference between the first evaluation value and the second evaluation value, wherein each of a plurality of candidate values prepared in advance is set as the weight coefficient of the evaluation index, so that in the first evaluation value calculation step and the second evaluation value calculation step, the first evaluation value and the second evaluation value are calculated for each of the candidate values, and in the coefficient determination step, the weight coefficient is determined based on the difference for each of the candidate values.
[0126] The coefficient determination device according to each aspect of the present disclosure may be realized by a computer. In this case, the coefficient determination program of the coefficient determination device that causes the computer to operate as each part (software element) of the coefficient determination device to realize the coefficient determination device on a computer, and the computer-readable recording medium on which the program is recorded, also fall within the scope of the present invention.
[0127] [Additional Notes] The present invention is not limited to the above-described embodiments, and various modifications are possible within the scope of the claims. The technical scope of the present invention also includes embodiments obtained by appropriately combining the technical means disclosed in different embodiments. For example, while the above-described embodiments have been described using examples of plans for the manufacture or processing of steel products, the plan is not limited to this and may be any plan that indicates a schedule, such as employee shift assignments. The various elements described in the above-described embodiments, such as the optimization model, evaluation index, and problem data, may be prepared as appropriate depending on the plan to be optimized. [Explanation of symbols]
[0128] 1 Coefficient determining device 131 Optimization Department 132 First evaluation value calculation unit 133 Second evaluation value calculation unit 134 Difference calculation part 135 Display control unit 136 Coefficient determination unit 141 Product Data 142 Expected solution data 143 Optimization Model 144 Coefficient data (weighting coefficient) GR1 Bar graph of target difference GR2 Asymmetric Difference Bar Chart TG Target Difference Line Graph NTG Line graph of asymmetric difference
Claims
1. an optimization unit that inputs a plurality of problem data prepared in advance into an optimization model that optimizes a plan based on an evaluation index, and outputs optimal solution data that optimizes the plan; a first evaluation value calculation unit that calculates a first evaluation value as a value of the evaluation index based on the optimal solution data output by the optimization unit; a second evaluation value calculation unit that calculates a second evaluation value as a value of the evaluation index based on assumed solution data that indicates the plan that is assumed to be optimal and that is prepared in advance corresponding to each of the plurality of problem data; a coefficient determination unit that determines a weighting coefficient constituting the evaluation index based on a difference between the first evaluation value and the second evaluation value, a coefficient determination device in which a weight coefficient of the evaluation index is set to each of a plurality of candidate values prepared in advance, so that the first evaluation value calculation unit and the second evaluation value calculation unit calculate the first evaluation value and the second evaluation value for each of the candidate values, and the coefficient determination unit determines the weight coefficient based on the difference for each of the candidate values.
2. the first evaluation value calculation unit calculates the first evaluation value for each of the plurality of evaluation indexes; the second evaluation value calculation unit calculates the second evaluation value for each of the plurality of evaluation indexes; a weighting coefficient of the evaluation index to be determined is set to each of the plurality of candidate values, and a fixed value is set to the weighting coefficient of at least one evaluation index that is not to be determined, so that the first evaluation value calculation unit and the second evaluation value calculation unit calculate the first evaluation value and the second evaluation value corresponding to each of the plurality of candidate values for each of the plurality of evaluation indexes, a difference calculation unit that calculates a target difference that is a difference between the first evaluation value and the second evaluation value for a weighting coefficient of the evaluation index that is a target of determination, and a non-target difference that is a difference between the first evaluation value and the second evaluation value for a weighting coefficient of at least one evaluation index that is not a target of determination, The coefficient determination device according to claim 1 , wherein the coefficient determination unit determines a weighting coefficient of the evaluation index to be determined based on the target difference and the non-target difference calculated corresponding to each of the plurality of candidate values.
3. 3. The coefficient determination device according to claim 2, wherein the coefficient determination unit determines the candidate value or a value near the candidate value when a difference between the target difference and the non-target difference is smallest as the weight coefficient of the evaluation index to be determined.
4. a display control unit that displays a graph in which the plurality of candidate values are set on a horizontal axis and the target difference and the non-target difference are set on a vertical axis; The coefficient determination device according to claim 2 , wherein the coefficient determination unit determines the weighting coefficient by obtaining an input based on the display result of the graph.
5. 2. The coefficient determination device according to claim 1, wherein the coefficient determination unit sets the weight coefficient for the evaluation index for which the weight coefficient has been determined as a fixed value, and identifies the weight coefficient for an evaluation index other than the evaluation index for which the weight coefficient has been determined as a determination target.
6. an optimization step of inputting a plurality of problem data prepared in advance into an optimization model that optimizes a plan based on an evaluation index, and outputting optimal solution data obtained by optimizing the plan; a first evaluation value calculation step of calculating a first evaluation value as a value of the evaluation index based on the optimal solution data output in the optimization step; a second evaluation value calculation step of calculating a second evaluation value as a value of the evaluation index based on assumed solution data indicating the plan assumed to be optimal, which is prepared in advance corresponding to each of the plurality of problem data; a coefficient determination step of determining a weighting coefficient constituting the evaluation index based on a difference between the first evaluation value and the second evaluation value, a coefficient determination method in which a weight coefficient of the evaluation index is set to each of a plurality of candidate values prepared in advance, so that in the first evaluation value calculation step and the second evaluation value calculation step, the first evaluation value and the second evaluation value are calculated for each candidate value, and in the coefficient determination step, the weight coefficient is determined based on the difference for each candidate value.
7. 2. A coefficient determination program for causing a computer to function as the coefficient determination device according to claim 1, the coefficient determination program causing a computer to function as the optimization unit, the first evaluation value calculation unit, the second evaluation value calculation unit, and the coefficient determination unit.
Citation Information
Patent Citations
Online stochastic inverse optimization system, online stochastic inverse optimization method, and online stochastic inverse optimization program
JP2022502795A