[ACT-R-users] Model of writing

Don Morrison dfm2 at cmu.edu
Thu Aug 26 09:11:28 EDT 2010


On Tue, Aug 24, 2010 at 1:18 PM, Bonnie John <bej at cs.cmu.edu> wrote:
> Don (Morrison), can you please respond with an explanation of how CogTool
> produces ACT-R code that types as fast as it does and how that ACT-R code
> does what it does?

First off, for those that may not be familiar with CogTool's use of
ACT-R:

For ordinary CogTool use, where we're modeling a skilled user's
behavior, we use ACT-R in an unnaturally constrained fashion, where
we're essentially telling it what to do at every step of way. We use a
step counter to force a path through the various productions. Our Java
code, by examining the interface we're interacting with and our path
through it emits a lot of productions, though at any point in time
during ACT-R's execution of these productions only one or two of them
can ever possibly match the current goal. We also peg the random
number generator seed at the beginning of a run to ensure
reproducible behavior.

For typing ordinary, running text we emit one production per
character, plus one additional production per word of length longer
than one. Because of the step counter, all of these productions must
fire in order.

Within the Java code emitting the productions we keep track of which
hand is being used for each key, and structure the relevant
productions slightly differently depending upon hand use. We also
slightly augment the trace information that ACT-R writes to display
the hand being used.

The productions corresponding to characters perform a press-key on the
appropriate key. They wait on motor preparation being free. In
addition, if it is the start of a new word, or the previous key was
pressed with the same hand, we also wait on motor execution being
free. However, if we are within a single word, and using opposite
hands, we allow the executions to overlap.

When starting a new word we also emit another production, to account
for the behavior Bonnie's research on typing indicated happens. This
production essentially does nothing but advance the step counter and
consume 50ms, while waiting on both motor preparation and execution to
be free.


-- 
Don Morrison <dfm2 at cmu.edu>
"After all these years I have observed that beauty, like happiness,
is frequent. A day does not pass when we are not, for an instant,
in paradise."
         -- Jorge Luis Borges, _Los Conjurados_, tr Willis Barnstone



More information about the ACT-R-users mailing list