tasktracer: toward a task-oriented desktop...

53
Thomas G. Dietterich Jon Herlocker Simone Stumpf TaskTracer Team School of Electrical Engineering and Computer Science Oregon State University Corvallis, Oregon 97331 http://www.eecs.orst.edu/~tgd TaskTracer: Toward a Task-Oriented Desktop Interface

Upload: others

Post on 03-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

Thomas G. DietterichJon Herlocker

Simone StumpfTaskTracer Team

School of Electrical Engineering and Computer ScienceOregon State UniversityCorvallis, Oregon 97331

http://www.eecs.orst.edu/~tgd

TaskTracer: Toward a Task-Oriented

Desktop Interface

Page 2: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 2

An example scenario…

Warning: The scenario you are about to see has been only partially implemented.

Page 3: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 3

1. Jane has to write a grant proposal to the National Science Foundation (NSF)

“I’ve done this before! How did I do it last time?”

2. Jane describes her current task to TaskTracer

“Write NSF proposal”

3. TaskTracer returns a list of past tasks that are relevant to the NSF.

“Look here! – a record of the last time I wrote an NSF grant proposal. I’ll select that”

Page 4: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 4

4. A list of resources Jane used while writing her last grant is displayed: files, web pages, email addrs, phone numbers.

“Aha! I’ll start with the budget I used last time as a template.”

5. The budget spreadsheet is opened. The cells that were edited in the previously selected task are highlighted.

“Looks like I need to find what the graduate pay rate will be in 2006-2007. It always changes”

Page 5: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 5

6. TaskTracer remembers the previous cut/paste of this information. The spreadsheet cells have right-click option: “Show source URL…”

“Yes”

7. After editing the budget, Jane opens up the project summary from the last proposal and starts editing it.

“Need to emphasize the artificial intelligence aspect of my research!”

8. Interruption! Spouse calls and says he’s outside.

“Need to log out and head home…”

Page 6: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 6

9. Next day after she logs in.“What was I working on???”

10. On request, TaskTracer displays uncompleted tasks currently in progress.

“Right! I was writing that NSF grant proposal. Let me select that task.”

11. TaskTracer shows documents touched in the previous day plus all the documents from the previous related task.

“The last thing I was doing was editing the project summary document – I’ll continue with that”

Page 7: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 7

12. TaskTracer opens the Word document and highlights the text that she most recently edited.

“When I was interrupted, I was busy editing this paragraph here. I will continue from there”

13. The phone rings – TaskTracer uses caller id to identify the caller, locates tasks associated with that caller, and displays a list of tasks that caller is associated with

“Chris works with me on the conference committee, so it must be about that”

Page 8: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 8

15. … A month later, Joe, a new hire, asks Jane how the grant proposal process works at OSU

“It’s long and convoluted, Joe. Let me just send you the TaskTracer record from my most recent grant”

14. TaskTracer pulls up a record of the task and lists past emails and phone calls to and from that caller. “I can quickly scan the recent email messages to and from Chris to recall what we last discussed”

Page 9: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 9

The WindowsTM Model

Repeatuser randomly chooses program to run

user randomly chooses file to accesspossibly one of the 4 most recent in that application

user randomly chooses where to save the file

This model does not capture or exploit the coherent structure of the user’s desktop activities

Page 10: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 10

The TaskTracer Model

RepeatUser chooses from a “working set” of ongoing “tasks” or “activities” (or possibly a new activity)

User chooses a resource associated with that activityUser works on that resource and then “delivers” it (print, fax, email, upload, etc.)User communicates with other people involved in the activityUser attends meetings associated with the activity

Activities tend to be interrupted by other activitiesphone calls, IMs, scheduled appointments, trips (even eating andsleeping!), emergencies, opportunities

New tasks are often similar to old tasksUse old files as “templates” via copy-and-editCommunicate with the same or similar peopleRequire similar amount of time and effort

Page 11: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 11

The Activity Hypothesis

Activities are the key abstraction for understanding user behaviororganizing the resources needed by the userhelping the user

In TaskTracer, “activity” = “task”

Page 12: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 12

Requirements for TaskTracer

1. Instrument desktop applications to capture events (accesses to files, folders, web pages, calendar; email, phone, and chat traffic)

2. Define/discover the user’s “tasks”3. Associate events/resources with tasks4. Build/modify interfaces to provide easy

access to relevant resources and events

Page 13: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 13

Instrumenting the Desktop: Publisher-Subscriber Architecture

Page 14: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 14

1. Instrument Desktop

Applications:Word, Excel, PowerPoint, Outlook, Internet Explorer, Windows Explorer, GSView, Acrobat, Visual Studio

Application Events:Documents: New, Change, Open, Print, Save, Save As, CloseEmail: Open, Close, Send, Reply, Forward, Attach, Save Attachment, Open Attachment, Incoming EmailWeb pages: Open, Navigate, Download File

OS Events:File create/delete/rename, Window: Creation, Destroy, FocusCopy/PasteSuspend/Resume/Idle

Page 15: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 15

2. Define/Discover User Tasks

TaskExplorer application allows user to define a hierarchy of tasks

A task is just a name

Page 16: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 16

Other Ways of Discovering Tasks

Cluster analysis of emails“social” network of email correspondencefiles attached to email messages

Topic analysis of file contents, email contents, web page contentsFiles stored in same folderCluster analysis of desktop activity (files, web pages, email messages co-occurring in time)

See: Huang, D. Govindaraju, T. M. Mitchell, V. R. Carvalho, W. W. Cohen (2004) Inferring Ongoing Activities of Workstation Users by Clustering Email

Page 17: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 17

3. Associate events/resources with tasks

Simplifying Assumption: The user is working on only one task at a timeRequire user to tell us what task they are working onAssociate all items with the declared task (c.f. UMEA, 2003)

Page 18: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 18

Declaring the Current Task

Drop down menu in the task barControl-backquote Quick SwitchCreates a “TaskBegin”event that is sent to the Publisher

Page 19: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 19

Problem: Users Forget to Declare the Current Task

Solution: Apply machine learning methods to predict the current taskTwo Predictors:

Email PredictorPredict the task associated with an incoming email message

Task PredictorPredict the task associated with the current window and document

Page 20: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 20

Machine Learning Challenges

Set of tasks is changingDistribution of task documents changes within a task over timeReal-time online learning and predictionMust achieve very high accuracy to be acceptable

Page 21: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 21

Email Predictor

Input features:senderunion of From:, To:, CC:, and BCC: fieldswords in subject

Feature selection via mutual informationPrediction based on probability threshold

Page 22: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 22

Naïve Bayes Classifier

Task

sender: tgd

sender: alvarado

recipients: {tgd,

herlocker}

recipients: {tgd,

alvarado}

“visit” “report” “deadline”

P(task | X) = α P(x1|task) P(x2|task) L P(xn|task) P(task)

Page 23: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 23

Hybrid Learning Algorithm

Train Naïve Bayes algorithmTrain Support Vector Machine algorithmTo classify:Compute PNB(X) = ∑task P(task) P(X|task)if PNB(X) > θ then use SVM prediction

Naïve Bayes identifies data points that are unfamiliar and should not be predicted

Page 24: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 24

Email Experiment

Data Set

3494485981158613379721934# features

1551489122321# tasks

305458243869289244416459# messages

SESDSCSBSARBRAFASubjects:

Page 25: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 25

Results

Page 26: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 26

Task Predictor

WDS: Window Document Segmenttime interval during with one window is open on one document

word: file1.doc word: file1-v2.doc excel: budget.xls

wds1 wds2 wds3

SaveAs

Page 27: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 27

WDS Features

Words inwindow titlepathname of fileweb site nameURL pathname of web page

Page 28: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 28

WDS Data

Data sets:

9831202# features

41515894# WDSs

8196# tasks

FBFASubjects:

Page 29: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 29

Task Predictor Results (FA)

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5

Coverage

Prec

isio

n SVMNBHybrid

Page 30: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 30

Task Predictor Results (FB)

0.5

0.55

0.6

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1

0.1 0.2 0.3 0.4 0.5 0.6 0.7

Coverage

Prec

isio

n SVMNBHybrid

Page 31: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 31

Combining Multiple WDS Predictions: Hidden Markov Model

taskt taskt+1

WDSt WDSt+1

P(WDSt | taskt): Naïve Bayes modelP(taskt+1 | taskt): assume fixed probability of task switch

Page 32: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 32

Combining Multiple WDS Predictions

Consider a sequence of task predictionsP(task1 | WDS1), P(task2 | WDS2), …

How can we combine these to make more reliable predictions?Three methods studied

simple votinglikelihood ratio test (compare likelihood of single no-switch model to switch model)HMM: transition cost + Viterbi

Page 33: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 33

Combining Multiple WDSs –Results

Page 34: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 34

Other Sources of Information

Memorized document—task associationsHierarchical path name analysis

classes/cs/534classes/cs/561

Time since last task switch + episode duration modelsGeneric indicators of task switching

save, close windowattach, send emailtype in new URL (versus clicking on link)

Page 35: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 35

How to use the predictions?

Interface: balloon alert in lower right corner of display

Offers choice ofstay with current activityswitch to predicted activitychoose from menu of all activities

Page 36: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 36

4. Task-Aware User Interfaces

Task ExplorerTask Prototypes/FriendsResource Explorer

Folder PredictorWindows Explorer Toolbar

Task NotesTime Tracking

Page 37: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 37

TaskExplorer Provides Easy Access to Task Resources

Page 38: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 38

Task Prototypes

Makes it easy to access resources of related tasks

Example: access classes/534-spring-05 when working on classes/534-spring-06access projects/tasktracer when working on trips/rochester-sept-06

Prototype docs are not auto-associated with the current task unless they are saved

Page 39: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 39

Resource ExplorerSometimes need to find documents that you accesses recently but you don’t know which task they were associated with

Page 40: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

Folder Predictor

Maintain statistics on file opens and saves on a per-task basis

Recency-weighted count of saves and opens

When user initiates open/save compute 3 folders to minimize expected number of clicks to get to the desired foldler

argmin{f1,f2,f3} ∑f P(f | task) · min {clicks(f1,f), 1 + clicks(f2,f), 1 + clicks(f3,f)}

Page 41: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 41

Experiment

Data Sets:

Discount Factor γ = 0.85

3976 monthsGraduate Student4

5777 monthsGraduate Student3

5064 monthsProfessor2

174812 monthsProfessor1

Set SizeData Collection TimeUser Type#

Page 42: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 42

Average Cost to Reach Target Folder

Page 43: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 43

Results: Many Fewer Clicks Required

0%

10%

20%

30%

40%

50%

60%

0 1 2 3 4 5 6 7 8 9 10 11 12 13

Costs for one open/save

Perc

enta

ge

Windows DefaultFolderPredictor

Page 44: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 44

Cumulative Clicks Required

0.00%

20.00%

40.00%

60.00%

80.00%

100.00%

0 1 2 3 4 5 6 7 8 9 10 11 12 13

Number of Clicks N to Reach Correct Folder

Perc

enta

ge R

each

ed in

N o

r few

er c

licks

Windows DefaultFolderPredictor

Page 45: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 45

Folder Predictor Toolbar in Windows Explorer

Page 46: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 46

Task Notes

Notepad associated with the current taskTime stamp automatically inserted each time you change tasks

Page 47: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 47

Time Tracking

Where do you spend your time?Auditable for billing, etc.

Page 48: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 48

Future Work

Provenance-Based Information AccessActivity Recognition and Proactive AssistanceCombining Logical and Probabilistic Reasoning

Page 49: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 49

Information Access via Provenance

Right-click on object opens Provenance Graph

email header in Outlookattachment in Outlookfile name in Windows Explorer

Resource

Page 50: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 50

Activity Recognition and Proactive Assistance

Recognize new instance of known workflow (e.g., homework assignment)course, deadline, URL

Automatically add to the TODO list Automatically download assignmentWhen commanded, upload solution

Two Agent System:User: state action state action state action …CALO:

watches observable user behaviorinfers unobservable state (goals, plans)takes autonomous action to minimize expected cost to the user

Some actions are coordination actions

ComputerAssistant

st st+1ut

ctot

Page 51: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 51

Integrating Logic and Probability: Markov Logic

Knowledge base: weighted formulas in first-order logic over finite domainsProbabilistic interpretation:P(truth assignment) = 1/Z exp[∑ weight of satisfied formulas]

InferenceFind most likely truth assignmentWeighted Max Satisfiability Compute probability of a ground formula or ground literatalMarkov Chain Monte Carlo (MCMC) method based on slice sampling (Gibbs Sampling)

Page 52: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 52

Summary

1. Instrument desktop applicationsPublish/Subscribe architecture; MySQL back end

2. Define/discover the user’s “tasks”User enters hierarchy of tasks

3. Associate events/resources with tasksUser declares current taskAll events/resources are associated with that taskTask Predictors can predict current task instead

4. Build/modify interfaces to provide easy access to relevant resources and events

Task ExplorerFolder PredictorTask Notes

Page 53: TaskTracer: Toward a Task-Oriented Desktop Interfaceweb.engr.oregonstate.edu/~tgd/talks/haifa-2008.pdf · Activities are the key abstraction for ... Instrumenting the Desktop: Publisher-Subscriber

11/19/2007 Oregon State University 53

Acknowledgments

Jon Herlocker: visionary and project leaderSimone Stumpf: project managerMargaret Burnett: end-user design and evaluationKevin Johnsrude and Jed Irvine: software architect, software engineerLida Li, Jianqiang Shen: Task & Email PredictorsXinlong Bao: Folder PredictorMany other students, both undergrad and gradFunding Agencies:

NSF: MKIDS programDARPA: PAL/CALO programIntel