Information processing device and method

The system addresses the inefficiencies in optimizing production plans by using a search history database to store constraint-violating solutions, enabling efficient and flexible simulation of production plans with reduced computational load.

WO2025142792A1PCT designated stage expired Publication Date: 2025-07-03PANASONIC INTELLECTUAL PROPERTY MANAGEMENT CO LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2024/045246
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-12-26
Filing Date
2024-12-20
Publication Date
2025-07-03

AI Technical Summary

Technical Problem

Existing simulation techniques for optimizing production plans in manufacturing environments fail to efficiently handle constraint conditions, leading to excessive computational load and unclear effects of relaxing these constraints.

Method used

A system that utilizes a search history database to store solutions that violate constraint conditions during optimization calculations, allowing for subsequent simulation operations to be performed with reduced processing load by referencing this database for generating simulation results.

Benefits of technology

Facilitates efficient simulation of production plans with constraint conditions, reducing computational load and enabling flexible, user-friendly adjustments to management indices and constraint conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2024045246_03072025_PF_FP_ABST
    Figure JP2024045246_03072025_PF_FP_ABST
Patent Text Reader

Abstract

An information processing device (3) is provided with: a storage unit (31) that stores input data (D10) to be optimized; and a control unit (30) that, on the basis of the input data, executes optimization calculation in which candidates for a solution optimized for one or more management indexes are repeatedly calculated. The input data includes constraint conditions for limiting the solution optimized in the optimization calculation. The control unit stores, into a storage unit, a calculation history including a solution violating the constraint conditions among a plurality of solutions calculated as the candidates in the optimization calculation (S12), and generates a plan in which at least a part of the management indexes is improved from the result of the optimization calculation by referring to the stored calculation history (S14).
Need to check novelty before this filing date? Find Prior Art

Description

Information processing device and method

[0001] The present disclosure relates to an information processing device and method for putting numerical simulation techniques such as optimization calculations into practical use.

[0002] Patent Literature 1 discloses a process control system including a process simulator and a controller for controlling the operation of a hot stove or the like in the steel industry. The process control system uses multiple evaluation quantities, which are indicators for evaluating the performance of the hot stove, as an objective function, solves a multi-objective optimization problem for the objective function, and pre-determines and stores multiple Pareto-optimal solutions offline. The process control system then changes the Pareto-optimal solution to one of the stored Pareto-optimal solutions in response to changes in operating conditions, and sets a target value pattern corresponding to the changed Pareto-optimal solution in the controller. This allows the process control system to flexibly set the most appropriate target value for the manufacturing process without having to redo the optimization calculations even when operating conditions are changed.

[0003] JP 2013-246560 A

[0004] The present disclosure provides an information processing device and method that can improve the practicality of simulation techniques for optimizing plans with constraints.

[0005] The information processing device according to the present disclosure includes a storage unit that stores input data to be optimized, and a control unit that executes an optimization calculation in which candidate solutions optimized with respect to one or more control indicators are repeatedly calculated based on the input data. The input data includes constraints that limit the solutions optimized in the optimization calculation. The control unit stores in the storage unit a calculation history that includes solutions that violate the constraints among the multiple solutions calculated as candidate solutions in the optimization calculation, and generates a plan in which at least some of the control indicators are improved from the results of the optimization calculation by referring to the stored calculation history.

[0006] These general and specific aspects may be realized by a system, a method, and a computer program, as well as combinations thereof.

[0007] According to the information processing device and method disclosed herein, it is possible to improve the practicality of simulation techniques for optimizing plans with constraints.

[0008] FIG. 1 is a diagram illustrating the planning optimization system according to a first embodiment of the present disclosure. FIG. 2 is a block diagram illustrating the configuration of an optimization server in the planning optimization system. FIG. 3 is a block diagram illustrating the structure of lot data in the planning optimization system. FIG. 4 is a diagram illustrating the structure of product changeover data in the planning optimization system. FIG. 5 is a diagram illustrating the structure of equipment power data in the planning optimization system. FIG. 6 is a diagram illustrating the structure of equipment operation data in the planning optimization system. FIG. 7 is a diagram illustrating the structure of lot constraint data in the planning optimization system. A diagram showing an example of a user interface for simulation operations in the system. A diagram showing an example of displaying simulation results in the planning optimization system. A diagram showing another example of a user interface for simulation operations in the planning optimization system. A flowchart illustrating an optimization calculation process in the planning optimization system. A sequence diagram for explaining the operation of the planning optimization system in embodiment 2. A flowchart illustrating a simulation process of constraint relaxation in the planning optimization system. A flowchart illustrating an optimization calculation process in variant 1 of the planning optimization system. A diagram for explaining variant 2 of the planning optimization system. A diagram showing a variant of the planning input data in variant 3 of the planning optimization system. A diagram showing a variant of the search history database in variant 3 of the planning optimization system.

[0009] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, more detailed explanation than necessary may be omitted. For example, detailed explanation of well-known matters or redundant explanation of substantially the same configuration may be omitted. This is to avoid unnecessary redundancy in the following explanation and to facilitate understanding by those skilled in the art.

[0010] The applicant provides the accompanying drawings and the following description to enable those skilled in the art to fully understand the present disclosure, and does not intend for them to limit the subject matter described in the claims.

[0011] First Embodiment Hereinafter, a first embodiment of the present disclosure will be described with reference to the drawings.

[0012] 1. Configuration The configuration of a system using a simulation device according to the first embodiment will be described with reference to FIG.

[0013] 1.1 System Overview A plan optimization system 1 according to this embodiment includes a scheduler terminal 2 and an optimization server 3, as shown in Fig. 1. This system 1 is applied to applications such as automatically creating a manufacturing plan MP at a site 10, such as a manufacturing factory. The manufacturing plan MP is an example of a plan indicating a schedule that assigns time periods for manufacturing multiple lots of products 12 to multiple pieces of equipment 11 at the site 10 over a predetermined period, such as one month.

[0014] For example, at the site 10, multiple types of products 12 are manufactured in separate lots. A lot is a unit for managing the production of the products 12 at the site 10. In the following, an example in which the number of pieces of equipment 11 at the site 10 is two will be described, but the present system 1 is not particularly limited to this. In this embodiment, the number of pieces of equipment 11 at the site 10 may be three or more, or may be one. Furthermore, in this embodiment, one piece of equipment 11 may correspond to one production line, and one production line may include multiple pieces of machinery and equipment.

[0015] In this system 1, the scheduler terminal 2 and the optimization server 3 are connected to each other via a communication network such as the Internet. The optimization server 3 executes numerical calculations (i.e., optimization calculations) to optimize the manufacturing plan Mp from the perspective of, for example, various resource management at the site 10. The scheduler terminal 2 visualizes the manufacturing plan Mp obtained by the optimization server 3 to the user.

[0016] The plan optimization system 1 of this embodiment provides a simulation that visualizes the effects of resource management and the like when the constraints imposed on the site 10 in such optimization calculations are changed. This system 1 can facilitate or enhance the planning process by users, such as managers or data analysts of the site 10. This system 1 can realize such simulation operations with high computational efficiency (details will be described later).

[0017] The manufacturing plan Mp created in the present system 1 is registered in, for example, a higher-level management system 15 that manages the site 10. For example, the scheduler terminal 2 and the optimization server 3 of the present system 1 are connected to the management system 15 via a communication network so as to be able to communicate data with each other.

[0018] For example, the management system 15 can manage and control the operating status of the equipment 11 at the site 10 in accordance with the registered manufacturing plan Mp. The management system 15 may receive various data from the site 10 and send various analysis results as feedback, or may control the operation of the equipment 11 at the site 10. The management system 15 may manage not only the process (e.g., manufacturing process) carried out by the site 10, but also the processes before and after the process (e.g., material procurement). The management system 15 is configured with a computer such as a server device.

[0019] The configurations of the scheduler terminal 2 and the optimization server 3 in this system 1 will be described below.

[0020] 1.2 Terminal Configuration The configuration of the scheduler terminal 2 in the present system 1 will be described with reference to Fig. 2. Fig. 2 is a block diagram illustrating the configuration of the scheduler terminal 2.

[0021] The scheduler terminal 2 is configured as an information terminal such as a personal computer, a tablet terminal, or a smartphone. The scheduler terminal 2 illustrated in Fig. 2 includes a control unit 20, a storage unit 21, an operation unit 22, a display unit 23, a device interface 24, and a network interface 25. Hereinafter, the term "interface" may be abbreviated as "I / F."

[0022] The control unit 20 includes, for example, a CPU or MPU that works in cooperation with software to realize predetermined functions, and controls the overall operation of the scheduler terminal 2. The control unit 20 reads data and programs stored in the storage unit 21, performs various arithmetic processing, and realizes various functions. For example, the control unit 20 executes a program including a group of instructions for realizing various processes of the scheduler terminal 2 in the present system 1. The above program is, for example, an application program, and may be provided via the communication network 10 or the like, or may be stored on a portable recording medium.

[0023] The control unit 20 may be a dedicated electronic circuit designed to realize a predetermined function or a hardware circuit such as a reconfigurable electronic circuit. The control unit 20 may be configured with various semiconductor integrated circuits such as a CPU, an MPU, a GPU, a GPGPU, a TPU, a microcomputer, a DSP, an FPGA, and an ASIC.

[0024] The storage unit 21 is a storage medium that stores programs and data necessary to realize the functions of the scheduler terminal 2. As shown in Fig. 2, the storage unit 21 includes a storage unit 21a and a temporary storage unit 21b.

[0025] The storage unit 21a stores parameters, data, control programs, etc. for realizing predetermined functions. The storage unit 21a is configured, for example, with an HDD or SSD. For example, the storage unit 21a stores the above-mentioned programs and planning input data D10 (details of which will be described later) that are the planning targets of the present system 1.

[0026] The temporary storage unit 21b is configured with a RAM such as a DRAM or an SRAM, and temporarily stores (i.e., holds) data. For example, the temporary storage unit 21b may function as a work area for the control unit 20, or may be configured as a storage area in the internal memory of the control unit 20. The plan input data D10 may be held in the temporary storage unit 21b.

[0027] The operation unit 22 is a user interface device operated by a user. The operation unit 22 is composed of, for example, a keyboard, a mouse, a touchpad, a touch panel, buttons, switches, or a combination of these. The operation unit 22 is an example of an input unit that acquires various information input by user operations.

[0028] The display unit 23 is configured, for example, by a liquid crystal display or an organic EL display. The display unit 23 displays, for example, information indicating the check results obtained by the system 1. The display unit 23 may also display various types of information, such as various icons for operating the operation unit 22 and information input from the operation unit 22.

[0029] The device I / F 24 is a circuit for connecting an external device to the scheduler terminal 2. The device I / F 24 is an example of a communication unit that communicates in accordance with a predetermined communication standard. The predetermined standard includes USB, HDMI (registered trademark), IEEE 1394, Wi-Fi, Bluetooth (registered trademark), etc. The device I / F 24 may constitute an input unit in the scheduler terminal 2 that receives various information from the external device.

[0030] The network I / F 25 is a circuit for connecting the scheduler terminal 2 to the communication network 10 via a wireless or wired communication line. The network I / F 25 is an example of a communication unit that performs communication in accordance with a predetermined communication standard. The predetermined communication standard includes communication standards such as IEEE802.3, IEEE802.11a / 11b / 11g / 11ac / 11ad / 11ax, etc. The network I / F 25 may constitute an input unit in the scheduler terminal 2 that receives various information via the communication network 10.

[0031] The above-described configuration of the scheduler terminal 2 is an example, and the configuration of the scheduler terminal 2 is not limited to this. The input unit in the scheduler terminal 2 may be realized by cooperation with various software in the control unit 20, etc. The input unit in the scheduler terminal 2 may acquire various pieces of information by reading out the various pieces of information stored in various storage media (e.g., the storage unit 21a) into a working area (e.g., the temporary storage unit 21b) of the control unit 20.

[0032] 1.3 Server Configuration The configuration of the optimization server 3 in the present system 1 will be described with reference to Fig. 3. Fig. 3 is a block diagram illustrating the configuration of the optimization server 3 in the present system 1. The optimization server 3 is an example of a simulation device, which is an example of an information processing device in the present system 1.

[0033] 3 includes a control unit 30, a storage unit 31, and a communication unit 32. The optimization server 3 is configured with one or more computers.

[0034] The control unit 30 includes, for example, a CPU or MPU that cooperates with software to realize predetermined functions, and controls the operation of the optimization server 3. The control unit 30 reads data and programs stored in the storage unit 31, performs various arithmetic processing, and realizes various functions. For example, the control unit 30 executes a program including a group of instructions for realizing various processes as a simulation device or information processing device in the present system 1. The various programs described above may be included in a program product, may be provided via the communication network 10, or may be stored on a portable recording medium.

[0035] The control unit 30 may be a dedicated electronic circuit designed to realize a predetermined function or a hardware circuit such as a reconfigurable electronic circuit, etc. The control unit 30 may be configured with various semiconductor integrated circuits such as a CPU, a GPU, a TPU, an MPU, a microcomputer, a DSP, an FPGA, and an ASIC.

[0036] The storage unit 31 is a storage medium that stores programs and data necessary to realize the functions of the optimization server 3, and includes, for example, an HDD or SSD. The storage unit 31 may also include, for example, a DRAM or an SRAM, and function as a work area for the control unit 30. For example, the storage unit 31 stores a search history database D20, which will be described later.

[0037] The communication unit 32 is an I / F circuit for communicating in accordance with a predetermined communication standard, and communicatively connects the optimization server 3 to the communication network 10 or an external device, etc. The predetermined communication standard includes IEEE802.3, IEEE802.11a / 11b / 11g / 11ac / 11ad / 11ax, USB, HDMI, IEEE1394, Wi-Fi, Bluetooth, etc. The communication unit 32 is an example of an input unit that inputs user operations through data communication with the scheduler terminal 2. The communication unit 32 may also be an example of an output unit that outputs various information from the optimization server 3.

[0038] The optimization server 3 in the present system 1 is not limited to the above configuration and may have various other configurations. The present system 1 may be realized by cloud computing. Furthermore, the hardware resources that realize the functions of the optimization server 3 may be shared with the management system 15. Furthermore, some or all of the functions of the optimization server 3 may be implemented in the scheduler terminal 2.

[0039] 1.3. Structure of Plan Input Data An example of the structure of plan input data D10 used as an example of input data in the present system 1 will be described with reference to Figures 4 to 8. The plan input data D10 of the present system 1 includes, for example, lot data D11, product changeover data D12, facility power data D13, and lot constraint data D15, as shown in Figures 4 to 8. Furthermore, the plan input data D10 may include a pre-optimization manufacturing plan Mp.

[0040] The lot data D11 is an example of input data for managing multiple lots that are the subject of planning in the present system 1. The lot data D11 manages a "lot ID," a "product name," and a "lot manufacturing time" by associating them with one another, as shown in Fig. 4, for example. The lot data D11 may further include a "product count" that indicates the number of products included in one lot.

[0041] In the lot data D11, "Lot ID" indicates the identification number of the lot. "Product" indicates the identification information of the product 12 manufactured in the lot indicated by the associated lot ID, for example, the name of the product 12. "Lot manufacturing time" indicates the estimated length of time required to manufacture the products of the lot, for example, in seconds. "Product" may be different for each lot, or there may be multiple lots with the same product.

[0042] The product changeover data D12 is an example of input data for managing the time required to change over the product 12 manufactured in the equipment 11 at the site 10. For example, as shown in Fig. 5, the product changeover data D12 manages the "product before changeover," the "product after changeover," and the "changeover time" by associating them with each other.

[0043] For example, the “product before switching” and the “product after switching” in the product switching data D12 comprehensively include combinations of two types of products 12. The “switching time” indicates, for example, in seconds, the length of time expected to be required for setup when switching from the “product before switching” to the “product after switching.”

[0044] The equipment power data D13 is an example of input data for managing the amount of power consumed during operation of the equipment 11 at the site 10. The equipment power data D13 manages "equipment" and "power usage" by associating them with each other, as shown in Fig. 6, for example.

[0045] In the facility power data D13, "facility" indicates identification information of the facility 11, for example, the name of the facility 11. "Power usage" indicates, for example, in units of kW, the amount of power used per hour while the facility 11 is in operation. The facility power data D13 is not limited to the above, and may also manage power in various states of the facility 11, such as when the facility 11 is on standby, operating, or at startup.

[0046] The equipment operation data D14 manages the time periods during which each piece of equipment 11 at the site 10 operates. For example, as shown in Fig. 7, the equipment operation data D14 manages "equipment," "operation start time," and "operation end time" in association with one another. The "operation start time" indicates the time when the equipment 11 is scheduled to start operating, and the "operation end time" indicates the time when the equipment 11 is scheduled to end operating, and each is managed by date, for example.

[0047] The lot constraint data D15 is an example of input data for managing constraints on the manufacturing time of each lot. For example, as shown in FIG. 8, the lot constraint data D15 manages "lot ID," "product name," "possible start time," and "deadline time" in association with each other.

[0048] In the lot constraint data D15, the "possible start time" indicates the earliest time at which production of the lot can be started. The "deadline time" indicates the latest time at which production of the lot can be completed. The "possible start time" and the "deadline time" are each examples of constraint conditions that impose restrictions on the output of the optimization calculation. The above-mentioned constraint conditions can be determined subjectively, taking into consideration, for example, requests from downstream processes at the site 10, requests from the supplier of the product 12, or the timing of material procurement for the product 12.

[0049] 2. Operation The operation of the present system 1 configured as above will be described below. First, the inventor's findings regarding the operation of the present system 1 will be described.

[0050] The inventors of the present application have noticed that even when there is room for relaxing constraints such as the aforementioned lot deadlines (FIG. 8), the current situation is that relaxation of constraints is not considered at the site 10 (FIG. 1) because the effect of such relaxation is unknown. Therefore, the inventors of the present application have conducted extensive research into the realization of a simulation operation that visualizes to the user the effect that would be obtained if constraints were relaxed in optimizing the manufacturing plan Mp using the present system 1.

[0051] As a result of intensive research by the inventors of the present application, a new problem was discovered: there are an enormous number of patterns for relaxing constraint conditions at the site 10, and exhaustive optimization calculations would result in an excessively large calculation load. Therefore, the inventors of the present application conducted intensive research into this new problem for actually applying simulation operations at such a site 10.

[0052] As a result of such intensive research, the inventors of the present application came up with the idea of ​​utilizing solution candidates obtained as by-products during the search for an optimal solution for the manufacturing plan Mp in the initial optimization calculations in subsequent simulation operations, and devised the present system 1. With this system 1, the effect of relaxing constraints can be obtained from the by-products of the original optimization calculations without having to redo the optimization calculations, thereby avoiding an excessive increase in the calculation load during simulation operations. The operation of the present system 1 will be described in detail below.

[0053] 2.1 Overall Operation The overall operation of the system 1 will be described with reference to Fig. 9. Fig. 9 is a sequence diagram for explaining the operation of the plan optimization system 1 in the first embodiment.

[0054] First, the system 1 acquires plan input data D10 (S1), for example, via the operation unit 22 of the scheduler terminal 2. For example, the control unit 20 of the scheduler terminal 2 displays a predetermined data input screen on the display unit 23 and accepts a user operation to input the plan input data D10 on the operation unit 22.

[0055] In the scheduler terminal 2, some or all of the plan input data D10 may be stored in advance in the storage unit 21, and in step S1 the control unit 20 may acquire the plan input data D10 from the storage unit 21. In step S1, for example, various data D11 to D15 exemplified in FIGS. 4 to 8 and an initial manufacturing plan Mp before optimization are acquired as the plan input data D10.

[0056] Next, the scheduler terminal 2 instructs the optimization server 3 to execute the optimization calculation (S2). For example, the control unit 20 transmits the acquired plan input data D10 to the optimization server 3 via the network I / F 25 or the like in response to a user operation on the operation unit 22 (S2).

[0057] For example, the optimization server 3 receives an instruction from the scheduler terminal 2 via the communication unit 32, thereby acquiring plan input data D10 to be used in the optimization calculation (S11). The control unit 30 stores the plan input data D10 acquired in step S11 in the storage unit 31. The storage unit 31 of the optimization server 3 may store a part or all of the plan input data D10 in advance.

[0058] Next, the control unit 30 of the optimization server 3 executes an optimization calculation process based on the acquired plan input data D10 (S12). In the optimization calculation process (S12), while searching for an optimal manufacturing plan Mp that conforms to the constraints of the plan input data D10, solution candidates obtained during the process, including solutions that violate the constraints (i.e., constraint-violating solutions), are saved as a database (see FIG. 10). Details of the optimization calculation process (S12) will be described later.

[0059] The optimization server 3 transmits various calculation results for the manufacturing plan MP that is the optimal solution within the range that complies with the constraint conditions as output of the optimization calculation process (S12) to the scheduler terminal 2 via the communication unit 32 (S13). The calculation results include, for example, details of the manufacturing plan MP that is the optimal solution and calculated values ​​of various management indices that indicate its effectiveness.

[0060] The scheduler terminal 2 receives the calculation results of the manufacturing plan Mp that is the above-mentioned optimal solution from the optimization server 3, for example, via the network I / F 25, and controls the display unit 23 to display a plan analysis screen (see FIG. 11) based on the received calculation results (S3). The plan analysis screen of the scheduler terminal 2 is a user interface screen that visualizes the optimization results of the manufacturing plan Mp to the user and prompts the user to perform analyses such as simulations that try out various changes.

[0061] With the plan analysis screen (S4) displayed on the display unit 23, the control unit 20 accepts a user operation on the operation unit 22 and instructs the optimization server 3 to execute a simulation operation in accordance with the user operation (S4). The scheduler terminal 2 transmits a simulation instruction including desired changes to the displayed manufacturing plan requested by the user to the optimization server 3, for example, via the network I / F 25 (S4).

[0062] In response to a simulation instruction (S3) from the scheduler terminal 2, the control unit 30 of the optimization server 3 searches the search history database D20 for a manufacturing plan MP that best matches the user request (S14), as a simulation operation of this embodiment. The data search in step S14 is performed within a range that includes the manufacturing plan MP that is a constraint solution and is stored in the search history database D20 in this system 1.

[0063] Next, the optimization server 3 generates information indicating the results of the above-described simulation operation and transmits it to the scheduler terminal 2 via the communication unit 32 (S15). Such simulation result information is an example of simulation information including, for example, the contents of the modified manufacturing plan MP, the degree of constraint violation due to the modified manufacturing plan MP, and calculated values ​​of various management indices (see FIG. 13).

[0064] The scheduler terminal 2 receives information on the simulation results from the optimization server 3 via, for example, the network I / F 25, and controls the display unit 23 to update the plan analysis screen (see FIG. 13) based on the received information (S5). Details of the simulation operations in steps S3 to S5 will be described later.

[0065] In this system 1, the scheduler terminal 2 may repeat the processes of steps S3 to S5 multiple times in response to a user operation. At this time, the optimization server 3 repeatedly executes steps S14 and S15 in response to an instruction from the scheduler terminal 2.

[0066] The system 1 registers the final manufacturing plan Mp in the management system 15 (FIG. 1) via data communication, for example, from the network I / F 25 of the scheduler terminal 2 or the communication unit 32 of the optimization server 3, and then terminates the processing shown in FIG. 9.

[0067] According to the operation of the present system 1 as described above, the search history database D20 constructed during the execution of the optimization calculation (S12) can be used to realize simulation operations in response to subsequent user operations through simple processing such as data search (S3 to S5, S14). In this way, the present system 1 can improve the processing efficiency of simulation operations.

[0068] Furthermore, according to the present system 1, the processing load of the subsequent simulation operation (S14) is lower than that of the optimization calculation (S2) by the optimization server 2, for example, and therefore the simulation results can be provided promptly to the user at the site 10, making it easier to use the present system 1. For example, the user can give a simulation instruction on the plan analysis screen of the scheduler terminal 2, check the results, and then give a simulation instruction for further improvement, making it easier to realize a manufacturing plan MP that improves resource management at the site 10.

[0069] Below, we will explain an example of the operation of the system 1 performing a simulation operation that allows for change of constraint conditions based on the deadline time for each lot. In the system 1, the changeable constraint condition is not limited to the deadline time, but may also be the possible start time. Furthermore, if there is a constraint condition such as the execution order between multiple lots, the system 1 may perform a simulation operation to determine whether such constraint conditions can also be changed.

[0070] 2.2 Search History Database The search history database D20 constructed in step S12 of FIG. 9 will be described with reference to FIG.

[0071] Fig. 10 illustrates an example of the structure of the search history database D20 in the present system 1. The search history database D20 includes, for example, as shown in Fig. 10, historical plan data D21 and violation effect data D22.

[0072] The historical plan data D21 is an example of a calculation history that manages multiple manufacturing plans MP saved in the search history of the optimization calculation (S12 in FIG. 9). For example, as shown in FIG. 10, the historical plan data D21 manages, for each "plan ID," "equipment," "order," "lot ID," "product," "production start time," "production end time," "manufacturing time," "preparation time," and "power consumption" in association with each other.

[0073] In the historical plan data D21, "Plan ID" indicates the identification information of the managed manufacturing plan MP. "Order" indicates the chronological order in which the lot indicated by the "Lot ID" in the manufacturing plan MP is assigned, for example, for each "equipment." "Manufacturing start time" indicates the scheduled time when manufacturing of the "product" of the lot will begin, "manufacturing end time" indicates the scheduled time when manufacturing of the product of the same lot will end, and "manufacturing time" indicates the length of time from the manufacturing start time to the manufacturing end time for each lot in seconds (same below). "Preparation time" indicates the time required for preparation to start manufacturing the lot. "Power consumption" indicates the amount of power required to manufacture the lot in kWh.

[0074] The violation effect data D22 is an example of a calculation history that manages the calculated value of the effect corresponding to the control index of each manufacturing plan Mp and the degree of constraint violation. For example, as shown in FIG. 10 , the violation effect data D22 manages the "plan ID," "total operating time [seconds]," "total power consumption [kWh]," "average lead time [seconds]," "number of deadline violation lots," and "total deadline violation time [seconds]" in association with each other.

[0075] In the violation effect data D22, the "total operating time" indicates the total time, in seconds, of the manufacturing time and preparation time (@ the historical plan data D21) of all lots by the multiple facilities 11 in the manufacturing plan Mp indicated by the "plan ID." For example, the total operating time may be the sum or average of the operating times (= manufacturing time + preparation time) of the multiple facilities 11, or may be the net time taking into account overlapping time periods in the operating times of the facilities 11.

[0076] "Total power consumption" indicates the total amount of power consumed in kWh for all lots produced by the multiple facilities 11 in the production plan Mp. "Average lead time" indicates the average time (= production time + preparation time) for each of all lots produced by the multiple facilities 11 in the production plan Mp.

[0077] The "number of deadline violation lots" indicates the number of lots that violate the constraint by missing the deadline (FIG. 8) among all the lots in the manufacturing plan MP. The "total deadline constraint violation time" indicates the total time difference between the deadline and the manufacturing end time for each lot that violates the constraint (i.e., deadline violation) in the manufacturing plan MP.

[0078] According to the search history database D20 of the present system 1 as described above, the effect of each manufacturing plan MP managed in the history plan data D21 is associated with the degree of constraint violation in the violation effect data D22. This makes it possible to search for various manufacturing plans MP based on the correspondence between constraint violation and effect.

[0079] Furthermore, the search history database D20 as described above is obtained using the calculation results in the optimization calculation process (S12 in FIG. 9) by the optimization server 2, and can be constructed with high processing efficiency.

[0080] 2.3 Simulation Operation of User Request The simulation operation of the present system 1 in response to the user's operation in steps S3 to S5 in FIG. 9 will be described with reference to FIGS.

[0081] 11 shows an example of the plan analysis screen displayed in step S3 as a result of the optimization calculation process (S12 in FIG. 9). The plan analysis screen on the display unit 23 of the scheduler terminal 2 includes, for example, a plan display field 51, a management index chart 52, and a constraint violation table 53, as shown in FIG.

[0082] The plan display field 51 includes, for example, a plurality of lot bands 50 allocated in chronological order as a schedule for each facility 11 so as to show the contents of the manufacturing plan Mp to be displayed. Each lot band 50 indicates a time period allocated to manufacture the corresponding lot of products 12.

[0083] The control index chart 52 is a radar chart that visualizes the magnitude of multiple control indexes, such as "operation rate," "lead time," and "power," in the manufacturing plan Mp to be displayed. "Operation rate" indicates, for example, the ratio of the total manufacturing time (FIG. 10) to the total operation time. "Lead time" indicates, for example, the average lead time in the historical plan data D21 (FIG. 10). "Power" indicates, for example, the amount of power consumption in the historical plan data D21.

[0084] The constraint violation table 53 shows, for example, the deadline violation amount for each product 12 and the total deadline violation amount. The deadline violation amount is, for example, the deadline violation time for a lot of the product 12, and is an example of the constraint violation amount. The deadline violation amount for each product 12 (or each lot) may be calculated by the control unit 20 or may be stored in the search history database D20.

[0085] 11, the manufacturing plan Mp satisfies the constraint conditions due to the optimal solution resulting from the initial optimization calculation process (S12 in FIG. 9), and therefore the various constraint violation amounts are "0." At this time, the magnitudes of the control indices optimized within the ranges that satisfy the constraint conditions are displayed on the control index chart 52.

[0086] In the system 1, for example, in the scheduler terminal 2, the operation unit 22 accepts a user operation to change the size of any of the management indicators using the management indicator chart 52 displayed on the display unit 23 (S3). Figure 12 illustrates an example of such a user operation.

[0087] Fig. 12 shows an example of inputting a simulation instruction from the example of Fig. 11. In this example, the user inputs a user operation to increase the management index "availability" by 20% by dragging the cursor 5 operated on the operation unit 22 of the scheduler terminal 2. In response to this user operation, the scheduler terminal 2 issues a simulation instruction to the optimization server 3, which includes, for example, the magnitude of the management index increased by the user operation as a change condition (S4).

[0088] Then, the control unit 30 of the optimization server 3 searches the search history database D20 ( FIG. 10 ) for a manufacturing plan MP that satisfies the change condition included in the simulation instruction (S14), and transmits information on the optimum manufacturing plan MP after the change to the scheduler terminal 2 (S15). In step S14, if multiple manufacturing plans MP satisfy the change condition, for example, the control unit 30 extracts the manufacturing plan MP with the smallest amount of constraint violation from the multiple manufacturing plans MP narrowed down by the change condition.

[0089] When the scheduler terminal 2 receives the information on the simulation results from the optimization server 3 as a response to the simulation instruction, it updates the plan analysis screen on the display unit 23 (S5). Fig. 13 shows an example of the plan analysis screen updated after the user operation in Fig. 12 from the example in Fig. 11.

[0090] 13, a schedule is displayed in which the arrangement of lot bands 50 has been changed overall from that in FIG. 11, reflecting that the manufacturing plan Mp updated in step S5 is different from that before the update. Furthermore, in this example, the display unit 23 of the scheduler terminal 2 highlights the lot bands 50 for the constraint-violating lots La and Lb in the plan display field 51, as shown in FIG. 13, because the manufacturing plan Mp received in step S5 is based on a constraint-violating solution.

[0091] The lot band 50 that violates the constraints may be highlighted by, for example, adding a frame, changing the color or hatching, or flashing. The constraint violation may be highlighted by adding a mark such as "!" or by adding a comment. In addition, in the present system 1, the plan analysis screen may be updated to display the sections 51 to 53 before and after the simulation (FIGS. 11 and 13) side by side.

[0092] For example, in step S5, the control unit 20 may detect constraint-violating lots La and Lb by comparing the updated manufacturing plan Mp with the lot constraint data D15. Alternatively, the optimization server 3 may store in advance identification information of constraint-violating lots La and Lb in the search history database D20 or the like, and include the information transmitted to the scheduler terminal 2 in step S15.

[0093] In the control index chart 52, the operating rate has increased in accordance with the user's instructions from before the update (FIG. 11), as shown in FIG. 13. In this example, the other effect indexes in the control index chart 52 also change before and after the update. In the constraint violation table 53, for example, as shown in FIG. 13, the cutoff violation amounts for products A and B for constraint violating lots La and Lb have been updated from zero.

[0094] As described above, according to the simulation operation of the present system 1, for example, on the plan analysis screen ( FIG. 13 ), the user can specifically visualize, as a simulation result for obtaining the desired effect of the management index, the effect in the new manufacturing plan Mp, as well as the extent to which constraint violations will occur in which lots La, Lb.

[0095] 12, the system 1 accepts a user operation requesting a change in a management index as a simulation instruction, thereby enabling the user to easily utilize the simulation operation of the system 1 without having to predict how the constraints should be changed. In the system 1, such a user instruction is not limited to the example of FIG. 12, and may be, for example, a change in another management index in the management index chart 52. For example, when a user instruction to reduce "power" by a desired percentage is input, the system 1 can perform a simulation operation by searching the search history database D20 as in the above example, with the magnitude of the reduced power as a change condition.

[0096] In the above-described simulation operation of a user request in the present system 1, the user instruction is not limited to a change in the management index (FIG. 12), but may also request a change in the constraint conditions, for example. Such a modification will be described with reference to FIG. 14.

[0097] 14 , the system 1 may display a constraint change console 54 on a plan analysis screen or the like of the display unit 23. The constraint change console 54 is a console for accepting user operations to change constraint conditions. For example, in step S4, the control unit 20 of the scheduler terminal 2 accepts user operations on the constraint change console 54 via the operation unit 22.

[0098] For example, the control unit 20 accepts a user operation to select a lot for which constraint conditions are to be changed using a "+" button or the like on the constraint change console 54 with the cursor 5 or the like, and a user operation to input change values ​​such as a deadline time for the selected lot. Thereafter, in response to a user operation of the simulation execution button 55, for example, the control unit 20 of the scheduler terminal 2 includes the changed constraint conditions in a simulation instruction and transmits it to the optimization server 3 (S4).

[0099] In response to the simulation instruction, the control unit 30 of the optimization server 3 narrows down the search in the search history database D20 to find a manufacturing plan MP that matches the changed constraint conditions (S14). The optimization server 3 transmits the manufacturing plan MP with the best management index, such as availability, from the narrowed-down results to the scheduler terminal 2 as a simulation result (S15). In this way, in response to the simulation instruction, the scheduler terminal 2 updates the plan analysis screen on the display unit 23 so as to display the simulation results of the manufacturing plan MP when the constraint conditions are changed to those requested by the user (S5).

[0100] Even with the above-described modification, the system 1 can perform a simulation operation requested by the user through a low-load process such as searching the search history database D20, without having to redo the optimization calculation (S12). Furthermore, the user can check the effect of the desired constraint change on the management index chart 52 on the plan analysis screen. This constraint change console 54 (FIG. 14) may be used in combination with the simulation instruction in the example of FIG. 12 described above.

[0101] 2.4 Optimization Calculation Processing Details of the optimization calculation processing in step S12 in Fig. 9 will be explained using Fig. 15. Each process shown in the flowchart in Fig. 15 is executed by the control unit 20 of the optimization server 2, for example.

[0102] First, the control unit 30 performs various initial settings for the optimization calculation process (S21). For example, the control unit 30 sets a tentative solution Xo, which indicates a candidate for the optimal solution of the manufacturing plan Mp, as an initial value, and prepares an initial search history database D20.

[0103] In step S21, the initial value of the tentative solution Xo is, for example, the pre-optimization manufacturing plan Mp included in the plan input data D10 acquired in step S11 ( FIG. 9 ) from the scheduler terminal 2. Also, for example, in step S21, the control unit 30 generates the search history database D20 with null values ​​as an initial state.

[0104] Next, the control unit 30 generates a neighboring solution Xn from the current tentative solution Xo based on the set tentative solution Xo (S22). The optimization calculation of this embodiment can be implemented, for example, as a solution to an optimization problem in which the so-called traveling salesman problem is subjected to constraints of the site 10.

[0105] The processing of step S22 is performed by, for example, computing a neighborhood operation such as an insertion neighborhood or a replacement neighborhood in a local search method. For example, the control unit 30 determines the manufacturing time and preparation time for each lot in the neighborhood solution Xn in response to a change in the order of lots for each facility 11 due to a neighborhood operation from the tentative solution Xo (see D21 in FIG. 10). This determination is performed by, for example, referring to the lot manufacturing time and changeover time corresponding to the changed portion of the neighborhood solution Xn in the lot data D11 ( FIG. 4 ) and the product changeover data D12 ( FIG. 5 ). The manufacturing start time, manufacturing end time, and power consumption for each lot can be calculated based on the above determination results, the facility power data D13 ( FIG. 6 ), the facility operation data D14 ( FIG. 7 ), etc.

[0106] Next, the control unit 30 performs a calculation of the objective function f(Xn) in the optimization calculation based on the generated neighborhood solution Xn (S23). The optimization calculation of this embodiment is performed, for example, with the objective of minimizing the objective function f(Xn). The objective function f(Xn) is formed, for example, by adding a penalty term for a constraint violation to the total operating time for the manufacturing plan Mp of the neighborhood solution Xn.

[0107] For example, in step S23, the control unit 30 calculates various quantities related to constraint violations, such as management indices such as the total operating time, total power consumption, and average lead time, as well as the number of deadline violation lots and total deadline violation time (see D22 in FIG. 10). The calculation of the constraint violations can be performed based on the production end time for each lot of the neighboring solution Xn and the lot constraint data D15 (FIG. 8). The penalty term of the objective function f(Xn) includes, for example, the quantities related to the constraint violations. The objective function f(Xn) may be configured using one or more of the above management indices in addition to or instead of the total operating time. The penalty term may also be omitted from the objective function f(Xn).

[0108] Next, in this embodiment, the control unit 30 stores the manufacturing plan Mp of the neighborhood solution Xn obtained as described above, and the calculation results of its management index and constraint violation in the search history database D20 (S24).

[0109] 10, the control unit 30 sequentially assigns plan IDs to the manufacturing plans MP of the neighboring solutions Xn in step S24, and stores the contents of the manufacturing plans MP with the corresponding plan IDs in the historical plan data D21 of the search history database D20. Furthermore, the control unit 30 stores the calculation results of various management indices and constraint violations for the manufacturing plans MP with the corresponding plan IDs in the violation effect data D22 of the search history database D20. In this way, in this embodiment, every time a neighboring solution Xn is generated, a new manufacturing plan MP is saved and accumulated in the search history database D20.

[0110] The control unit 30 also determines whether the objective function f(Xn) of the neighboring solution Xn is less than the objective function f(Xo) of the tentative solution Xo (S25). The determination in step S25 is made to determine whether the objective function f(Xn) of the newly generated neighboring solution Xn is an improvement over the objective function f(Xo) of the current tentative solution Xo.

[0111] If the objective function f(Xn) of the neighboring solution Xn is less than the objective function f(Xo) of the tentative solution Xo (YES in S25), the control unit 30 updates the tentative solution Xo by replacing the neighboring solution Xn with a new tentative solution Xo (S26).

[0112] On the other hand, if the objective function f(Xn) of the neighboring solution Xn is not less than the objective function f(Xo) of the tentative solution Xo (NO in S25), the control unit 30 maintains the tentative solution Xo without updating it (S25) and proceeds to processing in step S27.

[0113] Next, the control unit 30 determines whether, for example, the current calculation state satisfies a predetermined condition for terminating the optimization calculation process, i.e., a termination condition (S27). The termination condition includes, for example, whether the calculation of the neighborhood solution Xn (S22) has been performed a predetermined number of times or more. The predetermined number of times is set, for example, from the perspective of convergence of the objective function f(Xn), and is, for example, 100,000 to 1,000,000 times. The termination condition also includes whether the current tentative solution Xo satisfies the constraint condition. As a result, in this embodiment, the optimal solution obtained as the output of the optimization calculation process (S12) is limited to one that satisfies the constraint condition.

[0114] If the termination condition is not satisfied (NO in S27), the control unit 30 executes the processes from step S22 onwards again, whereby the control unit 30 repeatedly performs the calculation processes (S22 to S25) including the generation of the neighborhood solution Xn (S22), and the calculation results are stored in the search history database D20 (S23).

[0115] On the other hand, if the termination condition is satisfied (YES in S27), the control unit 30 determines the current tentative solution Xo as the optimal solution Xa as the output of the optimization calculation process (S28). Thereafter, with the determined optimal solution Xa and the search history database D20 stored in the storage unit 31, the control unit 30 terminates the optimization calculation process (S12 in FIG. 9) and proceeds to step S13.

[0116] According to the above optimization calculation process (S12), in this embodiment, the control unit 30 performs numerical calculations to search for optimal solutions that satisfy the constraints, while constructing a search history database D20 that includes solutions that violate the constraints as by-products. Such a search history database D20 can be constructed using by-products that would be discarded in a typical optimization calculation, thereby reducing the processing load.

[0117] In the above description, an example has been described in which the optimal solution Xa output from the optimization calculation process (S12) satisfies the constraints. However, the present system 1 is not limited to this, and the optimal solution Xa does not necessarily have to satisfy the constraints. For example, the termination condition of step S27 does not have to include the tentative solution Xo satisfying the constraints. Even in this case, the optimal solution Xa is subject to constraint restrictions, for example, due to a penalty term in the objective function. Furthermore, for example, on the plan analysis screen ( FIG. 11 ) displayed as the result of the optimization calculation in step S3, the user can confirm the degree of constraint violation of the optimal solution Xa.

[0118] 3. Summary As described above, in the plan optimization system 1 of this embodiment, the optimization server 3, which is an example of a simulation device, i.e., an example of an information processing device, includes a storage unit 31 and a control unit 30. The storage unit 31 stores plan input data D10 as an example of input data indicating the contents of a plan to be optimized, such as a manufacturing plan Mp. The control unit 30 executes an optimization calculation, in which candidate plans optimized with respect to one or more control indices are repeatedly calculated based on the plan input data D10 (S12). The plan input data D10 includes lot constraint data D15, which is an example of a constraint that restricts the plan optimized in the optimization calculation. The control unit 30 stores search history data D20, which is an example of a calculation history including a plan that violates the constraint among the multiple plans calculated as candidate plans in the optimization calculation, in the storage unit 31 (S12, S24). The control unit 30 references the plans included in the stored search history database D20 and generates simulation information (see FIG. 13 ) indicating a simulation result regarding improvement of at least some of the control indices resulting from the optimization calculation (S14).

[0119] According to the present system 1, a search history database D20 of the calculation history in the optimization calculation is stored and used to generate simulation information, making it easier to perform simulations for optimizing plans with constraints. For example, in the present system 1, simulation information is generated by referencing the stored search history database D20, thereby reducing the processing load of the simulation and improving calculation efficiency. In this way, the information processing device of this embodiment can improve the practicality of simulation techniques for optimizing plans with constraints.

[0120] In this embodiment, the control unit 30 searches the stored search history database D20 for one or more plans within a range including the violated plan based on predetermined conditions, and generates simulation information (S14). This allows the simulation information to be generated by including the constraint-violating solution in the search range for generating the simulation information, making it easier to perform a simulation for optimizing a plan having constraint conditions.

[0121] In this embodiment, the control unit 30 generates simulation information based on the violated plan in the search history database D20 so as to show a simulation result in which at least some of the control indices are improved when the constraint conditions are not satisfied compared to when the constraint conditions are satisfied (see FIG. 13 ). This makes it possible to perform a simulation to try to improve the control indices due to the constraint violation, and makes it easier to perform a simulation for optimizing a plan with constraint conditions.

[0122] In this embodiment, a manufacturing plan Mp, which is an example of a plan, indicates multiple schedules to be executed sequentially, for example, for each lot, at the manufacturing site 10. The management indicators manage resources used to execute the manufacturing plan Mp at the site 10, such as total operating time, lead time, or power. The system 1 can facilitate simulation of plan optimization for efficient resource management at the manufacturing site 10, for example.

[0123] In this embodiment, for example, the optimization server 3 further includes a communication unit 32, which is an example of an output unit, that outputs simulation information so that the plan based on the simulation information is registered in the management system 15 that manages the site 10. According to the present system 1, for example, by registering the plan in the management system 15, the plan in which the management indicators have been improved based on the simulation information from a state limited by constraints can be reflected in the site 10, and the effect of improving the management indicators can be realized at the site 10.

[0124] In this embodiment, the optimization server 3 further includes a communication unit 32 as an example of an input unit that inputs user operations. In response to the user operations input via the communication unit 32 (see S4 and S14), the control unit 30 references the plans included in the search history database D20 and generates simulation information (see S14, FIG. 13). The system 1 makes it easy for users to perform simulations for optimizing plans that have constraints.

[0125] In this embodiment, the control unit 30 receives a user operation to change the target value of the control index through the input unit (see FIG. 12), and generates simulation information by referring to a plan that satisfies the target value changed by the user operation in the search history database D20 (S14). This allows the user to obtain simulation results by specifying the desired target value of the control index, making it easier to perform simulations for optimizing the plan.

[0126] In this embodiment, the control unit 30 receives a user operation to change the constraint conditions through the input unit (see FIG. 14), and generates simulation information by referencing a plan that satisfies the constraint conditions changed by the user operation in the search history database D20 (S14). This allows the user to obtain simulation results by instructing changes to the desired constraint conditions, making it easier to perform simulations for optimizing the plan.

[0127] In this embodiment, the control unit 30 displays initial information including the plan optimized in the optimization calculation on a plan analysis screen on the display unit 23, which is an example of a predetermined display screen, as illustrated in FIG. 11 (S13, S4). For example, various pieces of information output from the optimization calculation process (S12) are examples of initial information. With this initial information displayed on the display screen, the control unit 30 accepts user operations at the input unit (S4, S14). This allows the user to check the initial information from the optimization calculation and then instruct a simulation of desired changes, making it easier to perform a simulation of the plan optimization.

[0128] In this embodiment, after the user operation is input in step S4, the control unit 30 updates the plan analysis screen to display the simulation information based on the generated simulation information (S15, S5, see FIG. 13). This allows the system 1 to dynamically update the plan analysis screen in response to a simulation instruction from the user, making it easier to perform a simulation of plan optimization.

[0129] In this embodiment, the simulation information includes the degree to which a specific plan output as a simulation result from among multiple plans violates the constraints, as in the constraint violation table 53. In this way, the control unit 30 notifies the degree to which the plan violates the constraints along with the plan. This makes it possible to confirm the degree to which the plan violates the constraints from the simulation information, making it easier to perform a simulation for optimizing a plan that has constraints.

[0130] A simulation method, which is an example of an information processing method according to this embodiment, includes the steps of: a computer, such as the optimization server 3, acquiring plan input data D10 indicating the contents of a plan to be optimized (S11); and a control unit 30 thereof executing an optimization calculation, based on the plan input data D10, to iteratively calculate candidate plans optimized with respect to one or more control indicators (S12). The plan input data D10 includes constraints that limit the plans optimized in the optimization calculation. This method also includes the steps of the control unit 30 storing, in the memory unit 31 of the computer (S12, S24), a calculation history including plans that violate the constraints among the multiple plans calculated as candidates in the optimization calculation; and a step of generating simulation information indicating a simulation result regarding improvement of at least some of the control indicators resulting from the optimization calculation by referencing the plans included in the stored calculation history (S13).

[0131] The above-described simulation method can facilitate simulation of optimization of a plan having constraints. In this embodiment, a program for causing a control unit of a computer to execute such a simulation method or information processing method may be provided. This method can improve the practicality of simulation technology for optimization of a plan having constraints.

[0132] In this embodiment, the plan optimization system 1 is an example of a simulation system that includes an optimization server 3, which is an example of a simulation device, and a scheduler terminal 2, which is an example of an information terminal that displays simulation information by performing data communication with the optimization server 3. According to this system 1, it is possible to easily perform a simulation for optimizing a plan that has constraints, for example, by using the optimization server 3 and the scheduler terminal 2 that are connected via a communication network.

[0133] (Embodiment 2) Hereinafter, embodiment 2 will be described with reference to Figures 16 and 17. In embodiment 1, a plan optimization system 1 that performs a simulation in response to a user request will be described. In embodiment 2, a plan optimization system 1 that automatically performs a simulation will be described.

[0134] Hereinafter, the plan optimization system 1 according to this embodiment will be described, omitting descriptions of the same configurations and operations as those of the plan optimization system 1 according to the first embodiment as appropriate.

[0135] 16 is a sequence diagram for explaining the operation of the plan optimization system 1 in embodiment 2. In the plan optimization system 1 of this embodiment, the scheduler terminal 2 and the optimization server 3 perform the same operations as in embodiment 1, and in addition, for example, after the optimization calculation process (S12), the optimization server 3 performs a simulation process of constraint relaxation (S16).

[0136] The constraint relaxation simulation process (S16) of this embodiment uses the search history database D20 constructed in the optimization calculation process (S12) to perform a simulation of the relaxation of constraint conditions through statistical analysis of multiple stored manufacturing plans MP. Below, an example of the simulation process (S16) performed to analyze constraint conditions that are expected to be improved by relaxation, i.e., bottleneck constraints, will be described.

[0137] 17 is a flowchart illustrating the constraint relaxation simulation process (S16) in the present system 1. The process shown in the flowchart in FIG. 17 is started, for example, in a state where the search history database D20 is stored in the storage unit 31 of the optimization server 3, and is executed by the control unit 30.

[0138] First, the control unit 30 extracts a manufacturing plan Mp that satisfies a predetermined condition from the search history database D20 as a target for statistical analysis (S31). The predetermined condition is set from the perspective of a search that narrows down the target for analysis, and is set, for example, to a condition that the total operating time as the objective function f() is shorter than that of the manufacturing plan Mp of the optimal solution Xa that has no constraint violations and is obtained as a result of the optimization calculation process (S12). As a result, constraint-violating solutions that improve the objective function f() due to constraint violations can be used as the target for the following analysis.

[0139] Next, the control unit 30 selects lots one by one from the lot data D11 in the plan input data D10 acquired in step S11 (S32). The selection in step S32 is performed to analyze constraint violations, such as deadline violations, for each lot.

[0140] Next, the control unit 30 calculates the contribution of constraint relaxation for the selected lot based on the manufacturing plan Mp extracted from the search history database D20, for example, by calculating the following equation (1) (S33). The contribution of constraint relaxation indicates the estimated degree to which an objective function f() such as the total operating time is reduced by relaxing the constraints of the lot.

[0141] In the above formula (1), the set Sx is a set of manufacturing plans Mp for which the lot x in question violates a constraint among the manufacturing plans Mp to be analyzed extracted in step S31, and |Sx| indicates the number of manufacturing plans s that are elements in the set Sx. In the above formula (1), the sum of all manufacturing plans s in the set Sx is taken. Furthermore, the optimal plan sa indicates the optimal solution Xa that does not violate any constraints. The set L is a set of lots l included in the lot data D11. The constraint violation amount Vs,l is a quantity such as the length of the deadline violation time of lot l in the manufacturing plan s. In the above formula (1), the sum of the constraint violation amounts Vs,l for all lots l in the set L is taken.

[0142] For example, if the contribution of constraint relaxation has not been calculated for all lots in the lot data D11 (NO in S34), the control unit 30 selects a new lot for which the calculation has not been performed (S32) and performs the process of step S33 again. In this way, the contribution of constraint relaxation as expressed by the above formula (1) is calculated for all lots (S32 to S34).

[0143] When the contribution of constraint relaxation has been calculated for all lots (YES in S34), the control unit 30 generates, for example, analysis information of the bottleneck constraint based on the calculated contribution of constraint relaxation (S35). The bottleneck constraint is identified as the constraint condition of a lot with a relatively high contribution, for example, among constraint conditions such as the deadline time of each lot. With such a bottleneck constraint, it can be expected that relaxation of the bottleneck constraint will result in a relatively large reduction in the total operating time, etc.

[0144] For example, in step S35, the control unit 30 generates information indicating, in a ranking format, the lots with the highest contributions to constraint relaxation among all the lots as bottleneck constraint analysis information. Such analysis information may include information on all the lots, or may be limited to information on a predetermined number of the top lots. The bottleneck constraint analysis information is an example of simulation information in this embodiment.

[0145] For example, the control unit 30 of the optimization server 3 stores the bottleneck constraint analysis information generated in step S35 in the storage unit 31, terminates the constraint relaxation simulation process (S16 in FIG. 16 ), and proceeds to step S15. At this time, the optimization server 3 includes the results of the constraint relaxation simulation process (S16), such as the bottleneck constraint analysis information, in the information to be sent to the scheduler terminal 2 in step S15, for example.

[0146] According to the above processing, the present system 1 can automatically perform simulations of constraint violations to improve management indicators such as total operating time through statistical analysis using multiple constraint violation solutions obtained as a by-product of the optimization calculation.

[0147] As described above, in the plan optimization system 1 of this embodiment, the control unit 30 performs statistical analysis on multiple plans contained in the stored search history database D20, and generates simulation information that indicates simulation results in which at least some of the management indicators are improved when the constraints are relaxed (S31 to S35). According to this system 1, the calculation history of the optimization calculation can be utilized through statistical analysis, making it easier to perform simulations for optimizing plans that have constraints.

[0148] (Other Embodiments) As described above, embodiments 1 and 2 have been described as examples of the technology disclosed in this application. However, the technology in this disclosure is not limited to these and can be applied to embodiments in which modifications, substitutions, additions, omissions, etc. are made as appropriate. It is also possible to combine the components described in each of the above embodiments to create new embodiments. Therefore, other embodiments will be described below as examples.

[0149] In the above-described first embodiment, an example of the optimization calculation process (S12) in the present system 1 has been described, but the optimization calculation process of this embodiment is not limited to this. For example, in the first embodiment (FIG. 15), all calculated neighbor solutions Xn are stored in the search history database D20, but it is not necessary to store all neighbor solutions Xn. Such a modification will be described with reference to FIG. 18.

[0150] 18 is a flowchart illustrating an example of the optimization calculation process in Modification 1 of the present system 1. In this modification, in addition to executing steps S21 to S28 similar to those of the optimization calculation process (FIG. 15) of Embodiment 1, the control unit 30 determines whether the neighborhood solution Xn generated in step S22 satisfies predetermined storage conditions (S20). The storage conditions indicate rules for narrowing down the solution candidates to be stored in the search history database D20, and are set from the perspective of usefulness, for example, expected reference in subsequent simulation operations.

[0151] For example, the storage conditions in step S20 are set to the following conditions (I) and (II): (I) The total operating time of the neighboring solution Xn is less than the total operating time of the current tentative solution Xo; (II) The penalty term for constraint violation is less than a threshold value indicating a predetermined tolerance range. According to the above storage conditions, condition (I) narrows down the storage targets to neighboring solutions Xn whose management indicators, such as the total operating time, have been improved from the tentative solution Xo; and condition (II) narrows down the storage targets to neighboring solutions Xn whose constraint violations are within a tolerance range.

[0152] In this modification, if the control unit 30 determines that the neighboring solution Xn satisfies the storage condition (YES in S20), it stores the neighboring solution Xn in the search history database D20 (S24). On the other hand, if the control unit 30 determines that the neighboring solution Xn does not satisfy the storage condition (NO in S20), it does not store the neighboring solution Xn in the search history database D20, and proceeds to, for example, step S25.

[0153] According to the optimization calculation process (S12) of this modified example as described above, it is possible to narrow down the solution candidates to be included in the search history database D20 based on the rules of the storage conditions, thereby reducing the amount of data in the constructed database. For example, by not storing solution candidates that are not expected to be referenced in the simulation operation in the search history database D20, it is possible to reduce the amount of data in the search history database D20.

[0154] As described above, in the plan optimization system 1 of this embodiment, the control unit 30 narrows down the plans to be stored in the storage unit 31 as the search history database D20 from the multiple plans calculated as candidates in the optimization calculation in accordance with predetermined rules such as storage conditions (S20). This reduces the amount of data in the search history database D20, and enables the search history database D20 to be stored efficiently.

[0155] Furthermore, in the plan optimization system 1 of this embodiment, the optimization calculation process (S12) is not limited to the optimization of a single objective function, and may be performed as multi-objective optimization. Such a modified example will be described with reference to FIG. 19 .

[0156] Fig. 19 is a diagram for explaining Modification 2 of the present system 1. Fig. 19 illustrates a plan list 56 displayed on the display unit 23 of the scheduler terminal 2. The plan list 56 is a user interface that displays a list of multiple plans, along with the management index and constraint violation amount of each plan, and accepts a user's selection from the list.

[0157] In this system 2, for example, the optimization server 3 performs an optimization calculation process (S12) using multi-objective optimization for multiple objective functions corresponding to multiple management indicators, and outputs information indicating Pareto solutions as the processing result to the scheduler terminal 2. The Pareto solutions constitute a set of multiple optimal solutions that are competitive among the multiple objective functions. In this case, the scheduler terminal 2 may display a plan list 56 of the Pareto solutions, as shown in FIG. 19 , for example, when displaying the plan analysis screen on the display unit 23.

[0158] For example, the control unit 20 of the scheduler terminal 2 accepts, via the operation unit 22, a user operation to select one or more manufacturing plans MP from among the multiple plans in the plan list 56. For example, when two manufacturing plans MP are selected by the user, the control unit 20 may display each of the selected manufacturing plans MP on the plan analysis screen of the display unit 23 so that the user can compare the two manufacturing plans.

[0159] In the present system 1, the plan list 56 is not necessarily limited to the Pareto solutions, and may display various multiple plans. A user may use the plan list 56 to compare, for example, an initial manufacturing plan Mp before optimization with a manufacturing plan Mp resulting from optimization. Alternatively, various multiple plans in the search history database D20 constructed during the optimization calculation process (S12) may be displayed in a selectable manner in the plan list 56.

[0160] In addition, in each of the above embodiments, an example has been described in which the plan optimization system 1 is applied to a site 10 such as a manufacturing factory, but the present system 1 is not particularly limited to this. The present system 1 can be applied to various sites such as various manufacturing sites, logistics sites, and distribution sites. Such a modified example will be described using Figures 20 and 21.

[0161] Fig. 20 illustrates an example of the structure of plan input data D30 in Modification 3 of the plan optimization system 1. Fig. 21 illustrates an example of the structure of a search history database D40 in this modification.

[0162] For example, at work sites such as logistics centers, work plans are used that assign various tasks, such as warehousing and packing, to individual workers. At such work sites, the system 1 uses work site plan input data D30, as illustrated in Fig. 20, instead of the plan input data D10 (Figs. 4 to 8) of the first embodiment. The plan input data D30 of this modification includes, for example, task data D31, task switching data D32, task time data D33, working time data D34, and task constraint data D35, as shown in Fig. 20, instead of the various data D11 to D15 of the first embodiment.

[0163] The operation data D31 manages operations as a planned object instead of lots in the lot data D11 (FIG. 4) of the first embodiment, for example. The operation switching data D32 manages the switching time between operations instead of the product switching data D12 (FIG. 5). The operation time data D33 manages the operation time of workers instead of the equipment power data D13 (FIG. 6). The working time data D34 manages the working time of workers instead of the equipment operation data D14 (FIG. 7). The operation constraint data D35 manages the constraint conditions of operations instead of the lot constraint data D15 (FIG. 8).

[0164] The plan optimization system 1 of this modified example constructs a search history database D40 as illustrated in Fig. 21 when performing the optimization calculation process (S12) based on, for example, the above-mentioned plan input data D30 (Fig. 20), as in the first embodiment. The search history database D40 of this modified example has a configuration similar to, for example, the search history database D20 (Fig. 10) of the first embodiment, and includes plan data D41 and violation effect data D42 about the work site. According to this system 1, even at the above-mentioned work site, as in the first embodiment, various subsequent simulation operations can be realized with high computational efficiency using the search history database D40 obtained as a by-product of the optimization calculation.

[0165] In the work site of this system 1, workers are not limited to humans, but may be, for example, AGVs (automated guided vehicles) or various robots. Furthermore, the workload is not limited to human workload, but may be various workloads that consume various resources to perform the work. The various resources include, for example, time resources, energy resources, and hardware resources.

[0166] As described above, in the plan optimization system 1 of this embodiment, the target plan may represent multiple schedules to be carried out sequentially at a site where at least one of manufacturing, logistics, and distribution is carried out, for example. The management index may manage resources used to implement the plan at the site.

[0167] In the present system 1, the management index may be an index for managing at least one of production volume, power consumption, carbon dioxide emissions, equipment operating hours, workload, etc. at various sites. The present system 1 is applicable to the optimization of plans for managing various resources at various supply chain sites. As in the above-described embodiments, the present system 1 can easily simulate various possible changes in constraint conditions at such various sites by utilizing the calculation history of the optimization calculations.

[0168] In the above embodiments, the optimization server 3 has been described as an example of a simulation device in the present system 1, but the simulation device in the present embodiments is not limited to this. In the present embodiments, the scheduler terminal 2 may also be an example of a simulation device. For example, the scheduler terminal 2 may execute the optimization calculation process (S12) and various simulations (S13, S16). In this case, the optimization server 3 may be omitted from the present system 1. Also, in the present embodiments, the simulation device may be realized by cooperation between the scheduler terminal 2 and the optimization server 3. For example, part of the processes in steps S12, S13, and S16 may be performed by the scheduler terminal 2.

[0169] (Examples of Aspects) Examples of aspects of the present disclosure are described below.

[0170] A first aspect of the present disclosure is an information processing device including a storage unit that stores input data to be optimized, and a control unit that executes an optimization calculation in which candidate solutions optimized with respect to one or more management indicators are repeatedly calculated based on the input data. The input data includes constraints that limit the solutions optimized in the optimization calculation. The control unit stores in the storage unit a calculation history that includes solutions that violate the constraints among multiple solutions calculated as candidates in the optimization calculation, and generates a plan in which at least some of the management indicators are improved by referring to the stored calculation history. These various solutions may be intermediate data temporarily stored in a storage area during processing in which the optimization calculation is executed in hardware resources such as the control unit and the storage unit, or may be calculated solutions calculated during the processing while allowing violations of the constraints.

[0171] Furthermore, the information processing device of various aspects may be a simulation device. The input data may indicate the contents of a plan to be optimized. Each solution may be a plan. The control unit may store in the storage unit a calculation history including a plan that violates a constraint condition among multiple plans calculated as candidates in the optimization calculation, and may generate simulation information indicating a simulation result regarding an improvement of at least a part of the control index from the result of the optimization calculation by referring to the plan included in the stored calculation history.

[0172] In a second aspect, in the information processing device described in the first aspect, the control unit searches for one or more solutions within a range that includes a violating solution in the stored calculation history based on predetermined conditions, and generates a plan.

[0173] In a third aspect, in the information processing device described in the first or second aspect, the control unit generates an improved plan when the constraint conditions are not satisfied based on the violated solutions in the calculation history, compared to when at least some of the management indicators satisfy the constraint conditions.

[0174] In a fourth aspect, in the information processing device according to any one of the first to third aspects, the plan indicates a plurality of schedules to be carried out sequentially at a site where at least one of manufacturing, logistics, and distribution is carried out, and the management index manages resources used in carrying out the plan at the site.

[0175] In a fifth aspect, the information processing device according to the fourth aspect further includes an output unit that outputs the plan so that the plan is registered in a management system that manages the site.

[0176] In a sixth aspect, the information processing device according to any one of the first to fifth aspects further includes an input unit for inputting a user operation, and the control unit generates a plan by referring to a solution included in the calculation history in response to the user operation inputted to the input unit.

[0177] In a seventh aspect, in the information processing device described in the sixth aspect, the control unit accepts a user operation to change a target value of a management index in the input unit, and generates a plan by referring to a solution in the calculation history that satisfies the target value changed by the user operation.

[0178] In an eighth aspect, in the information processing device described in the sixth or seventh aspect, the control unit accepts a user operation that changes a constraint condition at the input unit, and generates a plan by referring to a solution in the calculation history that satisfies the constraint condition changed by the user operation.

[0179] In a ninth aspect, in an information processing device according to any one of the sixth to eighth aspects, the control unit displays initial information including a plan based on a solution optimized in the optimization calculation on a predetermined display screen, and accepts user operations on the input unit while the initial information is displayed on the display screen.

[0180] In a tenth aspect, in the information processing device according to the ninth aspect, the control unit updates the display screen to display the generated plan after a user operation is input.

[0181] In an eleventh aspect, in the information processing device according to any one of the first to tenth aspects, the control unit notifies the degree to which the plan violates the constraint conditions together with the plan.

[0182] In a twelfth aspect, in an information processing device according to any one of the first to eleventh aspects, the control unit performs statistical analysis on a plurality of solutions contained in the stored calculation history, and generates a plan that improves at least some of the management indicators when the constraints are relaxed.

[0183] In a thirteenth aspect, in an information processing device according to any one of the first to twelfth aspects, the control unit narrows down the solutions to be stored in the memory unit as calculation history from among multiple solutions calculated as candidates in the optimization calculation according to predetermined rules.

[0184] A fourteenth aspect is an information processing method including the steps of: a computer acquiring input data to be optimized; and a control unit of the computer executing an optimization calculation in which candidate solutions optimized with respect to one or more control indicators are iteratively calculated based on the input data. The input data includes constraints that limit the solutions optimized in the optimization calculation. The method includes the steps of the control unit storing, in a memory unit of the computer, a calculation history that includes solutions that violate the constraints among multiple solutions calculated as candidate solutions in the optimization calculation; and a step of generating a plan in which at least some of the control indicators obtained from the results of the optimization calculation are improved by referring to the stored calculation history.

[0185] A fifteenth aspect is a program for causing a control unit of a computer to execute the information processing method according to the fourteenth aspect.

[0186] A sixteenth aspect is a simulation system comprising an information processing device according to any one of the first to thirteenth aspects, and an information terminal that performs data communication with the information processing device and displays simulation information such as a generated plan.

[0187] As described above, the embodiments have been described as examples of the technology in the present disclosure, and for that purpose, the accompanying drawings and detailed description have been provided.

[0188] Therefore, the components shown in the accompanying drawings and detailed description may include not only essential components for solving the problem, but also components that are not essential for solving the problem in order to illustrate the above technology. Therefore, the fact that these non-essential components are shown in the accompanying drawings or detailed description should not be interpreted as immediately indicating that these non-essential components are essential.

[0189] Furthermore, since the above-described embodiments are intended to illustrate the technology of the present disclosure, various modifications, substitutions, additions, omissions, etc. may be made within the scope of the claims or their equivalents.

[0190] The present disclosure is applicable to simulations of plans with constraints, for example, in manufacturing, logistics, and distribution fields.

Claims

1. An information processing apparatus comprising: a storage unit that stores input data to be optimized; and a control unit that executes an optimization calculation in which candidates for solutions optimized with respect to one or more management indicators are repeatedly calculated based on the input data, wherein the input data includes constraint conditions that limit the optimized solutions in the optimization calculation, and the control unit stores, in the storage unit, a calculation history including solutions that violate the constraint conditions among a plurality of solutions calculated as candidates in the optimization calculation, and generates a plan in which at least a part of the management indicators are improved from the results of the optimization calculation with reference to the stored calculation history.

2. The information processing apparatus according to claim 1, wherein the control unit searches for one or more solutions within a range including the violated solution in the stored calculation history based on a predetermined condition, and generates the plan.

3. The information processing apparatus according to claim 1 or 2, wherein the control unit generates the plan in which at least a part of the management indicators are improved more when not satisfying the constraint conditions than when satisfying the constraint conditions based on the violated solution in the calculation history.

4. The plan indicates a plurality of schedules to be sequentially performed at a site where at least one of manufacturing, logistics, and distribution is performed, and the management indicator manages resources used for implementing the plan at the site. The information processing apparatus according to claim 1 or 2.

5. The information processing apparatus according to claim 4, further comprising an output unit that outputs the plan so as to register the plan in a management system that manages the site.

6. The information processing apparatus according to claim 1 or 2, further comprising an input unit that inputs a user operation, and the control unit generates the plan with reference to the solutions included in the calculation history in response to the user operation input in the input unit.

7. The information processing apparatus according to claim 6, wherein the control unit receives a user operation for changing a target value of the management indicator in the input unit, and generates the plan with reference to a solution that satisfies the target value changed in the user operation in the calculation history.

8. The control unit receives a user operation for changing the constraint conditions in the input unit, and generates the plan by referring to a solution that satisfies the constraint conditions changed in the user operation in the calculation history. The information processing apparatus according to claim 6.

9. The control unit causes a predetermined display screen to display initial information including the plan based on the optimized solution in the optimization calculation, and receives the user operation in the input unit in a state where the initial information is displayed on the display screen. The information processing apparatus according to claim 6.

10. The control unit updates the display screen to display the generated plan after the user operation is input. The information processing apparatus according to claim 9.

11. The control unit notifies, together with the plan, the degree to which the plan violates the constraint conditions. The information processing apparatus according to claim 1 or 2.

12. The control unit performs statistical analysis on a plurality of solutions included in the stored calculation history, and generates the plan so that at least a part of the management indicators is improved when the constraint conditions are relaxed. The information processing apparatus according to claim 1 or 2.

13. The control unit narrows down the solutions to be stored in the storage unit as the calculation history from a plurality of solutions calculated as candidates in the optimization calculation according to a predetermined rule. The information processing apparatus according to claim 1 or 2.

14. An information processing method including: a step in which a computer acquires input data to be optimized; a step in which a control unit of the computer executes an optimization calculation in which candidates for solutions optimized with respect to one or more management indicators are repeatedly calculated based on the input data, where the input data includes constraint conditions that limit the solutions optimized in the optimization calculation; a step in which the control unit stores, in a storage unit of the computer, a calculation history including solutions that violate the constraint conditions among a plurality of solutions calculated as candidates in the optimization calculation; and a step in which a plan in which at least a part of the management indicators is improved is generated from the results of the optimization calculation by referring to the stored calculation history.

15. A program for causing a control unit of a computer to execute the information processing method according to claim 14.

Citation Information

Patent Citations

  • Process control system, process control method and computer program

    JP2013246560A

  • Device, system and method for organism collation, and method for updating registered data

    JP2002259980A

  • Plan creation device, plan creation method, and program

    JP2018101389A

  • Solution program, solution method and information processing device

    JP2022066017A

  • Allocation problem processing system and allocation problem processing method

    JP2023136533A