WO2021186551A1 - 情報処理装置、作業計画決定方法、および作業計画決定プログラム - Google Patents

情報処理装置、作業計画決定方法、および作業計画決定プログラム Download PDF

Info

Publication number
WO2021186551A1
WO2021186551A1 PCT/JP2020/011727 JP2020011727W WO2021186551A1 WO 2021186551 A1 WO2021186551 A1 WO 2021186551A1 JP 2020011727 W JP2020011727 W JP 2020011727W WO 2021186551 A1 WO2021186551 A1 WO 2021186551A1
Authority
WO
WIPO (PCT)
Prior art keywords
individual
input
objects
order
individuals
Prior art date
Application number
PCT/JP2020/011727
Other languages
English (en)
French (fr)
Inventor
山▲崎▼貴司
Original Assignee
富士通株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 富士通株式会社 filed Critical 富士通株式会社
Priority to PCT/JP2020/011727 priority Critical patent/WO2021186551A1/ja
Priority to CN202080095435.2A priority patent/CN115053248A/zh
Priority to EP20925644.5A priority patent/EP4123554A4/en
Priority to JP2022508656A priority patent/JP7303474B2/ja
Publication of WO2021186551A1 publication Critical patent/WO2021186551A1/ja
Priority to US17/863,436 priority patent/US20220350316A1/en

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41865Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by job scheduling, process planning, material flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41815Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4183Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by data acquisition, e.g. workpiece identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/04Manufacturing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/32Operator till task planning
    • G05B2219/32252Scheduling production, machining, job shop

Definitions

  • This case relates to an information processing device, a work plan determination method, and a work plan determination program.
  • Patent Document 1 A technique for generating a production plan for producing a plurality of types of products through a plurality of operations is disclosed (see, for example, Patent Document 1).
  • a technology that applies model prediction control technology and uses sequential optimization as a multi-objective optimization technology can be considered.
  • a method is being considered in which a small number of computable products are calculated by an optimization solver such as a line simulator, and the products to be introduced are sequentially determined.
  • the model prediction control which is the basis of the method of sequentially determining the product, is based on single-objective optimization, the solution is uniquely extracted from the Pareto solution group extracted by the multi-objective optimization.
  • a plurality of objective functions are made into a single purpose by a weighted average or the like, it is difficult to comprehensively calculate the original optimal solution group and evolve it into an optimal solution.
  • a plurality of objects are processed on a work line in a predetermined order, and a plurality of operations are sequentially performed on each of the plurality of objects on the work line, and the plurality of operations are performed.
  • An information processing device that specifies the predetermined order on the condition that at least a part of the work is different from each other among the plurality of objects, and the work line for a part of the plurality of objects.
  • the process of calculating an evaluation function corresponding to a plurality of objective functions for the simulation result when the part of the objects are input to the work line in the input order, and the individual in which the evaluation function satisfies a predetermined condition are defined as described above. It is provided with a solution extraction unit that executes a series of processes including a process of extracting only a few minutes as a solution, and the solution extraction unit repeatedly executes the series of processes while increasing the number of objects one by one. ,
  • the history traced by the extracted individual is associated with any of the specified number of individual numbers, the individual number is added to the parent individual as an input variable, and the individual number itself is used as a genetic algorithm during generational evolution.
  • the input history information will be passed on to the next generation by mating with.
  • FIG. 1 It is a figure which illustrates the production line model.
  • (A) and (b) are diagrams illustrating product information.
  • (A) is a diagram schematically illustrating the result of multi-objective optimization calculation when determining the first input product
  • (b) is a diagram illustrating the first input product of an individual forming a Pareto solution.
  • (A) is a diagram exemplifying a conceptual diagram of a calculation result
  • (b) is a diagram exemplifying an updated decision input order.
  • (C) is a figure exemplifying the input history associated with the individual number.
  • (A) is a functional block diagram showing the overall configuration of the information processing apparatus according to the first embodiment
  • (b) is a block diagram illustrating a hardware configuration.
  • (A) is a table exemplifying the optimization condition
  • (b) is a table exemplifying the initial input order
  • (c) is a table exemplifying the decision order information stored in the decision input order storage unit. ..
  • a technology that applies model prediction control technology and uses sequential optimization as a multi-objective optimization technology can be considered.
  • a small number of computable products are calculated by an optimized solver (line simulator, etc.) to determine the first input product.
  • a line simulator First, an example of a production line model to be simulated by the line simulator will be described. There are branches and merges in the production line model, and multiple products are introduced one by one. For each of the plurality of products, a plurality of operations are performed in order. At least some of the work is different for the plurality of products.
  • the production line model includes equipment belonging to process A (3 units), equipment belonging to process B (2 units), storage, and equipment belonging to process C (12 units), as illustrated in FIG. And.
  • a belt conveyor is provided between each process.
  • the belt conveyor has branching and merging, and the product reaches the goal via any device of the A process, any device of the B process, or any device of the C process.
  • the production line model may automatically control the direction in which the product travels based on the product launch plan, or the worker assigned to the branch may control the product launch direction based on the product launch plan. You may control the direction of travel of the product.
  • product assembly, inspection, packing, and the like are executed.
  • the line simulator divides such a production line model into small spaces, and executes simple model calculations such that when the space ahead is vacant, the product flows in that space. At that time, the line simulator reads the information of each product from the production master that stores the information of each product.
  • the production master stores, for example, a list of model numbers of products that need to be introduced into the production line model, as illustrated in FIG. 2A. Further, as illustrated in FIG. 2B, the production master stores information such as devices that can pass products of each model number in each process.
  • the products put into the production line model stay in the equipment of each process for the staying time according to the information stored in the production master, and pass through the equipment.
  • Throughput time time from the start of launch to the goal of all products
  • maximum number of stores in storage cost of each process
  • operating rate of each device delivery date as optimization indicators (objective function) Compliance rate etc. can be used.
  • the concept of the real-time optimization algorithm includes the following processing.
  • (1) As a near-future forecast, among the products to be introduced into the production line model, the introduction plan of the number of products (k: for example, 12) that can formulate a product introduction plan without causing an information explosion (combinatorial explosion).
  • (2) Among the optimized product launch plans, the product launch plans for the first n (for example, 1) products are adopted.
  • the optimum solution can be obtained for product A, product B, product C, and product D.
  • the first input product shall be determined as product A.
  • the optimum solution is obtained for product B, product C, product D, and product E.
  • the second input product is determined to be product C.
  • the input order of the products is determined in order from the first input product.
  • the product input history for the multi-objective solution determined in the optimization is inherited as the initial condition for determining the input order of the product.
  • the input variable is the individual number that forms the Pareto solution that records the input order determined by the time of the previous input product determination, and the next-generation input is used. It will be reflected when the order is decided.
  • the principle of this embodiment will be described.
  • FIG. 3A is a diagram schematically illustrating the result of the multi-objective optimization calculation when determining the first input product.
  • a genetic algorithm is used as an optimization method.
  • the objective function is two types, the objective function 1 and the objective function 2, and the number of individuals in the initial generation is four.
  • the population of the optimum solution (Pareto solution) at the top of the Pareto ranking is four individuals surrounded by an ellipse.
  • the pallet ranking can be determined for each individual by the evaluation function obtained from the objective function 1 and the objective function 2.
  • Each optimal solution includes the input order of each product such as the first input product and the second input product.
  • Each optimum solution is assigned an individual number (1 to 4), associated with the information of the first input product, and stored in a database as history information.
  • which optimum solution is assigned individual numbers 1 to 4 is arbitrary.
  • the history information at the time of determining the first input product is used.
  • the first input product of an individual forming a Pareto solution is determined as shown in FIG. 3 (b).
  • the first input product number is determined to be # 1.
  • the first input product number is determined to be # 2.
  • the first input product number is determined to be # 4.
  • the first input product number is determined to be # 6. This information is stored as history information in which the individual number and the input product information are associated with each other.
  • the history information at the time of determining the first input product is taken over and reflected in the optimization calculation at the time of determining the second input product.
  • the determined input order associated with the individual number is given as an input variable to the optimization operation at the time of determining the second input product as a hidden input variable, and is added as an input variable at the time of the optimization operation.
  • the input variable given to the dew is the input variable, as an initial condition of the initial generation, as the input variable that determines the input order (# 1, # 2, # 3, # 4, # 5, # 6). It is assumed that input variables are given in the order of).
  • the hidden input variable is assigned as the individual number of the Pareto solution at the time of the previous launch product decision as a hidden input variable. By using the individual number as an input variable, the input variable of the optimization operation is increased by one.
  • the input order is the history at the time of determining the first input product, and it is decided to input the product with the number of the first input product # 1. doing. Therefore, it is assumed that the remaining 6 products determined by the input variables shown in the dew are sequentially introduced after # 1. In this case, the product of # 7 is added by setting the order of input to # 1, # 2, # 3, # 4, # 5, # 6, and # 7.
  • the product of # 6 is the first input product. Therefore, the product number after # 6 is incremented by 1, and the product of # 7 is added by setting the order of input to # 6, # 1, # 2, # 3, # 7, # 4, and # 5. .. For other individuals (individual numbers 2 and 3), the product of # 7 is similarly added and the input order is determined as an input variable.
  • a simulation using a line simulator is performed for each of these individuals.
  • the objective function can be calculated for each individual, and the evaluation function can be obtained. In this embodiment, these are used as each evaluation function of the parent individual.
  • FIG. 4 is a diagram schematically illustrating a generation evolution method at the time of determining the input order of the second input product.
  • a parent 1 (individual number: 1) and a parent 2 (individual number: 4)
  • the input order of # 1, # 2, # 3, # 4, # 5, and # 6 is given as the input variable representing the input order of the parent 1, and the hidden input variable indicating the history is 1.
  • the input order of # 1, # 2, # 3, # 6, # 4, and # 5 is given as the input variable representing the input order of the parent 2, and the hidden input variable indicating the history is 4. Is.
  • the next generation is determined for each input variable. For example, by mating the order of # 1, # 2, # 3, # 4, # 5, # 6 and the order of # 1, # 2, # 3, # 6, # 4, # 5, the input order is changed. It is assumed that the order of # 1, # 2, # 3, # 6, # 5, and # 4 is determined as the input variables to be represented.
  • the history of the child generation is calculated by mating the individual number itself, instead of determining by the input order history left in the history.
  • the hidden input variables of parent 1 and parent 2 are 1 and 4, respectively, and the individual number of the child determined from the information is 3.
  • the history of the individual number 3 is used as the input order of the child generations.
  • the introduction history of the first input product of individual number 3 was to input # 4, this was used as the first input product, and then the order was changed # 1, # 2, # 3, # 6. , # 5, # 4 are added. Since the first input product is # 4, the order of the products after # 4 is increased by 1, and the input order of this offspring is # 4, # 1, # 2, # 3, # 7, # 6, It becomes # 5.
  • a simulation using a line simulator is performed for each child individual.
  • the objective function can be calculated for each child individual, and the evaluation function can be obtained. In this embodiment, these are used as each evaluation function of the offspring.
  • Pareto solutions From all parent individuals and all child individuals, the four individuals for which the best evaluation function was obtained are extracted as Pareto solutions (optimal solution group). Each of these individuals is given an individual number (1-4). Each optimal solution includes the input order of each product such as the first input product and the second input product. The individual number and the input order of the first input product and the second input product included in the individual with the individual number are stored in the database as history information. By repeating the evolution of generations in this way, the first input product and the second input product can be determined.
  • FIG. 5A is a diagram illustrating a conceptual diagram of the calculation result at this time.
  • the product that was not selected when the first input product was determined is not selected as the first input product.
  • the input products listed as candidates will not be selected as the optimized input order.
  • the individual number 3 that was a candidate at the time of determining the first input product at the time of determining the second input product is deleted from the history candidates if it is not the optimum solution at the time of inputting the second product from any other individual. I will go.
  • the determined input order is updated, and the history information assigned to the individual number is increased to the second input product.
  • the input history is updated to the individual number.
  • the input history associated with the individual number as shown in FIG. 5C is obtained. Based on this, the nth input product is determined. In this way, by inheriting and reflecting the history information to the next generation by the individual number as a hidden input variable, unnecessary input order is not considered. As a result, it becomes possible to obtain the optimum input history information in a broad and comprehensive manner with a small number of calculation trials. That is, the accuracy of determining the optimum solution can be improved by expanding the search space for the optimum solution while shortening the calculation time.
  • FIG. 6 is a diagram schematically illustrating the calculation result at the time of determining the nth input product.
  • FIG. 7A is a functional block diagram showing the overall configuration of the information processing apparatus 100 according to the first embodiment.
  • the information processing device 100 includes an input device 10, an optimization condition storage unit 20, an optimum solution extraction unit 30, an initial input order storage unit 40, a determination input order storage unit 50, and a line simulator. 60, a production master 70, a display device 80, and the like are provided.
  • the input device 10 is an input device such as a keyboard, a mouse, and a touch panel.
  • the display device 80 is a liquid crystal display or the like, and is a device that displays the result of the work plan determination process by the information processing device 100.
  • FIG. 7B shows the hardware configuration of the optimization condition storage unit 20, the optimum solution extraction unit 30, the initial input order storage unit 40, the determined input order storage unit 50, the line simulator 60, and the production master 70 of the information processing apparatus 100. It is a block diagram exemplifying. As illustrated in FIG. 7B, the information processing device 100 includes a CPU 101, a RAM 102, a storage device 103, an interface 104, and the like.
  • the CPU (Central Processing Unit) 101 is a central processing unit.
  • the CPU 101 includes one or more cores.
  • the RAM (Random Access Memory) 102 is a volatile memory that temporarily stores a program executed by the CPU 101, data processed by the CPU 101, and the like.
  • the storage device 103 is a non-volatile storage device. As the storage device 103, for example, a ROM (Read Only Memory), a solid state drive (SSD) such as a flash memory, a hard disk driven by a hard disk drive, or the like can be used.
  • the storage device 103 stores the work plan determination program.
  • the interface 104 is an interface device between the input device 10, the display device 80, and the like.
  • the optimization condition storage unit 20 When the CPU 101 executes the work plan determination program, the optimization condition storage unit 20, the optimum solution extraction unit 30, the initial input order storage unit 40, the line simulator 60, the determination input order storage unit 50, and the production master 70 are realized. NS. Even if hardware such as a dedicated circuit is used as the optimization condition storage unit 20, the optimum solution extraction unit 30, the initial input order storage unit 40, the line simulator 60, the determination input order storage unit 50, and the production master 70. good.
  • FIG. 8 is a flowchart showing an example of the work plan determination process executed by the information processing apparatus 100.
  • the work plan determination process will be described with reference to the flowchart of FIG.
  • the optimum solution extraction unit 30 reads the optimization condition from the optimization condition storage unit 20 (step S1).
  • FIG. 9A is a table illustrating the optimization conditions.
  • the optimization conditions include the number of generational evolutions, the number of individuals, the number of product determination blocks, and the like. For example, the number of generational evolutions is 10, the number of individuals is 4, and the number of product determination blocks is 6. These optimization conditions are input in advance by the user, for example, using the input device 10.
  • the number of product determination blocks is the number of products for which the optimum solution is obtained by changing the input products.
  • FIG. 9B is a table illustrating the initial loading order.
  • the initial input order includes the order for the number of individuals (4 ways). Each order contains the number of products for the number of product decision blocks.
  • the order of 1, # 2, # 3, # 6, # 4, # 5, and the order of # 6, # 5, # 4, # 1, # 2, # 3 are included. These orders may be any order as long as at least some of the orders do not overlap. These orders may be input in advance by the user using the input device 10, or may be generated by random numbers.
  • the line simulator 60 simulates, for example, the production line model illustrated in FIG.
  • the line simulator 60 uses the information of each product stored in the production master 70.
  • the production master 70 stores, for example, the product information illustrated in FIGS. 2 (a) and 2 (b).
  • the product information may be input in advance by the user using the input device 10.
  • the optimum solution extraction unit 30 uses these simulation results (4 individuals) as parent individuals and obtains an evaluation function by calculating the objective function 1 and the objective function 2.
  • the optimal solution extraction unit 30 evolves the obtained four parent individuals by the number of input generation evolutions.
  • the optimum solution extraction unit 30 obtains an evaluation function by calculating the objective function 1 and the objective function 2 for each child individual.
  • the optimal solution extraction unit 30 extracts the optimal solution for which the best evaluation function is obtained from all the parent individuals and all the child individuals by the number of individuals (4), thereby performing the optimal solution group (pallet solution). Is extracted (step S3).
  • a genetic algorithm or the like can be used for evolution.
  • the optimum solution extraction unit 30 assigns individual numbers 1 to 4 to each individual included in the Pareto solution, and determines the first input product and individual number as history information for each individual input order storage unit 50. It is stored in (step S4).
  • FIG. 9C is a table exemplifying the determination order information stored in the determination input order storage unit 50.
  • the first input product number is determined to be # 1 for the individual number 1.
  • the first input product number is determined to be # 2.
  • the first input product number is determined to be # 4.
  • the first input product number is determined to be # 6.
  • the optimum solution extraction unit 30 increases the input variable of the optimization operation by one (step S5).
  • the input variable here is an individual number. That is, the optimum solution extraction unit 30 adds the individual number to the input variable used for the optimization operation.
  • the optimum solution extraction unit 30 reads the initial input order from the initial input order storage unit 40, and causes the line simulator 60 to execute the simulation using the initial input order and the individual number as the initial input variables (step S6).
  • the optimum solution extraction unit 30 includes the next product (# 7 at the time of the first execution of step S6) by using the individual number as described with reference to FIGS. 3 (a) and 3 (b).
  • the input order is the initial input variable.
  • the next product is # 7 at the first execution of step S6.
  • the optimum solution extraction unit 30 uses the simulation result obtained in step S6 as a parent individual, calculates the objective function 1 and the objective function 2 for each parent individual, and obtains an evaluation function.
  • the optimal solution extraction unit 30 creates an input variable by evolving the generation from the parent individual obtained as a result of step S6 to the child individual (step S7).
  • the optimum solution extraction unit 30 reads the determination order information (individual number and determination input order) from the determination input order storage unit 50, and adds the determination order to the input order when the child individual is created, as described in FIG.
  • the individual number is also mated to create an input variable.
  • the optimum solution extraction unit 30 also mates the individual number itself.
  • the optimum solution extraction unit 30 causes the line simulator 60 to execute the simulation using the input variables created in step S7 (step S8). Further, the optimum solution extraction unit 30 obtains an evaluation function by calculating the objective function 1 and the objective function 2 for each simulation result.
  • the optimum solution extraction unit 30 determines whether or not the evolution has been completed by the number of generational evolutions included in the optimization condition (step S9). In this embodiment, it is determined whether or not the evolution for 10 generations has been completed.
  • step S9 If it is determined as "No” in step S9, it is executed again from step S7. At the second and subsequent executions of step S7, input variables for the next generation of offspring are created. As a result, a simulation will be performed for the offspring of the next generation.
  • the optimum solution extraction unit 30 extracts the Pareto solution (step S10). In this case, the optimum solution extraction unit 30 extracts the optimum solution for which the best evaluation function is obtained from all the parent individuals and all the child individuals by the number of individuals (4).
  • the optimum solution extraction unit 30 assigns individual numbers 1 to 4 to each of the Pareto solutions extracted in step S10, and assigns the individual number and the first input product and the second input product included in the individual with the individual number.
  • the product loading order is stored in the table of the determination loading order storage unit 50 as history information. By doing so, the newly determined input product number is added to the determined order, and the determined order is added to the table of the determined input order storage unit 50 (step S11).
  • step S12 determines whether or not the order of all products has been determined.
  • step S12 it is determined whether or not the order has been determined for all the products stored in the production master 70. If "No" is determined in step S12, the process is executed again from step S6. The product of # 8 is added at the time of the second execution of step S6, and the product of # 9 is added at the time of the third execution of step S6.
  • step S12 the execution of the flowchart ends.
  • the display device 80 displays the input order of each individual stored in the determined input order storage unit 50.
  • the value of each objective function may be displayed for each individual. By displaying the value of each objective function, the user can grasp which objective function can be prioritized.
  • the optimum solution extraction unit 30 repeatedly executes a series of processes for determining one product input order by evolving the parent individual generation and extracting the optimum solution while increasing the number of products one by one.
  • the history traced by the extracted optimal solution is linked to one of the individual numbers for the number of individuals, the individual number is added as an input variable to the parent individual, and the individual number itself is used by a genetic algorithm during generational evolution.
  • the input history information is passed on to the next generation. By doing so, it is possible to improve the accuracy of determining the optimum solution by expanding the search space for the optimum solution while shortening the calculation time.
  • FIG. 10 is a diagram illustrating a case where the Pareto solution of the nth input product is calculated from the Pareto solution of the first input product by the method of this embodiment.
  • black squares represent the results of this embodiment.
  • the search space for the optimum solution is expanded for both the objective function 1 and the objective function 2.
  • the search result when the objective function 1 is prioritized it can be seen that the search space is biased so that the result of the objective function 1 is good.
  • the search result when the objective function 2 is prioritized is biased in the search space so that the result of the objective function 2 becomes good.
  • a plurality of objects are processed in a predetermined order, a plurality of operations are sequentially performed for each of the plurality of objects, and at least a part of the plurality of operations is described.
  • This is an example of a work line that differs from each other among a plurality of objects.
  • the product is an example of an object.
  • the optimal solution extraction unit 30 uses a genetic algorithm to evolve from the parent individual to a specified number of individuals for which the input order of some of the plurality of objects to the work line is given as an input variable.
  • Evaluation function according to a plurality of objective functions for the process of generating a child individual by causing the child individual and the simulation result when the part of the object is input to the work line in each input order of the parent individual and the child individual. It functions as an example of a solution extraction unit that executes a series of processes including a process of calculating the above and a process of extracting an individual satisfying a predetermined condition by the evaluation function as a solution for the specified number.
  • Input device 10
  • Optimization condition storage unit 30
  • Optimum solution extraction unit 40
  • Initial input order storage unit 50
  • Determining input order storage unit 60
  • Line simulator 70
  • Production master 80
  • Display device 100

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Operations Research (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • General Factory Administration (AREA)

Abstract

情報処理装置は、作業ラインについて、複数の対象物の一部についての作業ラインへの投入順序が入力変数として与えられる規定数分の個体を親個体とし、親個体から遺伝的アルゴリズムで世代進化させることで子個体を生成し、親個体および子個体の各投入順序で一部の対象物を作業ラインに投入する場合のシミュレーション結果について複数の目的関数に応じた評価関数を演算し、評価関数が所定の条件を満たす個体を、規定数分だけ解として抽出するという、一連の処理を実行する解抽出部を備え、解抽出部は、一連の処理を、対象物を1つずつ増やしつつ繰り返し実行する際に、抽出した個体がたどった履歴を規定数分の個体番号のいずれかと紐付け、親個体に個体番号を入力変数として追加し、世代進化の際に個体番号そのものを遺伝的アルゴリズムで交配させることで投入履歴情報を次世代に引き継ぐ。 

Description

情報処理装置、作業計画決定方法、および作業計画決定プログラム
 本件は、情報処理装置、作業計画決定方法、および作業計画決定プログラムに関する。
 複数の作業を経て複数種類の生産物を生産するための生産計画を生成する技術が開示されている(例えば、特許文献1参照)。
特開2003-84819号公報
 例えば、生産作業計画決定の取り組みとしては、モデル予測制御技術を応用し、逐次型最適化を多目的最適化技術に用いる技術が考えられる。具体的には、計算可能な少数製品をラインシミュレータなどの最適化ソルバーで演算し、投入製品を順次決定する手法が考えられている。しかしながら、逐次的に製品を決定する方法の基となるモデル予測制御は、単目的最適化が基本であるため、多目的最適化によって抽出されるパレート解群から一義に解を抽出することになる。複数の目的関数がある場合に、それぞれの目的関数に対して逐次型の最適化を行うと、計算時間がかかる。また、複数の目的関数に対して、加重平均等で単目的化する場合、本来の最適解群を網羅的に演算して最適解に進化させることが困難である。
 1つの側面では、本発明は、計算時間の増大化を抑制しつつ最適解決定精度を向上させることができる情報処理装置、作業計画決定方法、および作業計画決定プログラムを提供することを目的とする。
 1つの態様では、情報処理装置は、複数の対象物が所定順序に従って作業ラインにて処理され、前記作業ラインにおいて前記複数の対象物のそれぞれについて複数の作業が順番に行われ、前記複数の作業のうち少なくとも一部の作業が前記複数の対象物の間で相互に異なる、という条件において、前記所定順序を特定する情報処理装置であって、前記複数の対象物の一部についての前記作業ラインへの投入順序が入力変数として与えられる規定数分の個体を親個体として、前記親個体から遺伝的アルゴリズムで世代進化させることで子個体を生成する処理と、前記親個体および前記子個体の各投入順序で前記一部の対象物を前記作業ラインに投入する場合のシミュレーション結果について複数の目的関数に応じた評価関数を演算する処理と、前記評価関数が所定の条件を満たす個体を、前記規定数分だけ解として抽出する処理と、を含む一連の処理を実行する解抽出部を備え、前記解抽出部は、前記一連の処理を、前記対象物を1つずつ増やしつつ繰り返し実行する際に、抽出した前記個体がたどった履歴を前記規定数分の個体番号のいずれかと紐付け、前記親個体に前記個体番号を入力変数として追加し、世代進化の際に前記個体番号そのものを遺伝的アルゴリズムで交配させることで投入履歴情報を次世代に引き継ぐ。
 計算時間の増大化を抑制しつつ最適解決定精度を向上させることができる。
製造ラインモデルを例示する図である。 (a)および(b)は製品情報を例示する図である。 (a)は第一投入製品を決定する際の多目的最適化演算結果を模式的に例示する図であり、(b)はパレート解を形成する個体の第一投入製品を例示する図である。 第二投入製品の投入順序決定時の世代進化方法を模式的に例示する図である。 (a)は計算結果の概念図を例示する図であり、(b)は更新された決定投入順序を例示する図であり。(c)は個体番号に紐づいた投入履歴を例示する図である。 第n投入製品決定時の演算結果を模式的に例示する図である。 (a)は実施例1に係る情報処理装置の全体構成を表す機能ブロック図であり、(b)はハードウェア構成を例示するブロック図である。 情報処理装置が実行する作業計画決定処理の一例を表すフローチャートである。 (a)は最適化条件を例示するテーブルであり、(b)は初期投入順序を例示するテーブルであり、(c)は決定投入順序格納部に格納された決定順序情報を例示するテーブルである。 本実施例の手法で、第一投入製品のパレート解から第n投入製品のパレート解を算出した場合を例示する図である。
 多品種少量生産を行う場合、一日のうちに製品の品種が何度も変わることになる。したがって、同一の生産ラインにおいて、品種の異なる製品が混在して流れることになる。このような混流生産の工場では、どのような工程を施すか、どの装置を用いるか、などの条件が品種ごとに異なる。さらに、工場内の建屋間や生産設備間をどう動くかも一定ではない。一方で、多くの品種に共通した工程も複雑に織り込まれているため、それらの工程の手前で多くの品種が合流し、自然と渋滞が発生してしまう。このように、製品のワーク経路の分岐や合流が多い場合、工場全体の効率を最大化する生産指示を決めることは極めて重要であるが、極めて難しい問題でもある。
 例えば、生産作業計画決定の取り組みとしては、モデル予測制御技術を応用し、逐次型最適化を多目的最適化技術に用いる技術が考えられる。具体的には、計算可能な少数製品を最適化ソルバー(ラインシミュレータなど)で演算し、第一投入製品を決定する。
 ここで、ラインシミュレータの一例について説明する。まず、ラインシミュレータがシミュレーション対象とする製造ラインモデルの例について説明する。製造ラインモデルには、分岐および合流が存在し、複数の製品が1つずつ投入される。当該複数の製品のそれぞれについて、複数の作業が順番に行われる。当該複数の製品について、少なくとも一部の作業が異なっている。
 製造ラインモデルは、一例として、図1で例示するように、A工程に属する装置(3機)と、B工程に属する装置(2機)と、ストレージと、C工程に属する装置(12機)と、を備える。各工程間には、ベルトコンベアが設けられている。ベルトコンベアには、分岐及び合流があり、製品は、A工程のいずれかの装置、B工程のいずれかの装置、C工程のいずれかの装置を経て、ゴールまで到達するようになっている。なお、各分岐においては、製品の投入計画に基づいて、製造ラインモデルが自動的に製品の進む方向を制御してもよいし、分岐に配置された作業者が、製品の投入計画に基づいて製品の進む方向を操作してもよい。なお、各工程では、例えば、製品の組み立て、検査、梱包等が実行される。
 ラインシミュレータは、このような製造ラインモデルを細かい空間に分割し、一つ先の空間が空いた場合に当該空間に製品が流れる、といった単純なモデル計算を実行する。その際に、ラインシミュレータは、各製品についての情報を格納した生産マスタから、各製品の情報を読み込む。生産マスタには、例えば、図2(a)で例示するように、製造ラインモデルに投入する必要のある製品の型番のリストが格納されている。また、図2(b)で例示するように、生産マスタには、各工程において各型番の製品を通すことができる装置の情報などが格納されている。
 製造ラインモデルに投入された製品は、生産マスタに格納された情報に従って各工程の装置で滞在時間だけ滞在し、その装置を通過する。最適化の指標(目的関数)として、スループットタイム(投入開始から、全ての製品がゴールに到達するまでの時間)や、ストレージへの最大ストア数、各工程のコスト、各装置の稼働率、納期遵守率などを用いることができる。
 実時間最適化アルゴリズムの概念として、以下のような処理が挙げられる。
(1)近未来予測として、製造ラインモデルに投入する製品のうち、情報爆発(組み合わせ爆発)を起こさずに製品の投入計画を策定できるだけの数(k個:例えば12個)の製品の投入計画を最適化する。
(2)最適化した製品投入計画のうち、最初のn個(例えば1個)の製品の製品投入計画を採用する。
(3)製品投入計画が決定した製品を除外して、(1)、(2)の処理を繰り返す。
 例えば、製品A、製品B、製品C,および製品Dについて最適解が求まる。それによって第一投入製品が製品Aに定まるものとする。次に、製品B、製品C、製品D、および製品Eについて最適解が求まる。それによって第二投入製品が製品Cに定まるものとする。この手順を繰り返すことによって、第一投入製品から順番に製品の投入順序が定まることになる。
 この手法では、膨大な組み合わせ問題を求解可能な投入生産数に対して逐次的に最適化演算することで解を求めやすくし、高速に多目的最適化を実行することができる。しかしながら、逐次的に製品を決定する方法の基となるモデル予測制御は、単目的最適化が基本であるため、多目的最適化によって抽出されるパレート解群から一義に解を抽出することになる。複数の目的関数がある場合に、それぞれの目的関数に対して逐次型の最適化を行うと、計算時間がかかる。また、複数の目的関数に対して、加重平均等で単目的化する場合、本来の最適解群(パレート解)を網羅的に演算して最適解に進化させることが困難である。
 そこで、以下の実施例では、計算時間の増大化を抑制しつつ、最適解の探索空間を広げることで最適解決定精度を向上させることができる情報処理装置、作業計画決定方法、および作業計画決定プログラムについて説明する。
 本実施例においては、逐次型多目的最適化を実施する際に、最適化において決定された多目的解に対する製品投入履歴を、当該製品の投入順序を決定する初期条件として引き継ぐことにする。その際に、投入履歴そのものを入力変数として求めるのではなく、一つ前の投入製品決定時までに決定された投入順序を記録したパレート解を形成する個体番号を入力変数として、次世代の投入順序決定時に反映することにする。以下、本実施例の原理について説明する。
 図3(a)は、第一投入製品を決定する際の多目的最適化演算結果を模式的に例示する図である。最適化手法として、遺伝的アルゴリズムを用いる。図3(a)の例では、目的関数を目的関数1および目的関数2の2種類として、初期世代の個体数を4個とする。図3(a)において、パレートランキング上位の最適解の個体群(パレート解)は、楕円で囲んだ4つの個体である。パレートランキングは、各個体について、目的関数1および目的関数2から得られる評価関数によって定めることができる。各最適解は、第一投入製品、第二投入製品、といった各製品の投入順序が含まれている。各最適解に、個体番号(1~4)のいずれかを付し、第一投入製品の情報と関連付け、履歴情報としたデータベースに保存する。この場合において、どの最適解に個体番号1~4を付すかは任意である。第二投入製品決定時には、第一投入製品決定時の履歴情報が用いられる。
 例えば、図3(b)のようにパレート解を形成する個体の第一投入製品が決定されたものとする。図3(b)の例では、個体番号1の個体では、第一投入製品番号が#1に決定されている。個体番号2の個体については、第一投入製品番号が#2に決定されている。個体番号3の個体については、第一投入製品番号が#4に決定されている。個体番号4の個体については、第一投入製品番号が#6に決定されている。これらの情報が、個体番号と投入製品情報とを関連付けた履歴情報として保存されている。
 次に、第一投入製品決定時の履歴情報を第二投入製品決定時の最適化演算に引き継いで反映させる。本実施例では、第二投入製品決定時の最適化演算に入力変数として個体番号に紐づいた決定投入順番を隠し入力変数として与え、最適化演算時の入力変数として加える。
 例えば、露わに与えられる入力変数を投入順序とした場合、初期世代のある初期条件として、投入順序を決定する入力変数として(#1、#2、#3、#4、#5、#6)の順で投入するような入力変数が与えられるものとする。さらに、第二製品投入決定時以降は、隠し入力変数として前投入製品決定時のパレート解の個体番号として隠し入力変数が付与される。個体番号を入力変数として用いることで、最適化演算の入力変数が1つ増えることになる。
 第二投入製品決定時の隠し入力変数(個体番号)が1であった場合、投入順序は第一投入製品決定時の履歴として第一投入製品の番号は#1の製品を投入することが決定している。したがって、露わに示される入力変数で決定される残りの6製品を#1の後に順次投入するものとする。この場合、投入順序を#1、#2、#3、#4、#5、#6、#7の順番とすることで#7の製品を追加する。
 または、例えば投入順序が#1、#2、#3、#6、#4、#5の順番で、隠し入力変数(個体番号)が4だとする個体を対象とする場合、個体番号4の履歴は#6の製品を第一投入製品としている。そこで、#6以降の製品番号を1増加させて、投入順序を#6、#1、#2、#3、#7、#4、#5の順番とすることで#7の製品を追加する。他の個体(個体番号が2,3)についても、同様に#7の製品が追加されて投入順序が入力変数として決定される。
 これらの各個体について、ラインシミュレータを用いたシミュレーションが行われる。それにより、各個体について、目的関数を演算することができ、評価関数を得ることができる。本実施例においては、これらを親個体の各評価関数とする。
 図4は、第二投入製品の投入順序決定時の世代進化方法を模式的に例示する図である。例えば、親1(個体番号:1)および親2(個体番号:4)の2個体から子世代を形成する場合について説明する。親1の投入順序を表す入力変数として、上述したように、#1、#2、#3、#4、#5、#6の投入順序が与えられており、履歴を示す隠し入力変数は1である。親2の投入順序を表す入力変数として、上述したように、#1、#2、#3、#6、#4、#5の投入順序が与えられており、履歴を示す隠し入力変数は4である。
 この2つの親から子世代を演算する際に、入力変数ごとに次世代を決定する。例えば、#1、#2、#3、#4、#5、#6の順番と、#1、#2、#3、#6、#4、#5の順番との交配によって、投入順序を表す入力変数として、仮に#1、#2、#3、#6、#5、#4の順番が決定されるものとする。
 次に、隠し入力変数においても同様に決定する際、履歴に残される投入順序履歴で決定するのではなく、個体番号そのものも交配させて子世代の履歴を演算する。具体的には親1および親2の隠し入力変数はそれぞれ1と4であり、その情報から決定される子の個体番号が3であるとする。この場合、個体番号3が持つ履歴を子世代の投入順序とする。実際には個体番号3の第一投入製品投入履歴は#4を投入することとなっていたため、これを第一投入製品として、その後に順序入れ替えされた#1、#2、#3、#6、#5、#4を加える。第一投入製品が#4であることから、#4以降の製品は順序を1増加させて、この子個体の投入順序は#4、#1、#2、#3、#7、#6、#5となる。
 各子個体について、ラインシミュレータを用いたシミュレーションが行われる。それにより、各子個体について、目的関数を演算することができ、評価関数を得ることができる。本実施例においては、これらを子個体の各評価関数とする。
 全ての親個体、および全ての子個体の中から、最も良好な評価関数が得られた4つの個体を、パレート解(最適解群)として抽出する。これらの各個体に、個体番号(1~4)を付す。各最適解は、第一投入製品、第二投入製品、といった各製品の投入順序が含まれている。個体番号と、当該個体番号の個体に含まれる第一投入製品、第二投入製品の投入順序を、履歴情報としてデータベースに保存する。このように、世代進化を繰り返すことで、第一投入製品および第二投入製品を決定することができる。
 図5(a)は、この時の計算結果の概念図を例示する図である。投入履歴を個体番号に紐づけて入力変数として決定したことにより、第一投入製品決定時に選択されなかった製品は第一投入製品に選択されなくなる。一方で、第一投入製品決定時には最適化された投入順序として候補に挙がった投入製品が選ばれなくなることも当然有り得る。図5(a)のように第二投入製品決定時に第一投入製品決定時に候補となった個体番号3は、他のどの個体より第二製品投入時には最適解とならない場合、履歴候補から削除されていくこととなる。その結果、図5(b)のように決定投入順序が更新され、個体番号に割り振られた履歴情報が第二投入製品まで増えることとなる。
 この決定プロセスを全製品の投入順序が決定されるまで処理を繰り返すことで、個体番号に投入履歴が更新されていく。最終的にn番目の投入製品決定時には図5(c)のような個体番号に紐づいた投入履歴が得られる。これを基に第n番目の投入製品を決定する。このように、隠し入力変数として個体番号によって次世代に履歴情報を引き継いで反映させることで、不要な投入順序は考慮されなくなる。その結果、広く網羅的かつ演算試行回数を少なく最適な投入履歴情報を得ることができるようになる。すなわち、計算時間を短縮化しつつ、最適解の探索空間を広げることで最適解決定精度を向上させることができる。
 図6は、第n投入製品決定時の演算結果を模式的に例示する図である。
 図7(a)は、実施例1に係る情報処理装置100の全体構成を表す機能ブロック図である。図7(a)で例示するように、情報処理装置100は、入力装置10、最適化条件格納部20、最適解抽出部30、初期投入順序格納部40、決定投入順序格納部50、ラインシミュレータ60、生産マスタ70、表示装置80などを備える。入力装置10は、キーボード、マウス、タッチパネルなどの入力装置である。表示装置80は、液晶ディスプレイなどであり、情報処理装置100による作業計画決定処理の結果などを表示する装置である。
 図7(b)は、情報処理装置100の最適化条件格納部20、最適解抽出部30、初期投入順序格納部40、決定投入順序格納部50、ラインシミュレータ60、生産マスタ70のハードウェア構成を例示するブロック図である。図7(b)で例示するように、情報処理装置100は、CPU101、RAM102、記憶装置103、インタフェース104等を備える。
 CPU(Central Processing Unit)101は、中央演算処理装置である。CPU101は、1以上のコアを含む。RAM(Random Access Memory)102は、CPU101が実行するプログラム、CPU101が処理するデータなどを一時的に記憶する揮発性メモリである。記憶装置103は、不揮発性記憶装置である。記憶装置103として、例えば、ROM(Read Only Memory)、フラッシュメモリなどのソリッド・ステート・ドライブ(SSD)、ハードディスクドライブに駆動されるハードディスクなどを用いることができる。記憶装置103は、作業計画決定プログラムを記憶している。インタフェース104は、入力装置10、表示装置80などとの間のインタフェース装置である。CPU101が作業計画決定プログラムを実行することで、最適化条件格納部20、最適解抽出部30、初期投入順序格納部40、ラインシミュレータ60、決定投入順序格納部50、および生産マスタ70が実現される。なお、最適化条件格納部20、最適解抽出部30、初期投入順序格納部40、ラインシミュレータ60、決定投入順序格納部50、および生産マスタ70として、専用の回路などのハードウェアを用いてもよい。
 図8は、情報処理装置100が実行する作業計画決定処理の一例を表すフローチャートである。以下、図8のフローチャートに沿って作業計画決定処理について説明する。
 まず、最適解抽出部30は、最適化条件格納部20から、最適化条件を読み込む(ステップS1)。図9(a)は、最適化条件を例示するテーブルである。図9(a)で例示するように、最適化条件には、世代進化数、個体数、製品決定ブロック数などが含まれる。例えば、世代進化数は10とし、個体数は4とし、製品決定ブロック数は6としてある。これらの最適化条件は、例えば、ユーザが入力装置10を用いて事前に入力している。製品決定ブロック数は、投入製品をいくつまで変更して最適解を求めるかの製品数である。
 次に、最適解抽出部30は、初期投入順序格納部40から初期投入順序を読み込み、ラインシミュレータ60に実行させる(ステップS2)。図9(b)は、初期投入順序を例示するテーブルである。図9(b)で例示するように、初期投入順序は、個体数分(4通り)の順序を含む。各順序には、製品決定ブロック数分の製品数が含まれている。図9(b)の例では、#1、#2、#3、#4、#5、#6の順序、#6、#5、#4、#3、#2、#1の順序、#1、#2、#3、#6、#4、#5の順序、#6、#5、#4、#1、#2、#3の順序が含まれている。これらの順序は、少なくとも一部の順序が重複していなければ、どのような順序であっても構わない。これらの順序は、ユーザが入力装置10を用いて事前に入力しておいてもよく、乱数によって生成してもよい。
 ラインシミュレータ60は、例えば、図1で例示した製造ラインモデルについて、シミュレーションを行う。シミュレーションの際に、ラインシミュレータ60は、生産マスタ70が格納している各製品の情報を用いる。生産マスタ70は、例えば、図2(a)および図2(b)で例示した製品情報を格納している。製品情報は、ユーザが入力装置10を用いて事前に入力しておいてもよい。最適解抽出部30は、これらのシミュレーション結果(4個体)を親個体とし、目的関数1および目的関数2を演算することで評価関数を得る。
 次に、最適解抽出部30は、得られた4つの親個体に対して、入力世代進化数だけ進化させる。最適解抽出部30は、各子個体について目的関数1および目的関数2を演算することで評価関数を得る。最適解抽出部30は、全ての親個体および全ての子個体のうち、最も良好な評価関数が得られた最適解を個体数(4個)だけ抽出することで、最適解群(パレート解)を抽出する(ステップS3)。進化には、遺伝的アルゴリズムなどを用いることができる。
 次に、最適解抽出部30は、パレート解に含まれる各個体に1~4の個体番号を付し、各個体について、第一投入製品および個体番号を、履歴情報として決定投入順序格納部50に格納する(ステップS4)。図9(c)は、決定投入順序格納部50に格納された決定順序情報を例示するテーブルである。図9(c)の例では、個体番号1については、第一投入製品番号が#1に決定されている。個体番号2については、第一投入製品番号が#2に決定されている。個体番号3については、第一投入製品番号が#4に決定されている。個体番号4については、第一投入製品番号が#6に決定されている。
 次に、最適解抽出部30は、最適化演算の入力変数を1個増加させる(ステップS5)。ここでの入力変数とは、個体番号のことである。すなわち、最適解抽出部30は、最適化演算に用いる入力変数に、個体番号を加える。
 次に、最適解抽出部30は、初期投入順序格納部40から初期投入順序を読み込み、初期投入順序および個体番号を初期入力変数として用いて、ラインシミュレータ60にシミュレーションを実行させる(ステップS6)。この場合、最適解抽出部30は、図3(a)および図3(b)で説明したように、個体番号を用いて、次の製品(ステップS6の初回実行時は#7)を含めた投入順序を初期入力変数とする。次の製品は、ステップS6の初回実行時は#7である。また、最適解抽出部30は、ステップS6で得られたシミュレーション結果を親個体とし、各親個体について目的関数1および目的関数2を演算して評価関数を得る。
 次に、最適解抽出部30は、ステップS6の結果として得られる親個体から子個体に世代進化させて、入力変数を作成する(ステップS7)。ステップS7では、最適解抽出部30は、決定投入順序格納部50から決定順序情報(個体番号および決定投入順序)を読み込み、図4で説明したように、子個体の作成時に、投入順序に加えて個体番号も交配させて入力変数を作成する。この場合、最適解抽出部30は、個体番号そのものも交配させる。
 次に、最適解抽出部30は、ステップS7で作成した入力変数を用いて、ラインシミュレータ60にシミュレーションを実行させる(ステップS8)。また、最適解抽出部30は、各シミュレーション結果について、目的関数1および目的関数2を演算することで、評価関数を得る。
 次に、最適解抽出部30は、最適化条件に含まれる世代進化数分だけ進化が終了したか否かを判定する(ステップS9)。本実施例においては、10世代分の進化が終了したか否かが判定される。
 ステップS9で「No」と判定された場合、ステップS7から再度実行される。ステップS7の2回目以降の実行時には、次の世代の子個体の入力変数が作成される。それにより、次の世代の子個体についてシミュレーションが行われることになる。ステップS9で「Yes」と判定された場合、最適解抽出部30は、パレート解を抽出する(ステップS10)。この場合、最適解抽出部30は、全ての親個体および全ての子個体から、最も良好な評価関数が得られた最適解を個体数(4個)だけ抽出する。
 次に、最適解抽出部30は、ステップS10で抽出されたパレート解のそれぞれに個体番号1~4を付し、個体番号と、当該個体番号の個体に含まれる第一投入製品、第二投入製品の投入順序を、履歴情報として決定投入順序格納部50のテーブルに格納する。このようにすることで、既決定順序に新たに決定された投入製品番号が加わり、決定投入順序格納部50のテーブルに決定順序が追加される(ステップS11)。
 次に、最適解抽出部30は、全製品の順序を決定したか否かを判定する(ステップS12)。ステップS12では、生産マスタ70に格納されている全ての製品について順序が決定されたかが判定される。ステップS12で「No」と判定された場合、ステップS6から再度実行される。ステップS6の2回目実行時には#8の製品が追加され、ステップS6の3回目実行時には#9の製品が追加される。
 ステップS12で「Yes」と判定された場合、フローチャートの実行が終了する。この場合において、表示装置80は、決定投入順序格納部50に格納された各個体の投入順序を表示する。この場合において、各個体について、各目的関数の値が表示されてもよい。各目的関数の値が表示されることで、ユーザは、どの目的関数を優先させることができるか把握することができる。
 本実施例によれば、最適解抽出部30が、親個体を世代進化させて最適解を抽出することで製品投入順序を1つ決定する一連の処理を、製品を1つずつ増やしつつ繰り返し実行する際に、抽出した最適解がたどった履歴を個体数分の個体番号のいずれかと紐付け、親個体に個体番号を入力変数として追加し、世代進化の際に個体番号そのものを遺伝的アルゴリズムで交配させることで投入履歴情報を次世代に引き継いでいる。このようにすることで、計算時間を短縮化しつつ、最適解の探索空間を広げることで最適解決定精度を向上させることができる。
 図10は、本実施例の手法で、第一投入製品のパレート解から第n投入製品のパレート解を算出した場合を例示する図である。図10において、黒四角形が本実施例の結果を表している。図10で例示するように、目的関数1および目的関数2の両方に対して、最適解の探索空間が広がっていることがわかる。これに対して、目的関数1を優先した場合の探索結果は、目的関数1の結果が良好になるように探索空間が偏っていることがわかる。また、目的関数2を優先した場合の探索結果は、目的関数2の結果が良好になるように探索空間が偏っていることがわかる。
 上記実施例において、製造ラインが、複数の対象物が所定順序に従って処理され、前記複数の対象物のそれぞれについて複数の作業が順番に行われ、前記複数の作業のうち少なくとも一部の作業が前記複数の対象物の間で相互に異なる、作業ラインの一例である。製品が対象物の一例である。最適解抽出部30が、前記複数の対象物の一部についての前記作業ラインへの投入順序が入力変数として与えられる規定数分の個体を親個体として、前記親個体から遺伝的アルゴリズムで世代進化させることで子個体を生成する処理と、前記親個体および前記子個体の各投入順序で前記一部の対象物を前記作業ラインに投入する場合のシミュレーション結果について複数の目的関数に応じた評価関数を演算する処理と、前記評価関数が所定の条件を満たす個体を、前記規定数分だけ解として抽出する処理と、を含む一連の処理を実行する解抽出部の一例として機能する。
 以上、本発明の実施例について詳述したが、本発明は係る特定の実施例に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
 10 入力装置
 20 最適化条件格納部
 30 最適解抽出部
 40 初期投入順序格納部
 50 決定投入順序格納部
 60 ラインシミュレータ
 70 生産マスタ
 80 表示装置
 100 情報処理装置
 

Claims (9)

  1.  複数の対象物が所定順序に従って作業ラインにて処理され、前記作業ラインにおいて前記複数の対象物のそれぞれについて複数の作業が順番に行われ、前記複数の作業のうち少なくとも一部の作業が前記複数の対象物の間で相互に異なる、という条件において、前記所定順序を特定する情報処理装置であって、
     前記複数の対象物の一部についての前記作業ラインへの投入順序が入力変数として与えられる規定数分の個体を親個体として、前記親個体から遺伝的アルゴリズムで世代進化させることで子個体を生成する処理と、前記親個体および前記子個体の各投入順序で前記一部の対象物を前記作業ラインに投入する場合のシミュレーション結果について複数の目的関数に応じた評価関数を演算する処理と、前記評価関数が所定の条件を満たす個体を、前記規定数分だけ解として抽出する処理と、を含む一連の処理を実行する解抽出部を備え、
     前記解抽出部は、前記一連の処理を、前記対象物を1つずつ増やしつつ繰り返し実行する際に、抽出した前記個体がたどった履歴を前記規定数分の個体番号のいずれかと紐付け、前記親個体に前記個体番号を入力変数として追加し、世代進化の際に前記個体番号そのものを遺伝的アルゴリズムで交配させることで投入履歴情報を次世代に引き継ぐことを特徴とする情報処理装置。
  2.  前記解抽出部は、前記一連の処理の第1回目の実行時に、抽出した前記個体のそれぞれについて前記対象物の第一投入順序を決定し、次回以降の前記一連の処理の実行時に、抽出した解について前記対象物の投入順序を順次決定していくことを特徴とする請求項1に記載の情報処理装置。
  3.  前記解抽出部は、前記入力変数として、前記個体番号に紐付いた前記決定投入順序を用いることを特徴とする請求項2に記載の情報処理装置。
  4.  複数の対象物が所定順序に従って作業ラインにて処理され、前記作業ラインにおいて前記複数の対象物のそれぞれについて複数の作業が順番に行われ、前記複数の作業のうち少なくとも一部の作業が前記複数の対象物の間で相互に異なる、という条件において、前記所定順序を特定する作業計画決定方法であって、
     前記複数の対象物の一部についての前記作業ラインへの投入順序が入力変数として与えられる規定数分の個体を親個体として、前記親個体から遺伝的アルゴリズムで世代進化させることで子個体を生成する処理と、前記親個体および前記子個体の各投入順序で前記一部の対象物を前記作業ラインに投入する場合のシミュレーション結果について複数の目的関数に応じた評価関数を演算する処理と、前記評価関数が所定の条件を満たす個体を、前記規定数分だけ解として抽出する処理と、を含む一連の処理を実行する処理をコンピュータが実行し、
     前記一連の処理を、前記対象物を1つずつ増やしつつ繰り返し実行する際に、抽出した前記個体がたどった履歴を前記規定数分の個体番号のいずれかと紐付け、前記親個体に前記個体番号を入力変数として追加し、世代進化の際に前記個体番号そのものを遺伝的アルゴリズムで交配させることで投入履歴情報を次世代に引き継ぐことを特徴とする作業計画決定方法。
  5.  前記一連の処理の第1回目の実行時に、抽出した前記個体のそれぞれについて前記対象物の第一投入順序を決定し、次回以降の前記一連の処理の実行時に、抽出した解について前記対象物の投入順序を順次決定していくことを特徴とする請求項4に記載の作業計画決定方法。
  6.  前記入力変数として、前記個体番号に紐付いた決定投入順序を用いることを特徴とする請求項5に記載の作業計画決定方法。
  7.  複数の対象物が所定順序に従って作業ラインにて処理され、前記作業ラインにおいて前記複数の対象物のそれぞれについて複数の作業が順番に行われ、前記複数の作業のうち少なくとも一部の作業が前記複数の対象物の間で相互に異なる、という条件において、前記所定順序を特定する作業計画決定プログラムであって、
     コンピュータに、
     前記複数の対象物の一部についての前記作業ラインへの投入順序が入力変数として与えられる規定数分の個体を親個体として、前記親個体から遺伝的アルゴリズムで世代進化させることで子個体を生成する処理と、前記親個体および前記子個体の各投入順序で前記一部の対象物を前記作業ラインに投入する場合のシミュレーション結果について複数の目的関数に応じた評価関数を演算する処理と、前記評価関数が所定の条件を満たす個体を、前記規定数分だけ解として抽出する処理と、を含む一連の処理を実行する処理を実行させ、
     前記一連の処理を、前記対象物を1つずつ増やしつつ繰り返し実行する際に、抽出した前記個体がたどった履歴を前記規定数分の個体番号のいずれかと紐付け、前記親個体に前記個体番号を入力変数として追加し、世代進化の際に前記個体番号そのものを遺伝的アルゴリズムで交配させることで投入履歴情報を次世代に引き継ぐことを特徴とする作業計画決定プログラム。
  8.  前記一連の処理の第1回目の実行時に、抽出した前記個体のそれぞれについて前記対象物の第一投入順序を決定し、次回以降の前記一連の処理の実行時に、抽出した解について前記対象物の投入順序を順次決定していくことを特徴とする請求項7に記載の作業計画決定プログラム。
  9.  前記入力変数として、前記個体番号に紐付いた決定投入順序を用いることを特徴とする請求項8に記載の作業計画決定プログラム。
     
PCT/JP2020/011727 2020-03-17 2020-03-17 情報処理装置、作業計画決定方法、および作業計画決定プログラム WO2021186551A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
PCT/JP2020/011727 WO2021186551A1 (ja) 2020-03-17 2020-03-17 情報処理装置、作業計画決定方法、および作業計画決定プログラム
CN202080095435.2A CN115053248A (zh) 2020-03-17 2020-03-17 信息处理装置、工作计划决定方法以及工作计划决定程序
EP20925644.5A EP4123554A4 (en) 2020-03-17 2020-03-17 INFORMATION PROCESSING DEVICE, WORK PLAN DETERMINATION METHOD, AND WORK PLAN DETERMINATION PROGRAM
JP2022508656A JP7303474B2 (ja) 2020-03-17 2020-03-17 情報処理装置、作業計画決定方法、および作業計画決定プログラム
US17/863,436 US20220350316A1 (en) 2020-03-17 2022-07-13 Information processing device, work plan determination method, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2020/011727 WO2021186551A1 (ja) 2020-03-17 2020-03-17 情報処理装置、作業計画決定方法、および作業計画決定プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/863,436 Continuation US20220350316A1 (en) 2020-03-17 2022-07-13 Information processing device, work plan determination method, and storage medium

Publications (1)

Publication Number Publication Date
WO2021186551A1 true WO2021186551A1 (ja) 2021-09-23

Family

ID=77770869

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/011727 WO2021186551A1 (ja) 2020-03-17 2020-03-17 情報処理装置、作業計画決定方法、および作業計画決定プログラム

Country Status (5)

Country Link
US (1) US20220350316A1 (ja)
EP (1) EP4123554A4 (ja)
JP (1) JP7303474B2 (ja)
CN (1) CN115053248A (ja)
WO (1) WO2021186551A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4213082A1 (en) * 2022-01-17 2023-07-19 Fujitsu Limited Planning program, planning method, and information processing apparatus
EP4213080A1 (en) * 2022-01-17 2023-07-19 Fujitsu Limited Planning program, planning method, and information processing apparatus
WO2024047682A1 (ja) * 2022-08-29 2024-03-07 富士通株式会社 演算プログラム、演算方法、および情報処理装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003084819A (ja) 2001-09-07 2003-03-19 Technova Kk 生産計画生成方法、生産計画生成装置、コンピュータプログラム、及び記録媒体
JP2003271223A (ja) * 2002-03-15 2003-09-26 Hitachi Ltd 自動車製造ラインの投入順計画立案装置
JP2011253451A (ja) * 2010-06-03 2011-12-15 Toshiba Corp 製造計画作成装置及びプログラム
JP2016012285A (ja) * 2014-06-30 2016-01-21 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報処理装置、情報処理方法、及びプログラム
WO2019064379A1 (ja) * 2017-09-27 2019-04-04 富士通株式会社 人員配置策定装置、人員配置策定方法及び人員配置策定プログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102354311A (zh) * 2011-09-09 2012-02-15 河海大学常州校区 面向大批量定制的可重构装配线平衡方法
CN105550751B (zh) * 2015-12-15 2018-05-29 重庆大学 利用优先级策略混合遗传算法的炼钢连铸生产调度方法
JP6593194B2 (ja) * 2016-01-27 2019-10-23 東芝三菱電機産業システム株式会社 自動車生産ラインのpbs出庫順列決定装置
US11308315B2 (en) * 2017-09-27 2022-04-19 Nec Corporation Information processing apparatus, control method, and program
CN108880663B (zh) * 2018-07-20 2020-09-22 大连大学 基于改进遗传算法的天地一体化网络资源分配方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003084819A (ja) 2001-09-07 2003-03-19 Technova Kk 生産計画生成方法、生産計画生成装置、コンピュータプログラム、及び記録媒体
JP2003271223A (ja) * 2002-03-15 2003-09-26 Hitachi Ltd 自動車製造ラインの投入順計画立案装置
JP2011253451A (ja) * 2010-06-03 2011-12-15 Toshiba Corp 製造計画作成装置及びプログラム
JP2016012285A (ja) * 2014-06-30 2016-01-21 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報処理装置、情報処理方法、及びプログラム
WO2019064379A1 (ja) * 2017-09-27 2019-04-04 富士通株式会社 人員配置策定装置、人員配置策定方法及び人員配置策定プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP4123554A4

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4213082A1 (en) * 2022-01-17 2023-07-19 Fujitsu Limited Planning program, planning method, and information processing apparatus
EP4213080A1 (en) * 2022-01-17 2023-07-19 Fujitsu Limited Planning program, planning method, and information processing apparatus
WO2024047682A1 (ja) * 2022-08-29 2024-03-07 富士通株式会社 演算プログラム、演算方法、および情報処理装置

Also Published As

Publication number Publication date
JPWO2021186551A1 (ja) 2021-09-23
JP7303474B2 (ja) 2023-07-05
EP4123554A4 (en) 2023-04-19
EP4123554A1 (en) 2023-01-25
CN115053248A (zh) 2022-09-13
US20220350316A1 (en) 2022-11-03

Similar Documents

Publication Publication Date Title
WO2021186551A1 (ja) 情報処理装置、作業計画決定方法、および作業計画決定プログラム
Battaïa et al. A taxonomy of line balancing problems and their solutionapproaches
Hui et al. A genetic algorithm for product disassembly sequence planning
Panwar et al. Integrating quality and safety in construction scheduling time-cost trade-off model
Ghezavati et al. An efficient hybrid self-learning method for stochastic cellular manufacturing problem: A queuing-based analysis
Noroozi et al. Research on computational intelligence algorithms with adaptive learning approach for scheduling problems with batch processing machines
Tayebi Araghi et al. Incorporating learning effect and deterioration for solving a SDST flexible job-shop scheduling problem with a hybrid meta-heuristic approach
JP2018139041A (ja) 業務計画最適化装置及び業務計画最適化方法
CN106845665A (zh) 用于利用遗传算法对配送路线进行优化的方法和系统
Phanden et al. Application of genetic algorithm and variable neighborhood search to solve the facility layout planning problem in job shop production system
Azarbonyad et al. A genetic algorithm for solving quadratic assignment problem (QAP)
Lee et al. Petri-net based scheduling strategy for semiconductor manufacturing processes
Čuboňová et al. Optimisation of the machining process using genetic algorithm
Acevedo-Chedid et al. Soft-computing approaches for rescheduling problems in a manufacturing industry
JP2003044115A (ja) 製造ライン設計方法及びその装置並びに工程設計方法
Ponnambalam et al. A genetic algorithm for the design of a single-row layout in automated manufacturing systems
Gampala et al. Fast and intelligent antenna design optimization using machine learning
Kovács Methods for efficiency improvement of production and logistic processes
Gyulai et al. Simulation-based flexible layout planning considering stochastic effects
CN112654943A (zh) 制造系统设计辅助装置
Dou et al. Precedence graph-oriented approach to optimise single-product flow-line configurations of reconfigurable manufacturing system
Halim et al. Single-machine integrated production preventive maintenance scheduling: A simheuristic approach
Rezaeian et al. An Efficient Bi-objective Genetic Algorithm for the Single Batch-Processing Machine Scheduling Problem with Sequence Dependent Family Setup Time and Non-identical Job Sizes
Kliment et al. Simulation as an appropriate way of verifying the efficiency of production variants in the design of production and non-production systems
JP2003280714A (ja) 生産スケジューリング方法及び生産スケジューリング装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 20925644

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2022508656

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2020925644

Country of ref document: EP

Effective date: 20221017