The present disclosure relates to an optimization device, an optimization method, and a recording medium.
There are various tools for adjusting and verifying conditions when obtaining an event optimization result.
For example, PTL 1 discloses a multi-objective optimization device that performs an optimization by adjusting weighting values of a plurality of evaluation items (feature constituting an objective function) for multi-objective optimization.
Apart from the optimization device described in PTL 1, there is a demand for a mechanism for easily adjusting a condition for optimizing an event and verifies whether an objective function used for optimization is valid.
An example of an object of the present disclosure is to provide an optimization device capable of easily performing trial and error on an objective function or a constraint condition by changing a condition used in optimizing an event.
An optimization device according to an aspect of the present disclosure includes: an optimization display means that displays an optimization result obtained based on an objective function used in optimizing an event: a change reception means that receives a change in a parameter that determines a calculated value of feature constituting the objective function: an optimization execution means that optimizes the event based on the changed parameter; and an optimization update means that updates the optimization result and display the updated optimization result.
An optimization method according to an aspect of the present disclosure includes displaying an optimization result obtained based on an objective function used in optimizing an event: receiving a change in a parameter that determines a calculated value of feature constituting the objective function: optimizing the event based on the changed parameter; and updating the optimization result and display the updated optimization result.
A recording medium according to an aspect of the present disclosure records a program causing a computer to execute: displaying an optimization result obtained based on an objective function used in optimizing an event: receiving a change in a parameter that determines a calculated value of feature constituting the objective function: optimizing the event based on the changed parameter; and updating the optimization result and display the updated optimization result.
As an example of an effect according to the present disclosure, it is possible to provide an optimization device capable of easily performing trial and error on an objective function by changing a condition used in optimizing an event.
Next, example embodiments will be described in detail with reference to the drawings.
As illustrated in
The CPU 501 operates an operating system to control the entire optimization device 100 according to the first example embodiment of the present invention. In addition, the CPU 501 reads a program or data from a recording medium 506 attached to, for example, a drive device 507 to a memory. In addition, the CPU 501 functions as the optimization display unit 101, the change reception unit 102, the optimization execution unit 103, the optimization update unit 104, or some of them in the first example embodiment, and executes a process or a command of a flowchart illustrated in
The recording medium 506 is, for example, an optical disk, a flexible disk, a magneto-optical disk, an external hard disk, a semiconductor memory, or the like. A part of the recording medium as a storage device is a non-volatile storage device, and records a program therein. In addition, a program may be downloaded from an external computer connected to a communication network although not illustrated.
The input device 509 is achieved by, for example, a mouse, a keyboard, a built-in key button, or the like, and is used for an input operation. The input device 509 is not limited to the mouse, the keyboard, or the built-in key button, and may be, for example, a touch panel. The output device 510 is achieved by, for example, a display, and is used to confirm an output.
As described above, the first example embodiment illustrated in
The optimization display unit 101 displays an optimization result obtained based on an objective function used for optimizing an event. In the present example embodiment, for example, an objective function calculated based on a historical decision data of the user is stored in the storage device 505. The optimization display unit 101 displays an optimization result obtained by inputting a value of a variable to the objective function. The optimization target is a quantity of products to be ordered by an employee at a store in the present example embodiment, but is not limited thereto. For example, the optimization target is an event that can reflect a result of decision making performed by the user in the past.
The change reception unit 102 receives a change in a parameter that determines a calculated value of feature constituting the objective function. The change reception unit 102 receives a parameter input to the terminal 200 and outputs the parameter to the optimization execution unit 103.
Here, the objective function, the feature, and the parameter will be described. The objective function according to the present example embodiment is a reference for optimizing a target, and is expressed by a weighted linear sum of feature. In addition, the objective function is calculated by a known machine learning method. The parameter is a variable that determines a calculated value of feature constituting the objective function, and examples of the parameter include a variable of state data included in the historical decision data, a weighting coefficient, and the like. In the present example embodiment, as shown in the following Formula (1), a value of the objective function is expressed as Z that maximizes f(x).
In Formula (1), λn is a weighting coefficient, and xm is feature. In the present example embodiment, the objective function is an objective function for minimizing disposal loss and stockout loss. In addition, n=m=2 in Formula (1), feature x1 is how small the disposal loss is, and feature x2 is how small the stockout loss is. The parameters in the present example embodiment are a minimum value of a predicted sales quantity, a maximum value of a predicted sales quantity, an inventory quantity, a purchase price, and a sales price. These parameters are used to determine the feature x1 and the feature x2. The disposal loss (feature x1) is determined according to (inventory quantity-minimum value of predicted sales quantity)×purchase price, and the stockout loss (feature x2) is determined according to sales price×(maximum value of predicted sales quantity-inventory quantity).
Next, an example of a parameter change operation performed by the user will be described.
When the user desires to change a value of a certain parameter, the user changes the value of the parameter by moving a position of an indicator 15 in the third display area 13 of the parameter change screen 10 by a drag operation using the input device 509 such as a numeric keypad or a mouse.
In the present example embodiment, when the user moves the indicator 15 to the left side, the value of each parameter decreases (down). In addition, when the user moves the indicator 15 to the right side, the value of the parameter increases (up).
The optimization execution unit 103 is a means for executing an optimization of an event based on a received parameter. When detecting that the user presses the change start button image 14, the optimization execution unit 103 executes an optimization in which the changed value of the parameter is reflected. That is, in the example of
Next, the optimization execution unit 103 obtains a product order quantity, which is an optimization target, based on the updated objective function. The optimization execution unit 103 outputs the obtained optimization result to the optimization update unit 104.
The optimization update unit 104 is a means for updating the optimization result obtained by the optimization execution unit 103 and displaying the updated optimization result. The optimization update unit 104 updates the optimization result in the result display area 16 and displays the updated optimization result on the parameter change screen 10. The optimization update unit 104 may display a difference (change point) of the updated optimization result in an emphasized manner as well as the updated optimization result.
An operation of the optimization device 100 configured as described above will be described with reference to the flowchart of
As illustrated in
In the optimization device 100, the optimization execution unit 103 executes an optimization of an event based on a parameter changed by the user. By doing so, it is possible to easily perform trial and error on the objective function by changing a condition used in optimizing an event.
Further, in the first example embodiment, the change reception unit 102 receives a change in a parameter that determines a value of feature. In this case, it is possible to easily perform trial and error on the objective function by changing a condition that determines a value of feature. In particular, the change reception unit 102 receives a change in a weighting coefficient of feature as a parameter. As a result, in a case where there is feature that the user wants to emphasize, it is possible to output an optimization result reflecting the emphasized feature.
Next, a modification of the first example embodiment will be described with reference to the drawings. Hereinafter, description overlapping with what has been described above will be omitted unless the omission obscures the description of the present example embodiment.
The change in the optimization result is a change in a product order quantity, which is an optimization result in the present example embodiment. When the change reception unit 102 receives a change of an optimization result, the learning unit 105 fine-tunes the objective function with the received optimization result being included as a historical decision data. The learning unit 105 stores the fine-tuned objective function in the storage device 505.
In the modification of the first example embodiment, the change reception unit 102 receives a change in an optimization result in addition to the change of the parameter. As a result, the user can execute an optimization while performing trial and error on the optimization result.
Next, a second example embodiment of the present disclosure will be described in detail with reference to the drawings. The second example embodiment is different from the first example embodiment in an optimization target, while having the same configuration as the first example embodiment. Hereinafter, description overlapping with what has been described above will be omitted unless the omission obscures the description of the present example embodiment. The functions in the present example embodiment can be achieved not only by hardware similarly to the computer device in the first example embodiment as illustrated in
In the present example embodiment, a parameter to be changed is a weighting coefficient of feature of the objective function. As illustrated in
When detecting that the user presses the change start button image 34, the optimization execution unit 103 executes an optimization in which the weighting coefficient changed by the user moving a position of an indicator 35 on the parameter change screen 30 is reflected. That is, the optimization execution unit 103 updates the objective function using Formula (1).
Next, the optimization execution unit 103 obtains a result of scheduling, which is an optimization target, based on the updated objective function. Then, the optimization update unit 104 updates the optimization result in the result display area 36 and displays the updated optimization result on the parameter change screen 30.
Next, a modification of the second example embodiment will be described with reference to the drawings. Hereinafter, description overlapping with what has been described above will be omitted unless the omission obscures the description of the present example embodiment.
The optimization device 120 according to the modification of the second example embodiment includes an optimization display unit 111, a change reception unit 112, an optimization determination unit 113, an optimization execution unit 114, and an optimization update unit 115. Since the configuration of the optimization display unit 111 and the change reception unit 112 is similar to the configuration of the optimization display unit 101 and the change reception unit 102 in the first example embodiment, the description thereof is omitted.
Each of
The optimization determination unit 113 is a means for determining whether the received parameter with which the calculated value of the feature can be taken. When a parameter is input from the change reception unit 112, the optimization determination unit 113 determines whether the parameter has a value with which feature displayed in the fourth display area 37 of the parameter change screen 30 can be taken based on the relational expression between the parameter and the feature.
When the calculated value of the feature is a value that can be taken based on the received parameter, the optimization determination unit 113 outputs a signal indicating the same to the optimization execution unit 114. On the other hand, when the calculated value of the feature is not a value that can be taken, the optimization determination unit 113 controls, for example, the terminal 220 to display the calculated value of the feature that cannot be taken in an emphasized manner as illustrated in
When a signal indicating that the calculated value of the feature is a value that can be taken is input from the optimization determination unit 113, the optimization execution unit 114 updates the objective function based on the changed feature and obtains an optimization result.
The optimization update unit 115 updates the optimization result obtained by the optimization execution unit 114 and displays the updated optimization result. As illustrated in
An operation of the optimization device 120 configured as described above will be described with reference to the flowchart of
As illustrated in
In the modification of the second example embodiment of the present disclosure, when a calculated value of feature cannot be taken with a changed parameter, the optimization determination unit 113 displays the feature and the parameter in an emphasized manner. As a result, the user can change the parameter that cannot be achieved and the feature that affects the parameter, and perform an optimization again.
While the invention has been particularly shown and described with reference to exemplary embodiments thereof, the invention is not limited to these embodiments. It will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the claims.
For example, although a plurality of operations are described in order in the form of a flowchart, the order in which the operations are described does not limit an order in which the plurality of operations are executed. Therefore, when each example embodiment is implemented, the order in which the plurality of operations are executed can be changed if the content is not affected by the change. For example, although the optimization determination unit 113 performs control to display feature that cannot be taken in an emphasized manner (step S206), and then performs control to display a parameter that affects the feature in an emphasized manner (step S207) in the modification of the second example embodiment, the order is not limited thereto. The optimization determination unit 113 may perform control to display the parameter in an emphasized manner and then perform control to display the feature in an emphasized manner. Furthermore, the optimization determination unit 113 may perform control to display either the feature or the parameter in an emphasized manner.
| Filing Document | Filing Date | Country | Kind |
|---|---|---|---|
| PCT/JP2022/010899 | 3/11/2022 | WO |