Scheduling is an optimization process of allocating limited resources or machines over time to perform a set of tasks while satisfying multiple constraints and goals. Scheduling plays an important role in the manufacturing realm. It can be used by high-level production planning systems to check their capacity; it also provides visibility of future plans in the job shops for the suppliers and customers to adjust their actions; it can be used to evaluate the performance of job shop personnel and management; besides, it can provide greater degrees of freedom to avoid future problems (Aytug et al. 2005). Scheduling is well recognized by the academia as well as the practitioners, and it has been extensively studied in recent years.
In a job shop, machines or resources are structured according to the processes they perform, where machines with the same or similar material processing capabilities are grouped together to form work-centers. The machines are usually general-purpose machines that can accommodate a large variety of part types. A part moves through different work-centers based on its process plan. Normally, job shops are most suitable for small lot size production (Chryssolouris 2006).
There are many advantages of job shop processing, and these advantages become more obvious when there is greater variety in the jobs, and these jobs have different processing sequences. This research focuses on job shop scheduling. The advantages of job shop scheduling are as follows:
(1) Each operation can be assigned to a machine to achieve the best production rate or the best quality.
(2) The load can be distributed to the machines evenly.
(3) It is easier to accommodate machine breakdowns.
The scheduling problem is proven to be typically NP-hard; the computation time increases exponentially with the problem size. It is time consuming to search for an optimal solution in the huge solution space, especially when the problem is complex. Therefore, JSSP is among the most difficult (Reza and Saghafian 2005).
JSSP is a typical NP-hard optimization problem which is difficult to find the exact solution within a reasonable computation time (Garey et al. 1976). There are two widely used approaches for solving JSSP, namely, the exact methods and the heuristic methods. Exact methods, such as mathematical approaches and dynamic programming, are computationally intensive and can only solve small-scale problems. Heuristic methods are used to find near-optimal solutions within limited computational time. They usually aim to find a “good” solution instead of an optimal one. Meta-heuristics are high-level heuristics. For solving difficult combinatorial optimization problems, meta-heuristics has been proven to be one of the most powerful heuristic approaches (Hartmann and Kolisch 2000). Themost popular meta-heuristics used to solve the JSSP in recent years include the Tabu search method (TS) (Pezzella and Merelli 2000), genetic algorithm (GA) (Hong et al. 2009; Pan and Han-Chiang 2009; Vilcot and Billaut 2008; De Giovanni and Pezzella 2010), simulated annealing (SA) (Suresh and Mohanasundaram 2006), ant colony optimizer (ACO) (Blum and Sampels 2004; Seo and Kim 2010), shifting bottleneck (SB) (Balas and Vazacopoulos 1998), artificial neural networks (ANN)(Adibi et al. 2010), and particle swarm optimization (PSO) (Zhang et al. 2009; Lin et al. 2010; Sha and Lin 2010; Ge et al. 2008).
In 2007, another promising meta-heuristics called intelligent water drops (IWD) algorithm was proposed (Shah-Hosseini 2007). IWD algorithm is the most recent swarm-based nature-inspired optimization algorithm. IWD algorithm has found successful applications in several optimization problems, such as the travelling salesman problem (TSP) (Shah-Hosseini 2007, 2009a), robot path planning problem (Duan et al. 2008, 2009), n-queen puzzle (Shah-Hosseini 2009a), and the multidimensional knapsack problem (MKP) (Shah-Hosseini 2009a, b). The experimental results of these research work demonstrate that the IWD algorithm is very promising for solving optimization problems, and more research is required to improve its efficiency or/and adapt it to other engineering problems.
In this research, the OIWD algorithm is successfully customized to solve the SOJSSP and MOJSSP. To the best of the author’s knowledge, it is the first research work on the application of the IWD algorithm to solve SOJSSP and MOJSSP. In this research, the OIWD algorithm is improved through five schemes, namely, (1) diverse soil and velocity initialization is employed to increase the diversity of the solution space; (2) conditional probability computation scheme is designed to further improve the diversity of the solution space; (3) bounded local soil update is proposed to make full use of the guiding information and control the convergence rate of finding a path; (4) elite global soil update is proposed to retain the good information of the results obtained; and (5) a combined local search is used for improving the search quality. The enhanced IWD algorithm is employed to solve the SOJSSP andMOJSSP. The quality and the efficiency of the enhanced IWD algorithm are tested in the experiments.
The rest of the paper is organized as follows: section “Problem Formulation” presents the problem formulation. Section “Solution Methodologies” presents the solution methodologies. Section “Experimental Evaluation” describes experimental evaluation. Section “Conclusion” concludes the paper.