A Survey of Self-Awareness and Its Application in Computing Systems <s> C. Self-Awareness in Pervasive Computing <s> Pervasive systems must offer an open, extensible, and evolving portfolio of services which integrate sensor data from a diverse range of sources. The core challenge is to provide appropriate and consistent adaptive behaviours for these services in the face of huge volumes of sensor data exhibiting varying degrees of precision, accuracy and dynamism. Situation identification is an enabling technology that resolves noisy sensor data and abstracts it into higher-level concepts that are interesting to applications. We provide a comprehensive analysis of the nature and characteristics of situations, discuss the complexities of situation identification, and review the techniques that are most popularly used in modelling and inferring situations from sensor data. We compare and contrast these techniques, and conclude by identifying some of the open research opportunities in the area. <s> BIB001 </s> A Survey of Self-Awareness and Its Application in Computing Systems <s> C. Self-Awareness in Pervasive Computing <s> The ability to determine what day-to-day activity (such as cooking pasta, taking a pill, or watching a video) a person is performing is of interest in many application domains. A system that can do this requires models of the activities of interest, but model construction does not scale well: humans must specify low-level details, such as segmentation and feature selection of sensor data, and high-level structure, such as spatio-temporal relations between states of the model, for each and every activity. As a result, previous practical activity recognition systems have been content to model a tiny fraction of the thousands of human activities that are potentially useful to detect. In this paper, we present an approach to sensing and modeling activities that scales to a much larger class of activities than before. We show how a new class of sensors, based on Radio Frequency Identification (RFID) tags, can directly yield semantic terms that describe the state of the physical world. These sensors allow us to formulate activity models by translating labeled activities, such as 'cooking pasta', into probabilistic collections of object terms, such as 'pot'. Given this view of activity models as text translations, we show how to mine definitions of activities in an unsupervised manner from the web. We have used our technique to mine definitions for over 20,000 activities. We experimentally validate our approach using data gathered from actual human activity as well as simulated data. <s> BIB002 </s> A Survey of Self-Awareness and Its Application in Computing Systems <s> C. Self-Awareness in Pervasive Computing <s> In autonomic computing, an application needs to be aware of its environment. While the term "environment" is not normally understood as being a physical environment, in pervasive computing many applications do actually need to monitor the physical environment in which they are deployed. Monitoring the environment often includes gathering information about the people working or living in this environment. Applications that self-adapt to changes in the monitored environment are known as context-aware. The environment is monitored using sensors, such as temperature, humidity, location sensors, etc., and use some form of logic to abduce a context. As the input of this context logic is environment sensor data, testing these applications usually requires deployment at a physical test location, often in a research laboratory. Our project aims to design a simulation model of contexts as a means to test the context logic of a context-aware application, by allowing sensor data to be produced from a description of contexts, i.e. the location and activities of people in this location, thereby allowing initial testing of a context-aware application without requiring physical deployment. <s> BIB003 </s> A Survey of Self-Awareness and Its Application in Computing Systems <s> C. Self-Awareness in Pervasive Computing <s> This paper addresses the problem of learning situation models for providing context-aware services. Context for modeling human behavior in a smart environment is represented by a situation model describing environment, users, and their activities. A framework for acquiring and evolving different layers of a situation model in a smart environment is proposed. Different learning methods are presented as part of this framework: role detection per entity, unsupervised extraction of situations from multimodal data, supervised learning of situation representations, and evolution of a predefined situation model with feedback. The situation model serves as frame and support for the different methods, permitting to stay in an intuitive declarative framework. The proposed methods have been integrated into a whole system for smart home environment. The implementation is detailed, and two evaluations are conducted in the smart home environment. The obtained results validate the proposed approach. <s> BIB004
This work is primarily concerned with systems that are mobile and hence their context changes. As such, they need to monitor their own state and the external environment they are in, in order to adapt to changes in the environment in a context specific way. Often monitoring and adaptation are studied in the context of human-computer interaction, since the interest is on how such systems self-adapt in order to be useful to humans in different situations (e.g., "going for a run"). A recent survey BIB001 covers issues and challenges involved in assimilating sensor data from a myriad of sources in order for pervasive computing systems to identify situations which human users may be in. Ye et al. show a shift in techniques over time from logic based ones towards those that are learning based, as the sensor data has become more complex, erroneous and uncertain, with sensors becoming ever more pervasive. The learning of mappings between sensor data and the situation, given current model building techniques, poses challenges such as the lack of training data, which can lead to low performing models. This has been tackled by considering unsupervised learning  , BIB004 and web mining BIB002 , allowing for extracting common sense knowledge. Another line of research within pervasive computing concerns constructing simulation models of contexts, for context-aware applications to be tested in BIB003 .