Optimal priority assignment for real-time systems: a coevolution-based approach

被引:2
作者
Lee, Jaekwon [1 ,2 ]
Shin, Seung Yeob [1 ]
Nejati, Shiva [1 ,3 ]
Briand, Lionel C. [1 ,4 ]
机构
[1] Univ Luxembourg, SnT, Kirchberg, Luxembourg
[2] Univ Ottawa, Ottawa, ON, Canada
[3] Univ Ottawa, Sch Elect Engn & Comp Sci, Ottawa, ON, Canada
[4] Univ Ottawa, Software Engn, Ottawa, ON, Canada
基金
欧洲研究理事会; 加拿大自然科学与工程研究理事会;
关键词
Priority assignment; Schedulability analysis; Real-time systems; Coevolutionary search; Search-based software engineering; MULTIOBJECTIVE TECHNIQUE; ALGORITHMS; OPTIMIZATION; TESTS;
D O I
10.1007/s10664-022-10170-1
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
In real-time systems, priorities assigned to real-time tasks determine the order of task executions, by relying on an underlying task scheduling policy. Assigning optimal priority values to tasks is critical to allow the tasks to complete their executions while maximizing safety margins from their specified deadlines. This enables real-time systems to tolerate unexpected overheads in task executions and still meet their deadlines. In practice, priority assignments result from an interactive process between the development and testing teams. In this article, we propose an automated method that aims to identify the best possible priority assignments in real-time systems, accounting for multiple objectives regarding safety margins and engineering constraints. Our approach is based on a multi-objective, competitive coevolutionary algorithm mimicking the interactive priority assignment process between the development and testing teams. We evaluate our approach by applying it to six industrial systems from different domains and several synthetic systems. The results indicate that our approach significantly outperforms both our baselines, i.e., random search and sequential search, and solutions defined by practitioners. Our approach scales to complex industrial systems as an offline analysis method that attempts to find near-optimal solutions within acceptable time, i.e., less than 16 hours.
引用
收藏
页数:49
相关论文
共 91 条
[1]  
Andrade SS, 2013, INT CONF SELF SELF, P61, DOI 10.1109/SASO.2013.42
[2]  
[Anonymous], 2012, Coevolutionary Principles
[3]  
[Anonymous], 2014, P 2014 INT S SOFTWAR
[4]  
[Anonymous], 2010, HDB METAHEURISTICS
[5]  
[Anonymous], 2013, ESSENTIALS METAHEURI
[6]  
[Anonymous], 2004, THESIS BRANDEIS U
[7]  
Anssi Saoussen, 2011, 2011 Proceedings of IEEE 14th International Symposium on Object/Component/Service-Oriented Real-Time Distributed Computing (ISORC 2011), P152, DOI 10.1109/ISORC.2011.28
[8]   A Hitchhiker's guide to statistical tests for assessing randomized algorithms in software engineering [J].
Arcuri, Andrea ;
Briand, Lionel .
SOFTWARE TESTING VERIFICATION & RELIABILITY, 2014, 24 (03) :219-250
[9]  
Arcuri A, 2011, LECT NOTES COMPUT SC, V6956, P33, DOI 10.1007/978-3-642-23716-4_6
[10]  
Arcuri A, 2010, LECT NOTES COMPUT SC, V6435, P95, DOI 10.1007/978-3-642-16573-3_8