Genetic Programming with Multi-tree Representation for Dynamic Flexible Job Shop Scheduling

  • Fangfang ZhangEmail author
  • Yi Mei
  • Mengjie Zhang
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11320)


Flexible job shop scheduling (FJSS) can be regarded as an optimization problem in production scheduling that captures practical and challenging issues in real-world scheduling tasks such as order picking in manufacturing and cloud computing. Given a set of machines and jobs, FJSS aims to determine which machine to process a particular job (by routing rule) and which job will be chosen to process next by a particular machine (by sequencing rule). In addition, dynamic changes are unavoidable in the real-world applications. These features lead to difficulties in real-time scheduling. Genetic programming (GP) is well-known for the flexibility of its representation and tree-based GP is widely and typically used to evolve priority functions for different decisions. However, a key issue for the tree-based representation is how it can capture both the routing and sequencing rules simultaneously. To address this issue, we proposed to use multi-tree GP (MTGP) to evolve both routing and sequencing rules together. In order to enhance the performance of MTGP algorithm, a novel tree swapping crossover operator is proposed and embedded into MTGP. The results suggest that the multi-tree representation can achieve much better performance with smaller rules and less training time than cooperative co-evolution for GP in solving dynamic FJSS problems. Furthermore, the proposed tree swapping crossover operator can greatly improve the performance of MTGP.


Multi-tree representation Flexible job shop scheduling Dynamic changes Genetic programming 


  1. 1.
    Branke, J., Nguyen, S., Pickardt, C.W., Zhang, M.: Automated design of production scheduling heuristics: a review. IEEE Trans. Evol. Comput. 20(1), 110–124 (2016)CrossRefGoogle Scholar
  2. 2.
    Brucker, P., Schlie, R.: Job-shop scheduling with multi-purpose machines. Computing 45(4), 369–375 (1990)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Cordelia, L., De Stefano, C., Fontanella, F., Marcelli, A.: Genetic programming for generating prototypes in classification problems. In: 2005 IEEE Congress Evolutionary Computation, vol. 2, pp. 1149–1155 (2005)Google Scholar
  4. 4.
    Haupt, R.: A survey of priority rule-based scheduling. Oper.-Res.-Spektrum 11, 3–16 (1989)MathSciNetCrossRefGoogle Scholar
  5. 5.
    Hildebrandt, T., Branke, J.: On using surrogates with genetic programming. Evol. Comput. 23(3), 343–367 (2015)CrossRefGoogle Scholar
  6. 6.
    Holthaus, O., Rajendran, C.: Efficient dispatching rules for scheduling in a job shop. Int. J. Prod. Econ. 48(1), 87–105 (1997)CrossRefGoogle Scholar
  7. 7.
    Langdon, W.B.: Genetic Programming and Data Structures: Genetic Programming + Data Structures = Automatic Programming!, vol. 1. Springer, New York (2012). Scholar
  8. 8.
    Lensen, A., Xue, B., Zhang, M.: Generating redundant features with unsupervised multi-tree genetic programming. In: Castelli, M., Sekanina, L., Zhang, M., Cagnoni, S., García-Sánchez, P. (eds.) EuroGP 2018. LNCS, vol. 10781, pp. 84–100. Springer, Cham (2018). Scholar
  9. 9.
    Mei, Y., Nguyen, S., Xue, B., Zhang, M.: An efficient feature selection algorithm for evolving job shop scheduling rules with genetic programming. IEEE Trans. Emerg. Top. Comput. Intell. 1(5), 339–353 (2017)CrossRefGoogle Scholar
  10. 10.
    Mei, Y., Nguyen, S., Zhang, M.: Evolving time-invariant dispatching rules in job shop scheduling with genetic programming. In: McDermott, J., Castelli, M., Sekanina, L., Haasdijk, E., García-Sánchez, P. (eds.) EuroGP 2017. LNCS, vol. 10196, pp. 147–163. Springer, Cham (2017). Scholar
  11. 11.
    Muni, D.P., Pal, N.R., Das, J.: A novel approach to design classifiers using genetic programming. IEEE Trans. Evol. Comput. 8(2), 183–196 (2004)CrossRefGoogle Scholar
  12. 12.
    Nguyen, S., Mei, Y., Zhang, M.: Genetic programming for production scheduling: a survey with a unified framework. Complex Intell. Syst. 3(1), 41–66 (2017)CrossRefGoogle Scholar
  13. 13.
    Nguyen, S., Zhang, M., Johnston, M., Tan, K.C.: A computational study of representations in genetic programming to evolve dispatching rules for the job shop scheduling problem. IEEE Trans. Evol. Comput. 17(5), 621–639 (2013)CrossRefGoogle Scholar
  14. 14.
    Nowicki, E., Smutnicki, C.: A fast taboo search algorithm for the job shop problem. Manag. Sci. 42(6), 797–813 (1996)CrossRefGoogle Scholar
  15. 15.
    Papadimitriou, C.H., Steiglitz, K.: Combinatorial Optimization: Algorithms and Complexity. Courier Corporation, North Chelmsford (1998)zbMATHGoogle Scholar
  16. 16.
    Pezzella, F., Morganti, G., Ciaschetti, G.: A genetic algorithm for the flexible job-shop scheduling problem. Comput. Oper. Res. 35(10), 3202–3212 (2008)CrossRefGoogle Scholar
  17. 17.
    Sels, V., Gheysen, N., Vanhoucke, M.: A comparison of priority rules for the job shop scheduling problem under different flow time-and tardiness-related objective functions. Int. J. Prod. Res. 50(15), 4255–4270 (2012)CrossRefGoogle Scholar
  18. 18.
    Van Laarhoven, P.J., Aarts, E.H., Lenstra, J.K.: Job shop scheduling by simulated annealing. Oper. Res. 40(1), 113–125 (1992)MathSciNetCrossRefGoogle Scholar
  19. 19.
    Yska, D., Mei, Y., Zhang, M.: Genetic programming hyper-heuristic with cooperative coevolution for dynamic flexible job shop scheduling. In: Castelli, M., Sekanina, L., Zhang, M., Cagnoni, S., García-Sánchez, P. (eds.) EuroGP 2018. LNCS, vol. 10781, pp. 306–321. Springer, Cham (2018). Scholar

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  1. 1.School of Engineering and Computer ScienceVictoria University of WellingtonWellingtonNew Zealand

Personalised recommendations