<<

Programming by Demonstration

An Inductive Learning Formulation

Tessa A Lau and Daniel S Weld

Department of Computer Science and Engineering

University of Washington

Seattle WA

Octob er

ftlau weldgcswashingtonedu

ABSTRACT Applications that supp ort macros allow users to

a xed sequence of actions and later replay this

Although Programming by Demonstration PBD has

sequence using a shortcut such as a mouse clickora

the p otential to improvethe pro ductivityof unsophis

keypress Macros require little sophistication to cre

ticated users previous PBD systems have used brittle

ate the user simply records a normal interaction

heuristic domainsp eci approaches to executiontrace

with the application however macros have limited

generalization In this pap er we dene two application

utility if the rep etitive task has minor variations

indep endent metho ds for p erforming generalization that

are based on wellundersto o d machine learning technol

ogy TGen uses versionspace generalization and

Scripting languages allow sophisticated users to write

vs

TGen is based on the FOIL inductive logic pro

programs to control the application While this typ e

foil

gramming algorithm We analyze each metho d b oth

of customization allows a user the most control it

theoretically and empirically arguing that TGen has

also requires programming exp erience and knowledge

vs

lower sample complexity but TGen can learn a

of the p otentially complex scripting language and ap

foil

muchmoreinteresting class of programs

plication interface

Keywords

Programming by Demonstration PBD aims to

Programming by Demonstration machine learning in

combine the simple interface of macros with the expres

ductive logic programming version spaces

siveness of a scripting language Like a macro recorder

PBD allows users to construct a program by simply p er

INTRODUCTION

forming actions in the user interface with which they are

already familiar Unlike macros however the learned

Computer users are largely unable to customize mass

programs can contain control structures suchas itera

pro duced applications to t their individual tasks This

tion conditionals and abstraction

problem of enduser customization has b een addressed

A complete PBD system consists of two ma jor parts

in several ways

The trace generalizer constructs a programmatic repre

Adjustable preferences and defaults are simple to use

sentation of the users actions by generalizing from an

but limited to those options considered imp ortantby

execution trace to a program capable of pro ducing that

the application designer

trace The interaction manager explains the resulting

program to the user and gains authorization b efore ex

Our researchwas greatly improved by discussions with

ecuting the program on the users b ehalf

and comments from Greg Badros Alan Borning Adam

Example Supp ose a user p erformed the following

Carlson William Cohen Pedro Domingos Michael Ernst

Oren Etzioni Neal Lesh Alon Levy and Mike Perkowitz

sequence of actions using an email application

This researchwas funded byOceofNaval Research Grant

N by National Science Foundation Grant

Goto Message whose sender is Corey

IRI and by ARPA Rome Labs grant F

Goto Message whose sender is Oren

Goto Message whose sender is Dan

Forward the current message to Tessa

Goto Message whose sender is Corey

Goto Message whose sender is Dan

Forward the current message to Tessa

Goto Message whose sender is Corey Goto Message whose sender is Corey

sequences Cima learns text editing commands by Given this execution trace a PBD trace generalizer

example it relies on user hints rather than multiple ex might conjecture that the user is forwarding to Tessa

amples to disambiguate p ossible programs Chimera all email sent from Dan and output the fol

generalizes constraints b etween graphical ob jects from lowing pro cedure

multiple snapshots and provides a macrobyexample fa For each message m in Mailbox

cility for creating macros in a graphical editing domain Gotom

Tinker supp orts programming Lisp by demonstra If Senderm is Dan

tion but p erforms no inference instead relying on the Then Forwardm Tessa

user to disambiguate the examples The PBD systems interaction manager would describ e

These PBD systems all rely on heuristic rules to the pro cedure to the user accept any usersp ecied re

nements to the program oer to execute the co de

describ e when a generalization is appropriate These

highlight the resulting eects and implement an undo

heuristics make PBD systems like the rulebased ex

p ert systems on which they are mo delled brittle lab o facility

This pap er fo cuses on the problem of PBD trace gen

rious to construct and dicult to extend For instance

Eager is hardco ded to recognize a xed set of sequences eralization Previous PBD systems have used brittle

over which a user may iterate suchas the email mes heuristic approaches In contrast we dene two ro

bust applicationindependent metho ds for p erforming

sages in a mailb ox or the days of the week Peridot uses

a set of domaindep endent conditionaction rules to in generalization based on wellundersto o d machine learn

fer constraints and lo ops Unfortunately these fragile ing technology

heuristics must be handcrafted for each domain In

Versionspace generalization TGen

vs

contrast weadvo cate using established machine learn

ing techniques to p erform robust trace generalization

Inductive logic programming TGen

foil

As we demonstrate in the remainder of this pap er our

approach also yields low sample complexity TGen

We theoretically and empirically analyze these two im

vs

and TGen are capable of generalizing from a small

plemented systems oering a rational reconstruction of

foil

numb er of training examples

asp ects of the Eager PBD system TGen can

vs

Others have considered applying domainindep endent

learn with fewer examples but TGen can learn a

foil

algorithms to PBD Witten et al identify shortcom

much more interesting class of programs such as pro

ings in current machine learning approaches when ap

grams with variablelength lo op iterations For exam

plied to PBD such as an inability to take advantage

ple TGen quickly learns a program equivalentto

foil

of domain knowledge or user hints Paynter sketches

the one shown ab ove from the training examples shown

out a generalpurp ose PBD framework using machine

PRIOR WORK

learning NevillManning and Witten de

scrib e a lineartime algorithm for detecting hierarchical

A complete PBD system is comp osed of trace general

structure in sequences by generalizing a grammar from

izer and interaction manager comp onents Generalizing

rep eated subsequences in a single example Their al

from an execution trace to a program involves among

gorithm is elegantly simple but it is not obvious how

other things determining the length of an iterativeloop

to apply background knowledge to bias the generated

noticing regular changes in each iteration of suchaloop

grammars

and recognizing conditional constructs The interaction

Plan recognition typically requires a large li

manager on the other hand explains the generaliza

brary of p ossible plans whicharechecked against user tion to the user and obtains authorization for program

actions This work maybeviewed as inductive learning execution Although prior PBD systems have made sig

with a very strong bias the plan library Bauer

nicantcontributions to b oth of these comp onents our

presents algorithms for constructing plan libraries from work is restricted to trace generalization so wefocuson

a corpus of logged user traces and optional action mo d that asp ect in this discussion

els Weida and Litman use terminological sub

Cypher describ es many PBD systems The Ea

sumption with temp oral constraintnetworks to match ger system detects and automates rep etitive ac

execution sequences with library plans Lesh and Et

tions in Hyp ercard applications Each user action is

zioni adapt the version space algorithm to p erform

compared against the action history using a pattern

goal recognition with an implicit planlibrary represen matching scheme Once the system detects a rep eti

tation which is constructed by reasoning ab out action

tive sequence it highlights its prediction of the

preconditions and eects action and oers to automate the remainder of the se

Our work is similar to previous machine learning ef quence Peridot allows programmers to construct

forts at developing selfcustomizing software Schlim user interfaces bydrawing them interactively It uses a

mer and Hermens describ e a notetaking system set of conditionaction rules to determine when to infer

that predicts what the user is going to write and fa constraints over widget placement and iterations over

cilitates completion the system works by learning a matches anytwoaction sequence whose rst command

nite state machine FSM mo deling note syntax and copies the sub ject into the clipb oard and whose second

decision tree classiers for eachFSM state Maes and action pastes the clipb oard into some le Ahyp othesis

Kozierok use nearestneighbor learning adjusted with k wildcards corresp onds to a PBD pro cedure with

by user feedback to predict the users next action from a k nested lo op FindS requires a generaltosp ecic

the action most recently executed but in contrast to order so wesay that hyp othesis h is equal to or more

our work there is no attempt to learn lo ops general than h if and only if for each conjunct c in h

 i 

the corresp onding conjunct in h either is equal to c or

i

PBD AS AN INDUCTIVE LEARNING PROBLEM

is the wildcard symbol

By watching a users actions a PBD system must induce

Example Consider the following simple execu

the abstract pro cedure that the human is executing In

tion trace adapted from the Eager pap er inwhicha

this section we consider two dierentways of enco ding

horizontal line separates the lo op iterations

PBD trace generalization as an inductive learning prob

Goto message whose sender is Dan

lem

Copy its sub ject to the clipb oard

Paste from the clipb oard into File

In the versionspace enco ding each example is an it

Goto message whose sender is Tessa

eration of a lo op ie an ordered sequence of actions

Copy its sub ject to the clipb oard

and the system generalizes from multiple iterations

Paste from the clipb oard into File

In the inductive logic programming enco ding exam

In TGen the previous trace is enco ded as shown

vs

ples are relational descriptions of individual user ac

below We have chosen to represent only a single at

tions and the system learns a Datalog program an

tribute of Gotos message argument the messages

ordered set of rstorder rules that predict the next

sender This choice is critical since an omitted attribute

action to b e executed

eg length or date will never be considered during

In the remainder of this section we elab orate on these

generalization This choice is indep endent of the learn

enco dings and discuss their relativeadvantages

ing algorithm and need only b e done once p er applica

tion in addition its simpler and less restrictive than

Version Space Enco ding

handco ding a pro cedure

Version space algorithms use a generaltosp ecic

Act Arg Sender Act Arg Act Arg

ordering among p ossible hyp otheses to maintain a com

Goto Dan Copy Sub j Paste File

pact representation the set of maximally sp ecic and

Goto Tessa Copy Sub j Paste File

the set of maximally general hyp otheses of the version

Using this conjunctivehyp othesis language TGen

space the set of expressible hyp otheses which are con

vs

quickly pro cesses the two examples shown ab ove and

sistent with the training data to date The intuition

returns

underlying this algorithm is simple p ositive examples

result in changes generalizations to the set of maxi

Act Arg Sender Act Arg Act Arg

mally sp ecic hyp otheses while negative examples cause

Goto Copy Sub j Paste File

the set of maximally general hyp otheses to be rened

as the most sp ecic consistent hyp othesis In other

made more sp ecic Since we are only interested in

words TGen predicts that the user is trying to copy

vs

the most sp ecic hyp otheses consistent with the train

the sub jects of all messages regardless of sender or mes

ing examples we only need the FindS half p

sage numb er into File

of the full algorithm

Our version space approach has both strengths and

TGen uses version spaces to perform trace gen

vs

weaknesses On the plus side the algorithm is sim

eralization by considering each lo op iteration to be a

ple fast and can generalize from two examples This

p ositive example enco ded as a feature vector with a

low sample complexity is due to the very strong bias

column for each command argument and optionally

aorded by a conjunctivehyp othesis language

argument attributes We adopt a simple conjunctive

This strong bias is also resp onsible for a ma jor limita

hyp othesis language with wildcards the se

tion The hyp othesis language is incapable of expressing

mantics of this representation is simple a hyp othe

a program that saves messages from Dan in one le and

sis represents the set of examples lo op iterations that

messages from anyone else in another

match the pattern For example the hyp othesis

Example Given the following training data

Cmd Arg Cmd Arg

Act Arg Sender Act Arg Act Arg

Copy Sub j Paste

Goto Dan Copy Sub j Paste File

We use Mo oneys Common Lisp versionspace im

Goto Tessa Copy Sub j Paste File

plementation available at ftpftpcsutexasedupub

Goto Dan Copy Sub j Paste File

mooneymlcode

Goto Oren Copy Sub j Paste File

ActionTyp e act act actN

the TGen system pro duces

vs

CommandTyp e goto copy paste

Act Arg Sender Act Arg Act Arg

ArgumentTyp e arg arg argN

Goto Copy Sub j Paste

TextTyp e sub ject

which corresp onds to an unintuitiveloopin which the

FileTyp e le le

user saves each message regardless of sender to al l les

MesgTyp e mesg mesg mesgM

Note that the hyp othesis language is incapable of ex

SenderTyp e dan oren tessa corey

pressing a program that saves messages from Dan in

one le and messages from all others in another

CommandActionTyp e CommandTyp e

One might sidestep this problem bydeveloping a more

ArgumentActionTyp e ArgumentTyp e

expressivehyp othesis language with limited disjunction

BeforeActionTyp e ActionTyp e

but there is a more serious problem it cannot handle

InSeqMesgTyp e MesgTyp e

variablelength lo op iterations such as the one in exam

TextOfArgArgumentTyp e TextTyp e

ple While the featurevector approach is an improve

FileOfArgArgumentTyp e FileTyp e

ment over macros in that it handles a restricted class

MesgOfArgArgumentTyp e MesgTyp e

of conditional lo ops it breaks down if the individual

SenderOfMesgMesgTyp e SenderTyp e

lo opiterations have a dierent number of actions be

CurrentMesgActionTyp e MesgTyp e

cause the onetoone corresp ondence b etween actions in

PrevCommandActionTyp e CommandTyp e

the iterations is lost To address this problem we next

consider a much more expressivehyp othesis language

Figure Email ontology Typ es and relations used in

recursive Datalog programs

describing the PBD learning problem Target relations

are in b old and logically redundant relations added to

Inductive Logic Programming FOIL

reduce sample complexity are in italics

An ILP learner suchas FOIL is a rstorder ex

tension of a decision rule learner It takes as input a set

Examples corresp ond to individual actions instead of

of relational training examples classied into those that

lo op iterations This circumvents the problem with

are examples of a target concept the p ositive examples

variablelength lo ops and enables a simpler user in

and those that are not From these examples the algo

terface in which the user need not manually identify

rithm learns an ordered set of Horn clauses that describ e

separate iterations but it makes the learning problem

the training examples in terms of the input relations

harder

The learner employs a sequential covering algorithm

which creates a rule to explain a subset of the p ositive

We enco de a simple mo del of time so the learner can

training examples then removes these examples and re

utilize the order in which actions are executed when

learns on the remainder until all p ositive examples have

generalizing The feature vector enco ding cannot ex

been covered

press this information

Each rule is grown from general to sp ecic The

The closed world assumption CWA provides

learner starts out with the empty rule a Horn clause

negative training examples if the second command

with the target relation as its head and an empty body

is Save message to le then the second command

and then adds conjunctive literals to the rule until a

is not everything else Its imp ossible to exploit these

stopping criterion is met Ateach step the learner p er

negative examples without a notion of time b ecause

forms a search for the b est literal based on an informa

the user mighteventually execute any action

tion gain heuristic The literals considered in the search

include instantiations of relations in the domain equal

We illustrate our TGen algorithm in terms of a

foil

ity over variables in the rule and negations of any of

hyp othetical email application Background informa

the ab ove the b est of these literals is added to the rule

tion ab out a users past interactions with the email

Once the rule covers only p ositive training examples it

application is enco ded in terms of a predicate calcu

is considered complete

lus ontology Email whose typ es and primitive rela

In summary the algorithm can be viewed as a hill

tions are shown in Figure This ontology is based

climbing searchover the space of conjuncts of literals

on actionswhich are the op erations p erformed by the

based on an information gain heuristic

user in the interface eg going to a message copying a

sub ject to the clipb oard or pasting from the clipb oard

FOIL Formulation of PBD

into a le Each action is comp osed of an command

The enco ding of user actions for FOIL diers from the

eg goto copy or paste and an argument that rep

feature vector enco ding in four ways

resents the argumentof that command eg the th

A predicate calculus ontology instead of feature vec message in a mailb ox the sub ject of the currentmes

tors enco des data ab out training examples sage File Messages are structured ob jects eg mes

Action Command Arg Message Text File Sender CurrentMesg PrevCommand

a goto arg mesg dan null null

a copy arg sub ject mesg goto

a paste arg le mesg copy

a goto arg mesg tessa mesg paste

a copy arg sub ject mesg goto

a paste arg le mesg copy

a goto arg mesg oren mesg paste

a copy arg sub ject mesg goto

a paste arg le mesg copy

Figure Compact display of training examples in the Email ontology Eachline in the table represents a single

p ositive training example The last two columns are redundant attributes which sp eed learning

sages have a sender attribute that describ es who sent TGen learns the following rules for argument

foil

the message The Before relation enco des background given the same training data

knowledge ab out the ordering of actions Beforee

i

e holds if and only if action e is the immediate suc

j j

argumentARprevcommandA goto textofargRT

cessor of action e The InSeq relation expresses back

argumentARprevcommandA copy fileofargRF

i

argumentARcurrentmesgA M prevcommandA

ground knowledge ab out the ordering of messages in a

paste mesgofargRN inseqMN

sequence and facilitates recognition of lo ops which it

argumentARcurrentmesgA null

erate over message sequences A full PBD application

mesgofargRmesg

would also include sequencing relations for other com

mon sequences eg days of the week

The rst rule states that action A has argument R

User actions are converted into a set of literals in

if the previous command was a goto and R has some

this ontology For example if the users rst move

asso ciated text T the learner has exploited the fact that

is to Goto message whose sender is Dan this

Sub ject is the only known text attribute The second

action is represented byaddingcommandact goto

rule is similar it says that if the previous command

argumentact arg mesgofargarg mesg

was a copy then the argument to the next command

and senderofmesgmesg dan to the background

will be an argument with a fileofarg attribute ie

theory In addition the closed world assumption is used

file The third rule predicts the argumenttoa goto

to add negative literals ensuring that for example

command If the previous command was a paste then

act has only one command and one argument

the argumentwill be an argument R whose message

TGen learns two ordered sets of Horn clauses

foil

N follows directly after in sequence with the current

which resp ectively predict the users next command and

message M The fourth rule is akin to the last command

the argumenttothatcommand

rule ab ove it is only generated to classify the argument

For example Figure shows nine p ositive training

of action act has no predictive value and could be

examples in a compact form It represents the rst three

pruned

iterations of a lo op in which the user is copying the

In this simple example TGen requires negligi

foil

sub ject of successive messages regardless of sender and

ble CPU time and only nine p ositive examples which

pasting them into le Given these training examples

corresp onds to three iterations of the users lo op

and their CWA complements TGen outputs the

foil

following program

commandAgoto prevcommandApaste

Conditional Lo ops

commandAcopy prevcommandAgoto

commandApaste prevcommandAcopy

To test the power of our inductive logic programming

commandAgoto prevcommandAnull

framework we showhow it is able to learn some lo ops

These rules allow a PBD system to predict the users

involving conditional constructs

next command as follows if the command of the last

The rst conditional lo op revisits example rst de

action was a paste then she will next execute a goto

scrib ed in the section on version spaces It is similar

If she last executed a goto then the next command will

to the previous task example of copying all mes

be a copy and so on The fourth rule is only useful for

sage sub jects into a le but in this case the user copies

classifying the users rst command and has no predic

the sub jects of messages from Dan to File and copies



tivevalue it could b e pruned during p ostpro cessing

the sub jects of all other messages to File Using the

 Email ontology TGen learns Horn clauses which

foil

Alternativelywe could mo dify the FOIL learning algo

are equivalent to the following pseudo co de in itera

rithm so that it do es not attempt to classify act but simply

uses it when classifying subsequent actions tions p ositive training examples

VS FOIL

For each message m in Mailbox

actions Time actions Time

Gotom

Example

CopySubject

Example

If Senderm is Dan

Example

PasteFile

else

Figure Comparison of TGen and TGen The

vs foil

PasteFile

second column is the numb er of actions required to learn

the correct program Examples and contain three

Example rst presented in the intro duction is

actions per iteration while example has a variable

a conditional variable length lo op where one path

length lo op CPU times are in seconds on a Pentium

through the lo op contains two actions and the other

TGen receives each iteration as a single training

vs

path only contains one action Using the Email ontol

example TGen is not capable of learning correct

vs

ogy TGen learns Horn clauses equivalent to the

foil

programs for either examples or b oth of whichin

pseudo co de presented in the intro duction in as few as

volve conditionals

training examples seven iterations and CPU sec

onds on a Pentium

The next section describ es several exp eriments that

branching factor of the space searched byFOIL but

shed further light on the power of theTGen and

vs

it increases the path length for a solution and hence

TGen trace generalization metho ds

foil

increases the length of the resulting rules

EXPERIMENTAL RESULTS

Email adds to Email a redundant

In this section we rep ort the results of two exp eriments

beforeactionType actionType relation

First we compare the sp eed and sample complexityof

where before holds for two actions a and a if

i j

TGen and TGen on a small set of emaildomain

vs foil

and only if j i Assuming that the iterative

examples Next we measure the eect on TGen

foil

lo op is comp osed of exactly three actions before

sample complexityofseveral dierentontologies for rep

should allow the learner to induce the desired rules

resenting the email domain

with a shallower search at the cost of increased

branching factor Our motivation for Email is as

Comparison of Techniques

follows Since command and argument are learned

Figure compares TGen and TGen on the

vs foil

indep endently in Email one can imagine a PBD

three examples describ ed in the pap er Like Eager

system learning the easier command rules rst and

TGen learns programs only for example since the

vs

then adding a new lengthdep endent relation to help

remaining examples involve conditional constructs Al

sp eed induction of argument

though TGen requires an additional iteration to

foil

correctly learn this program it is able to learn condi

The Combined Action ontology replaces

tional programs not expressible in TGen These re

command and argument with a new target

vs

sults show that our machine learning approachdoesas

relation actionactionType commandType

well as or almost as well as Eagers heuristic pattern

argumentType which relates an action to both

matchingbased approach which required iterations

a command and an argument It is motivated by

for example

the observation that the command and argument

relations in Email are separate and hence learned

Ontological Comparison

indep endently p erhaps this makes the problem

harder

The choice of an ontology has a very signicant impact

on learnability In the course of developing TGen

foil

The Big Relation ontology replaces command

we exp erimented with a numb er of dierentontologies

and argument with the target relation

b efore converging to the Email ontology In this sec

actionactionType commandType mesgType

tion we compare the sample size and CPU times during

textType fileType senderType The ontology

induction of rules for argument in example from the

was designed as an attempt to reduce the number of

previous section using the following ontologies

conjuncts in each rule Instead of learning command

and argument in terms of a numb er of small selector

Email is the standard ontology dened in the previ

relations the system is given examples of and must

ous section

learn this single target relation

Email is the same as Email except the redun

dant currentmesg and prevcommand relations are Figure shows the results of this exp eriment The

removed Eliminating these relations decreases the Email ontology required the fewest training examples

Actions CPU Time

deal with noisy data Both of our implementations

Email

would be confused if the user inserted an irrelevant

Email

action or switched the order of two actions in subse

Email

quent iterations even if the ordering is unimp ortant

Combined Action

Planningstyle reasoning with preconditioneect mo d

Big Relation

els might alleviate this typ e of noise The segmen

tation problem can b e viewed as a dierenttyp e of noisy

Figure Comparison of sample size and CPU times for

data Throughout this pap er wehave talked ab out gen

dierent ontologies The Actions column rep orts

eralization of pristine traces from which nonrep etitive

the number of training examples required to learn the

actions have b een pruned but a PBD system should b e

correct program each iteration of the program is three

capable of identifying the correct subsequence to gener

steps long TGen was unable to learn the correct

foil

alize One promising approach is to use data mining to

program for the Big Relation ontology in fewer than

learn only nuggets of high predictivevalue rather than

training examples and several hours Times are

attempting to classify the entire training set

rep orted using Quinlans FOIL on a Pentium running

Finallywe plan to increase the breadth of our work

Linux and are measured in seconds

by incorp orating it into a signicant application such

as Microsoft Oce addressing interaction management

and p erforming user studies to quantify p otential b ene

to learn but Email was comparable The lo op

t

indep endent currentmesg and prevcommand give as

much b enet as before which hints ab out lo op length

CONCLUSION

TGen was unable to learn the correct program for

foil

the Big Relation ontology in under training exam

Previous approaches to Programming by Demonstra

ples and several hours This is unsurprising since the

tion have used brittle domaindep endent heuristics in

branching factor of the searchgrows exp onentially with

order to minimize the number of user actions which

the arity of the target predicate see Pazzani and Ki

have to be observed b efore the system can generate a

bler for an analysis of FOILs complexity

useful generalization In contrast we implement PBD

trace generalization as an inductive learning problem

FUTURE WORK

raising the p ossibility of a robust domainindep endent

metho d for applying PBD to any application Wehave

Our work raises a number of research questions The

develop ed two prototyp es TGen and TGen

primary concern for our TGen system is whether

vs foil

foil

and tested them in an email context motivated by Ea

it will scale as the domain b ecomes more complex and as

ger Both systems learn quickly TGen has gener

program complexity increases We can see several ways

vs

ally lower sample complexity due to a strong conjunctive

to address the issue of scalability prioritizing literals in

bias but TGen learns variable length conditional

order to direct the heuristic searchdown more promising

foil

lo ops which frustrate TGen TGen learns non

paths increasing the search bias by using FOCL to

vs foil

trivial programs with as few as four iterations Wehave

give the learner background information ab out previous

also measured the eect of the ontology on sample com

tasks or likely lo op lengths increasing bias by enco ding

plexity

commandargument agreement constraints as a gram

mar and learning with GRENDEL or asking the

user to disambiguate b etween several equally likely to

REFERENCES

the learner alternatives

M Bauer Acquisition of Abstract Plan Descrip

Other machine learning algorithms may prove b etter

tions for Plan Recognition In Proc th Nat

suited to PBD than either version spaces or inductive

Conf AI To app ear

logic programming Explanationbased generalization

might use mo dels of action preconditions and eects

William W Cohen Grammatically biased learn

to learn from a single example A prop ositional rule

ing learning logic programs using an explicit an

learner can learn disjunctive concepts and might elim

tecedent description language Articial Intel li

inate some of TGen s weaknesses Since machine

vs

gence

learning algorithms are often sensitive to the available

attributes it is imp ortant to exp eriment with alternate

ontologies and representations A prop ositional learner

Allen Cypher Eager Programming rep etitive

might b e able to handle actions as training examples if

tasks by demonstration In Allen Cypher editor

given a vo cabulary of program templates this approach

Watch What I Do Programming by Demonstra

has b een successfully applied to wrapp er induction

tion MIT Press Cambridge MA

Another op en question is how our system should

CG NevillManning and IH Witten Identify Allen Cypher editor Watch What I Do Program

ing Hierarchical Structure in Sequences Alinear ming by Demonstration MIT Press Cambridge

time algorithm Journal of Articial Intel ligence MA

Research

H Kautz AFormal Theory Of Plan Recognition

Gordon W Paynter Generalising Programming PhD thesis UniversityofRochester

by Demonstration In Proceedings Sixth Aus

David Kurlander Chimera ExampleBased

tralian Conference on ComputerHuman Interac

Graphical Editing In Allen Cypher editor Watch

tion pages Nov

What I Do Programming by Demonstrationpages

M Pazzani and D Kibler The utility of prior MIT Press Cambridge MA

knowledge in inductive learning Machine Learn

N Kushmerick D Weld and R Do orenbos Wrap

ing

p er Induction for Information Extraction In Proc

M Pazzani and D Kibler The utility of knowledge th Int Joint Conf AI

in inductive learning Machine Learning

Neal Lesh and Oren Etzioni A sound and fast goal

recognizer In Proc th Int Joint Conf AIpages

M Pollack Inferring domain plans in question

answering PhD thesis UniversityofPennslyvania

Neal Lesh and Oren Etzioni Scaling up goal recog

nition In Proc th Int Conf Principles of Know l

JR Quinlan Learning Logical Denitions from edge Representation and Reasoning pages

Relations Machine Learning

R Reiter On closed world databases In H Gal Henry Lieb erman Tinker A Programming by

laire and J Minker editors Logic and Data Bases Demonstration System for Beginning Program

pages Plenum Press mers In Allen Cypher editor Watch What I Do

Programming by Demonstration pages MIT

J Schlimmer and L Hermens Software agents

Press Cambridge MA

Completing patterns and constructing user inter

faces J Articial Intel ligenceResearch pages Pattie Maes and Robyn Kozierok Learning inter

face agents In Proceedings of AAAI pages

R Weida and D Litman Terminological Reason

ing with Constraint Networks and an Application David Maulsby and Ian H Witten Cima An

to Plan Recognition In Proc rd Int Conf Prin Interactive Concept Learning System for End

ciples of Know ledge Representation and Reasoning User Applications Applied Articial Intel ligence

Octob er

D Weld An intro duction to leastcommitment T Mitchell Generalization as search J Articial

planning AI Magazine pages Winter Intel ligence

Available at ftpftpcswashington

T Mitchell Machine Learning McGraw Hill

edupubai

Brad A Myers Peridot Creating User Interfaces

IH Witten CG NevillManning and DL

by Demonstration In Allen Cypher editor Watch

Maulsby Interacting with learning agents im

What I Do Programming by Demonstrationpages

plications for ml from hci In Workshop on Ma

MIT Press Cambridge MA

chine Learning meets HumanComputer Interac

tion ML pages July

CG NevillManning and IH Witten Detecting

sequential structure In Proc Workshop on Pro

gramming by Demonstration ML Tahoe City July