Coordinated adaptation for adaptive context-aware applications

The ability to adapt to change is critical to both mobile and context-aware applications. This thesis argues that providing sufficient support for adaptive context-aware applications requires support for coordinated adaptation. Specifically, the main argument of this thesis is that coordinated adaptation requires applications to delegate adaptation control to an entity that can receive state information from multiple applications and trigger adaptation in multiple applications. Furthermore, coordination requires support for reconfiguration of the adaptive behaviour and user involvement. Failure to support coordinated adaptation is shown to lead to poor system and application performance and insufficient support for user requirements. An investigation of the existing state-of-the-art in the areas of adaptive and context- aware systems and an analysis of the limitations of existing systems leads to the establishment of a set of design requirements for the support of coordinated adaptation. Specifically, adaptation control should be decoupled from the mechanisms implementing the adaptive behaviour of the applications, applications should externalise both state information and the adaptive mechanisms they support and the adaptation control mechanism should allow modifications without the need for re-implementation of either the application or the support platform. This thesis presents the design of a platform derived from the aforementioned re- quirements. This platform utilises a policy based mechanism for controlling adaptation. Based on the particular requirements of adaptive context-aware applications a new pol- icy language is defined derived from Kowalsky’s Event Calculus logic programming formalism. This policy language allows the specification of policy rules where condi- tions are defined through the expression of temporal relationships between events and entities that represent duration (i.e. fluents). A prototype implementation of this design allowed the evaluation of the features offered by this platform. This evaluation reveals that the platform can support coordinated adaptation with acceptable performance cost.

[1]  Seng Wai Loke Modelling Service-Providing Location-Based E-communities and the Impact of User Mobility , 2002, DCW.

[2]  B. R. Badrinath,et al.  I-TCP: indirect TCP for mobile hosts , 1995, Proceedings of 15th International Conference on Distributed Computing Systems.

[3]  Liviu Iftode,et al.  The effects of mobility on reliable transport protocols , 1994, 14th International Conference on Distributed Computing Systems.

[4]  Mahadev Satyanarayanan,et al.  Coda: A Highly Available File System for a Distributed Workstation Environment , 1990, IEEE Trans. Computers.

[5]  M. Frans Kaashoek,et al.  Mobile Computing with the Rover Toolkit , 1997, IEEE Trans. Computers.

[6]  Nicholas Carriero,et al.  Linda and Friends , 1986, Computer.

[7]  Robert A. Kowalski,et al.  Database Updates in the Event Calculus , 1992, J. Log. Program..

[8]  Gordon S. Blair,et al.  Developing Adaptive Applications: The MOST Experience , 1999, Integr. Comput. Aided Eng..

[9]  Thomas Ledoux,et al.  OpenCorba: A Reflektive Open Broker , 1999, Reflection.

[10]  Stephan Reiff-Marganiec,et al.  Feature interaction in policies , 2004, Comput. Networks.

[11]  Alessandra Russo,et al.  Using event calculus to formalise policy specification and analysis , 2003, Proceedings POLICY 2003. IEEE 4th International Workshop on Policies for Distributed Systems and Networks.

[12]  M. J. van Sinderen,et al.  Architectural Requirements for Building Context-Aware Services Platforms , 2003 .

[13]  Kenneth P. Birman,et al.  Tools for distributed application management , 1991, Computer.

[14]  Bill N. Schilit,et al.  Context-aware computing applications , 1994, Workshop on Mobile Computing Systems and Applications.

[15]  Holger Peine,et al.  The Architecture of the Ara Platform for Mobile Agents , 1999, Mobile Agents.

[16]  Jon Postel,et al.  Simple Mail Transfer Protocol , 1981, RFC.

[17]  Bill N. Schilit,et al.  Disseminating active map information to mobile hosts , 1994, IEEE Network.

[18]  Jadwiga Indulska,et al.  Experiences in Using CC/PP in Context-Aware Systems , 2003, Mobile Data Management.

[19]  Gordon S. Blair,et al.  Feature Interactions Outside a Telecom Domain , 2001, FICS.

[20]  Randy H. Katz,et al.  Adaptation and mobility in wireless information systems , 2002, IEEE Communications Magazine.

[21]  Van Jacobson,et al.  Congestion avoidance and control , 1988, SIGCOMM '88.

[22]  Kazuya Kosaka,et al.  The Aglets project , 1999, CACM.

[23]  Michael C. Mozer,et al.  The Neural Network House: An Environment that Adapts to its Inhabitants , 1998 .

[24]  Maria Ebling,et al.  Exploiting weak connectivity for mobile file access , 1995, SOSP.

[25]  Mahadev Satyanarayanan,et al.  A Programming Interface for Application-Aware Adaptation in Mobile Computing , 1995, Comput. Syst..

[26]  Gregory D. Abowd,et al.  The context toolkit: aiding the development of context-enabled applications , 1999, CHI '99.

[27]  Eyal de Lara,et al.  Puppeteer: component-based adaptation for mobile computing , 2000, OPSR.

[28]  Andrew T. Campbell,et al.  A quality of service architecture , 1994, CCRV.

[29]  Peter J. Brown,et al.  The Stick-e Document: a Framework for Creating Context-aware Applications , 1996 .

[30]  Barry Brumitt,et al.  EasyLiving: Technologies for Intelligent Environments , 2000, HUC.

[31]  Tobin J. Lehman,et al.  T Spaces , 1998, IBM Syst. J..

[32]  Mark Weiser,et al.  Some computer science issues in ubiquitous computing , 1993, CACM.

[33]  Shanwei Cen,et al.  A software feedback toolkit and its application in adaptive multimedia systems , 1998 .

[34]  Roy H. Campbell,et al.  A Middleware-Based Application Framework for Active Space Applications , 2003, Middleware.

[35]  Marvin Theimer,et al.  The Bayou Architecture: Support for Data Sharing Among Mobile Users , 1994, 1994 First Workshop on Mobile Computing Systems and Applications.

[36]  Tim Kindberg,et al.  A Web-based nomadic computing system , 2001, Comput. Networks.

[37]  Thomas Haug,et al.  The GSM System for Mobile Communications , 1992 .

[38]  Anind K. Dey,et al.  Understanding and Using Context , 2001, Personal and Ubiquitous Computing.

[39]  Keith Cheverst,et al.  Utilising the event calculus for policy driven adaptation on mobile systems , 2002, Proceedings Third International Workshop on Policies for Distributed Systems and Networks.

[40]  Robbert van Renesse,et al.  Performance Issues in TACOMA , 2001 .

[41]  Christian Huitema,et al.  Multimedia Applications Should Be Adaptive , 1995, Third IEEE Workshop on the Architecture and Implementation of High Performance Communication Subsystems.

[42]  Gordon S. Blair,et al.  L2imbo: A distributed systems platform for mobile computing , 1998, Mob. Networks Appl..

[43]  Emil C. Lupu,et al.  The Ponder Policy Specification Language , 2001, POLICY.

[44]  Jim Waldo,et al.  The Jini architecture for network-centric computing , 1999, CACM.

[45]  Jorge Lobo,et al.  A Logic Programming Approach to Conflict Resolution in Policy Management , 2000, KR.

[46]  Mieczyslaw M. Kokar,et al.  Control theory-based foundations of self-controlling software , 1999, IEEE Intell. Syst..

[47]  Armando Fox,et al.  The Event Heap: a coordination infrastructure for interactive workspaces , 2002, Proceedings Fourth IEEE Workshop on Mobile Computing Systems and Applications.

[48]  Douglas C. Schmidt,et al.  The design of the TAO real-time object request broker , 1998, Comput. Commun..

[49]  G.J. Minden,et al.  A survey of active network research , 1997, IEEE Communications Magazine.

[50]  Andrew T. Campbell,et al.  Design, Implementation and Evaluation of Programmable Handoff in Mobile Networks , 2001, Mob. Networks Appl..

[51]  Srinivasan Seshan,et al.  Efficient TCP over networks with wireless links , 1995, Proceedings 5th Workshop on Hot Topics in Operating Systems (HotOS-V).

[52]  Calton Pu,et al.  Player for adaptive MPEG video streaming over the Internet , 1998, Other Conferences.

[53]  Emil C. Lupu,et al.  Conflicts in Policy-Based Distributed Systems Management , 1999, IEEE Trans. Software Eng..

[54]  Paul J. M. Havinga,et al.  Octopus: embracing the energy efficiency of handheld multimedia computers , 1999, MobiCom.

[55]  Keith Cheverst,et al.  Caches in the Air: Disseminating Information in the Guide System , 1999 .

[56]  Jadwiga Indulska,et al.  Middleware for Reactive Components: An Integrated Use of Context, Roles, and Event Based Coordination , 2001, Middleware.

[57]  Keith Cheverst,et al.  An Architecture for the Effective Support of Adaptive Context-Aware Applications , 2001, Mobile Data Management.

[58]  Mahadev Satyanarayanan,et al.  PowerScope: a tool for profiling the energy usage of mobile applications , 1999, Proceedings WMCSA'99. Second IEEE Workshop on Mobile Computing Systems and Applications.

[59]  Peter R. Pietzuch,et al.  A Framework for Event Composition in Distributed Systems , 2003, Middleware.

[60]  Robert S. Gray,et al.  Agent Tcl: a Exible and Secure Mobile-agent System , 1996 .

[61]  Gordon S. Blair,et al.  Services to support distributed applications in a mobile environment , 1994, Proceedings of IEEE Workshop on Services for Distributed and Networked Environments.

[62]  李幼升,et al.  Ph , 1989 .

[63]  Mahadev Satyanarayanan,et al.  A conceptual framework for network and client adaptation , 2000, Mob. Networks Appl..

[64]  Keith Cheverst,et al.  Experiences of developing and deploying a context-aware tourist guide: the GUIDE project , 2000, MobiCom '00.

[65]  Hong Va Leong,et al.  Mobile Data Access , 2001, Lecture Notes in Computer Science.

[66]  Gustavo Alonso,et al.  Ad-Hoc Transactions for Mobile Services , 2002, TES.

[67]  Mahadev Satyanarayanan,et al.  Agile application-aware adaptation for mobility , 1997, SOSP.

[68]  Gordon S. Blair,et al.  A principled approach to supporting adaptation in distributed mobile environments , 2000, 2000 Proceedings International Symposium on Software Engineering for Parallel and Distributed Systems.

[69]  Gian Pietro Picco,et al.  Understanding code mobility , 1998, Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium.

[70]  Andrew Scott,et al.  Supporting adaptive video applications in mobile environments , 1998 .

[71]  Gordon S. Blair,et al.  Limbo: a tuple space based platform for adaptive mobile applications , 1997 .

[72]  Jorge Lobo,et al.  A Policy Description Language , 1999, AAAI/IAAI.

[73]  Robert A. Kowalski,et al.  The Situation Calculus and Event Calculus Compared , 1994, ILPS.

[74]  Henning Schulzrinne,et al.  RTP: A Transport Protocol for Real-Time Applications , 1996, RFC.

[75]  Roger Riggs,et al.  A Distributed Object Model for the Java System , 1996, Comput. Syst..

[76]  Peter R. Pietzuch,et al.  Composite event detection as a generic middleware extension , 2004, IEEE Network.

[77]  Gregory D. Abowd,et al.  Rapid prototyping of mobile context-aware applications: the Cyberguide case study , 1996, MobiCom '96.

[78]  Mahadev Satyanarayanan,et al.  The ITC distributed file system: principles and design , 1985, SOSP '85.

[79]  Alex C. Meng,et al.  On Evaluating Self-Adaptive Software , 2000, IWSAS.

[80]  Marvin Theimer,et al.  Managing update conflicts in Bayou, a weakly connected replicated storage system , 1995, SOSP.

[81]  Steven McCanne,et al.  vic: a flexible framework for packet video , 1995, MULTIMEDIA '95.

[82]  Ravi Sethi,et al.  Yacc: a parser generator , 1990 .

[83]  Gregory D. Abowd,et al.  A Context-Based Infrastructure for Smart Environments , 2000 .

[84]  Mahadev Satyanarayanan,et al.  Disconnected Operation in the Coda File System , 1999, Mobidata.

[85]  Keith Cheverst,et al.  Architectural Requirements for the Effective Support of Adaptive Mobile Applications , 2000 .

[86]  Klara Nahrstedt,et al.  Process group management in cross-layer adaptation , 2003, IS&T/SPIE Electronic Imaging.

[87]  Fabio Kon,et al.  LegORB and Ubiquitous CORBA , 2000 .

[88]  Keith Cheverst,et al.  A platform supporting coordinated adaptation in mobile systems , 2002, Proceedings Fourth IEEE Workshop on Mobile Computing Systems and Applications.

[89]  Hudson Turner,et al.  Representing Actions in Logic Programs and Default Theories: A Situation Calculus Approach , 1997, J. Log. Program..