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.
Similar content being viewed by others
Notes
It is assumed that there is no data dependencies between invocations of different tasks.
we mean by urgent tasks that should be selected earlier.
We mean by sound an algorithm which is able to find an existing feasible schedule.
Supposed that tie situations are broken non-randomly.
In the remainder of the paper we use g max set to lcm.
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
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
Ashby WR (1957) An introduction to cybernetics. Chapman & Hall, London
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
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
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
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
Colorni A, Dorigo M, Maniezzo V, Trubian M (1994) Ant system for job shop scheduling. Belgian J Oper Res 34:39–53
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
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
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
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
Leung Joseph YT (2004) Handbook of scheduling: algorithms, models, and performance analysis. CRC Press, Boca Raton
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
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
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
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
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
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
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
Tsang E (1993) Foundations of constraints satisfaction. Academic Press, London
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
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
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
Xu J, Parnas D (2000) Priority scheduling versus pre-run-time scheduling. Real Time Syst 18:7–23. doi:10.1023/A:1008198310125
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
Author information
Authors and Affiliations
Corresponding author
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.
-
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.
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
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
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-010-0582-2