URICA - Eurosys2006

Download Report

Transcript URICA - Eurosys2006

URICA: Usage-awaRe Interactive
Content Adaptation
for 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
Network
Connectivity
Time
(seconds)
1 Mbps (DSL)
5
3G (384Kbps)
12.5
GPRS (40Kbps)
120
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
How it Works
40KB
Server 1
Improve Fidelity
Application
Adaptation
Proxy
Mobile 1
Server 2
10KB
20KB
Application
Mobile 2
Prediction
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
12
14
10
Number of Users
Number of Users
12
10
8
6
4
2
8
6
4
2
0
0
1
2
3
4
5
6
7
8
9
10
1
Single Task
2
3
4
5
6
7
Multiple Tasks
Locality in user preferences
Variation due to task and user preferences
8
9
10
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
14
Number of Users
12
10
8
6
4
2
0
1
2
3
4
5
6
7
8
9
10
Single Task
Start
2
3
4
Bandwidth Optimal
5
Chameleon Prediction Policies
• Minimizing bandwidth consumption or the
number of user interactions required is trivial!
• However, may not result in optimal latency
14
Number of Users
12
Download Time per Slice: 3 seconds
User’s Average Interaction Time: 2 seconds
10
8
6
User’s Desired Fidelity: 4
4
2
0
1
2
3
4
5
6
7
8
9
10
Single Task
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
14
Number of Users
12
Download Time per Slice: 3 seconds
User’s Average Interaction Time: 2 seconds
10
8
6
User’s Desired Fidelity: 4
4
2
0
1
2
3
4
5
6
7
8
9
10
Interaction
Time
Single Task
Start
2
3
4
5
Download
Time
Fulfillment
Time
Chameleon Prediction Policies
• Minimizing bandwidth consumption or the
number of user interactions required is trivial!
• However, may not result in optimal latency
14
Number of Users
12
Download Time per Slice: 3 seconds
User’s Average Interaction Time: 2 seconds
10
8
6
User’s Desired Fidelity: 4
4
2
0
1
2
3
4
5
6
7
8
9
10
Single Task
Start
2
3
4
5
Interaction
Time
Download
Time
0
6
Fulfillment
Time
Chameleon Prediction Policies
• Minimizing bandwidth consumption or the
number of user interactions required is trivial!
• However, may not result in optimal latency
14
Number of Users
12
Download Time per Slice: 3 seconds
User’s Average Interaction Time: 2 seconds
10
8
6
User’s Desired Fidelity: 4
4
2
0
1
2
3
4
5
6
7
8
9
10
Single Task
Start
2
3
4
5
Interaction
Time
Download
Time
2
9
Fulfillment
Time
Chameleon Prediction Policies
• Minimizing bandwidth consumption or the
number of user interactions required is trivial!
• However, may not result in optimal latency
14
Number of Users
12
Download Time per Slice: 3 seconds
User’s Average Interaction Time: 2 seconds
10
8
6
User’s Desired Fidelity: 4
4
2
0
1
2
3
4
5
6
7
8
9
10
Single Task
Start
2
3
4
5
Interaction
Time
Download
Time
4
12
Fulfillment
Time
Chameleon Prediction Policies
• Minimizing bandwidth consumption or the
number of user interactions required is trivial!
• However, may not result in optimal latency
14
Number of Users
12
Download Time per Slice: 3 seconds
User’s Average Interaction Time: 2 seconds
10
8
6
User’s Desired Fidelity: 4
4
2
0
1
2
3
4
5
6
7
8
9
10
Single Task
Start
2
3
4
5
Interaction
Time
Download
Time
Fulfillment
Time
4
12
16
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
14
User’s Average Interaction Time: 2 seconds
Number of Users
12
10
User’s Desired Fidelity: 4
8
6
4
2
0
1
2
3
4
5
6
7
8
9
10
Download Time per Slice: 3 seconds
Single Task
BW
Start
Optimal
2
3
4
5
Interaction
Time
Download
Time
Fulfillment
Time
4
12
16
PAS In Operation
14
User’s Average Interaction Time: 2 seconds
Number of Users
12
10
User’s Desired Fidelity: 4
8
6
4
2
0
1
2
3
4
5
6
7
8
9
10
Download Time per Slice: 3 seconds
Single Task
BW
Start
Optimal
2
3
4
Start
3
4
5
PAS
5
Interaction
Time
Download
Time
Fulfillment
Time
4
12
16
2
12
14
PAS In Operation
14
User’s Average Interaction Time: 2 seconds
Number of Users
12
10
User’s Desired Fidelity: 4
8
6
4
2
0
1
2
3
4
5
6
7
8
9
10
Download Time per Slice: 3 seconds
Single Task
BW
Start
Optimal
2
3
4
Start
3
4
5
PAS
5
Interaction
Time
Download
Time
Fulfillment
Time
4
12
16
2
12
14
Download Time per Slice: 1 second
PAS
Start
5
0
5
5
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 (66100Kbps)
• 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
70
NoAdaptation
PAS
Oracle
Mean
Fulfillment Time (seconds)
60
50
40
30
20
10
0
Photo Album Web site
Adaptation can improve fulfillment time
PAS has near-optimal performance
Fulfillment Time Optimization – Multiple Tasks
18
NoAdaptation
PAS
Oracle
Mean
Fulfillment Time (seconds)
16
14
12
10
8
6
4
2
0
Poster Ads Web site
Optimal behavior requires taking into account
bandwidth and interaction time along with history
Fulfillment Time As Bandwidth Changes
Fulfillment Time (seconds)
Poster Ads Web site - Multiple Tasks
18
16
14
12
10
8
6
4
2
0
NoAdaptation
CDMA 1X
PAS
Oracle
Mean
3G
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
Summary
http://adaptive.cs.toronto.edu/
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