Skip to main content
Log in

Learning and backtracking in non-preemptive scheduling of tasks under timing constraints

Special issue on machine learning and cybernetics

  • Focus
  • Published:
Soft Computing Aims and scope Submit manuscript

Abstract

We propose two novel heuristic search techniques to address the problem of scheduling tasks under hard timing constraints on a single processor architecture. The underlying problem is NP-hard in the strong sense and it is a fundamental challenge in feedback-control theory and automated cybernetics. The proposed techniques are a learning-based approaches and they take much less memory space. A partial feasible schedule is maintained and extended over a repeated problem solving trials, previously assigned priorities are refined according to the gained information about the problem to lead the convergence to a complete feasible schedule if one exists. First, we present the learning in hard-real-time with single learning (LHRTS-SL) algorithm where a single learning function is utilized, then we discuss its drawback and we propose the LHRTS with double learning algorithm in which a second learning function is integrated to cope up with LHRTS-SL drawback. Experimental results show the efficiency of the proposed techniques in terms of success ratio when used to schedule randomly generated problem instances.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4

Similar content being viewed by others

Notes

  1. It is assumed that there is no data dependencies between invocations of different tasks.

  2. we mean by urgent tasks that should be selected earlier.

  3. We mean by sound an algorithm which is able to find an existing feasible schedule.

  4. Supposed that tie situations are broken non-randomly.

  5. In the remainder of the paper we use g max set to lcm.

  6. To avoid the exponential time needed to schedule all task sets in dset1 and dset2 using the exhaustive method DFS, we added a time out to this algorithm to carry out an unknown decision about the input task set after that time. Further details are presented in Appendix.

References

  • Abdelzaher TF, Shin KG (1999) Combined task and message scheduling in distributed real-time systems. IEEE Trans Parallel Distrib Syst 10:1179–1191. doi:10.1109/71.809575

    Article  Google Scholar 

  • Amirijoo M, Hansson J, Gunnarsson S, Son SH (2008) Quantifying and suppressing the measurement disturbance in feedback controlled real-time systems. Real Time Syst 40:44–76. doi:10.1007/s11241-008-9048-3

    Article  MATH  Google Scholar 

  • Ashby WR (1957) An introduction to cybernetics. Chapman & Hall, London

    Google Scholar 

  • Audsley NC (1991) Optimal priority assignment and feasibility of static priority tasks with arbitrary times. Technical report, Department of Computer Science York University, UK

  • Barreto R, Cavalcante S, Maciel P (2004) A time petri net approach for finding pre-runtime schedules in embedded hard real-time systems. In: 24th international conference on distributed computing systems workshops, vol 7, pp 846–851. doi:10.1109/ICDCSW.2004.1284131

  • Bulitko V, Lee G (2006) Learning in real-time search: a unifying framework. J Artif Intell Res 25:119–157

    MATH  Google Scholar 

  • Buttazzo G, Conticelli F, Lamastra G, Lipari G (1997) Robot control in hard real-time environment. In: Fourth international workshop on real-time computing systems and applications. doi:10.1109/RTCSA.1997.629195

  • Buttazzo GC (2005) Rate monotonic vs EDF: judgment day. Real Time Syst 29:5–26. doi:10.1023/B:TIME.0000048932.30002.d9

    Article  MATH  Google Scholar 

  • Cavalcante SV (1997) A hardware-software co-design system for embedded real-time applications. PhD thesis, University of Newcastle, Newcastle Upon Tyne

  • Chen Hua, Cheng Albert MK (2005) Applying ant colony optimization to the partitioned scheduling problem for heterogeneous multiprocessors. ACM SIGBED Rev 2:11–14. doi:10.1145/1121788.1121793

    Article  MATH  Google Scholar 

  • Cheng S-C, Shiau D-F, Huang Y-M, Lin Y-T (2009) Dynamic hard-real-time scheduling using genetic algorithm for multiprocessor task with resource and timing constraints. Exp Syst Appl 36:852–860. doi:10.1016/j.eswa.2007.10.037

    Article  Google Scholar 

  • Colorni A, Dorigo M, Maniezzo V, Trubian M (1994) Ant system for job shop scheduling. Belgian J Oper Res 34:39–53

    MATH  Google Scholar 

  • Dinatale M, Stankovic JA (1995) Applicability of simulated annealing methods to real-time scheduling and jitter control. In: Sixteenth IEEE real-time systems symposium, pp 190–199. doi:10.1109/REAL.1995.495209

  • Dorigo M, Gambardella LM (1997) Ant colony system: a cooperative learning approach to the TSP IEEE Trans Evol Comput 1:53–66. doi:10.1109/4235.585892

    Article  Google Scholar 

  • Ekelin C (2006) Clairvoyant non-preemptive EDF scheduling. In: Eighth Euromicro conference on real-time systems, pp 32–39. doi:10.1109/ECRTS.2006.7

  • Garey MR, Johnson DS (1979) Computers and intractability, a guide to the theory of NP-completeness. Freeman, New York

    MATH  Google Scholar 

  • Hipel KW, Jamshidi MM, Tien JM, White CC (2007) The future of systems, man, and cybernetics: application domains and research methods. IEEE Trans Syst Man Cybern 37:726–743. doi:10.1109/TSMCC.2007.900671

    Article  Google Scholar 

  • Jeffay K, Stanat DF, Martel CU (1991) On non-preemptive scheduling of periodic and sporadic tasks. In: Twelfth IEEE symposium on real-time systems, pp 129–139. doi:10.1109/REAL.1991.160366

  • Jeffay K (1993) The real-time producer/consumer paradigm: a paradigm for the construction of efficient, predictable real-time systems. In: ACM/SIGAPP symposium on applied computing: states of the art and practice, pp 1796–804. doi:10.1145/162754.168703

  • Korf R (1990) Real-time heuristic search. Artif Intell 42:189–211. doi:10.1016/0004-3702(90)90054-4

    Article  MATH  Google Scholar 

  • Leung Joseph YT (2004) Handbook of scheduling: algorithms, models, and performance analysis. CRC Press, Boca Raton

    MATH  Google Scholar 

  • Liu CL, Layland JW (1973) Scheduling algorithms for multiprogramming in a hard real-time environment. J ACM 20:64–61. doi:10.1145/321738.321743

    Article  MathSciNet  Google Scholar 

  • Lin B, Sundararaj AI, Dinda PA (2008) Time-sharing parallel applications through performance-targeted feedback-controlled real-time scheduling. Cluster Comput 11:273–285. doi:10.1007/s10586-008-0055-x

    Article  Google Scholar 

  • Lu C, Stankovic JA, Son SH, Tao G (2002) Feedback control real-time scheduling: framework, modeling, and algorithms. Real Time Syst 23:85–126. doi:10.1023/A:1015398403337

    Article  MATH  Google Scholar 

  • Navet N, Migge J (2003) Fine tuning the scheduling of tasks through a genetic algorithm: application to Posix1003.1b compliant systems. IEE Proc Softw 150:13–24. doi:10.1049/ip-sen:20030205

    Article  Google Scholar 

  • Roman N (1998) An evolutionary approach to multiprocessor scheduling of dependent tasks. Future Gener Comput Syst 14:383–392. doi:10.1016/S0167-739X(98)00041-7

    Article  Google Scholar 

  • Sabeghi M, Naghibzadeh M, Taghavi T (2007) Scheduling non-preemptive periodic tasks in soft real-time systems using fuzzy inference. In: Ninth IEEE international symposium on object and component-oriented real-time distributed computing. doi:10.1109/ISORC.2006.70

  • Simon HA (1983) Why should machines learn?. In: John Robert Anderson, Ryszard Stanislaw Michalski, Jaime Guillermo Carbonell, Tom Michael Mitchell (eds) Machine learning, an artificial intelligence approach. Morgan Kaufmann, Menlo Park

  • Shepard T, Gagne M (1991) A pre-run-time scheduling algorithm for hard real-time systems. IEEE Trans Softw Eng 17:669–677. doi:10.1109/32.83903

    Article  Google Scholar 

  • Tindell K, Burns A, Wellings AJ (1992) Allocating hard-real-time tasks (an NP-Hard problem made easy). Real Time Syst 4:145–165. doi:10.1007/BF00365407

    Article  Google Scholar 

  • Tsang E (1993) Foundations of constraints satisfaction. Academic Press, London

    Google Scholar 

  • Xu J, Parnas D (1990) Scheduling process with release times, deadlines, precedence and exclusion relations. IEEE Trans Softw Eng 16:360–369. doi:10.1109/32.48943

    Article  Google Scholar 

  • Xu J, Parnas D (1992) Pre-run-time scheduling of processes with exclusion relations on nested or overlapping critical sections. In: Phoenix conference on computers and communications, pp 774–782. doi:10.1109/PCCC.1992.200519

  • Xu J (1993) Multiprocessor scheduling of processes with release times, deadlines, precedence and exclusion relations. IEEE Trans Softw Eng 19:139–154. doi:10.1109/32.214831

    Article  Google Scholar 

  • Xu J, Parnas D (1993) On satisfying timing constraints in hard-real-time systems. IEEE Trans Softw Eng 19:70–84. doi:10.1109/32.210308

    Article  Google Scholar 

  • Xu J, Parnas D (2000) Priority scheduling versus pre-run-time scheduling. Real Time Syst 18:7–23. doi:10.1023/A:1008198310125

    Article  MATH  Google Scholar 

  • Yuan Peijiang, Moallem Mehrdad, Patel Rajnikant V (2009) A feedback scheduling framework for real-time robotic assembly systems. Robot Autom 24(1). doi:10.2316/Journal.206.2009.1.206-3040

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Yacine Laalaoui.

Appendix

Appendix

  • dsets1 is a set of 5,000 task sets taken from the workload interval [0.5,1]. This interval is divided into 10 sub-intervals where each sub-interval includes 500 task sets. The minimum and the maximum task set sizes after dealing with the system periodicity are 4 and 33 tasks, respectively. The number of used lcms are three where each lcm is a set of three to five periods. This small number of periods were used because this parameter is related to the nature of interaction between the physical process and the control unit where, in general, a relatively small number of sensors and actuators are used. Table 8 describes the used periods and lcms. The minimum and the maximum accepted lcms during the generation process are 250 and 750, respectively. To increase the probability of generating task sets that are not schedulable using EDF, the ratio between r i and P i for each task is generated using uniform distribution over [0,0.2]. Computation times are generated using uniform distribution over [0.01,0.34] to select U i and implicitly the computation time C i for a task T i . We used uniform distribution over [0.9,1] to select the ratio between D i and P i for each task.

    Table 8 The used periods and lcms in dset1
  • dset2 contains also 5,000 task sets generated using the same procedure as dset1 (Table 8). The minimum and the maximum task set sizes after dealing with the system periodicity are 4 and 23 tasks, respectively. The used periods and lcms are described in Table 9. The maximum and the minimum accepted lcms are 4,000 and 8,000, respectively.

    Table 9 The used periods and lcms in dset2
    Table 10 Number of task sets schedulable preemptively, non-preemptively and task sets with and unknown decisions

The DFS traversal is used as an exhaustive algorithm to compare our proposed approaches. The long time that DFS takes to schedule dset1 and dset2 motivate us to integrate a time out to this algorithm. The number of schedulable task sets in dset1 and dset2 together with the associated time out are presented in Table 10. This table shows also the number of schedulable task sets by the preemptive EDF where this heuristic is used to disregarded task sets non-schedulable preemptively and non-preemptively. The last column of the table shows the number of task sets with unknown decision about their schedulability within the specified time-out.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Laalaoui, Y., Drias, H. Learning and backtracking in non-preemptive scheduling of tasks under timing constraints. Soft Comput 15, 1071–1086 (2011). https://doi.org/10.1007/s00500-010-0582-2

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00500-010-0582-2

Keywords

Navigation