1 / 27

An Approach to Content Adaptation for Mobile Computing

An Approach to Content Adaptation for Mobile Computing. Francis C.M. Lau (& W.Y. Lum) Department of Computer Science & Information Systems The University of Hong Kong. The Next Gold Rush?.

tyrone
Télécharger la présentation

An Approach to Content Adaptation for Mobile Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. An Approach to Content Adaptation for Mobile Computing Francis C.M. Lau (& W.Y. Lum) Department of Computer Science & Information SystemsThe University of Hong Kong

  2. The Next Gold Rush? “The current Internet gold rush will be dwarfed by what is about to happen with Wireless Internet Access.”– The Economist

  3. Challenges of Mobile Computing • Device heterogeneity and constraints • Content heterogeneity • The network • The user

  4. Content Adaptation • Why adapt contents? • Most contents for viewing are for the larger screens • Creating multiple versions a burden • Even if you don’t mind, there are just too many possible devices • Different users want different things • Having one, original version is easier to manage • Content adaptation is about generating any content version from one single original version • Author-once-present-anywhere (AOPA)

  5. Preadaptation • Keeping just the original version (any other version is runtime-generated) could be slow • Preadaptation • to create all possible versions, and do static“selection” at runtime, or • to create just a few essential versions, and do dynamic adaptation – hence the “balance”

  6. A User-Centric, Context-Sensitive Approach • Content adaptation is not just about adapting to the device, but also the user, the network, … • Adapting to the user – a user-centric approach • The user has preferences • speed (how much delay can I tolerate?), color (do I mind black-and-white?), scaling (is smaller text size ok?), modality (do I care what format?), … • What the user most prefers however might not be feasible because of constraints of the context • the device, the network, the requested object

  7. A Collaborative Environment Content adaptation happens here INTERMEDIATE PROXY SERVER CONTENTS PROVIDER INTERNET USER & DEVICE THE CONNECTIONS Preadapted versions stored here

  8. Content Adaptation in Two Steps • Content negotiation N(Ppreference, Pdevice, Pnetwork, Pcontent)  V • V the recommended version • Note: “version” = ID or metadata, not the real content • Content realization R(V)  O • O the actual object returned to the client

  9. Content Negotiation • Negotiation: user’s preference againstthe context • Preferences represented by scoresand stored as score nodes in an efficient data structure • To traverse the data structure from highest-scoring node until TRUE: TRUE || FALSE  decision(score-node, context) • where context = (Pdevice, Pnetwork, Pcontent) • note that estimated rendering time is considered in the process

  10. CONTENTNEGOTIATION recommendedversion =

  11. Negotiating for the Best Version

  12. Content Realization • To generate the object based on the desired version recommended by the negotiation module • Involves one or more transcoding steps from some “optimal” preadapted version • Tradeoff between • real-time transcoding overhead (CPU cost, or time) • storage overhead of preadaptation (I/O cost)

  13. Transcoding Relation Graph • V the set of all possible contentversions • The edge (vi, vj) means vj can bederived from vi throughtranscoding • vi could be (4-bit color, 75% scaling);vj could be (1-bit color, 50% scaling) • Transcoding () is a lossy operation • Edge labels are the time cost of the corresponding transcoding operations based on some cost model • At least v0, the original content version,should be present in the content server

  14. To Build the Preadapted Set, Vpre • Constrained by total sizeallowed • Each vertex (white) not in Vpre must be pointed to by exactly one edge from a vertex (black) in Vpre • With least total edge cost (over all edges from a black vertex to a white vertex) among all the possibilities • NP-complete

  15. The Greedy Algorithm (GREEDY) Vpre  initial setwhile not exceeding space allowed select v  Vpre such that C(v  Vpre) is minimized add v to Vpre • C(V) = total edge (black-to-white) cost based on an optimal edge set for a given preadapted set V • We can take space into account as well: to maximize C'( ) which is the aggregated transcoding cost saving per unit spatial consumption

  16. Example Space limit: 850 Kbytes

  17. How Good is GREEDY • Let A and B be the improvements (i.e., reduction in transcoding time over all content versions) due to the optimal solution (OPT) and GREEDY respectively; then • where k and k' are the numbers of versions selected by GREEDY and OPT respectively • If k=9 and k'=8, then GREEDY is at least 70% of OPT in performance

  18. How Good is GREEDY • Proof based on that for a greedy selection algorithm for “datacubes” by Harinarayan et al. [SIGMOD96] • Can we do better? • “The greedy algorithm does as well as we can hope any [deterministic] polynomial-time algorithm to do”– according to some recent result on set cover

  19. Experimentation • A prototype PDF document content adaptation system (simulation) • User preference in five domains: color, downloading time, scaling, modality, segmentation, each having a range of 4 values • hence 45 = 1024 score nodes per user

  20. Negotiating for the Best Version

  21. Experimentation • We measured performance in terms of the following against preadaptation capacity • aggregated transcoding cost saving • content coverage ratio = # of selected versions / all versions • C'( ) performs better than C( ) in most situations Please refer to our Mobicom paper for the graphs

  22. Experimentation • Modality vs. downloading time; all others kept constant • WAP device: • (a) modality > downloading time  WBMP • (b) downloading time > modality  WML • PDA: • (c) PDF, (d) BMP, (e) HTML

  23. Experimentation a b c • Setting maximum download time • (a) WBMP, (b) larger WML, (c) smaller WML • note how (c) is segmented/cropped and the use of the “next” anchor

  24. Experimentation a b c • Awareness of network delays • (a) 144 kbps  PDF with 256 colors • (b) 19.6 kbps  BMP with 16 colors • (c) 9.6 kbps  HTML

  25. Further Research • Versions weighted according to popularity • To exploit mutual dependencies between objects • Dynamic (re-)preadaptation • similar to caching • separate caching at the proxy? • Better algorithms than GREEDY • Automatic content augmentation – “pervasive authoring” • Easily-transcodable contents • Do we really need that many versions? • User preferences – how specified? • Collaborative design: device-proxy-server • Adaptation of code

  26. Related Publications • W.Y. Lum and F.C.M. Lau, “User-centric Content Negotiation for Effective Adaptation Service in Mobile Computing”, IEEE Transactions on Software Engineering, to appear. • W.Y. Lum and F.C.M. Lau, “A Context-Aware Decision Engine for Content Adaptation”, IEEE Pervasive Computing, Vol. 1, No. 3, July-September 2002, 41-49. • W.Y. Lum and F.C.M. Lau, “On Balancing Between Transcoding Overhead and Spatial Consumption in Content Adaptation”, Proc.Mobicom 2002, Atlanta, USA, September 2002, 239-250.

More Related