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

被引:0
作者
Jaekwon Lee
Seung Yeob Shin
Shiva Nejati
Lionel C. Briand
机构
[1] University of Luxembourg,SnT
[2] University of Ottawa,undefined
来源
Empirical Software Engineering | 2022年 / 27卷
关键词
Priority assignment; Schedulability analysis; Real-time systems; Coevolutionary search; Search-based software engineering;
D O I
暂无
中图分类号
学科分类号
摘要
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.
引用
收藏
相关论文
共 105 条
[1]  
Arcuri A(2014)A hitchhiker’s guide to statistical tests for assessing randomized algorithms in software engineering Software Testing, Verification and Reliability 24 219-250
[2]  
Briand LC(2001)On priority assignment in fixed priority scheduling Inform Process Lett 79 39-44
[3]  
Audsley NC(2001)Weakly hard real-time systems IEEE Trans Comput 50 308-321
[4]  
Bernat G(2018)FEMOSAA: Feature-guided and knee-driven multi-objective optimization for self-adaptive software ACM Transactions on Software Engineering and Methodology 27 1-50
[5]  
Burns A(2010)Adaptive Random Testing: The ART of test case diversity Journal of Systems and Software 83 60-66
[6]  
Chen T(2008)Flexible hard real-time scheduling for deliberative AI systems Real-Time Systems 40 241-263
[7]  
Li K(2009)Robust priority assignment for messages on Controller Area Network (CAN) Real-Time Systems 41 152-180
[8]  
Bahsoon R(2011)Improved priority assignment for global fixed priority pre-emptive scheduling in multiprocessor real-time systems Real-Time Systems 47 1-40
[9]  
Yao X(2008)Efficient exact schedulability tests for fixed priority real-time systems IEEE Trans Comput 57 1261-1276
[10]  
Chen TY(2016)A review of priority assignment in real-time systems Journal of Systems Architecture 65 64-82