Techniques, Algorithms, and Architectures for Adaptation in Mobile Computing
Total Page:16
File Type:pdf, Size:1020Kb
DOTTORATO DI RICERCA IN INFORMATICA XIX CICLO SETTORE SCIENTIFICO DISCIPLINARE INF/01 INFORMATICA Techniques, Algorithms, and Architectures for Adaptation in Mobile Computing Tesi di Dottorato di Ricerca di: Daniele Riboni Relatore: Prof. Claudio Bettini Coordinatore del Dottorato: Prof. Vincenzo Piuri Anno Accademico 2005/06 2 To my parents 4 Contents 1 Introduction 9 2 Context-Awareness 13 2.1Introduction............................ 14 2.2Classificationofcontextparameters.............. 16 2.2.1 Ataxonomyofcontextdata............... 16 2.2.2 Complexityofreasoning................. 20 2.3Currentprofilingapproaches................... 22 2.3.1 Profilerepresentationofdevices............. 23 2.3.2 Userprofiling....................... 28 2.3.3 Profilingprovisioningenvironments........... 31 2.4Profile-baseddeliveryplatforms................. 37 2.4.1 Requirements....................... 37 2.4.2 CC/PP-basedarchitectures............... 39 2.4.3 Commercialapplicationservers............. 40 2.4.4 Alternativemiddlewareproposals............ 41 3 The CARE Middleware 45 3.1Architecture............................ 45 3.1.1 Overview......................... 45 3.1.2 ProfileManagementandAggregation......... 47 5 3.1.3 Policies for Supporting Adaptation . ........ 50 3.1.4 Ontologicalreasoning.................. 52 3.1.5 Supporting continuous services . ........ 53 3.2Softwarearchitecture....................... 54 3.3 Evaluation with respect to the addressed requirements . 56 4 Conflict Resolution for Profile Aggregation and Policy Eval- uation 59 4.1Representationofcontextdataandpolicies.......... 60 4.2Conflictsandresolutionstrategies................ 64 4.3Mergingdistributedcontextdata................ 67 4.4Policyformalsemanticsandconflictresolution........ 69 4.4.1 Cycledetectionandresolution............. 70 4.4.2 Policyconflictresolution................. 75 4.4.3 Evaluation algorithm and complexity analysis . 82 4.5Experimentalresults....................... 84 4.6BibliographicNotes........................ 85 5 Distributed Context Monitoring for the Adaptation of Con- tinuous Services 89 5.1Adaptationofcontinuousservices................ 90 5.2Trigger-BasedMechanism.................... 91 5.3Minimizingunnecessaryupdates................ 95 5.3.1 Baselinealgorithm.................... 95 5.3.2 Optimization based on profile resolution directives . 98 5.3.3 Optimizationbasedonrulepriority..........100 5.4Bibliographicnotes........................103 6 Loosely Coupling Ontological Reasoning with Adaptation Policies 105 6 6.1ContextModeling........................107 6.1.1 ShallowProfileData...................107 6.1.2 Ontology-basedprofiledata...............107 6.2 Basic notions on Description Logics ..............109 6.3OntologicalReasoning......................112 6.3.1 Off-lineontologicalreasoning..............112 6.3.2 On-demandontologicalreasoning............116 6.4ExperimentalEvaluation.....................117 6.4.1 Experiment A: Ontological reasoning with increasing ABox size (instances obtained from the aggregated profile)..........................118 6.4.2 Experiment B: Ontological reasoning with increasing ABox size (instances known apriori) .........120 6.4.3 Experiment C: Ontological reasoning with increasing ABox size (instances not involved in the reasoning task)123 6.4.4 Experiment D: Ontological reasoning with increasing TBoxsize.........................124 6.4.5 Experiment E: Ontological reasoning with increasing TBoxandABoxsize...................126 6.4.6 Experiment F: Ontological reasoning with a realistic ontology and increasing number of derived activities . 128 6.4.7 Experiment G: Ontological reasoning with a realistic ontologyandincreasingABoxsize...........130 6.5Bibliographicnotes........................132 7 Prototype Applications 135 7.1 A context-aware architecture for management and retrieval ofextendedpointsofinterest..................136 7.1.1 AnoverviewofthePOIsmartsystem..........136 7 7.1.2 Architecture.......................137 7.1.3 ClassificationandSearch................144 7.1.4 Thecurrentsystemprototype..............149 7.2Anadaptivevideostreamingservice..............153 7.2.1 Theadaptivestreamingsystem.............153 7.2.2 The interaction between CARE and the streamer . 154 7.2.3 ExperimentalSetup...................155 7.2.4 Observedresults.....................156 7.2.5 Comparisonwithacommercialsolution........160 7.3Integrationwithanadaptivetranscodingproxy........165 7.3.1 Architectureoverview..................166 7.3.2 Serviceactivationpolicies................168 7.3.3 The GeoAware prototypeservice............170 8 Summary and Outlook 173 8.1Technicalcontribution......................173 8.2Openproblems..........................174 8.2.1 Ontologiesandontologicalreasoning..........174 8.2.2 Privacyissues.......................176 8.2.3 Optimizationtechniquesandcaching..........178 8.2.4 Scalability issues . ..................179 8 Chapter 1 Introduction In the last few years, the proliferation of mobile devices and wireless net- works has radically changed the way people use computing devices. Hand- held computers such as smart phones and personal digital assistants (PDAs) are becoming more and more important as a mean for communicating, work- ing, having access to information, and accessing intelligent services. A hot topic in the area of mobile computing is how to efficiently and effectively adapt services on the basis of context. Context is essentially any information that is useful for adapting an application to the user’s needs and expecta- tions. In mobile computing environments, adaptation is a fundamental fea- ture, since the context of mobile users continuously changes depending on spatio-temporal conditions, activity, and surrounding environment, just to cite a few parameters. Adaptation and personalization of services for commercial applications has traditionally taken into account just a very restricted set of context data, such as those that describe the characteristics of devices, network sta- tus, and possibly user interests and simple preferences. These data are gen- erally stored in central context managers, using proprietary representation formalisms. On the contrary, in the research community various proposals 9 have been made in the last few years for performing adaptation on the basis of a much wider set of context data, which includes dynamic user preferences, privacy policies, and complex context data such as those that describe the socio-cultural context of the user. However, reasoning with complex context data poses serious performance issues. Since mobile services can be possibly accessed by a huge number of users at a time, efficiency and scalability are mandatory. As a consequence, var- ious efficient contextual reasoning procedures have been proposed for spe- cific applications like telecommunication services (e.g., [59]) and e-commerce (e.g., [43]). The adaptation of these classes of services is performed taking into account raw context data such as the ones that describe the network, device capabilities, and categories of interests. This class of data can be naturally modeled by means of attribute/value pairs, adopting standard representation formalisms. On the other hand, mobility claims for the use of a wider set of con- text data – provided by different sources – including complex data such as the user current activity and her surrounding environment. A quite large consensus has been reached in the research community towards the use of expressive languages in order to represent and reason with these data, and various frameworks have been recently proposed (e.g., [23, 47]) for applica- tions requiring sophisticated adaptation (like ambient intelligence applica- tions). Since the formalism of choice is typically OWL-DL [58] or some of its variations, the reasoning tasks are known to have high complexity. The goal of this thesis is the investigation of the above mentioned re- search issues. One of the main results of the thesis is the definition and development of a framework – called Context Aggregation and REasoning (CARE) framework – for efficiently and effectively supporting context-aware adaptation of Internet services in a mobile computing environment. The 10 main research areas involved in this work are those of knowledge represen- tation, distributed systems, wireless networks,andsoftware engineering. The CARE hybrid reasoning mechanism is based on a loose interaction between ontological reasoning and efficient reasoning in a restricted logic programming language. We have defined an efficient logic programming language for reasoning with raw context data, while we adopt OWL-DL as the language for representing and reasoning with complex context data. The CARE framework includes sophisticated mechanisms for resolving conflicts between context data provided by different sources, and policies declared by different entities. Moreover, an optimized trigger-based mechanism has been adopted for supporting services that persist in time (called continuous services), like multimedia streaming. We have accurately performed both theoretical and experimental analyses of the main novel algorithms that are adopted by CARE. The framework has been developed, and used for the adaptation of various prototype services addressed to mobile users. The dissertation is structured as follows. Chapter 2 provides a classifi- cation of context data, discusses how they can be acquired from different sources, and presents context-aware delivery platforms that have been pro- posed in the literature. Chapter 3 provides an introduction