This project develops innovative energy-aware resource management algorithms for networked real-time systems, that seek to optimize system-level energy consumption, including both computation and communication. Central to this research is the systematic exploitation of network coding, both at the physical and network layers, to reduce the number of message transmissions and hence reduce the overall energy consumption. Research tasks include: (i) design of energy-aware scheduling algorithms for static and dynamic workloads; (ii) design of energy-aware run-time adaptation algorithms accounting for both workload and channel variations; (iii) performance evaluation of the algorithms through a combination of simulation- and testbed-based experiments under a variety of realistic workloads accounting for various system overheads including those that are due to network coding.
Real-time embedded systems combining sensing, computation, and communication play a prominent role in a variety of current and emerging safety- and mission-critical applications. Such systems typically rely on batteries or other limited energy sources. It is a continuing challenge to satisfy timeliness and reliability constraints in such energy-limited environments. This project investigates the application of incorporating "network coding" -- a technique for combining multiple packets of information into a single message -- as a means of reducing energy consumed for wireless communication, as part of a broader strategy for energy conservation. Besides contributing to technology that will enable functionally richer and long-lived real-time applications, this project develops novel curriculum modules, mentors undergraduate students including under-represented minorities through capstone design projects, and exposes high school students to energy management concepts in real-time applications via testbed demonstrations.