News Details |

**
Teaching article
2023-02-08
**

**
**

**Context-aware Systems**

For more than 20 years, the concepts of context and context awareness have been studied in the fields of computer science, cognitive science, and artificial intelligence. In combination with other factors, they are expected to offer various directions and options that will change the economy and the role of IT in the coming decade.

Various researchers have presented their different understandings of the term ‘Context’; some highlight aspects such as user location, identity, environment, and time frame, whereas others focus on location, time of day, temperature, season, user identity, etc. In other cases, researchers might prefer to rely on the terms ‘situation’ or ‘environment’ as synonyms for context.

Abowd et al. stated that the most important types of context are identity, activity, location, and time. They discussed the definitions presented to explain context as used by several researchers; they observed that some refer to context as continuous changes in the environment that affect its various aspects such as computing, user, and the physical environment. Alternatively, other researchers have defined context as:

“Context is any information that can be used to characterize the situation of an entity; an entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and applications themselves”.

To understand the principal ideas underlying the term ‘Context’, we must consider the richness of human language and the diverse understanding of everyday situations which affects how people successfully convey ideas to one another. Consequently, computers cannot take complete advantage of the human-computer dialogue context. The understanding of context and how it can be used to help application designers to decide the type of context to include in their applications, and what context-aware behaviors should support are of particular importance.

**Context Modelling and Reasoning**

Context modeling is an important tool that can be used to collect, arrange, and store contextual data (information). According to Strang and Linnhoff-Popien, and Al-Sultan, several approaches to context modeling can be applied depending on the methods used for the associated data structures, including:

• Key-Value models: Using pairs of key-value data structures to model context information is one of the simplest methods; this method is frequently used and easy to manage as it helps to define the attribute and its value, such as name - Tom, time - 10 p.m., location - in room 15. There is a certain difficulty associated with developing advanced context retrieval algorithms, namely the inability to implement complex structures using this method.

• Markup scheme models: This modeling approach is a markup scheme that is used as a hierarchical data structure consisting of markup tags with attributes and content. The recursive content of markup tags is usually defined by other markup tags.

• Object-oriented models: Context modeling using the object-oriented approach aims to address any problems that take place, affecting the dynamism of the context by employing encapsulation and reusability, which represent the main advantages of the object-oriented approach. Context processing is encapsulated and hidden; thus, contextual information is accessed via a particular interface.

• Graphical Models: This modeling instrument is a general-purpose tool known as Unified Modelling Language (UML). It has a graphical component (UML diagrams). Graphical models are suitable for modeling context due to their generic structure. Deriving the structuring instrument (ER model) for a relational database from this kind of model applies to system-based context management architecture.

• Logical-based models: A logic that derives expressions or facts from other data sets based on predefined conditions (inferring or reasoning). In a logic-based context model, the context is defined in terms of rules, facts, or expressions; therefore, the contextual information is applied in terms of facts in a logical system.

• Ontology-based model: Ontologies are an effective tool used to describe concepts and their interrelations. The ontology-based model of context information is a powerful method due to the high expressiveness of the language; it provides semantic data and supports reasoning tasks, deriving new contextual information and supporting consistency checking.

**Reasoning on Uncertainty**

Breitti et al., stated that there is a degree of uncertainty in the contexts sensed; in a practical sense, this means making direct inferences from high-level contexts is difficult because they depend on the accuracy of the reasoning system and the precision of the sensed information.

There are two essential reasons for reasoning about uncertainty; on the one hand, to deduce high-level contexts from low-level contexts or situations, such as when inferring new context-based information or when inferring user activity from an instant messaging location. On the other hand, applying a multi-sensor fusion to data acquired from different sensors can improve resolution and confidence, and enhance available contextual information. In the literature, there have been different mechanisms proposed for reasoning uncertainty.

• Fuzzy Logic: In practical terms, fuzzy logic is an endeavor intended to mechanize two human abilities: firstly, the ability to converse and make a rational decision in an environment of uncertainty, incomplete knowledge, and imprecise information; secondly, the ability to perform a wide range of mental and physical tasks without any computations or measurement. Fuzzy logic represents reasoning about imprecise concepts, such as "short," "trust," and "trustworthy". It is possible to combine (fuse) two or more fuzzy sets to create a new fuzzy set with new membership functions; in addition, it is possible to perform a multi-sensor fusion of the subjective contexts described and solve the inconsistencies that may arise between various types of contexts.

• Probabilistic Logic: Statements in this logic can be formed thus: “the probability of A is more than 2/3”, and “the probability of C is at least triple the probability of D”, where C and D are random events. Probabilistic logic enables the formulation of rules that rely on the probabilities of other, related events to reason about the probabilities of current events; furthermore, the contrast between contextual information acquired from various sources can be solved using these rules. A notable weakness associated with this tool is that it does not offer sufficient expressive rules to model the temporal aspects of a domain, or to represent the uncertainties and dependencies between variables.

• Bayesian Networks: A Bayesian network represents joint probability models for a set of variables. Each node in a graph represents a variable, and a directed edge between related nodes details direct dependencies or causal relationships between variables; the attached table represents the conditional probabilities for each variable. BNs, known as Directed Acyclic Graphs (DAGs), represent knowledge about an uncertain domain. Computational and statistical methods are used to assess conditional dependencies in the graph. Thus, BNs combine the different principles of probability theory, computer science, graph theory, and statistic.

• Hidden Markov Model: The Hidden Markov Model (HMM) is considered to be of particular utility for modeling time series data. It is used for determining the probability distribution of sequences of observations. The model provides a starting point when designing dynamic Bayesian networks; there are some limitations when modeling real-time series, however. HMM belong to a subclass of Bayesian networks known as dynamic Bayesian networks. This model is used in various areas including pattern recognition, artificial intelligence, and computer vision application.

• Dynamic Bayesian Network: Typically, a Dynamic Bayesian Network (DBN) is a time series model of a Bayesian network. The variables in DBN include a temporal dimension, and can be denoted as ‘states’; in addition, all the nodes, edges, and probabilities in static Bayesian networks are identical to those in DBNs.

**References**

ABOWD, G.D. et al. (1999) Towards a better understanding of context and context-awareness. In: Handheld and ubiquitous computing: Springer, pp. 304-307.

AL-SULTAN, S.J. (2013). Context-Aware Drivers' Behaviour Detection System for VANET,..

BEN-GAL, I. et al. (2007) Bayesian Networks, Encyclopedia of Statistics in Quality and Reliability.

BETTINI, C. et al. (2010) A survey of context modeling and reasoning techniques. Pervasive and Mobile Computing, 6 (2), pp. 161-180.

GHAHRAMANI, Z. (2001) An introduction to hidden Markov models and Bayesian networks. International Journal of Pattern Recognition and Artificial Intelligence, 15 (01), pp. 9-42.

HULST, J. (2006) Modeling physiological processes with dynamic Bayesian networks. Faculty of Electrical Engineering, Mathematics, and Computer Science, University of Pittsburgh,.

KOSKI, T. and NOBLE, J. (2011) Bayesian networks: an introduction: John Wiley & Sons.

RANGANATHAN, A., AL-MUHTADI, J. and CAMPBELL, R.H. (2004) Reasoning about uncertain contexts in pervasive computing environments. IEEE Pervasive Computing, 3 (2), pp. 62-70.

STRANG, T. and LINNHOFF-POPIEN, C. (2004) A context modeling survey. In: Workshop Proceedings.

TOPCU, F. (2011) Context Modeling, and Reasoning Techniques. In: SNET Seminar in the ST.

WANG, X.H. et al. (2004) Ontology-based context modeling and reasoning using OWL. In: Pervasive Computing and Communications Workshops, 2004. Proceedings of the Second IEEE Annual Conference on Ieee, pp. 18-22.

ZADEH, L.A. (2001) A new direction in AI: Toward a computational theory of perceptions. AI Magazine, 22 (1), pp. 73.