Skip to main content
Log in

Multi-objective design exploration approach for Ravenscar real-time systems

Real-Time Systems Aims and scope Submit manuscript

Abstract

This article deals with the design exploration and verification of real-time critical systems. Assigning the functions to the tasks of the target real-time operating system is a part of the design process. Finding a suitable design involves many important design decisions that have a strong impact on the system quality criteria. However, with the increasing complexity and scale of today’s systems and the large number of possible design solutions, making design decisions while balancing conflicting quality criteria becomes error-prone and unmanageable for designers. We propose an automated method using a multi-objective evolutionary algorithm guided by an architectural clustering technique. This method allows designers to search the design space for schedulable solutions with respect to multiple competing performance criteria. To assess our method, several evaluations were performed. One of them shows that we were able to produce the exact optimal solution sets for \(55\%\) of the studied 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.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16

Notes

  1. AUTomotive Open System ARchitecture (AUTOSAR): an open standard for automotive software development. It provides a standard architecture, application interfaces and a methodology that are adopted by the automotive industry.

  2. A situation in which a task is blocked by a lower-priority task.

  3. A situation in which two or more tasks are waiting indefinitely for each other.

  4. The choice of the constant is arbitrary.

  5. All sources available at http://beru.univ-brest.fr/svn/CHEDDAR/trunk.

  6. A feasibility test is an analytical method which usually allows users to compute performance criteria in order to assess if task deadlines will be met.

  7. Due to the significant time required to solve a test instance, the number of test instances used in this experiment is limited to 100.

References

  • Audsley N, Burns A, Richardson M, Tindell K, Wellings AJ (1993) Applying new scheduling theory to static priority preemptive scheduling. Softw Eng J 8(5):284–292

    Article  Google Scholar 

  • Bandyopadhyay S, Saha S (2013) Some single- and multiobjective optimization techniques. Unsupervised classification. Springer, Berlin, pp 17–58

    Chapter  Google Scholar 

  • Bartolini C, Lipari G, Di Natale M (2005) From functional blocks to the synthesis of the architectural model in embedded real-time applications. In: Proceedings of the \(11^{th}\) IEEE real time and embedded technology and applications symposium, pp 458–467

  • Bertout A, Forget J, Olejnik R (2014) Minimizing a real-time task set through task clustering. In: Proceedings of the 22nd international conference on real-time networks and systems. ACM, pp 23–31

  • Bini E, Buttazzo GC (2005) Measuring the performance of schedulability tests. Real Time Syst 30(1–2):129–154. https://doi.org/10.1007/s11241-005-0507-9

    Article  MATH  Google Scholar 

  • Bouaziz R, Lemarchand L, Singhoff F, Zalila B, Jmaiel M (2015) Architecture exploration of real-time systems based on multi-objective optimization. In: Proceedings of the 20th international conference on engineering of complex computer systems, pp 1–10

  • Bouaziz R, Lemarchand L, Singhoff F, Zalila B, Jmaiel M (2016) Efficient parallel multi-objective optimization for real-time systems software design exploration. In: Proceedings of the 27th international symposium on rapid system prototyping: shortening the path from specification to prototype. ACM, New York, pp 58–64

  • Burns A (1999) The ravenscar profile. ACM SIGAda Ada Lett 19(4):49–52

    Article  Google Scholar 

  • Buttazzo G (2011) Hard real-time computing systems: predictable scheduling algorithms and applications, vol 24. Springer, Berlin

    MATH  Google Scholar 

  • Carlsson C, Fullér R (1995) Multiple criteria decision making: the case for interdependence. Comput. Oper. Res. 22(3):251–260

    Article  MATH  Google Scholar 

  • Coello Coello CA, Lamont GB, Veldhuizen DAV (2007) Evolutionary algorithms for solving multi-objective problems. Springer, Berlin

    MATH  Google Scholar 

  • Deb K (2001) Multi-objective optimization using evolutionary algorithms, vol 16. Wiley, New York

    MATH  Google Scholar 

  • Deb K, Saxena D (2006) Searching for pareto-optimal solutions through dimensionality reduction for certain large-dimensional multi-objective optimization problems. In: Proceedings of the world congress on computational intelligence, pp 3352–3360

  • Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elitist multiobjective genetic algorithm: Nsga-ii. IEEE Trans Evolut Comput 6(2):182–197

    Article  Google Scholar 

  • Feiler PH, Gluch DP (2012) Model-based engineering with AADL: an Introduction to the SAE architecture analysis & design language. Addison-Wesley, Upper Saddle River

    Google Scholar 

  • Fonseca CM, Knowles JD, Thiele L, Zitzler E (2005) A tutorial on the performance assessment of stochastic multiobjective optimizers. In: Proceedings of the 3rd international conference on evolutionary multi-criterion optimization, vol 216, p 240

  • Fonseca CM, Paquete L, López-Ibánez M (2006) An improved dimension-sweep algorithm for the hypervolume indicator. In: IEEE congress on evolutionary computation. IEEE, pp 1157–1163

  • Fürst S, Mössinger J, Bunzel S, Weber T, Kirschke-Biller F, Heitkämper P, Kinkelin G, Nishikawa K, Lange K (2009) Autosar—a worldwide standard is on the road. In: Proceedings of the 14th international VDI congress electronic systems for vehicles, Baden-Baden, vol 62

  • Gal T, Hanne T (1999) Consequences of dropping nonessential objectives for the application of mcdm methods. Eur J Oper Res 119(2):373–378

    Article  MATH  Google Scholar 

  • Goossens J, Macq C (2001) Limitation of the hyper-period in real-time periodic task set generation. In: Proceedings of the real-time embedded systems

  • Goossens J, Grolleau E, Cucu-Grosjean L (2016) Periodicity of real-time schedules for dependent periodic tasks on identical multiprocessor platforms. J Real Time Syst 52(6):808–832

    Article  MATH  Google Scholar 

  • Haubelt C, Gamenik J, Teich J (2005) Initial population construction for convergence improvement of moeas. In: Proceedings of the 3rd international conference on evolutionary multi-criterion optimization (EMO’05). Springer, Berlin, pp 191–205

  • Hruschka ER, Campello RJGB, Freitas AA, De Carvalho ACPLF (2009) A survey of evolutionary algorithms for clustering. Trans Syst Man Cybern Part C 39(2):133–155. https://doi.org/10.1109/TSMCC.2008.2007252

    Article  Google Scholar 

  • Klein MH, Ralya T, Pollak B, Obenza R, Harbour MG (1993) A practitioners handbook for real-time analysis: guide to rate monotonic analysis for real-time systems. Springer, New York

    Book  Google Scholar 

  • Knowles JD, Corne DW (2000) Approximating the nondominated front using the pareto archived evolution strategy. Evol Comput 8(2):149–172. https://doi.org/10.1162/106365600568167

    Article  Google Scholar 

  • Koziolek A, Koziolek H, Reussner R (2011) Peropteryx: automated application of tactics in multi-objective software architecture optimization. In: Proceedings of the joint ACM SIGSOFT conference—QoSA and ACM SIGSOFT symposium—ISARCS on Quality of software architectures—QoSA and architecting critical systems—ISARCS. ACM, pp 33–42

  • Leung JYT, Whitehead J (1982) On the complexity of fixed-priority scheduling of periodic, real-time tasks. Perform Eval 2(4):237–250

    Article  MathSciNet  MATH  Google Scholar 

  • Li R, Etemaadi R, Emmerich MT, Chaudron MR (2011) An evolutionary multiobjective optimization approach to component-based software architecture design. In: IEEE congress on evolutionary computation. IEEE, pp 432–439

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

    Article  MathSciNet  MATH  Google Scholar 

  • López Jaimes A, Coello Coello CA, Chakraborty D (2008) Objective reduction using a feature selection technique. In: Proceedings of the 10th annual conference on genetic and evolutionary computation. ACM, pp 673–680

  • López Jaimes A, Coello Coello CA, Urías Barrientos JE (2009) Online objective reduction to deal with many-objective problems. Springer, Berlin, pp 423–437

    Google Scholar 

  • López Jaimes A, Coello Coello CA, Aguirre H, Tanaka K (2014) Objective space partitioning using conflict information for solving many-objective problems. Inf Sci 268:305–327

    Article  MathSciNet  MATH  Google Scholar 

  • Maticu F, Pop P, Axbrink C, Islam M (2016) Automatic functionality assignment to AUTOSAR multicore distributed architectures. Society of Automotive Engineers, Incorporated. https://doi.org/10.4271/2016-01-0041

  • McCormick JW, Singhoff F, Hugues J (2011) Building parallel, embedded, and real-time applications with Ada, vol 1. Cambridge University Press, Cambridge

    Book  Google Scholar 

  • Mehiaoui A, Wozniak E, Tucci-Piergiovanni S, Mraidha C, Di Natale M, Zeng H, Babau JP, Lemarchand L, Gerard S (2013) A two-step optimization technique for functions placement, partitioning, and priority assignment in distributed systems. ACM SIGPLAN Not 48(5):121–132

    Article  Google Scholar 

  • Monot A, Navet N, Bavoux B, Simonot-Lion F (2012) Multisource software on multicore automotive ecuscombining runnable sequencing with task scheduling. IEEE Trans Ind Electron 59(10):3934–3942

    Article  Google Scholar 

  • Mraidha C, Tucci-Piergiovanni S, Gerard S (2011) Optimum: a marte-based methodology for schedulability analysis at early design stages. ACM SIGSOFT Softw Eng Notes 36(1):1–8

    Article  Google Scholar 

  • Mzid R, Mraidha C, Mehiaoui A, Tucci-Piergiovanni S, Babau JP, Abid M (2013) Dpmp: a software pattern for real-time tasks merge. In: European conference on modelling foundations and applications, vol 7949. Springer, Berlin, pp 101–117

  • Pagetti C, Forget J, Boniol F, Cordovilla M, Lesens D (2011) Multi-task implementation of multi-periodic synchronous programs. Discret Event Dyn Syst 21(3):307–338

    Article  MathSciNet  MATH  Google Scholar 

  • Purshouse RC, Fleming PJ (2007) On the evolutionary optimization of many conflicting objectives. IEEE Trans Evol Comput 11(6):770–784

    Article  Google Scholar 

  • Rahmoun S, Borde E, Pautet L (2015a) Automatic selection and composition of model transformations alternatives using evolutionary algorithms. In: Proceedings of the 9th European conference on software architecture workshops. ACM, p 25

  • Rahmoun S, Borde E, Pautet L (2015b) Multi-objectives refinement of AADL models for the synthesis embedded systems (mu-RAMSES). In: Proceedings of the 20th international conference on engineering of complex computer systems, pp 21–30

  • Rota GC (1964) The number of partitions of a set. Am Math Mon 71(5):498–504

    Article  MathSciNet  MATH  Google Scholar 

  • Saidi SE, Cotard S, Chaaban K, Marteil K (2015) An ILP approach for mapping AUTOSAR runnables on multi-core architectures. In: Proceedings of the 2015 workshop on rapid simulation and performance evaluation: methods and tools. ACM, p 6

  • Santinelli L, Puffitsch W, Dumerat A, Boniol F, Pagetti C, Victor J (2014) A grouping approach to task scheduling with functional and non-functional requirements. In: Proceedings of the 2nd embedded real-time software and systems

  • Saxena DK, Duro JA, Tiwari A, Deb K, Zhang Q (2013) Objective reduction in many-objective optimization: linear and nonlinear algorithms. IEEE Trans Evol Comput 17(1):77–99

    Article  Google Scholar 

  • Scheickl O, Rudorfer M (2008) Automotive real-time development using a timing-augmented AUTOSAR specification. In: Proceedings of the 4th international congress on embedded real-time systems

  • Sha L, Rajkumar R, Lehoczky JP (1990) Priority inheritance protocols: an approach to real-time synchronization. IEEE Trans Comput 39(9):1175–1185

    Article  MathSciNet  Google Scholar 

  • Singhoff F, Legrand J, Nana L, Marcé L (2004) Cheddar: a flexible real time scheduling framework. Ada Lett XXIV(4):1–8

    Article  Google Scholar 

  • Singhoff F, Plantec A, Rubini S, Tran H, Gaudel V, Boukhobza J, Lemarchand L, Li S, Borde E, Pautet L et al (2015) Teaching real-time scheduling analysis with cheddar. In: 9ème édition de l’Ecole d’Eté Temps Réel

  • Stankovic JA (1988) Misconceptions about real-time computing: a serious problem for next-generation systems. Computer 21(10):10–19

    Article  Google Scholar 

  • Taft ST, Duff RA, Brukardt RL, Ploedereder E, Leroy P, Schonberg E (2014) Ada 2012 reference manual. Language and standard libraries: international standard ISO/IEC 8652/2012 (E), vol 8339. Springer, Berlin

  • Van Veldhuizen DA, Lamont GB (1998) Multiobjective evolutionary algorithm research: a history and analysis. Technical Report TR-98-03, Department of Electrical and Computer Engineering, Air France Institute of Technology, Ohio

  • Wang H, Yao X (2016) Objective reduction based on nonlinear correlation information entropy. Soft Comput 20(6):2393–2407. https://doi.org/10.1007/s00500-015-1648-y

    Article  Google Scholar 

  • Westfall PH, Young SS (1993) Resampling-based multiple testing: examples and methods for p-value adjustment, vol 279. Wiley, New York

    MATH  Google Scholar 

  • Wozniak E, Mehiaoui A, Mraidha C, Tucci-Piergiovanni S, Gerard S (2013) An optimization approach for the synthesis of autosar architectures. In: Proceedings of the 18th IEEE conference on emerging technologies & factory automation. IEEE, pp 1–10

  • Zhang Q, Zhou A, Zhao S, Suganthan PN, Liu W, Tiwari S (2008) Multiobjective optimization test instances for the CEC 2009 special session and competition. University of Essex, Colchester, UK and Nanyang technological University, Singapore, special session on performance assessment of multi-objective optimization algorithms, technical report 264

  • Zitzler E, Thiele L (1998) Multiobjective optimization using evolutionary algorithms-a comparative case study. In: Proceedings of the international conference on parallel problem solving from nature. Springer, Berlin, pp 292–301

Download references

Acknowledgements

The authors sincerely thank the reviewers, whose remarks really helped to improve the article. The Cheddar scheduling framework is supported by Brest Métrople, Ellidiss Technologies, CR de Bretagne, CG du Finistère, and Campus France.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Rahma Bouaziz.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Bouaziz, R., Lemarchand, L., Singhoff, F. et al. Multi-objective design exploration approach for Ravenscar real-time systems. Real-Time Syst 54, 424–483 (2018). https://doi.org/10.1007/s11241-018-9299-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11241-018-9299-6

Keywords

Navigation