Abstract
In-keyboard isometric joysticks can give better
performance than mice for mixed typing/pointing tasks.
The continuing challenge is to improve such devices to the
point that they are preferable even for pure pointing tasks.
Previous work has improved joystick performance by
considering user perception and motor skills. This paper
considers the dynamics of the pointing operation. A
dynamic transfer function for an isometric joystick is
described which amplifies changes in the applied force to
increase responsiveness without loss of control. User tests
show a 7.8 +/- 3.5% performance improvement over a
standard non-dynamic joystick. This feature has been
incorporated into the TrackPoint III from IBM.
Introduction
Because of the importance of pointing operations in the use
of graphical user interfaces, much work has been done
[1,4,6] to develop and compare devices such as mice,
trackballs, and joysticks. Three major factors contribute to
the performance of these devices: switching from typing to
pointing, the pointing action, and switching from pointing
to typing [2]. Compared to a mouse, the in-keyboard
isometric joystick substantially reduces switching times,
but with some penalty in pointing [4,6]. Both of these
studies suggest that improved pointing devices could be
designed by concentrating more on increasing pointing
performance than reducing switching times.
Of particular interest is the transfer function, the mapping
of control input into cursor motion. A mouse transfer
function tends to be a simple physical mapping from
mouse position to cursor position (though complexities
such as "acceleration" are sometimes added). However, an
isometric joystick transfer function maps applied force to
cursor velocity. The best form of this relationship is not
immediately obvious, giving rise to many possible transfer
functions. Careful attention to the psychophysical details of
the transfer function has resulted in substantially improved
performance for the TrackPoint II [6]. This result shows
that not all joysticks are equivalent and leaves open the
possibility of continued performance improvements
through further innovation in transfer function design.
Most transfer functions depend only on the instantaneous
input force, i.e. a certain control action results in a certain
cursor motion independent of past control actions. Use of a
dynamic transfer function, one which depends on past
history, opens up new possibilities for enhancing pointing
performance. Felsenstein [5] designed such a dynamic
transfer function by adding smoothing filters which
prevent rapid changes in cursor velocity. Our experiments
have shown that this approach increases cursor
sluggishness. However by designing a transfer function
which amplifies changes in control action (an effect we
call Negative Inertia), we have substantially improved
pointing performance for isometric joysticks.
NEGATIVE INERTIA
The negative inertia concept comes from considering both
the natural world and control theory. In the natural world,
objects have inertia -- they require effort to get them going
and effort to stop them. While there is no significant
physical inertia in the isometric joystick system, there is a
subjectively equivalent effect in the delay between the
mental intention to change the applied force and the
muscular response. The result is a perceived sluggishness
and excessive user effort. This sluggishness can be
overcome by amplifying changes, i.e. assuming that slight
changes in control action indicate the user's intent for
larger action. Negative inertia acts on the user's
indications of intent, causing the cursor to respond with
less effort.
We can model the pointing task as a closed-loop control
system including the eye, hand, pointing device, and
display. The transient response of a control system can be
improved by adding dynamics. The most common
approach is to add derivative control [3], i.e. respond to the
rate-of-change of the control input. Negative inertia
corresponds to additive derivative control.
FIGURE 1: The negative inertia transfer function
Figure 1 illustrates the effect of the negative inertia filter.
The user applies an increasing force to begin a motion,
holds constant while cruising, and then reduces the force to
stop. The filter causes the motion to start and stop more
rapidly while not changing the cruising rate. The velocity
may actually become negative at the end of the motion
causing the cursor to "back up" slightly. This response
causes the cursor to be more responsive without loss of
control.
DEVELOPMENT AND TESTING
Negative inertia was incorporated into an existing IBM
TrackPoint II in-keyboard isometric joystick for testing.
We had to consider many different implementation details,
such as: should negative inertia be applied to the vector
force or only to its magnitude? Should a running average
or instantaneous values be used, and with what time
constant and gain? Should it depend only on the rate-of-
change or should the magnitude of the force be a factor?
Should it be applied to the control force or to the cursor
velocity?
We could imagine various answers to these and other
questions, so iterative user testing became a necessary
aspect of the development process. Our testing cycle had
three stages: testing by team members at one site, by team
members at another site, and then with users. We found
that problematic features that were overlooked by the
people writing the code were recognized quickly by team
members at the other site, especially since the different
sites had different biases for the subjectively optimal
experience. After an implementation appeared good at both
sites, we began testing with users. This methodology
allowed us to try many different variations quickly and to
avoid wasting time in unnecessary user tests.
These tests answered many questions which were
surprisingly important for obtaining improved performance
and subjective experience. For example, applying the
negative inertia filter to the vector velocity produced a
subtle, but irritating, weaving effect. As the direction of the
force on the joystick varied either consciously or
unconsciously, the negative inertia would amplify this
change and make the cursor move in a slightly different
direction than the instantaneous force on the joystick. Thus
the cursor would "fish-tail" slightly along its course. We
changed the implementation to apply the filter to just the
magnitude of the motion. We also observed that what was
intended to be a small, quick motion would often result in
a jump which was much larger than expected. We solved
this problem by using a non-linear gain in the negative
inertia to reduce its effect when moving at low speeds.
Our best implementation of negative inertia was tested on a
set of 16 subjects. The performance of 9 of these subjects
was measured quantitatively and the subjective responses
of all 16 were recorded. In the quantitative tests, subjects
did a series of selections with the cursor, moving random
distances between uniformly-sized targets. Several cycles
of switching between the normal TrackPoint II transfer
function and the negative inertia version familiarized the
users with the test and were used to verify the results. Four
users were tested with larger targets (size = 5 mm, average
index of difficulty = 4) and five with smaller targets (size
= 3 mm, average index of difficulty = 4.6). All nine
subjects showed improvement with negative inertia. The
larger target set showed a run-time improvement of
5.0 +/- 1.2%. The smaller target set showed an improvement
of 9.4 +/- 3.4%. These results are significant with p < 0.005.
Subjective preferences were recorded for all of the subjects.
Ten of the 16 preferred negative inertia, 5 indicated no
preference, and 1 preferred the standard transfer function.
This result is significant with p < 0.005. The five with no
preference were predominantly "low performance" users
who either moved very slowly or were erratic enough to not
notice the difference. Only one claimed to notice a
difference but not have an opinion. The one user who
disliked negative inertia was extremely erratic and
operated the device by tapping on it rather than using
smooth forces. The amplification of change made the
unsteady motions even more random resulting in a
negative opinion. Descriptive reasons given for preferring
negative inertia were very consistent: "more responsive",
"stops faster", and "less overshoot". Several claimed that
the gain was higher for the negative inertia model so that it
required less force to move and was less fatiguing to the
finger, though the gain was actually the same.
CONCLUSIONS
We observe consistently improved pointing performance
with an isometric joystick using a negative inertia transfer
function. We measure the improvement over all our tests to
be 7.8 +/- 3.5% for pure pointing tasks, with the greater
improvements for higher-difficulty targets such as
character selection. This improvement should be compared
with tests showing early versions of TrackPoint II to be
only 20% slower than a mouse for pure pointing tasks [6].
Unpublished tests of more recent versions of TrackPoint II
have shown that its performance can be within 5% of a
mouse for experienced users. Negative inertia, as a
continuation of our work to optimize the user-device
match, is a first step of incorporating dynamics into the
transfer function. The importance of subtle details of the
transfer function indicates that careful attention to
perception-motor limitations will produce more
improvements. Further study of dynamic transfer functions
and representing the pointing problem as a closed-loop
control system should continue to improve pointing
performance.
References
1. Card, S.K., English, W.K., and Burr, B.J. Evaluation of
Mouse, Rate-Controlled Isometric Joystick, Step Keys.
Ergonomics, 21(8):601-613, 1978.
2. Card, S.K., Moran, T.P., and Newell, A. The Keystroke-
Level Model for User Performance Time with Interactive
Systems. Comm. of the ACM, 23(7), 396-410, 1980.
3. D'Azzo, J.J. and Houpis, C.H. Linear Control System
Analysis and Design, McGraw-Hill, New York, 1981, �10-
7.
4. Douglas, S.A. and Mithal, A.K. The Effect of Reducing
Homing Time on the Speed of a Finger-Controlled
Isometric Pointing Device, Proc. CHI'94 Human Factors
in Computing Systems, ACM Press, 411-416.
5. Felsenstein, L. Method and Apparatus for Cursor
Motion Having Variable Response. U.S. Patent 5,012,231
(1991).
6. Rutledge, J.D. and Selker, E.J. Force-to-Motion
Functions for Pointing. Human-Computer Interaction --
INTERACT '90, Elsevier Science Publishers, 701-706.