Community Driven Adaptation - PowerPoint PPT Presentation


PPT – Community Driven Adaptation PowerPoint presentation | free to download - id: 4e972-ZDc1Z


The Adobe Flash plugin is needed to view this content

Get the plugin now

View by Category
About This Presentation

Community Driven Adaptation


Adaptation ... Adaptation has the potential of changing user behaviour ... 'Component-Based Adaptation' by Eyal de Lara, Yogesh Chopra, Rajnish Kumar, ... – PowerPoint PPT presentation

Number of Views:19
Avg rating:3.0/5.0
Slides: 34
Provided by: Ambr5


Write a Comment
User Comments (0)
Transcript and Presenter's Notes

Title: Community Driven Adaptation

Community Driven Adaptation
  • Iqbal Mohomed (
  • Eyal de Lara (
  • Department of Computer Science
  • University of Toronto

Challenge of Variety
  • Plethora of client devices access content on the
    World Wide Web
  • Trend is growing faster!
  • Majority of web pages are still developed for the
    typical user
  • Desktop Computing Environment
  • No power constraint
  • Abundant primary/secondary storage
  • Large screen with high color depth
  • Fast processor, etc.
  • Modem-speed or high-speed Internet access
  • Input via Keyboard/ Mouse

Mobile Device Differences
  • Network Connectivity
  • - Intermittent connectivity
  • - Low bandwidth, high latency for some but not
    for others (e.g. CDPD 12kbps vs. 802.11b
  • Energy limitations
  • Form Factor
  • Screen Size
  • Color Depth
  • I/O Interface
  • Numeric keypad
  • Mini-keyboard
  • Pen

  • Content that is changed or changes so as to
    become suitable to a new or special application
    or situation
  • Goal is to save resources and/or improve
  • Use of software transcoder to modify fidelity of
    data objects and hence resource footprint

Important Considerations
  • Where is it done?
  • When to do it?
  • How much?
  • Who chooses?

Server Adaptation
  • Publishers develop and make available content
    for several classes of devices
  • Disadvantages
  • Burden/Cost imposed on all Content Publishers
  • Continuous effort to support new types of devices
  • Difficult to maintain synchronization of various
    formats under heavy utilization
  • You can never cover all possible versions!

Proxy Based Adaptation
  • Proxies are heavily utilized in current
    architecture of WWW
  • Rather than just serving cached content, the
    adaptation proxy can provide content at different
  • Transcoding
  • Can be done at the outset or on the fly
  • Can be done at the Server or Proxy

Proxy in the Middle
Advantages of Having a Proxy
  • Server does not have to keep track of preferences
    and other information pertaining to individual
  • Can place transcoder at proxy to dynamically
    generate content at fidelities that differ from
    the original (e.g. black and white, grayscale,
    8-bit color and so on for a 32-bit color image)

Who Decides how much to adapt?
  • Server
  • Server takes information about the user
  • Provides its best guess on which version of the
    requested content would be optimal
  • Client
  • Client/ Agent is told about all types of
    available content
  • He/she/it picks the fidelity it wants
  • Proxy
  • Effectively a combination of the two approaches
  • Proxy has information about the user
  • It is provided with a list of all available
    content versions
  • Proxy picks the best one to provide the user

Adaptation is tricky
  • How much adaptation should be performed on
  • Too much adaptation
  • User inconvenienced by frequent explicit
  • Unusable data is transferred which wastes
  • memory
  • bandwidth
  • time
  • Too little adaptation
  • More data than optimally required by user is
  • Wastes resources again
  • Related to the Whose decides? question

Community Driven Adaptation
  • Classify the user into one of many communities
  • Serve content at fidelities which have been
    deemed appropriate by other members of that
    community in the past
  • Utilize a community-driven process to determine
    the optimal fidelity for objects!

  • Data which is accessed in the past is likely to
    be accessed again
  • Users share preferences, and thus optimal
    fidelity, along with other members of a user

Whats the catch, eh?
  • When no information is available for an object,
    the proxy makes an educated guess to serve the
    first user
  • Based on feedback received from the initial
    users, the proxy modifies the fidelity at which
    the object is served to future users
  • Share the Pain and Spread the Benefit!

An Example
  • Let a be a community of users a1,a2,an
  • Person a1 accesses page A
  • Proxy serves content at a fidelity it guesses
    to be appropriate
  • If a1 is not satisfied with fidelity, feedback
    can be provided for real-time refinement
  • Proxy incorporates any feedback received from a1
    when choosing the fidelity to serve page A for
    any member of the a community

The End Result
  • Users who access site initially have to bear
    pain of having to provide feedback
  • Users who come later, reap benefit
  • Same user unlikely to always be first to access a
  • Providing feedback is
  • Natural occurs in the course of performing task
  • Easy integrated into browser
  • Optional no forced users interaction

Advantages of our Approach
  • User is not burdened with making too many choices
    on a frequent basis
  • Preferences do not have to be explicitly
    transmitted to the proxy extrapolated through
    natural feedback to the system
  • With a transcoder installed on the proxy, server
    does not have to maintain multiple versions of
  • Given a reasonable set of installed transcoders,
    system automatically extends to future devices of
    any characteristics

Research Questions
  • How do we classify users into communities and how
    does this classification change over time?
  • How closely can history of user accesses be used
    to track fidelity preferences in the future?
    (Based on community, how good is prediction)
  • At what granularity should user accesses be
    tracked? (e.g. object, page, site, etc.)
  • User Interface Usability

Research Direction
  • Focusing on Pragmatic Issues
  • System operates in world of imperfect information
  • Adaptation has the potential of changing user
  • User Study is a significant component of this

Goal of Experimentation
  • Design an effective user study that provides
    realistic data which we will analyze to define
    and refine system behaviour

User Study
  • Simple Proxy
  • Serves content at lowest fidelity unless an
    improvement is requested
  • Extended Browser
  • Allow user to request improvements
  • The Proxy and Browser trace all user actions

User Study (contd 1)
  • This experimental setup for the study allows us
    to determine the minimum fidelity that satisfies
    a user. Since the goal is to save resources, this
    turns out to be the optimal fidelity for an
  • The traces from this initial study will be mined
    to discover the efficacy of various heuristics
    that may be employed by the proxy

User Study (contd 2)
  • Initial Study focuses on fidelity optimization of
    image objects
  • Easy to gauge for users
  • Extensive transcoder support for Progressive JPEG
  • Good Browser support for regular JPEG images
  • Can be extrapolated to other forms of media
  • Sound
  • Video
  • Text

User Interface Considerations
  • Feedback process must be
  • Simple
  • Non-disruptive
  • Some Good Candidates
  • Mouse over an image
  • Right click menu options
  • Right click menu options under a Fidelity

(No Transcript)
Browser Extensions
  • We have extended MS Internet Explorer to allow
    our own code to execute 1 whenever the user
    right-clicks on an image, they are allowed to
    request improvement to the fidelity of that image
  • Same thing can be done with Mozzila and some
    other advanced browsers

Environment Control
  • Network bandwidth and latency
  • Time limit simulating energy
  • Screen size

Thoughts for Tasks
  • We have the user carry out simple tasks
  • 1) Freeform browsing e.g. check out websites
    about Avril Lavine. ?
  • 2) Browsing for specific information e.g. Find
    states that border Georgia, USA.
  • 3) Making an e-commerce transaction e.g. buy a
    book from
  • 4) Browse for routine information e.g. What
    price did Nortel close today? ?

Well Designed Tasks
  • Too much detail in specification is bad
  • Have several instances of each type of task
  • User learns and might perform better/worse over
    course of experiment
  • Randomize order of tasks

Data that we will keep track of
  • Pages navigated by user
  • Actual Content of Page
  • Time Spent on Page
  • Time breakdown on a per-task basis
  • Any operations canceled by user

And Then
  • Data Crunching!

  1. Component-Based Adaptation by Eyal de Lara,
    Yogesh Chopra, Rajnish Kumar, Nilesh Vaghela, Dan
    S. Wallach, and Willy Zwaenepoel
  2. "Resource-Aware Speculative Prefetching in
    Wireless Networks" by N. J. Tuah, M. Kumar, and
    S. Venkatesh

Questions/ Comments
  • Thank you for your time