Efficient Prediction of Future Context for Proactive Smart Systems (Efficiënte voorspelling van toekomstige context voor proactieve intelligente systemen)
Efficient Prediction of Future Context for Proactive Smart Systems
Vanrompay, Yves; M9918506
Many current context-aware adaptive systems only react to the current situations and context changes as they occur. A major concern is that systems may respond too late. Sensing of and reasoning with context information takes time, leading to applications reacting on outdated context information. Therefore, in order to anticipate and adapt proactively and timely, these systems should be aware of the most likely future situations so that the context processing delay is mitigated. Since a prediction can be wrong and the cost of adapting based on a wrong prediction can be high in terms of wasted resources and user annoyance, quality metrics for predicted context information are needed. Being able to assess the quality of the predicted context is a key requirement for applications to effectively use future context.In this dissertation, an overall approach to context prediction is proposed which stresses the importance of incorporating domain knowledge to achieve efficient context prediction. We present context predictor components and prediction quality metrics to evaluate the probability of future situations. These components are integrated in a generic context middleware, providing a methodology, an interface and appropriate runtime mechanisms to support the developer in realizing anticipatory context-aware distributed applications. A selection mechanism inspired by context-aware service selection automatically decides which predictor in the network is the most suited according to application requirements and the quality attributes of the different context predictors. To further improve anticipatory behavior, a context-based grouping mechanism allows for efficiently distributing the context information among the subscribers. All together, this research presents a framework that addresses the needs of the developer aiming to build context-aware applications that realize proactive behavior with regard to past, present and future context.