[comp.human-factors] adaptive interfaces

mgreen@cs.toronto.edu (Marc Green) (06/20/91)

From the tone of the posts, it's clear that many people view adaptive
interfaces as some sort of HCI silver bullet. Well, there as many
arguments to be made against adaptive interfaces as for them.

The major problem is that the system's response is not completely
predictable. People like machines to be slaves and to know that the
same thing will have everytime. Moreover, an adaptive interface is
going to make a lot of mistakes. Any diagnostic system, including ones
which have to diagnose user intentions, makes errors. And Imagine the
poor user when he tries to do something new for the first time and the
interface keeps classifying as it some previously learned intention.
You've got all the problems of HCI and all the problems of AI rolled
into one. 

I'd put my money on customizable systems or systems which give advice
on how to use more advanced features to accomplish a task more easily.
This still puts the user in control, and that's where he wants to be.

Marc Green
Trent University

mcgregor@hemlock.Atherton.COM (Scott McGregor) (06/21/91)

In article <91Jun19.155043edt.6300@neat.cs.toronto.edu>,
mgreen@cs.toronto.edu (Marc Green) writes:

> The major problem is that the system's response is not completely
> predictable. People like machines to be slaves and to know that the
> same thing will have everytime. 

My experience with developing adaptive interfaces is that the above
statement is an oversimplification of a more subtle point. As a result,
it throws out
the baby with the bathwater.  My empirical observations do not suggest
that people want slavish predictability, rather they want the ability to
form useful habits.  Normally this implies a certain amount of
predictability, and
repeatability, but it is not necessarily a slavish form.  For instance,
consider a scrolling list of items.  An alphabetical layout may be more
predictable, but a layout based upon putting the last used items at the
top may be more convenient--and in cases where the same object is worked
on for a long time, this allows the formation of a habit (grab item at
top of the list) that might not be developed with the alphabetic list. 
Now in the case
of the alphabetic list, you don't have to know any previous state to
know where to look--so it is more predictable, but less useful if
presumption of former
state can be taken for granted.  There are many other common examples of
this sort of adaption based upon past state: E.g. the Macintosh root
window remembers your previously open folders, IBM SPF remembers
previous used field entries, etc.  The more slavishly unchanging typical
unix login sequence:
"login:, password:, cd $HOME, shell prompt" is actually frequently more
disatisfying to many users than the remembered Macintosh style boot-up,
and this has lead to various different desktop approaches (X.desktop,
LookingGlass, HP VUE) which are now trying to provide this level of
adapatability as well.  

Now this is only a very limited level of adaptability (often so limited
that many people neglect it), but even it is sufficient to demonstrate
how slavish application of such generalizations concerning predictability
can interfere with usability improvements.  This extends to many other
more complex adaptive situations, such as the EAGER hypercard macro generator
discussed in the most recent CHI proceedings, or the Prescient Agent X
windows system described in the May '90 HP Professional.

Thus, a better way to state the general truth that Marc was trying to
convey is: "if an adaptive interface interferes with habit formation,
then it will annoy people, and reduce usability."

> Moreover, an adaptive interface is going to make a lot of mistakes.
> Any diagnostic system, including ones which have to diagnose user 
> intentions, makes errors.

This is obviously true.  However, it does not necessarily follow that
the cost of the error will matter to the user.  For instance, consider
an adaptive interface used in an application to allow the user to choose 
a different a file to work on.  The first time the application is used,
the pull down menu for new file selection just allows the user to type
in a new file name.  After that, the user can still have the ability to
select files by typing in the name, but can also choose from recently
used files automatically added to the list.  An additional filename
added to the menu that the user
doesn't care about is in one sense an error, but it doesn't interfere
with the users actions so it is not annoying (additional examples of
this sort of
error are discussed in the Prescient Agents paper.

> And Imagine the poor user when he tries to do  something new for the
first   > time and the interface keeps classifying as it some previously
learned
> intention.

If it gets in the way, then it is a bad interface, adaptive or not.  But
that doesn't mean that all adaptive interfaces interfere in this way, and so
not all adaptive interfaces are bad.  They aren't all necessarily good
either. This is not an area to go about designing by mechanically
applying generalizations -- there is still considerable individual
talent components to designing good interfaces.

> I'd put my money on customizable systems or systems which give advice
> on how to use more advanced features to accomplish a task more easily.
> This still puts the user in control, and that's where he wants to be.

Advice and user directed customization aren't the only ways to leave the
user in control. Sometimes the user's reactions to advice or the possibility of
customization is frustration that the computer doesn't just do it.  (Or
at least offer to do it!).  Many thoughtful adaptive interfaces do leave
the user in control.  My paradigm for an adaptive interface in our
prescient agent work was M*A*S*H's company clerk Radar O'Reilley whose
ability to "precache" answers to unasked questions facilitated his
colonel's productivity instead of interfering with it. Adaptive
interfaces can also be more like a "let me do it 2 year old" too, but
they don't have to be, and shouldn't be judged solely on the worst case
situation alone.

Scott McGregor
Atherton Technology
mcgregor@atherton.com

de5@ornl.gov (Dave Sill) (06/21/91)

This is my second attempt to reply to this article, so bear with me if
you somehow saw the first.

In article <91Jun19.155043edt.6300@neat.cs.toronto.edu>, mgreen@cs.toronto.edu (Marc Green) writes:
>
>The major problem [with adaptive interfaces] is that the system's
>response is not completely predictable. People like machines to be
>slaves and to know that the same thing will have everytime. Moreover,
>an adaptive interface is going to make a lot of mistakes. Any
>diagnostic system, including ones which have to diagnose user
>intentions, makes errors. And Imagine the poor user when he tries to
>do something new for the first time and the interface keeps
>classifying as it some previously learned intention. You've got all
>the problems of HCI and all the problems of AI rolled into one. 

I think you're talking about *predictive* interfaces, not *adaptive*
interfaces.  The way I see it, there are at least the following major
different types of interface.

STATIC: The command set doesn't change from user to user or session
to session, although small changes may occur as the software is
refined.

CUSTOMIZABLE: The command set can be altered by the user to include
new commands or modify the behavior of commands or the appearance of
the interface.  The IF will tend to vary widly from user to user but
remain fairly constant from session to session once customization is
accomplished.

ADAPTIVE: The command set and appearance of the IF are adjusted
automatically by the software in an attempt to streamline the IF based
on a particular user's usage patterns.  For example, frequently
selected menu items might migrate toward the tops of the menus, or new
compund commands might be created and advertized that implement
frequently executed command strings.

PREDICTIVE: The software attempts to predict the user's intended
sequence of actions before it's fully specified.  For example, if a
user always types "ls" after "cd", the IF might automatically execute
the "ls".

>I'd put my money on customizable systems or systems which give advice
>on how to use more advanced features to accomplish a task more easily.
>This still puts the user in control, and that's where he wants to be.

If the interface is implemented well, the user will be in control,
regardless of whether it's adaptive or predictive.

-- 
Dave Sill (de5@ornl.gov)	  Tug on anything in nature and you will find
Martin Marietta Energy Systems    it connected to everything else.
Workstation Support                                             --John Muir