490 likes | 548 Views
Cognitive Models. Contents. Cognitive Models Device Models Cognitive Architectures. Cognitive Models. Cognitive models are used to represent the users of interactive systems Models of user’s tasks and goals Models of the user-system grammar Models of human motor skills
E N D
Contents • Cognitive Models • Device Models • Cognitive Architectures
Cognitive Models • Cognitive models are used to represent the users of interactive systems • Models of user’s tasks and goals • Models of the user-system grammar • Models of human motor skills • Cognitive architectures which underlie these models
Unit Tasks • The models of tasks and goals all decompose these into simpler parts • One is always faced with the question of to what depth the decomposition should proceed • This is a question of granularity and it can proceed to the lowest level operations • We define the unit task as the most abstract task a user can perform that does not require any problem solving on the part of the user
GOMS • This models goal and task hierarchies • It stands for Goals, Operators, Methods, and Selection • Goals • These describe what the user wants to achieve • They also represent a memory point which can be used to evaluate what has been achieved
GOMS • Operators • These are the simplest actions the user performs to use the system • Pressing the ‘X’ key would be an operator • Methods • Often there is more than one way to accomplish a goal • Help could be by hitting F1 or by clicking the help button • These are referred to as two methods for the same goal
GOMS • Selection • Whenever there is more than one method to achieve a goal, a selection must be made • The choice of methods usually depends on the state of the system and the particular user
GOMS • GOMS models goals as a hierarchy GOAL: Iconize-window • [select GOAL: use-close-method • Move-mouse-to-window-header • Pop-up-menu • Click-close-option • GOAL: use-L7 method • Press-L7-key]
GOMS • The dots indicate the hierarchical level of each goal • GOMS uses this to decompose large goals into sub-goals • Note the use of select to indicate that there is a choice of methods • A typical GOMS analysis breaks a high-level goal into unit tasks which are further decomposed into basic operators
GOMS Uses • The analysis of GOMS goal structures can be used to create measures of performance • Assigning a time to each operator and summing the result yielded estimates within 33% of the actual values • The depth of the hierarchy can be used as a measure of how much the user must store in short-term memory
GOMS Uses • The selection rules can be used to predict the actual commands which will be used • In practice this allowed predictions of commands that were 90% accurate • The GOMS model has served as a basis for other models • It can be combined with other models to make more advanced predictions
Cognitive Complexity Theory • This is an extension of the GOMS model which provides improved prediction • It provides two parallel descriptions • Of the user’s goals • Of the system • The descriptions consist of a series of production rules of the form • If condition then action
Cognitive Complexity Theory • These rules are written in a LISP-like language • Let’s look at the description of how we would insert a missing space in text using the vi text editor
Cognitive Complexity Theory (select-insert-space IF(AND (TEST-GOAL perform unit task) (TEST-TEXT task is insert space) (NOT TEST-GOAL insert space) (NOT (TEST-NOTE executing insert space)) ) THEN ( (ADD-GOAL insert space) (ADD-NOTE executing insert space) (LOOK-TEXT task is at %LINE %COL) ))
Cognitive Complexity Theory (INSERT-SPACE-DONE IF (AND (TEST-GOAL perform unit task) (TEST-NOTE executing insert space) (NOT (TEST-GOAL insert space)) ) THEN ( (DELETE-NOTE executing insert space) (DELETE-GOAL perform unit task) (UNBIND %LINE %COL) )) (INSERT-SPACE-1 IF (AND (TEST-GOAL insert space) (NOT (TEST-GOAL move cursor)) (NOT (TEST-CURSOR %LINE %COL)) )
Cognitive Complexity Theory THEN ((ADD-GOAL move cursor to %LINE %COL))) (INSERT-SPACE-2 IF (AND (TEST-GOAL insert space) (TEST-CURSOR %LINE %COL) ) THEN ((DO-KEYSTROKE ‘I’) (DO-KEYSTROKE space) (DO-KEYSTROKE ESC) (DELETE-GOAL insert space)))
Cognitive Complexity Theory • CCT allows you to model GOMS like hierarchies • CCT also allows you to model concurrent goals since more than one rule can be matched at the same time • However, the main use of CCT is in measuring the complexity of the interface
Cognitive Complexity Theory • CCT can be used to model the system as well • If this is done, it can be used to predict the difficulty in translating from the user’s model to the system model • The sheer size of the CCT description is a predictor of the complexity of the operations necessary to achieve a goal
Linguistic Models • The user’s interaction with a computer is similar to a language • Therefore, several modeling techniques have been built on interaction as a language
BNF • Backus-Naur Form was originally developed to describe the syntax of programming languages • It can be used equally well to describe the interaction between a user and a computer • Consider the case of drawing a line in a graphics system
BNF draw-line ::= select-line + choose-points + last-point select-line ::= position-mouse + CLICK-MOUSE choose-points::= choose-one | choose-one + choose-points choose-one ::= position-mouse + CLICK-MOUSE last-point ::= position-mouse + DOUBLE-CLICK-MOUSE position-mouse ::= empty | MOVE-MOUSE + position-mouse
BNF • BNF represents the users action but not the systems responses • The complexity of the description provides a crude measure of the complexity of the task • BNF is also a good way to unambiguously specify how a user interacts with a system
Task-action Grammar • While BNF can represent the structure of a language, it cannot represent • consistency in commands or • Any knowledge the user has of the world • The task-action grammar (TAG) addresses both of these problems
Task-action Grammar • Consider using BNF for the UNIX copy, move, and link commands copy ::= ‘cp’ + filename + filename | ‘cp’ + filenames + directory move ::= ‘mv’ + filename + filename | ‘mv’ + filenames + directory link ::= ‘ln’ + filename + filename | ‘ln’ + filenames + directory
Task-action Grammar • The TAG description of the same commands makes the consistency far more apparent file-op[Op] := command[Op] + filename + filename | command[Op] + filenames + directory command[Op=copy] := ‘cp’ command[Op=move] := ‘mv’ command[Op=link] := ‘ln’
Task-action Grammar • TAG can also represent world knowledge • Command Interface 1 movement[Direction] := command[Direction] + distance + RETURN command[Direction=forward] := ‘go 395’ command[Direction=backward] := ‘go 013’ command[Direction=left] := ‘go 712’ command[Direction=right] := ‘go 956’
Task-action Grammar • The previous interface could represent addresses of functions to call to perform actions • Let’s look at a second version of the interface • Command Interface 2 movement[Direction] := command[Direction] + distance + RETURN command[Direction=forward] := ‘FORWARD’ command[Direction=backward] := ‘BACKWARD’ command[Direction=left] := ‘LEFT’ command[Direction=right] := ‘RIGHT’
Task-action Grammar • The second form of the interface is preferable and takes advantage of the words (forward, back, etc.) the user already knows • We can rewrite the previous TAG to show the information that the user already knows and does not have to learn
Task-action Grammar movement[Direction] := command[Direction] + distance + RETURN command[Direction] := known-item[Type=word,Direction] * command[Direction=forward] := ‘FORWARD’ * command[Direction=backward] := ‘BACKWARD’ * command[Direction=left] := ‘LEFT’ * command[Direction=right] := ‘RIGHT’ • The rules with asterisks can be generated from the second rule combined with the user’s knowledge
Contents • Cognitive Models • Device Models • Cognitive Architectures
GUI Systems • BNF and TAG were designed for command line interfaces • While pressing a button is a reasonable action, moving a mouse one pixel is less obvious • In GUI systems, the buttons are virtual and depend on what is displayed at a particular screen position • The keystroke model allows us to model low-level interaction with a device
Keystroke-level Model • This is used for modeling simple interaction sequences on the order of a few seconds • It does not extend to more complex operations such as producing an entire diagram • The model decomposes actions into 5 motor operators, a mental operator and a response operator
Keystroke-level Model • K • Keystroke operator • B • Pressing a mouse button • P • Pointing or moving the mouse over a target • H • Homing or switching the hand between mouse and keyboard
Keystroke-level Model • D • Drawing lines with the mouse • M • Mentally preparing for a physical action • R • System response • User does not always wait for this as happens in continuous typing
Keystroke-level Model • Consider using a mouse based editor to correct a single character error • Point at the error • Delete the character • Retype it • Return to the previous typing point • The following notation will capture this
Keystroke-level Model • Move hand to mouse H[mouse] • Position after bad character PB[LEFT] • Return to keyboard H[keyboard] • Delete character MK[DELETE] • Type correction K[char] • Reposition insert point H[mouse]MPB[LEFT] • Timings for individual operations can be measured • These timings can then be summed to create the total time for the overall operation • Alternative ways of performing an action can have their times computed and compared to find which one is more efficient
Three-state Model • Pointing devices like mice, trackballs, and light pens all behave differently as far as the user is concerned • The three-state model is used to capture the behaviour of these devices • State 1 • Moving the mouse with no buttons pressed • This usually moves the pointer on the screen
Three-state Model • State 2 • Depressing a button over an icon and then moving the mouse • This is usually thought of as dragging an object • State 0 • This is for a light pen when it is not touching the screen • In this state the location of the pen is not tracked at all
Three-state Model • A touch screen behaves like a light pen with no button to press • This means that a touch screen is in state 0 when the finger is off the screen • When the finger touches the screen, it can be tracked and is in state 1 • Thus, • a touch screen is a state 0-1 device • A mouse is a state 1-2 device
Three-state Model State 1 tracking State 2 dragging Button down Mouse Transitions Button up State 1 tracking State 0 No tracking State 2 dragging Touch screen Button down Light pen Transitions Button up Remove pen
Fitt’s Law • Fitt’s law states that the time to move a pointer to a target of size S at a distance D from the starting point is • a + b log2(D/S + 1) • Where a and b are constants dependent on the type of pointing device and the skill of the user • The insight provided by the three state model is that a and b also depend on the state • This is due to dragging being more accurate than the original pointing which does not have as good feedback
Contents • Cognitive Models • Device Models • Cognitive Architectures
Cognitive Architectures • The models we have looked at up to this point have implied a model of the mental processes of the user • For example, GOMS implied a divide and conquer approach • We will now look at a different model of the user’s cognitive processes
The Problem Space Model • Rational behaviour is defined as behaviour directed to achieving a specific goal • This is the behaviour you would expect of a human or a knowledge based system • This is in contrast to the problem solving modeled as a search of a solution space until a solution is found • This search is performed by traversing the space until a solution is found • This is a brute force search and is not rational behaviour in seeking a solution to a goal
The Problem Space Model • This model can be adapted to the rational behaviour of humans • A problem space consists of • A set of states • A set of operations to go from one state to another • A goal is a subset of states which must be reached for the goal to be achieved
The Problem Space Model • To solve a problem in this model • Identify the current state • Identify the goal • Devise a set of operations which will move from the current state to the goal state • This model is inherently recursive • If you cannot find the operations to achieve the goal then this becomes a new recursive problem to be solved