Stressing Symbolic Scheduling Techniques within Aircraft Maintenance Optimization

Scheduling, or planning, is widely recognized as a very important step in several domains such as high level synthesis, real-time systems, and every-day applications. Given a problem described by a number of actions and their relationships, finding a schedule, or a plan, means to find a way to perform all the actions minimizing a specific cost function. The goal of this paper is to develop, analyze and compare different scheduling techniques on a new scheduling/planning problem. The new application domain is aircraft maintenance. It shares with previous ones the underlying problem definition, but it also unveils brand new challenging characteristics, and a different optimization target. We show how to model the problem in a suitable way, and how to solve it with different methodologies going from Satisfiability solvers and Binary Decision Diagrams, to Timed Automata and Coloured Petri Nets. New ideas are put forward in the different domains having efficiency and scalability as main targets. Experimental results stress the different techniques, showing their application range and limits, and defining advantages and disadvantages of the underlying models. Overall, general-purpose tools have been easily applied to our problem, but failed as far as efficiency was concerned. The satisfiability-based approach proved to be faster and more scalable, being able to solve instances 3 − 4 times larger. To sum up, our contributions range from modeling the aircraft maintenance problem as a scheduling instance, to coding this problem with home-made and general-purpose tools, to dovetailing exact and heuristic techniques, and comparing these techniques in terms of efficiency and scalability.

[1]  Pierre G. Paulin,et al.  Force-directed scheduling for the behavioral synthesis of ASICs , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[2]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[3]  Fabio Somenzi,et al.  CUDD: CU Decision Diagram Package Release 2.2.0 , 1998 .

[4]  Carlos Ansótegui,et al.  Mapping Problems with Finite-Domain Variables into Problems with Boolean Variables , 2004, SAT.

[5]  Andreas Speck Software Engineering (6) , 2006 .

[6]  Seda Ogrenci Memik,et al.  Accelerated SAT-based scheduling of control/data flow graphs , 2002, Proceedings. IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[7]  Krithi Ramamritham,et al.  Preemptive Scheduling Under Time and Resource Constraints , 1987, IEEE Transactions on Computers.

[8]  Kim G. Larsen,et al.  Optimal scheduling using priced timed automata , 2005, PERV.

[9]  Forrest Brewer,et al.  Automata-based symbolic scheduling , 2000 .

[10]  Toby Walsh,et al.  SAT v CSP , 2000, CP.

[11]  S. Haynal,et al.  Efficient encoding for exact symbolic automata-based scheduling , 1998, 1998 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (IEEE Cat. No.98CB36287).

[12]  Abha Moitra,et al.  Scheduling of Hard Real-Time Systems , 1986, FSTTCS.

[13]  Matthew L. Ginsberg,et al.  Stochastic Shipyard Simulation with Simyard , 2006, Proceedings of the 2006 Winter Simulation Conference.

[14]  A. Burns,et al.  Scheduling hard real-time systems: a review , 1991, Softw. Eng. J..

[15]  G. G. Stokes "J." , 1890, The New Yale Book of Quotations.

[16]  Oded Maler,et al.  Task graph scheduling using timed automata , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[17]  Kim G. Larsen,et al.  A Tutorial on Uppaal , 2004, SFM.

[18]  Yu-Chin Hsu,et al.  A formal approach to the scheduling problem in high level synthesis , 1991, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[19]  Kurt Jensen,et al.  Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use. Vol. 2, Analysis Methods , 1992 .

[20]  Kurt Jensen,et al.  Coloured Petri Nets: Basic Concepts, Analysis Methods and Practical Use. Vol. 1, Basic Concepts , 1992 .

[21]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..

[22]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[23]  Kurt Jensen Coloured Petri Nets , 1992, EATCS Monographs in Theoretical Computer Science.

[24]  Niklas Sörensson,et al.  Temporal induction by incremental SAT solving , 2003, BMC@CAV.

[25]  Luciano Lavagno,et al.  A BMC-based formulation for the scheduling problem of hardware systems , 2004, International Journal on Software Tools for Technology Transfer.

[26]  Krithi Ramamritham,et al.  Distributed Scheduling Using Bidding and Focused Addressing , 1985, RTSS.

[27]  Forrest Brewer,et al.  A new symbolic technique for control-dependent scheduling , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[28]  Alan Burns,et al.  The Notion of Priority in Real-Time Programming Languages , 1990, Comput. Lang..