290 likes | 298 Views
URICA is a system that allows users to interactively refine the adaptation decisions made by the system for mobile devices, improving content customization based on user preferences and usage patterns.
E N D
URICA: Usage-awaRe Interactive Content Adaptationfor Mobile Devices Iqbal Mohomed, Jim Chengming Cai and Eyal de Lara Department of Computer Science University of Toronto EuroSys2006: Session 10 – User Studies
Heterogeneity in Mobile Devices • Significant Resource Variability among Mobile Devices • Screen real-estate • Networking • Battery Life • User Interface • Memory • Processing Capability
Need for Adaptation Downloaded Data 600KB Content must be customized!
Manual Adaptation • Publishers make available content for several classes of devices • e.g., HTML and WAP versions of Web page • Disadvantages: High human cost • Done for every device (multiple versions) • Maintaining consistency and coherence • You can never cover all possible versions! • Continuous effort to support new types of devices • In practice: • Only done for few high-traffic sites • Limited number of devices • Slow update propagation • Not Scalable
Automatic Adaptation Mobile Device Adaptation Proxy Unmodified Content Server We Have The Mechanism But … The Hard Problem is Policies!
Achieving Fine Grain Adaptation • Usage affects the customization that is needed • Machines have a hard time distinguishing between good and bad adaptations • People are better
Achieving Fine Grain Adaptation • Usage affects the customization that is needed • Machines have a hard time distinguishing between good and bad adaptations • People are better • Users performing same task on content have similar adaptation requirements • Rely on a few users to adapt content for everyone
Usage-awaRe Interactive Content Adaptation (URICA) • Allow users to interactively refine system’s adaptation decision • System learns from user modifications • Uses history for future adaptation predictions • Applicable to a wide range of adaptation types, such as image fidelity and page layout
40KB Server 1 Improve Fidelity Server 2 Mobile 2 Application 10KB 20KB Prediction How it Works Mobile 1 Application Adaptation Proxy
Chameleon – a URICA prototype • Reduces bandwidth consumption and download latencies • Image Fidelity Adaptation System • Transcodes JPEG images on-the-fly to reduce file size • Uses history for prediction • Pocket Internet Explorer for PocketPC PDAs • Users can tap on images to improve fidelity
Adaptation Requirements Locality in user preferences Variation due to task and user preferences
Chameleon Prediction Policies • Minimizing bandwidth consumption or the number of user interactions required is trivial! • However, may not result in optimal latency
Chameleon Prediction Policies • Minimizing bandwidth consumption or the number of user interactions required is trivial! • However, may not result in optimal latency Start 2 3 4 5 Bandwidth Optimal
Chameleon Prediction Policies • Minimizing bandwidth consumption or the number of user interactions required is trivial! • However, may not result in optimal latency Download Time per Slice: 3 seconds User’s Average Interaction Time: 2 seconds User’s Desired Fidelity: 4 Start 2 3 4 5
Chameleon Prediction Policies • Minimizing bandwidth consumption or the number of user interactions required is trivial! • However, may not result in optimal latency Download Time per Slice: 3 seconds User’s Average Interaction Time: 2 seconds User’s Desired Fidelity: 4 Start 2 3 4 5
Chameleon Prediction Policies • Minimizing bandwidth consumption or the number of user interactions required is trivial! • However, may not result in optimal latency Download Time per Slice: 3 seconds User’s Average Interaction Time: 2 seconds User’s Desired Fidelity: 4 Start 2 3 4 5
Chameleon Prediction Policies • Minimizing bandwidth consumption or the number of user interactions required is trivial! • However, may not result in optimal latency Download Time per Slice: 3 seconds User’s Average Interaction Time: 2 seconds User’s Desired Fidelity: 4 Start 2 3 4 5
Chameleon Prediction Policies • Minimizing bandwidth consumption or the number of user interactions required is trivial! • However, may not result in optimal latency Download Time per Slice: 3 seconds User’s Average Interaction Time: 2 seconds User’s Desired Fidelity: 4 Start 2 3 4 5
Chameleon Prediction Policies • Minimizing bandwidth consumption or the number of user interactions required is trivial! • However, may not result in optimal latency Download Time per Slice: 3 seconds User’s Average Interaction Time: 2 seconds User’s Desired Fidelity: 4 Start 2 3 4 5
Personalized Adaptation Schedule • Optimizes expected fulfillment time • Time to reach fidelity level that satisfies user • Includes download and interaction time • Determines optimal personalized adaptation schedule • List of predictions • Schedule based on • Object adaptation history • Immediate bandwidth • User interaction time
PAS In Operation User’s Average Interaction Time: 2 seconds User’s Desired Fidelity: 4 Download Time per Slice: 3 seconds BW Optimal Start 2 3 4 5
PAS In Operation User’s Average Interaction Time: 2 seconds User’s Desired Fidelity: 4 Download Time per Slice: 3 seconds BW Optimal Start 2 3 4 5 Start 3 4 5 PAS
PAS In Operation User’s Average Interaction Time: 2 seconds User’s Desired Fidelity: 4 Download Time per Slice: 3 seconds BW Optimal Start 2 3 4 5 Start 3 4 5 PAS Download Time per Slice: 1 second Start 5 PAS
User Study • 30 Participants • 3 Web sites • Word Recognition and Photo Album web site – all users doing the same task • Poster Ads web site – 3 groups, each with distinct task • PDA with CDMA 1X Network Connectivity (66-100Kbps) • Prediction Mechanism was disabled • Chameleon initially served images at fidelity 1 • Users tapped on images to get next fidelity • Experiments performed on collected traces
Fulfillment Time Optimization – Single Task Adaptation can improve fulfillment time PAS has near-optimal performance
Fulfillment Time Optimization – Multiple Tasks Optimal behavior requires taking into account bandwidth and interaction time along with history
Fulfillment Time As Bandwidth Changes PAS is flexible Mean’s problems exacerbate
Additional Results in Paper • PAS can be used to achieve a desired tradeoff between bandwidth consumption and the number of required interactions • Users can specify a cost for having to interact with the system to correct the adaptation • Effect of User Interface on Adaptive Behavior of Users
http://adaptive.cs.toronto.edu/ Summary Questions? • URICA is a general-purpose automatic content adaptation technique • Learns from user corrections to adaptation decisions • Chameleon is an image fidelity adaptation system that can be used to: • optimize fulfillment time • reduce bandwidth consumption • achieve user’s desired tradeoff between bandwidth consumption and the need to provide interactions