Evolving Dispatching Rules for Dynamic Job Shop Scheduling Problems using Genetic Programming
Authors:   , Park John 
Published: December 2021

<p>Job shop scheduling (JSS) problems are difficult combinatorial optimisation problems that have been studied over the past 60 years. The goal of a JSS problem is to schedule the arriving jobs as effectively as possible on the limited machine resources on the shop floor. Each job has a sequence of operations that need to be processed on specific machines, but the machines can only process one job at a time. JSS and other types of scheduling are important problems in manufacturing systems, such as semiconductor manufacturing. In particular, this thesis focuses on dynamic JSS (DJSS) problems, where unforeseen events occur during processing that needs to be handled by the manufacturer. Examples of dynamic events that occur in DJSS problems are dynamic or unforeseen job arrivals, machine breakdowns, uncertain job processing times, and so on.  A prominent method of handling DJSS problems is to design effective dispatching rules for the DJSS problem handled by the manufacturer. Dispatching rules are local decision makers that determine what job is processed by a machine when the machine finishes processing the previous job and becomes available. Dispatching rules have been investigated extensively by both academics and industry experts due to their simplicity, interpretability, low computational cost and their ability to cope effectively in dynamic environments. However, dispatching rules are designed for a specific DJSS problem and have no guarantee that they retain their effectiveness on other DJSS problems. In a real-world scenario, the properties of a manufacturing system can change over time, meaning that previously effective dispatching rule may longer be effective. Therefore, a manufacturer may need to redesign a dispatching rule to maintain a competitive edge on the market. However, designing an effective dispatching rule for a specific DJSS problem is expensive, and typically requires a human expert and extensive trial-and-error process to verify their effectiveness. To circumvent the manual design of dispatching rules, researchers have proposed hyper-heuristic approaches to automate the design of dispatching rules. In particular, various genetic programming based hyper-heuristic (GP-HH) approaches have been proposed in the literature to evolve effective dispatching rules for scheduling problems, including DJSS problems. However, there are many potential directions that have not been fully investigated.  The overall goal of this thesis is to develop new and effective GP-HH approaches to designing high-quality dispatching rules for DJSS problems that aims to improve beyond the standard GP approach while maintaining computational efficiency. The focus will be on developing approaches which can decompose complex JSS problems down to simpler subcomponents, evolving multiple heuristics to handle the subcomponents, and developing GP-HH approaches that can handle complex DJSS problems by exploiting the problem properties.  This thesis is the first to develop ensemble GP approaches that evolve ensembles of dispatching rules using cooperative coevolution. In addition, the thesis also investigates different combination schemes for one of the ensemble GP approaches to combine the ensemble member outputs effectively. The results show that ensemble GP approach evolves rules that perform significantly better than the rules evolved by the benchmark GP approach.  This thesis provides the first investigation into applying GP-HH to a DJSS problem with dynamic job arrivals and machine breakdowns. In addition, the thesis also develops machine breakdown GP approach to the DJSS problem by incorporating machine breakdown GP terminals. The results show that the standard GP do not generalise well over the DJSS problem. The best rules from the machine breakdown GP approach do perform better than the best rule from the standard GP approach, and the analysis shows that the rules behaviour is similar to the shortest processing time rule in certain decision situations.  This thesis is the first to develop a multitask GP approach to evolve a portfolio of dispatching rules for a DJSS problem with dynamic job arrivals and machine breakdowns. The multitask GP approach improve on the standard GP approach either in terms of the effectiveness of the output rules or the computation time required to evolve the rules. The analysis shows that the difference between DJSS problem having no machine breakdowns and having machine breakdowns is a more significant factor than the difference between two DJSS problems with different frequencies of machine breakdown investigated.</p>