Evolving priority rules for on-line scheduling of jobs on a single machine with variable capacity over time
Introduction
One machine scheduling problems are of great interest in the field of scheduling for many reasons. Sometimes, they appear as natural relaxations of more complex problems and so they are useful to obtain lower bounds [1]. In other situations they appear as building blocks in the development of solutions to more complex scheduling problems [2].
This paper deals with a problem of this class introduced in [3] in the context of scheduling the charging times of a large fleet of Electric Vehicles (EVs) in the charging station designed in [4]. In this problem, a number of jobs must be scheduled on a single machine, with the objective of minimizing the total tardiness objective function. The unique characteristic of this problem being that the machine has capacity to process more than one job at a time, but this capacity varies over time. So, it may be denoted as in the standard notation proposed in [5].
Solving the Electric Vehicle Charging Scheduling Problem(EVCSP) tackled in [3] amounts to solving a number of instances of the problem. Due to the computational intractability of this problem and the tight real-time requirements of the EVCSP, on-line scheduling represents the most (if not the only) suitable approach. On-line scheduling is usually performed by means of schedule generation schemes guided by priority rules. This is a common approach that has been successfully applied to a number of scheduling problems [6], [7]. In [3], the problem is solved by means of the Apparent Tardiness Cost (ATC) priority rule, commonly used in the context of scheduling with tardiness objectives. The problem was then solved in [8] by means of a genetic algorithm and later in [9] by a memetic algorithm producing better solutions. However, none of these approaches is suitable for on-line scheduling as it is required to solve the EVCSP.
The aim of this paper is the automated development of new, efficient, priority rules specifically adapted to address the problem. A natural way to cope with this task is the use of hyper-heuristics, as search needs to be conducted in a space of heuristics rather than in a space of solutions to the scheduling problem. Since priority rules are arithmetic expressions, they can be naturally represented by trees; so, we opted to investigate a Genetic Programming (GP) approach. We start from a conventional GP as it was proposed in [10] and then we propose some enhancements of this algorithm that improve its efficiency and the readability of the obtained expressions, namely, a method to represent expression trees that allows for very efficient implementations of some genetic operators, and the restriction of candidate solutions to well formed expressions from the dimensional point of view. Experimental results indicate that GP is capable of evolving effective priority rules for the problem, outperforming ATC and other classical priority rules. The results also provide insights of practical interest that motivate further research.
The remainder of the paper is organized as follows. Section 2 reviews some GP approaches to evolve priority rules for scheduling problems. In Section 3, we give the formal definition of the problem. Section 4 introduces the solving method proposed for the problem, which consists of two main components: schedule builder and priority rules. In this section we also present some previous results from classical priority rules and raised the hypotheses of this research. Section 5 describes the GP approach proposed to evolve new priority rules. In Section 6, we report the results of the experimental study conducted to evaluate the proposed GP approach. Finally, in Section 7 we summarize the main conclusions and outline some ideas for future work.
Section snippets
Evolving priority rules for scheduling problems
The terms Dispatching Rule (DR) and Priority Rule (PR) are commonly used in the scheduling literature to refer to “a simple heuristic that derives a priority index of a job from its attributes” [11]. Due to their low computational cost, PRs are well suited for on-line scheduling: the job with the highest priority among those available at a given time is scheduled next. In this section, we review some existing GP approaches proposed to discover dispatching or priority rules for scheduling
The problem
As pointed out before, the problem of scheduling a set of jobs on a machine with variable capacity, denoted , comes from the Electric Vehicle Charging Scheduling Problem (EVCSP) considered in [3]. Specifically, solving one instance of the EVCSP requires solving a large number of instances of the . We refer the interested reader to [3] for further details. For the purpose of this paper it suffices to say that the problem needs to be solved in very short
Existing approaches and working hypotheses
Given the real time requirements of the EVCSP, on-linescheduling based on schedule builders guided by priority rules may be an appropriate approach to solve the problem. In this section, we describe the schedule builder used by our approach and give some of the classical priority rules that may be used for this problem.
Evolving new priority rules with genetic programming
From the hypotheses above, our purpose is to devise new dispatching rules for the problem. To this end, we propose using hyper-heuristics, as they provide a natural way of searching over a (sub)space of the heuristics that solve a given problem. As we are interested in devising some arithmetic expression, as that of the ATC rule given in Eq. (4), Genetic Programming (GP) [10] represents a good choice as it provides a way of evolving tree structures. We start considering a
Experimental study
We have conducted an experimental study aimed at analyzing the behavior of the proposed GP and, in particular, at assessing the quality of the obtained rules. To this end, we implemented a prototype in Java, and ran a series of experiments on a Linux cluster (Intel Xeon 2.26 GHz. 128 GB RAM). Due to the stochastic nature of GP, for each input data 30 independent runs were conducted with different initial random seeds and the best and average solutions were recorded.
Conclusions
This paper studies the one machine scheduling problem with variable capacity, denoted , and shows that Genetic Programming is a suitable approach to generate new priority rules, improving the best-performing classical ones for total tardiness minimization such as EDD or ATC. In order to make a fair comparison, we considered the same problem attributes and operations as in these rules. At the same time, we have seen that there is still room for improvement, as off-line algorithms,
Declaration of Competing Interest
No author associated with this paper has disclosed any potential or pertinent conflicts which may be perceived to have impending conflict with this work. For full disclosure statements refer to https://doi.org/10.1016/j.asoc.2019.105782.
Acknowledgments
This research has been supported by the Spanish Government under research project TIN2016-79190-R and by the Principality of Asturias under grant IDI/2018/000176.
References (31)
The one-machine sequencing problem
European J. Oper. Res.
(1982)- et al.
Electric vehicle charging under power and balance constraints as dynamic scheduling
Comput. Ind. Eng.
(2015) - et al.
Optimization and approximation in deterministic sequencing and scheduling: a survey
Ann. Discrete Math.
(1979) - et al.
An investigation of ensemble combination schemes for genetic programming based hyper-heuristic approaches to dynamic job shop scheduling
Appl. Soft Comput.
(2018) - et al.
Adaptive scheduling on unrelated machines with genetic programming
Appl. Soft Comput.
(2016) - et al.
On the use of genetic programming to evolve priority rules for resource constrained project scheduling problems
Inform. Sci.
(2018) - et al.
Evolving priority rules for resource constrained project scheduling problem with genetic programming
Future Gener. Comput. Syst.
(2018) - et al.
Evolving heuristics for the resource constrained project scheduling problem with dynamic resource disruptions
Swarm Evol. Comput.
(2019) - et al.
Exact and heuristic algorithms for the aerial refueling parallel machine scheduling problem with due date-to-deadline window and ready times
Comput. Ind. Eng.
(2012) - et al.
Memetic algorithms for the job shop scheduling problem with operators
Appl. Soft Comput.
(2015)
Evolving priority scheduling heuristics with genetic programming
Appl. Soft Comput.
Job shop scheduling with setup times, deadlines and precedence constraints
J. Sched.
Intelligent system for electric vehicle charging: Design and operation
DYNA
Schedule generation schemes for the job shop problem with sequence-dependent setup times: Dominance properties and computational analysis
Ann. Oper. Res.
Priority scheduling rules
Cited by (29)
A new dispatching mechanism for parallel-machine scheduling with different efficiencies and sequence-dependent setup times
2024, Decision Analytics JournalSurrogate model for memetic genetic programming with application to the one machine scheduling problem with time-varying capacity
2023, Expert Systems with ApplicationsEnsembles of priority rules to solve one machine scheduling problem in real-time
2023, Information SciencesCollaboration methods for ensembles of dispatching rules for the dynamic unrelated machines environment
2023, Engineering Applications of Artificial Intelligence