650 likes | 787 Vues
This work explores the crucial need for increased customization and adaptivity in software interfaces. Through the lens of user-centric design, we discuss the importance of programming by demonstration, adaptive user interfaces, and the integration of deliberative software agents. Highlighting principles for effective adaptation, we discuss how applications can learn and respond to user context, tasks, and locations, ultimately improving usability. The insights drawn focus on how personalized experiences can enhance productivity and satisfaction for varied users.
E N D
What Users Want Daniel Weld University of Washington
Variation 4x 625x Two Interface Trends Usage Daniel S. Weld / Univ. Washington
Need Increased Customization • Beyond changing buttons on the toolbar • Overriding inappropriate adaptation • High-level functionality • Programming by demonstration “Steelcase-Inspired Software” -- David Gelernter • One Size Fits All • Need Increased Adaptivity • Beyond inconsistent defaulting • Adapt to available devices, connectivity, … • Adapt to user location • Adapt to user tasks & goals • Adapt to user calendar & current time (Some overlap with Contextual Computing) Daniel S. Weld / Univ. Washington
Adaptivity & Customization • Deep Deployment ~ OS layer • Consistent Across Applications • Adaptation in every ‘dialog’ • Bridging Applications • Data gathering • Transformations Daniel S. Weld / Univ. Washington
High-level Customization Pure Adaptation Outline • Motivation • Deliberative Software Agents • Programming by Demonstration • Adaptive Websites • Adaptive User Interfaces Daniel S. Weld / Univ. Washington
Genesis: Internet Softbots [Etzioni & Weld CACM 94] • Interface Principles: • Goal-Oriented • Integrated • Balanced • Safe • User says what she wants • Agent determines how & whento achieve it • planning-basedsoftbots Single, expressive & uniform interface E.g., printing files vs. FTPing them DT-lite: “Softbot must balance the cost of finding information on its own with the nuisance of asking the user.” Asimov’s first law… Safety, tidiness & thriftiness constraints in planner Daniel S. Weld / Univ. Washington
Softbot Project Observations Rodney BargainFinder ILA Simon MetaCrawler Grouper Ahoy Info Manifold • Natural language interfaces • Popescu et al. • Yates et al. • Programming by demonstration ShopBot Occam Wrapper Induction } LSD Wed 10:15 Razor Mulder … Tukwila GLUE Piazza Gplex UW Softbot Family Tree • Specifying goals is bottleneck • Logical spec. language ?!$@#! • Forms interface • Limited to anticipated use • Not scalable • Often easier to just do task! • Except: data integration tasks Daniel S. Weld / Univ. Washington
High-level Customization Pure Adaptation Outline • Motivation • Deliberative Software Agents • Programming by Demonstration • Adaptive Websites • Adaptive User Interfaces Daniel S. Weld / Univ. Washington
Programming by Demonstration [Lau & Weld IUI-99] [Wolfman et al. IUI-01] • If it’s too hard for users to specify goals • Let’s watch them… • And try to help • Like plan recognition • Initial domains: • Email • Text editing • Cross domain [Lau et al. ICML-01] Daniel S. Weld / Univ. Washington
Gentle-Slope Systems C Click’nCreate (Multimedia Fusion) VBasic Hypercard MFC C C Plugins kCmds Difficulty of use Hypertalk Ideal Basic Sophistication of what can be created Adapted from Myers et al. Daniel S. Weld / Univ. Washington
VBasic Turing Cplt Robust Programing None Previous PBD Little Varying Varying Lots SmartEdit SmartPython On / Off Loops,Cond Robust Minimal Objectives Demand on user Expressiveness Domain engr Robustness Macro Record None On / Off Straight Ln Brittle Daniel S. Weld / Univ. Washington
SmartEdit 1 [Lau et al. ICML-01] Daniel S. Weld / Univ. Washington
2 Daniel S. Weld / Univ. Washington
3 Daniel S. Weld / Univ. Washington
4 Daniel S. Weld / Univ. Washington
5 Daniel S. Weld / Univ. Washington
6 Daniel S. Weld / Univ. Washington
Move to next <!-- Delete to next --> PBD as a learning problem • Action is function : input state ® output state • Editor state: text buffer, cursor position, etc. • Actions: move, select, delete, insert, cut, paste,… • Given a state sequence, infer actions • Many actions may be consistent with one example • Challenge: Weak bias + low sample complexity Daniel S. Weld / Univ. Washington
Version Space Algebra • Version space = set of complex functions • Define version space hierarchically • Combine simpler version spaces with algebraic operators • Union È: analogous to set union • Join : cross product with consistency predicate • Transform: convert functions to different types • Can factor a version space Daniel S. Weld / Univ. Washington
… … … … SMARTedit's version space Daniel S. Weld / Univ. Washington
Action Move Paste Insert Copy Cut Select Delete Fast Consistency • Test consistency of example against entire version space • Quickly prune subtrees • Innovations: • Independent join allows BSR representation Daniel S. Weld / Univ. Washington
Preliminary User Study • 6 undergrad CS majors • 7 repetitive tasks with & later w/out SMARTedit • Tasks: 4 to 27 iterations, 1-5 min to complete • Evaluation metrics: • Time saved completing task with SMARTedit's help • % user actions (keyboard + mouse) saved • User feedback Daniel S. Weld / Univ. Washington
Time saved using SMARTedit Time (sec) Cost Saved Six Users X X Task Number Daniel S. Weld / Univ. Washington
Action Savings with SMARTedit Six Users Percent of Actions Cost Saved XXXX X X Task Number Daniel S. Weld / Univ. Washington
Observations from PBD • Overhead of macro recorder UI is high • Most repetitive tasks short • How many shell scripts do you write / day? • Focus on pure adaptivity • E.g., automatic segmentation Daniel S. Weld / Univ. Washington
High-level Customization Pure Adaptation Outline • Motivation • Deliberative Software Agents • Programming by Demonstration • Adaptive Websites • Adaptive User Interfaces Daniel S. Weld / Univ. Washington
Early Adaptation: Mitchell,Maes • Predict: Email message priorities Meeting locations, durations • Principle 1: Defaults minimize cost of errors • Principle 2: Allow users to adjust thresholds Daniel S. Weld / Univ. Washington
Adaptation in Lookout: Horvitz Adapted from Horvitz Daniel S. Weld / Univ. Washington
Resulting Principles [Horvitz CHI-99] • Decision-Theoretic Framework • Graceful degradation of service precision • Use dialogs to disambiguate (Considering cost of user time, attention) Adapted from Horvitz Daniel S. Weld / Univ. Washington
Principles About Invocation • Allow efficient invocation & dismissal • Timeouts minimize cost of prediction errors Daniel S. Weld / Univ. Washington
Adapting to Small Screens Daniel S. Weld / Univ. Washington
Visitor Proteus Web server Web Site Adaptation in Proteus [Anderson et al. WWW-01] • Architecture • Personalizing in two steps: 1. Learn model of visitor from access logs • Transform content per learned model • Hill-climbing thru space of websites • Transforms: shortcuts & elision • Decision-theoretic guidance Daniel S. Weld / Univ. Washington
Guiding the Search • Expected utility based on model of visitor • Model learned by mining server access logs • Sum value of each screen of each page • Discount by difficulty of reaching screen from p • Depends on how manylinks followed and howmuch scrolling required = p Daniel S. Weld / Univ. Washington
Proteus Empirical Study • Observe real users on the desktop • Info-seeking goals drawn from random distribution • Personalize based on observations • Measure performance on mobile device • Number of links and scrolls, amount of time • Compare unmodified and personalized sites • Half users did unmodified first, others vice versa Daniel S. Weld / Univ. Washington
Average number links followed Daniel S. Weld / Univ. Washington
Analysis of Proteus • Why Proteus worked well • Suggested useful shortcuts • Elided mostly unnecessary content • Why Proteus worked poorly • Sometimes elided useful content • Users didn’t find shortcut, tho it existed • Flaws with implementation more than concept Daniel S. Weld / Univ. Washington
Principles • Saliency of new UI operations is crucial • How name shortcuts? • Eliminating features is dangerous • Must partition dynamicity • Maintain separate dynamic & static “areas” • Always allow previous navigational methods • Duplicate functionality if necessary • Accurate prediction also crucial Daniel S. Weld / Univ. Washington
Partitioned Dynamism Daniel S. Weld / Univ. Washington
Partitioned Dynamism Daniel S. Weld / Univ. Washington
Partitioning Failure Daniel S. Weld / Univ. Washington
Principles • Must partition dynamicity • Accurate prediction also crucial Daniel S. Weld / Univ. Washington
Predicting User Behavior [Anderson et al. IJCAI-01] • Model as Sequential Process • Markov Models • Mixtures of Markov Models • Second-Order… • Conditioning on Position in Trace • Etc. # times sd was followed P(sd) = Total # visits to s Daniel S. Weld / Univ. Washington
Weakness of Markov Models • Each state is trained independently • Abundant training data at one state cannot improve prediction at another state • Large state models require vast training data • Problematic since Web trace data is sparse • A single visitor views ~0% of any site • New & dynamic content not in training data Daniel S. Weld / Univ. Washington
DPRM RMM Reasoning about Uncertainty PRM Bayes Net DBN Structure Relational Sequence MM Daniel S. Weld / Univ. Washington
Relational Markov Models [Anderson et al. KDD02] • Domains often contain relational structure • Each state is a tuple in relational DB sense • Structure enables state generalization • Which allows learning from sparse data ProductPage ProductName StockLevel Apple_iMac in_stock Palm_m505 backorder Daniel S. Weld / Univ. Washington
D: a set of hierarchical domains Defn: Markov Model Relational • Q: set of states • Pages in a web site • Each state ~ a relation ProductPage(Apple_iMac, in_stock) • p: init prob distribution • A: transition probability matrix • R: a set of relations Daniel S. Weld / Univ. Washington
AllProducts … AllComputers … AllPDAs AllDesktops … AppleDesktops … … iMac … Domain Hierarchies ProductName Instance of relation with leaf values is a state, e.g. ProductPage(iMac, in_stock) Daniel S. Weld / Univ. Washington
AllProducts … AllComputers … AllPDAs AllDesktops … AppleDesktops … … iMac … Domain Hierarchies ProductName Instance of relation with non-leaf values is a set of states: an abstraction, e.g. ProductPage(AllComputers, in_stock) Daniel S. Weld / Univ. Washington
RMM MainEntryPage() ProductPage(AllProducts, AllStockLevels) CheckoutPage() … ProductPage(AllProducts, backorder) … ProductPage(AllProducts, instock) E-commerce Site: Markov Ver. m505_backorder.html main.html checkout.html iMac_instock.html dell4100_instock.html Daniel S. Weld / Univ. Washington
s d s d RMM generalization • Want to estimate P(sd) … but no data! • Use shrinkage • Can do this with abstractions of d and s • Let be an abstraction of s and of d ? Daniel S. Weld / Univ. Washington