%0 Journal Article %T A Multi-Layered Control Approach for Self-Adaptation in Automotive Embedded Systems %A Marc Zeller %A Christian Prehofer %J Advances in Software Engineering %D 2012 %I Hindawi Publishing Corporation %R 10.1155/2012/971430 %X We present an approach for self-adaptation in automotive embedded systems using a hierarchical, multi-layered control approach. We model automotive systems as a set of constraints and define a hierarchy of control loops based on different criteria. Adaptations are performed at first locally on a lower layer of the architecture. If this fails due to the restricted scope of the control cycle, the next higher layer is in charge of finding a suitable adaptation. We compare different options regarding responsibility split in multi-layered control in a self-healing scenario with a setup adopted from automotive in-vehicle networks. We show that a multi-layer control approach has clear performance benefits over a central control, even though all layers work on the same set of constraints. Furthermore, we show that a responsibility split with respect to network topology is preferable over a functional split. 1. Introduction There has been considerable work on self-adaptive systems which can reconfigure their software configuration at runtime [1¨C3]. However, applying these techniques to networked, embedded systems poses several new problems due to limitations and reliability requirements of embedded systems [4]. In particular, we focus on automotive embedded systems, where the main constraints are (i) limited memory resources,(ii)heterogeneous hardware platforms,(iii)different subnetworks connected by a gateway, (iv)various requirements of different functionalities, and(v)high demand on safety and reliability. The focus of this paper is on self-adaptation in automotive embedded systems using a hierarchical, multi-layered control approach implemented by concrete instances of a control architecture. Today¡¯s automobiles consist of an increasing number of interconnected electronic devices¡ªso-called electronic control units (ECUs)¡ªwhich realize most functionalities of the car by software. This networked embedded system keeps the vehicle running by controlling the engine and the breaks, provides active safety features (e.g., antilock breaking system), makes driving more convenient, and entertains the passengers with a large number of information and comfort services (e.g., air conditioning, audio player). Especially modern driver assistance systems, which distribute their functionality over several components, increase the complexity of today¡¯s vehicular embedded systems enormously. Managing nowadays vehicle software systems means managing over 2,000 software components, running on up to 100 ECUs [5]. Enhancing automotive embedded systems with self-adaptation provides %U http://www.hindawi.com/journals/ase/2012/971430/