An efficient genetic programming approach to design priority rules for resource-constrained project scheduling problem

https://doi.org/10.1016/j.eswa.2022.116753Get rights and content

Highlights

  • An efficient genetic programming approach for the RCPSP is proposed.

  • The impact of the training data and evaluation function are investigated.

  • The GP-designed rules outperform any single traditional rule on various test data.

  • The GP-designed rules outperform the traditional rules method on large projects.

  • Three decision models are created to improve the performance on small-sized projects.

Abstract

In recent years, machine learning techniques, especially genetic programming (GP), have been a powerful approach for automated design of the priority rule-heuristics for the resource-constrained project scheduling problem (RCPSP). However, it requires intensive computing effort, carefully selected training data and appropriate assessment criteria. This research proposes a GP hyper-heuristic method with a duplicate removal technique to create new priority rules that outperform the traditional rules. The experiments have verified the efficiency of the proposed algorithm as compared to the standard GP approach. Furthermore, the impact of the training data selection and fitness evaluation have also been investigated. The results show that a compact training set can provide good output and existing evaluation methods are all usable for evolving efficient priority rules. The priority rules designed by the proposed approach are tested on extensive existing datasets and newly generated large projects with more than 1,000 activities. In order to achieve better performance on small-sized projects, we also develop a method to combine rules as efficient ensembles. Computational comparisons between GP-designed rules and traditional priority rules indicate the superiority and generalization capability of the proposed GP algorithm in solving the RCPSP.

Introduction

The resource-constrained project scheduling problem (RCPSP) is one of the most challenging scheduling problem in practice, and effective but simple and intuitive rules-of-thumb are often used to obtain sufficiently good and practicable solutions for large real-life instances. This method is called the priority rule-based approach, which relies on problem-specific knowledge to construct feasible solutions in a very short time. However, the design of good priority rules is not a trivial task. Even with significant knowledge and experience, experts and researchers are limited in the possibilities they can consider. Therefore, a critical open problem is how to design rules with good generalization capability when applied to unseen cases. Moreover, the scientific community’s level of understanding of why different rules work effectively (or not) in different situations also does not facilitate simple choices of which rules to use in different situations.

The priority rules-based method is a type of heuristic approach. Consequently, the hyper-heuristic algorithm, which is motivated by automating the design of heuristic methods to solve complex computational search problems, can be used to design priority rules. Recently, genetic programming (GP), one of the most popular hyper-heuristic algorithms, has emerged as a powerful approach to design efficient priority rules in the field of job-shop scheduling, for which an exhaustive literature review can be referred to Branke, Nguyen et al. (2015). Moreover, researchers also proposed a unified framework for the implementation of genetic programming for production scheduling (Nguyen et al., 2017).

However, the potential of applying a genetic programming hyper-heuristic (GPHH) to design priority rules has been scarcely explored in the domain of project scheduling, and there is plenty of space to improve its efficiency and performance. In this research, we aim to fill this gap by not only studying the automated design of priority rules for the RCPSP using GPHH but also deploying some improvements to enhance the efficiency of the algorithm. Our contribution is fourfold. First, a duplicate removal technique is proposed for solving the classic RCPSP, and we also develop new strategies for the genetic operations. Secondly, we study the impact of training data and fitness evaluation function on the performance of GP to reduce the runtime of the algorithm further. Thirdly, we create three decision models to predict the best ensemble of rules, and these ensembles outperform the best results of the traditional rules in most cases. Finally, to investigate the performance of priority rules designed by GP on large projects, which more advanced algorithms cannot be used, we proposed two datasets that are compromised by project instances with more than 1000 activities and compared the performance of the priority rules designed by GP with the traditional rules and other methods.

The remainder of this paper is organized as follows. The problem definition of RCPSP and related work in the literature are summarized in Section 2. The detailed procedure of our proposed GPHH algorithm is presented in Section 3. In Section 4, the computational results and the comparison to the traditional priority rules are discussed. And finally, Section 5 concludes this research.

Section snippets

Background and related work

In this section, a summary of the problem under study with references to the literature is given. In Section 2.1, a formal problem description of the RCPSP is given. Afterward, the section zooms in into the priority rules heuristic (Section 2.2). In Section 2.3, we briefly introduce the project indicators used to measure the project characteristics. Section 2.4 gives an overview of the development and application of the GPHH approach. Finally, in Section 2.5, the motivation of this research is

GPHH for RCPSP

This section proposes the GP hyper-heuristic algorithm that can automatically construct and evolve priority rules for the RCPSP. This approach requires the availability of a set of so-called primitives (to construct priority rules) and a set of project instances (training set) and aims at finding solutions for projects outside the training data (test set) that outperform the traditional priority rules. The priority rules will be treated as individuals, and the GPHH will evaluate them on the

Numerical experiments

In this section, several numerical experiments will be conducted to show the performance and efficiency of our proposed GPHH algorithm. Section 4.1 introduces the general setup of the experiments. Section 4.2 demonstrates the advantage of our proposed modifications on the GPHH for the RCPSP. Section 4.3 presents the training and testing process of the GPHH. Section 4.4 shows that the performance can be improved by using the CHAID regression method to cluster projects and choose the best

Conclusion

In this research, we have proposed a GPHH algorithm to design priority rules for the RCPSP. To improve the efficiency of the algorithm, we designed a duplicate removal technique and investigated the impact of the training data selection. The experiments demonstrate that the duplicate removal technique can significantly reduce the runtime compared with the standard algorithm without losing any searching capability. Our experiments also show that a well-sampled training set is sufficient for the

CRediT authorship contribution statement

Jingyu Luo: Conceptualization, Data curation, Formal analysis, Writing – original draft. Mario Vanhoucke: Formal analysis, Funding acquisition, Project administration, Resources, Supervision, Validation, Writing – review & editing. José Coelho: Data curation, Formal analysis, Supervision, Validation, Writing – review & editing. Weikang Guo: Conceptualization, Data curation.

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Acknowledgment

This work is supported in part by the scholarship from China Scholarship Council (CSC) under the Grant CSC No. 201708210261.

References (65)

  • KolischR.

    Serial and parallel resource-constrained project scheduling methods revisited: Theory and computation

    European Journal of Operational Research

    (1996)
  • KolischR. et al.

    Experimental investigation of heuristics for resource-constrained project scheduling: An update

    European Journal of Operational Research

    (2006)
  • KolischR. et al.

    Psplib-a project scheduling problem library: Or software-orsep operations research software exchange program

    European Journal of Operational Research

    (1997)
  • LiK.Y. et al.

    An iterative scheduling technique for resource-constrained project scheduling

    European Journal of Operational Research

    (1992)
  • LinJ. et al.

    A genetic programming hyper-heuristic approach for the multi-skill resource constrained project scheduling problem

    Expert Systems with Applications

    (2020)
  • PellerinR. et al.

    A survey of hybrid metaheuristics for the resource-constrained project scheduling problem

    European Journal of Operational Research

    (2020)
  • VanhouckeM. et al.

    A tool to test and validate algorithms for the resource-constrained project scheduling problem

    Computers & Industrial Engineering

    (2018)
  • VanhouckeM. et al.

    An evaluation of the adequacy of project network generators with systematically sampled networks

    European Journal of Operational Research

    (2008)
  • VanhouckeM. et al.

    An evaluation of the adequacy of project network generators with systematically sampled networks

    European Journal of Operational Research

    (2008)
  • Alvarez-ValdésR. et al.

    Heuristic algorithms for resource-constrained project scheduling: a review and an empirical analysis

    (1989)
  • BanzhafW. et al.

    Genetic programming

    (1998)
  • BrankeJ. et al.

    Hyper-heuristic evolution of dispatching rules: A comparison of rule representations

    Evolutionary Computation

    (2015)
  • BrankeJ. et al.

    Automated design of production scheduling heuristics: A review

    IEEE Transactions on Evolutionary Computation

    (2015)
  • BurkeE.K. et al.

    Hyper-heuristics: A survey of the state of the art

    Journal of the Operational Research Society

    (2013)
  • BurkeE.K. et al.

    Evolving bin packing heuristics with genetic programming

  • ChellapillaK.

    Evolutionary programming with tree mutations: Evolving computer programs without crossover

  • CooperD.F.

    Heuristics for scheduling resource-constrained projects: An experimental investigation

    Management Science

    (1976)
  • CowlingP. et al.

    A hyperheuristic approach to scheduling a sales summit

  • DavisE.W. et al.

    A comparison of heuristic and optimum solutions in resource-constrained project scheduling

    Management Science

    (1975)
  • DebelsD. et al.

    A decomposition-based genetic algorithm for the resource-constrained project-scheduling problem

    Operations Research

    (2007)
  • DemeulemeesterE. et al.

    Rangen: A random network generator for activity-on-the-node networks

    Journal of Scheduling

    (2003)
  • FrankolaT. et al.

    Evolutionary algorithms for the resource constrained scheduling problem

  • Cited by (0)

    View full text