Abstract
Ubiquitous (or Pervasive) Computing is a new domain in Computer Science resulting from the emergence and evolution of both distributed systems and mobile computing. Technology is moving beyond the personal computer towards a growing trend of embedded microprocessors in everyday objects and is demanding an unobtrusive connectivity between them in order to serve users at anytime and anywhere. The main objective of a ubiquitous computing system is to provide adaptive services proactively, without explicit user intervention and according to the user's current context. Despite interesting previous research works, there is still a lack of software tools and related research in terms of comprehensive context modeling, architecture of context-aware ubiquitous systems, and dynamic adaptation approaches in ubiquitous service computing environments. This chapter proposes a conceptual architecture to provide dynamic adaptability in ubiquitous services based on context-awareness and user preferences. As part of this proposal, the authors detail an ontology-based context modeling approach, a multi-agent architecture to support the development of ubiquitous computing applications, and a case-based reasoning method for service adaptation.
TopBackground
This section presents an overview of research works on context definition and modeling, software architecture of context-aware systems, and dynamic service adaptation.
Key Terms in this Chapter
Multi-Agent System: A set of communicating and collaborating agents where each agent senses its environment changes and reacts accordingly.
Ontology: A description of a concept with a common understanding in a particular domain.
Resource: A logical or physical entity required for the running of a service.
Ubiquitous Computing: A new domain of computing where the user is surrounded by several networked devices that provide services continuously.
Service Adaptation: A behavioral change of a service in order to become better suited to the user.
Case-Based Reasoning: A machine learning method consisting of solving a new problem according to previously solved similar problems.
Context-Aware System: A system reacting according to the current context of users and devices.