Skip to main content

Advertisement

Log in

Hybrid approach using simulation-based optimisation for job shop scheduling problems

  • Original Article
  • Published:
Journal of Simulation

Abstract

In this paper, we present a hybrid modelling approach and formulation using simulation-based optimisation (SbO) for solving complex problems, viz., job shop scheduling. The classical job shop scheduling problem is NP-Hard. Traditionally, the problem is modelled as a Mixed-Integer Programming (MIP) model and solved using exact algorithms (branch-and-bound, branch-and-cut, etc) or using meta-heuristics (Genetic Algorithm, Particle Swarm Optimisation, etc). In our hybrid SbO approach, we propose a modified formulation of the scheduling problem where the operational aspects of the job shop are captured only in the simulation model. Two new decision variables, controller delays and queue priorities, are introduced. The performances of the MIP-based approach and the proposed hybrid approach are compared through the number of decision variables, run time and the objective values for select deterministic benchmark problem instances. The results clearly indicate that the hybrid approach outperforms the traditional MIP for all large-scale problems, resulting in solutions closer to optimum in a much lesser computational time. Interestingly, it is also observed that the introduction of an ‘error’ term in the objective of the deterministic problem improves performance. Finally, the performance of the proposed SbO approach is analysed for stochastic job shops.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Figure 1
Figure 2
Figure 3
Figure 4
Figure 5

Similar content being viewed by others

Explore related subjects

Discover the latest articles, news and stories from top researchers in related subjects.

References

  • Branke J and Mattfeld DC (2005). Anticipation and flexibility in dynamic scheduling. International Journal of Production Research 43 (15): 3103–3129.

    Article  Google Scholar 

  • Fisher H and Thompson GL (1963). Probabilistic learning combinations of local job-shop scheduling rules. Industrial Scheduling. Prentice Hall, Englewood Cliffs: New Jersey, pp 225–251.

    Google Scholar 

  • Gnoni MG, Iavagnilio R, Mossa G, Mummolo G and Di Leva A (2003). Production planning of a multi-site manufacturing system by hybrid modelling: A case study from the automotive industry. International Journal of Production Economics, 85(2): 251–262.

  • Holthaus O and Rajendran C (1997). Efficient dispatching rules for scheduling in a job shop. International Journal of Production Economics, 48(1):87–105.

  • IBM ILOG CPLEX Optimization Studio Information Center (2014). IBM ILOG CPLEX Optimization Studio V12.5.1 documentation, http://pic.dhe.ibm.com/infocenter/cosinfoc/v12r5/index.jsp, accessed 31 October 2014.

  • Jeong SJ, Lim SJ and Kim KS (2006). Hybrid approach to production scheduling using genetic algorithm and simulation. International Journal of Advanced Manufacturing Technology 28 (1–2): 129–136, ISSN 0268-3768. 10.1007/s00170-004-2345-7.

    Article  Google Scholar 

  • Klemmt A, Horn S, Weigert G and Wolter KJ (2009). Simulation based optimization vs. mathematical programming: A hybrid approach for optimizing scheduling problems. Robotics and Computer-Integrated Manufacturing 25 (6): 917–925, December. ISSN 0736-5845 doi:10.1016/j.rcim.2009.04.012.

    Article  Google Scholar 

  • Lawrence S (1984). Resource constrained project scheduling: An experimental investigation of heuristic scheduling techniques (supplement). Graduate School of Industrial Administration. Carnegie-Mellon University: Pittsburgh, Pennsylvania.

    Google Scholar 

  • Lawrence SR and Sewell EC (1997). Heuristic, optimal, static, and dynamic schedules when processing times are uncertain. Journal of Operations Management, 15(1):71–82.

  • Mahdavi I, Shirazi B and Solimanpur M (2010). Development of a simulation based decision support system for controlling stochastic flexible job shop manufacturing systems. Simulation Modelling Practice and Theory 18 (6): 768–786.

    Article  Google Scholar 

  • Manne AS (1959). On the job shop scheduling problem. Cowles Foundation Discussion Papers 73, Cowles Foundation for Research in Economics, Yale University: New Haven, CT.

  • OR library (2014). Job shop benchmark instances, http://people.brunel.ac.uk/~mastjjb/jeb/orlib/files/jobshop1.txt, accessed 31 January 2013.

  • Pan JC-H and Chen J-S (2003). Minimizing makespan in re-entrant permutation flow-shops. Journal of the Operational Research Society, 54(6): 642–653. cited By (since 1996)37.

  • Sargent RG (1994). A historical view of hybrid simulation/analytic models. In: Proceedings of the 26th Conference on Winter Simulation, WSC ’94, pp 383–386, San Diego, CA, Society for Computer Simulation International. ISBN 0-7803-2109-X.

  • van Laarhoven PJM, Aarts EHL and Lenstra JK (1992). Job shop scheduling by simulated annealing. Operations Research, 40(1):113–125.

  • Xia W and Wu Z (2005). An effective hybrid optimization approach for multiobjective flexible job-shop scheduling problems. Computers and Industrial Engineering 48 (2): 409–425.

    Article  Google Scholar 

  • Xing L-N, Chen Y-W and Yang K-W (2009). Multi-objective flexible job shop schedule: Design and evaluation by simulation modeling. Applied Soft Computing 9 (1): 362–376.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to K Kulkarni.

Appendix

Appendix

Each instance in the benchmark library consists of a line of description followed by a line containing the number of jobs and the number of machines. Next is one line for each job, listing the machine number and processing time for each step of the job. The machines are numbered starting with 0. Table A1 shows the ft10 instance.

Klemmt et al (2009) have modified the data set in Table A1 to use an 8 × 10 job shop. This data set is called ft08 and is obtained by removing the last two rows from the Table A1. From Table A1, sorting out the data into processing time and sequence.

The functions written in the model are:

  • InitializeJob(): All entities are initialised by assigning their respective sequences and the priority for the first machine that is visited in their sequence.

  • AssignControllerDelay(): When implementing delay schedules, this function is used to delay a job before it proceeds to the next machine in its sequence. For non-delay schedules, the function returns a value 0.

  • routing(): This function is used to implement the sequence for each job. Each time a job leaves a machine, this function is called to route it to the next machine in its sequence.

  • AssignInterDelay(): This function is used to assign the queue priorities of each job on each machine. This function is recalled each time after a new routing occurs.

  • ControllerDelayTimes(): This function calculates the time spent by an entity before entering the queue of the next machine in its sequence.

  • DelayTimes(): This function calculates the time spent by the job in the queue of a machine.

  • BeforeProcessing(): This function is called just before a job seizes a machine resource. It notes the actual start time of servicing by calling function ActualStartTimes() and also calls DelayTimes().

  • AfterProcessing(): This function is called after a job releases the machine resource. It notes the time at which the machine was released by calling the function EndTimes(). It also calls JobSequence() to read the next machine number and AssignInterDelay().

  • AssignProcessTime(): This function is called once the job enters the delay of the machine. The processing time corresponding to the job and the machine is accessed from the ‘processingtimes’ table, which holds all the processing times.

Table A1

Table A1 Fisher and Thompson 10 × 10 instance, alternate name (mt10)

Table A2

Table A2 Processing times for Fisher and Thompson 8 × 10 instance

Table A3

Table A3 Sequences for Fisher and Thompson 8 × 10 instance

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Kulkarni, K., Venkateswaran, J. Hybrid approach using simulation-based optimisation for job shop scheduling problems. J Simulation 9, 312–324 (2015). https://doi.org/10.1057/jos.2014.40

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1057/jos.2014.40

Keywords

Navigation