  The design space of networked embedded systems is very large, posing
challenges to the optimisation of such platforms when it comes to support
applications with real-time guarantees. Recent research has shown that a number
of inter-related optimisation problems have a critical influence over the
schedulability of a system, i.e. whether all its application components can
execute and communicate by their respective deadlines. Examples of such
optimization problems include task allocation and scheduling, communication
routing and arbitration, memory allocation, and voltage and frequency scaling.
In this paper, we advocate the use of evolutionary approaches to address such
optimization problems, aiming to evolve individuals of increased fitness over
multiple generations of potential solutions. We refer to plentiful evidence
that existing real-time schedulability tests can be used effectively to guide
evolutionary optimisation, either by themselves or in combination with other
metrics such as energy dissipation or hardware overheads. We then push that
concept one step further and consider the possibility of using evolutionary
techniques to evolve the schedulability tests themselves, aiming to support the
verification and optimisation of systems which are too complex for
state-of-the-art (manual) derivation of schedulability tests.
