MOO: An architectural framework for runtime optimization of multiple system objectives in embedded control software

Arjan de Roo, Hasan Sözer, Lodewijk Bergmans, Mehmet Aksit

    Research output: Contribution to journalArticleAcademicpeer-review

    6 Citations (Scopus)
    84 Downloads (Pure)


    Today's complex embedded systems function in varying operational conditions. The control software adapts several control variables to keep the operational state optimal with respect to multiple objectives. There exist well-known techniques for solving such optimization problems. However, current practice shows that the applied techniques, control variables, constraints and related design decisions are not documented as a part of the architecture description. Their implementation is implicit, tailored for specific characteristics of the embedded system, tightly integrated into and coupled with the control software, which hinders its reusability, analyzability and maintainability. This paper presents an architectural framework to design, document and realize multi-objective optimization in embedded control software. The framework comprises an architectural style together with its visual editor and domain-specific analysis tools, and a code generator. The code generator generates an optimizer module specific for the given architecture and it employs aspect-oriented software development techniques to seamlessly integrate this module into the control software. The effectiveness of the framework is validated in the context of an industrial case study from the printing systems domain.
    Original languageEnglish
    Pages (from-to)2502-2519
    Number of pages18
    JournalThe Journal of systems and software
    Issue number10
    Publication statusPublished - Oct 2013


    • Runtime adaptation
    • Embedded Systems
    • Control software
    • Multi-objective optimization
    • Architectural framework


    Dive into the research topics of 'MOO: An architectural framework for runtime optimization of multiple system objectives in embedded control software'. Together they form a unique fingerprint.

    Cite this