Elsevier

Applied Soft Computing

Volume 85, December 2019, 105782
Applied Soft Computing

Evolving priority rules for on-line scheduling of jobs on a single machine with variable capacity over time

https://doi.org/10.1016/j.asoc.2019.105782Get rights and content

Highlights

  • Genetic Programming is used to evolve priority rules for a scheduling problem.

  • The evolved priority rules outperform classic rules developed manually.

  • Dimensionally compliant rules are compared to general rules.

  • Evolving ensembles of rules is an interesting approach.

Abstract

On-line scheduling is often required in a number of real-life settings. This is the case of distributing charging times for a large fleet of electric vehicles arriving stochastically to a charging station working under power constraints. In this paper, we consider a scheduling problem derived from a situation of this type: one machine scheduling with variable capacity and tardiness minimization, denoted (1,Cap(t)||Ti). The goal is to develop new priority rules to improve the results from some classical ones as Earliest Due Date (EDD) or Apparent Tardiness Cost (ATC). To this end, we developed a Genetic Programming (GP) approach. The efficiency of this algorithm relies on some smart representation of the expression trees. Besides, we restrict the search space to that of dimensionally compliant expressions, which allows GP to reach single and clear solutions. We conducted an experimental study showing that GP is able to evolve new rules that outperform ATC and EDD using the same problem attributes and operations.

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 (1,Cap(t)Ti) 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 (1,Cap(t)Ti) 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 (1,Cap(t)Ti) 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 (1,Cap(t)Ti) 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 (1,Cap(t)Ti) 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 (1,Cap(t)Ti) problem. Section 4 introduces the solving method proposed for the (1,Cap(t)Ti) 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 (1,Cap(t)Ti) problem

As pointed out before, the problem of scheduling a set of jobs on a machine with variable capacity, denoted (1,Cap(t)Ti), 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 (1,Cap(t)Ti). We refer the interested reader to [3] for further details. For the purpose of this paper it suffices to say that the (1,Cap(t)Ti) 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 (1,Cap(t)Ti) 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 (1,Cap(t)Ti) 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 (1,Cap(t)Ti), 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)

  • JakobovićD. et al.

    Evolving priority scheduling heuristics with genetic programming

    Appl. Soft Comput.

    (2012)
  • BalasE. et al.

    Job shop scheduling with setup times, deadlines and precedence constraints

    J. Sched.

    (2008)
  • SedanoJ. et al.

    Intelligent system for electric vehicle charging: Design and operation

    DYNA

    (2013)
  • ArtiguesC. et al.

    Schedule generation schemes for the job shop problem with sequence-dependent setup times: Dominance properties and computational analysis

    Ann. Oper. Res.

    (2005)
  • Priority scheduling rules

  • Cited by (29)

    View all citing articles on Scopus
    View full text