150 likes | 251 Views
Adaptive Goal Recognition. Neal Lesh. Presented by Don Patterson. Goal Recognition. To infer a person’s intentions given a partial view of their actions Let A be a sequence of actions ( A*) Let G be a set of goals ( G*) A recognizer R : A* ( G* {nil})
E N D
Adaptive Goal Recognition Neal Lesh Presented by Don Patterson
Goal Recognition • To infer a person’s intentions given a partial view of their actions • Let A be a sequence of actions (A*) • Let G be a set of goals ( G*) • A recognizer R : A* ( G* {nil}) • a program that takes an action sequence and predicts a goal or declines to make a prediction 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Adaptive Goal Recognition • Adds modifiers to R • Let T* be a set of adaptations • A recognizer RT is a recognizer that has had a subset T of T* applied to it. • To personalize we will remember a different set, T, for each person 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Examples • A:(get pan,get egg,put butter in pan) • G*:(cook an egg, clean-up) • R(A): • if (get egg) A ) • then predict G = (cook an egg) • else predict G = (clean-up) 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Examples • A: (get pan, get egg, put butter in pan) • G*:(cook an egg, clean-up) • T: (put butter in pan) • RT(A): • if ((get egg) A ) or ((T A) {nil}) • then G = (cook an egg) • else G = (clean-up) 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Metrics • How are we going to compare our adapted recognizers? • Accuracy: How many times did RT(A) return the correct goal, G? • Coverage: How many times did RT(A) return non-{nil}? How many times did it make a guess? • Score: a function which unifies accuracy and coverage: • S(accuracy, coverage) 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Adapt the goal recognizer • Let D be the training data • Consists of a set E of “episodes” • An episode is a start state and a sequence of actions (S,{a1,a2,a3,…,an}) • Estimate(R,D) • Returns Accuracy and Coverage of R on D • Running time • Verify the true goal |E| times, once per training example. • Execute the Recognizer |E| * n. Once for every action in the training example. • R({a1} • R({a1,a2}) … • R({a1,a2,a3,…, an}) 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Adapt the goal recognizer • Adapt(R,T,D) • Greedily add adaptations to RuntilEstimate(RT,D) reaches a local maximum. • Running time • O(|T|2) calls to Estimate • Overall run time: • O(|T|2*[|D|*(O(Verify)+n*O(RT))]) • O(|T|2*|D|*n*O(RT)) 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Validation • Robustness to systematic non-goal oriented actions inserted into the training data: • Example: Every time I turn on the stove I open the door to check that nothing is in it. • Example: Every time I type “cd” I also type “ls” regardless of what I’m doing. • Ability of the goal recognizer to help • How often does the computer make a correct guess? • Impact of noisy training data 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Robustness 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Robustness 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Ability to Help 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Impact of Noise 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Observations • Strengths: • Recognizer independent • Proofs of trade-off between accuracy and coverage • Unsupervised 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh
Challenges for Assisted Cognition • Adapt assumes discrete adaptations • Probabilities and continuous parameters are probably going to need to be handled. • Adaptations must be well chosen • This specific recognizer/adaptation pair wouldn’t appear to handle random noise well • If actions are identified incorrectly then the system will likely fail. 590 HK Spring 2002: Adaptive Goal Recognition by Neal Lesh