Upload
vandiep
View
220
Download
6
Embed Size (px)
Citation preview
Formal Methodsfor
Interactive SystemsPart 8 — Cognitive Architectures
Antonio Cerone
United Nations University
International Institute for Software Technology
Macau SAR China
email:[email protected]
web:www.iist.unu.eduA. Cerone, UNU-IIST – p.1/46
Cognitive ModelsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
of the user
A. Cerone, UNU-IIST – p.2/46
Cognitive ModelsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
of the user• competence models represent expected
behaviour
A. Cerone, UNU-IIST – p.2/46
Cognitive ModelsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
of the user• competence models represent expected
behaviour• performance models represent and analyse
routine behaviour
A. Cerone, UNU-IIST – p.2/46
Cognitive ModelsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
of the user• competence models represent expected
behaviour• performance models represent and analyse
routine behaviour
deal with three different levels:• goal and task hierarchies: GOMS, Cognitive
Complexity Theory (CCT)
A. Cerone, UNU-IIST – p.2/46
Cognitive ModelsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
of the user• competence models represent expected
behaviour• performance models represent and analyse
routine behaviour
deal with three different levels:• goal and task hierarchies: GOMS, Cognitive
Complexity Theory (CCT)• human understanding: BNF, Task-action
Grammar (TAG)
A. Cerone, UNU-IIST – p.2/46
Cognitive ModelsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
of the user• competence models represent expected
behaviour• performance models represent and analyse
routine behaviour
deal with three different levels:• goal and task hierarchies: GOMS, Cognitive
Complexity Theory (CCT)• human understanding: BNF, Task-action
Grammar (TAG)• physical/device: Keystroke-level Model (KLM)
A. Cerone, UNU-IIST – p.2/46
Architectural AspectsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Cognitive models incorporate implicit and explicitmodels of cognitive processing
A. Cerone, UNU-IIST – p.3/46
Architectural AspectsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Cognitive models incorporate implicit and explicitmodels of cognitive processing
• GOMS: divide and conquer using subgoals• CCT: production rules in LTM matched agains
STM contents• KLM: motor and mental operators based on
Model Human processor
A. Cerone, UNU-IIST – p.3/46
Architectural AspectsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Cognitive models incorporate implicit and explicitmodels of cognitive processing
• GOMS: divide and conquer using subgoals• CCT: production rules in LTM matched agains
STM contents• KLM: motor and mental operators based on
Model Human processor
are Architectural Aspects=⇒ aim to some performance analysis
A. Cerone, UNU-IIST – p.3/46
Architectural AspectsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Cognitive models incorporate implicit and explicitmodels of cognitive processing
• GOMS: divide and conquer using subgoals• CCT: production rules in LTM matched agains
STM contents• KLM: motor and mental operators based on
Model Human processor
are Architectural Aspects=⇒ aim to some performance analysisbut seldom deals with user observation and per-ception =⇒ mainly competence models
A. Cerone, UNU-IIST – p.3/46
Error DetectionModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Weakness of cognitive models:errors must be explicitly defined in the model=⇒ no error detection
A. Cerone, UNU-IIST – p.4/46
Error DetectionModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Weakness of cognitive models:errors must be explicitly defined in the model=⇒ no error detection
ATC Example: failure decomposition was givenrather than detected
A. Cerone, UNU-IIST – p.4/46
Error DetectionModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Weakness of cognitive models:errors must be explicitly defined in the model=⇒ no error detection
ATC Example: failure decomposition was givenrather than detected
Users behave rationally=⇒ make persistent errors
A. Cerone, UNU-IIST – p.4/46
Rational BehaviourModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
based on
Rational Behaviour behaviour that is intended toachieve a specific goal
in AI: Knowledge-level System = Agent behavesin Environment
A. Cerone, UNU-IIST – p.5/46
Rational BehaviourModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
based on
Rational Behaviour behaviour that is intended toachieve a specific goal
in AI: Knowledge-level System = Agent behavesin Environment
in contrast with
Computational Behaviour behaviour defined byan algorithm without an explicit goal
A. Cerone, UNU-IIST – p.5/46
Computational ArchitecturesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• algorithm describes the problem solution
A. Cerone, UNU-IIST – p.6/46
Computational ArchitecturesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• algorithm describes the problem solution• =⇒ represented in a programming language
A. Cerone, UNU-IIST – p.6/46
Computational ArchitecturesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• algorithm describes the problem solution• =⇒ represented in a programming language• compilation =⇒ problem space + actions to
traverse represented in the machinearchitecture
A. Cerone, UNU-IIST – p.6/46
Computational ArchitecturesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• algorithm describes the problem solution• =⇒ represented in a programming language• compilation =⇒ problem space + actions to
traverse represented in the machinearchitecture
• execution terminates once a desired statereached
A. Cerone, UNU-IIST – p.6/46
Computational ArchitecturesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• algorithm describes the problem solution• =⇒ represented in a programming language• compilation =⇒ problem space + actions to
traverse represented in the machinearchitecture
• execution terminates once a desired statereached
Machine does not formulate the problem space(the goal is not programmed)
A. Cerone, UNU-IIST – p.6/46
Cognitive ArchitecturesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• goal to achieve• =⇒ represented as a set of goal states• rational behaviour =⇒ to select appropriate
operators to generate new states starting formthe initial state
• goal achieved once a goal state is reached
based on problem space theory, developed byNewell and Simon [Newell et a. 91]
A. Cerone, UNU-IIST – p.7/46
Cognitive ActivitiesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• goal formulation creates the initial state anduse perception sense changes in the externalenvironment which are relevant to the goal ofthe agent
A. Cerone, UNU-IIST – p.8/46
Cognitive ActivitiesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• goal formulation creates the initial state anduse perception sense changes in the externalenvironment which are relevant to the goal ofthe agent
• operation selection to transform a given stateto one closer to a goal state =⇒ rationalbehaviour
A. Cerone, UNU-IIST – p.8/46
Cognitive ActivitiesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• goal formulation creates the initial state anduse perception sense changes in the externalenvironment which are relevant to the goal ofthe agent
• operation selection to transform a given stateto one closer to a goal state =⇒ rationalbehaviour
• operation application changes the states ofthe agent and the environment
A. Cerone, UNU-IIST – p.8/46
Cognitive ActivitiesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• goal formulation creates the initial state anduse perception sense changes in the externalenvironment which are relevant to the goal ofthe agent
• operation selection to transform a given stateto one closer to a goal state =⇒ rationalbehaviour
• operation application changes the states ofthe agent and the environment
• goal completion when the new state is a goalstate the agent becomes inactive
A. Cerone, UNU-IIST – p.8/46
Knowledge RoleModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• goal formulation• operation selection• operation application• goal completion
A. Cerone, UNU-IIST – p.9/46
Knowledge RoleModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• goal formulation• operation selection• operation application• goal completion
Steps are triggered by knowledge availability
A. Cerone, UNU-IIST – p.9/46
Knowledge RoleModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• goal formulation• operation selection• operation application• goal completion
Steps are triggered by knowledge availability
knowledge availability =⇒ recursion:new space problem invoked withgoal = find needed knowledge
A. Cerone, UNU-IIST – p.9/46
SOARModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Executable Cognitive Architecture developped byAllen Newell, John Laird and Paul Rosembloomin 1983 [Newell et a. 87]
Used by the University of Michiganhttp://sitemaker.umich.edu/soar/
A. Cerone, UNU-IIST – p.10/46
PUMModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Programmable User Models
Psychologically Constrained Architecturewhich an interface designer is invited toprogram to simulate a user performing arange of tasks with a proposed interface
[Young et a. 89]
A. Cerone, UNU-IIST – p.11/46
PUM PhilosophyModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
The interface designer• must program the PUM respecting the
constraints=⇒ driven interface design=⇒ explicit “user program”
A. Cerone, UNU-IIST – p.12/46
PUM PhilosophyModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
The interface designer• must program the PUM respecting the
constraints=⇒ driven interface design=⇒ explicit “user program”
• run the model(=⇒ “user program” is executable)to make predictions=⇒ show source of predictions and strategyoptions
A. Cerone, UNU-IIST – p.12/46
PUM PurposesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Outcome:predictive evaluation to tell the designerusability of a proposed design before it isactually built
A. Cerone, UNU-IIST – p.13/46
PUM PurposesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Outcome:predictive evaluation to tell the designerusability of a proposed design before it isactually built
• Benefits for the designer:• to draw the designer attention to issues of
usability• to provide a way of reasoning about usability
A. Cerone, UNU-IIST – p.13/46
PUMA: PUM ApplicationsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Research Project aim to• Bring the PUM metodology into industrial
design• Using formal methods to effectively implement
PUM
PUMA Research Group Website:http://www.cs.mdx.ac.uk/puma/
A. Cerone, UNU-IIST – p.14/46
Detecting User ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Work by Curzon and Blandford [Curzon et al. 01]:• PUM defined in the HOL Theorem Prover=⇒ Generic User Model described by sets ofnon-deterministic rules
A. Cerone, UNU-IIST – p.15/46
Detecting User ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Work by Curzon and Blandford [Curzon et al. 01]:• PUM defined in the HOL Theorem Prover=⇒ Generic User Model described by sets ofnon-deterministic rules
• Programming performed using SML=⇒ target the Generic User Model to aparticular design
A. Cerone, UNU-IIST – p.15/46
Detecting User ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Work by Curzon and Blandford [Curzon et al. 01]:• PUM defined in the HOL Theorem Prover=⇒ Generic User Model described by sets ofnon-deterministic rules
• Programming performed using SML=⇒ target the Generic User Model to aparticular design
• Automated Correctness Proof
A. Cerone, UNU-IIST – p.15/46
Detecting User ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Work by Curzon and Blandford [Curzon et al. 01]:• PUM defined in the HOL Theorem Prover=⇒ Generic User Model described by sets ofnon-deterministic rules
• Programming performed using SML=⇒ target the Generic User Model to aparticular design
• Automated Correctness Proof• Informal reasoning to detect errors
A. Cerone, UNU-IIST – p.15/46
Theorem-provingModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Well-Formed Formulae
A. Cerone, UNU-IIST – p.16/46
Theorem-provingModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Well-Formed FormulaeHHHY
false
����true
A. Cerone, UNU-IIST – p.16/46
Theorem-provingModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Well-Formed FormulaeHHHY
false
����true
����
HHHYClass of Models
A. Cerone, UNU-IIST – p.16/46
Theorem-provingModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Well-Formed FormulaeHHHY
false
����true
����
HHHYClass of Models
∈
System Model
A. Cerone, UNU-IIST – p.16/46
Theorem-provingModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Well-Formed FormulaeHHHY
false
����true
����
HHHYClass of Models
∈
System Model
⊆
Properties
A. Cerone, UNU-IIST – p.16/46
Theorem-provingModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Well-Formed FormulaeHHHY
false
����true
����
HHHYClass of Models
∈
System Model
⊆
Properties�
����
���Axioms
A. Cerone, UNU-IIST – p.16/46
Theorem-provingModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Well-Formed FormulaeHHHY
false
����true
����
HHHYClass of Models
∈
System Model
⊆
Properties�
����
���Axioms
- InferenceRules
A. Cerone, UNU-IIST – p.16/46
Theorem-provingModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Well-Formed FormulaeHHHY
false
����true
����
HHHYClass of Models
∈
System Model
⊆
Properties�
����
���Axioms
- InferenceRules
6Theorems
A. Cerone, UNU-IIST – p.16/46
Theorem-provingModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Well-Formed FormulaeHHHY
false
����true
����
HHHYClass of Models
∈
System Model
⊆
Properties�
����
���Axioms
- InferenceRules
6Theorems
?
A. Cerone, UNU-IIST – p.16/46
Theorem-provingModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Well-Formed FormulaeHHHY
false
����true
����
HHHYClass of Models
∈
System Model
⊆
Properties�
����
���Axioms
- InferenceRules
6Theorems
?
⊆
A. Cerone, UNU-IIST – p.16/46
Theorem-proving: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages
A. Cerone, UNU-IIST – p.17/46
Theorem-proving: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Maximum Modelling Expressivity
A. Cerone, UNU-IIST – p.17/46
Theorem-proving: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Maximum Modelling Expressivity
• Infinite State Systems
A. Cerone, UNU-IIST – p.17/46
Theorem-proving: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Maximum Modelling Expressivity
• Infinite State Systems• Complex data structure
A. Cerone, UNU-IIST – p.17/46
Theorem-proving: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Maximum Modelling Expressivity
• Infinite State Systems• Complex data structure
• Disadvantages
A. Cerone, UNU-IIST – p.17/46
Theorem-proving: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Maximum Modelling Expressivity
• Infinite State Systems• Complex data structure
• Disadvantages• Semidecidability
A. Cerone, UNU-IIST – p.17/46
Theorem-proving: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Maximum Modelling Expressivity
• Infinite State Systems• Complex data structure
• Disadvantages• Semidecidability• Verification procedure not fully automated
A. Cerone, UNU-IIST – p.17/46
Theorem-proving: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Maximum Modelling Expressivity
• Infinite State Systems• Complex data structure
• Disadvantages• Semidecidability• Verification procedure not fully automated• Tools difficult to use
A. Cerone, UNU-IIST – p.17/46
Theorem-proving: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Maximum Modelling Expressivity
• Infinite State Systems• Complex data structure
• Disadvantages• Semidecidability• Verification procedure not fully automated• Tools difficult to use• No scalability
A. Cerone, UNU-IIST – p.17/46
Theorem-proving: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Maximum Modelling Expressivity
• Infinite State Systems• Complex data structure
• Disadvantages• Semidecidability• Verification procedure not fully automated• Tools difficult to use• No scalability• Does not allow debugging
A. Cerone, UNU-IIST – p.17/46
Model-Checking: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages
A. Cerone, UNU-IIST – p.18/46
Model-Checking: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Decidability
A. Cerone, UNU-IIST – p.18/46
Model-Checking: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Decidability• May be fully automated
A. Cerone, UNU-IIST – p.18/46
Model-Checking: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Decidability• May be fully automated• Better usability tools
A. Cerone, UNU-IIST – p.18/46
Model-Checking: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Decidability• May be fully automated• Better usability tools• Good scalability
A. Cerone, UNU-IIST – p.18/46
Model-Checking: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Decidability• May be fully automated• Better usability tools• Good scalability• Allows debugging
A. Cerone, UNU-IIST – p.18/46
Model-Checking: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Decidability• May be fully automated• Better usability tools• Good scalability• Allows debugging
• Disadvantages
A. Cerone, UNU-IIST – p.18/46
Model-Checking: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Decidability• May be fully automated• Better usability tools• Good scalability• Allows debugging
• Disadvantages• Limited Expressivity
A. Cerone, UNU-IIST – p.18/46
Model-Checking: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Decidability• May be fully automated• Better usability tools• Good scalability• Allows debugging
• Disadvantages• Limited Expressivity
• Finite State Systems
A. Cerone, UNU-IIST – p.18/46
Model-Checking: Pros & ConsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Advantages• Decidability• May be fully automated• Better usability tools• Good scalability• Allows debugging
• Disadvantages• Limited Expressivity
• Finite State Systems• Limited data structure
A. Cerone, UNU-IIST – p.18/46
Sets of RulesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
to describe• reactive behaviour: user reacts to a stimulus
that clearly indicates that a particular actionshould be taken (independently of the goal)
A. Cerone, UNU-IIST – p.19/46
Sets of RulesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
to describe• reactive behaviour: user reacts to a stimulus
that clearly indicates that a particular actionshould be taken (independently of the goal)
• communication goals: user knows atask-dependent mental list of information thatmust be communicated to the device
A. Cerone, UNU-IIST – p.19/46
Sets of RulesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
to describe• reactive behaviour: user reacts to a stimulus
that clearly indicates that a particular actionshould be taken (independently of the goal)
• communication goals: user knows atask-dependent mental list of information thatmust be communicated to the device
• completion: subsidiary tasks generated inachieving the goal
A. Cerone, UNU-IIST – p.19/46
Sets of RulesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
to describe• reactive behaviour: user reacts to a stimulus
that clearly indicates that a particular actionshould be taken (independently of the goal)
• communication goals: user knows atask-dependent mental list of information thatmust be communicated to the device
• completion: subsidiary tasks generated inachieving the goal
• abort: no rational action is available
A. Cerone, UNU-IIST – p.19/46
Sets of RulesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
to describe• reactive behaviour: user reacts to a stimulus
that clearly indicates that a particular actionshould be taken (independently of the goal)
• communication goals: user knows atask-dependent mental list of information thatmust be communicated to the device
• completion: subsidiary tasks generated inachieving the goal
• abort: no rational action is available
nondeterministic rules =⇒ rule disjunctionA. Cerone, UNU-IIST – p.19/46
Reactive BehaviourModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
(stimulus t) ∧ NEXT reaction t
A. Cerone, UNU-IIST – p.20/46
Reactive BehaviourModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
(stimulus t) ∧ NEXT reaction t
NEXTdoes not require that the action is takenon the next cycle, but rather that it is takenbefore any other user action
A. Cerone, UNU-IIST – p.20/46
Reactive BehaviourModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
(stimulus t) ∧ NEXT reaction t
[(stimulus1, reaction1); ...; (stimulusn, reactionn)]
To target the generic user model to a particulardevice, it is applied to a concrete list in SML
A. Cerone, UNU-IIST – p.20/46
Reactive BehaviourModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
(stimulus t) ∧ NEXT reaction t
[(stimulus1, reaction1); ...; (stimulusn, reactionn)]
Example: [(light,pushbutton); (wait msg,pause);(card msg, take card); (cashmsg, take cash)]
A. Cerone, UNU-IIST – p.20/46
Reactive BehaviourModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
(stimulus t) ∧ NEXT reaction t
[(stimulus1, reaction1); ...; (stimulusn, reactionn)]
Example: [(light,pushbutton); (wait msg,pause);(card msg, take card); (cashmsg, take cash)]
-����
-stimulus����
� �6
action
A. Cerone, UNU-IIST – p.20/46
Reactive BehaviourModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
(stimulus t) ∧ NEXT reaction t
[(stimulus1, reaction1); ...; (stimulusn, reactionn)]
Example: [(light,pushbutton); (wait msg,pause);(card msg, take card); (cashmsg, take cash)]
-����
-stimulus����
� �6
action
R
R1 = R/f1 where f1(stimulus) = lightf1(reactions) = push button
A. Cerone, UNU-IIST – p.20/46
Communication GoalsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
∼ (goalachieved t) ∧ (guard t) ∧ NEXT action t
A. Cerone, UNU-IIST – p.21/46
Communication GoalsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
∼ (goalachieved t) ∧ (guard t) ∧ NEXT action t
Example: [(has card, insert card); (TRUE, insert pin)]
A. Cerone, UNU-IIST – p.21/46
Communication GoalsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
∼ (goalachieved t) ∧ (guard t) ∧ NEXT action t
Example: [(has card, insert card); (TRUE, insert pin)]Goal: HasGotCash
A. Cerone, UNU-IIST – p.21/46
Communication GoalsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
∼ (goalachieved t) ∧ (guard t) ∧ NEXT action t
Example: [(has card, insert card); (TRUE, insert pin)]Goal: HasGotCash
-����C -notach
����
-cond����
-action����
A. Cerone, UNU-IIST – p.21/46
Communication GoalsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
∼ (goalachieved t) ∧ (guard t) ∧ NEXT action t
Example: [(has card, insert card); (TRUE, insert pin)]Goal: HasGotCash
-����C -notach
����
-cond����
-action����
-����G -goal
����
notach� �?
A. Cerone, UNU-IIST – p.21/46
CompletionModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
if (((invariant t) ∧ (goalachieved t)) ∨ ((finished(t−1))then action finished telse—disjunction of nondeterministic rules—Invariant: VALUE possession t≥ VALUE possession1
-����C -notach
����
-cond����
-action����
-����G -goal
����
notach� �?
A. Cerone, UNU-IIST – p.22/46
CompletionModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
if (((invariant t) ∧ (goalachieved t)) ∨ ((finished(t−1))then action finished telse—disjunction of nondeterministic rules—Invariant: VALUE possession t≥ VALUE possession1
-����C -notach
����
-cond����
-action����
-����G -goal
����
notach� �?
?
finished
����
A. Cerone, UNU-IIST – p.22/46
CompletionModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
if (((invariant t) ∧ (goalachieved t)) ∨ ((finished(t−1))then action finished telse—disjunction of nondeterministic rules—Invariant: VALUE possession t≥ VALUE possession1
-����C -notach
����
-cond����
-action����
-����G -goal
����
notach� �?
?
finished
����
-����
I -pert����
invariant� �?
?
finished
����� �
6
restore
A. Cerone, UNU-IIST – p.22/46
CompletionModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
if (((invariant t) ∧ (goalachieved t)) ∨ ((finished(t−1))then action finished telse—disjunction of nondeterministic rules—Invariant: VALUE possession t≥ VALUE possession1
-����C -notach
����
-cond����
-action����
-����G -goal
����
notach� �?
?
finished
����
-����
I -pert����
invariant� �?
?
finished
����� �
6
restore��finished- ��
finished-A. Cerone, UNU-IIST – p.22/46
CSP ArchitectureModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
-����C -notach
����
-cond����
-action����
-����G -goal
����
notach� �?
?
finished
����
-����
I -pert����
invariant� �?
?
finished
����� �
6
restore��finished- ��
finished-
-finished����
finished� �?
R-����
-stimulus����
� �6
action
-finished ����
finished���
A. Cerone, UNU-IIST – p.23/46
User ModelModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
HOL
A. Cerone, UNU-IIST – p.24/46
User ModelModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
HOLRule disjunction
A. Cerone, UNU-IIST – p.24/46
User ModelModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
HOLRule disjunction
CSP
A. Cerone, UNU-IIST – p.24/46
User ModelModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
HOLRule disjunction
CSPU = R1 ‖ ... ‖ Rm ‖
((C1 ‖ G) | [{goal,finished}] | ...... | [{goal,finished}] | (Cn ‖ G)) ‖I1 ‖ ... ‖ Is
A. Cerone, UNU-IIST – p.24/46
User ModelModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
HOLRule disjunction
CSPU = R1 ‖ ... ‖ Rm ‖
((C1 ‖ G) | [{goal,finished}] | ...... | [{goal,finished}] | (Cn ‖ G)) ‖I1 ‖ ... ‖ Is
What’s missing?
A. Cerone, UNU-IIST – p.24/46
EXERCISEModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
How to guarantee that all reactive behaviours andcommunication goals are performed atomicallywithin the user model?
A. Cerone, UNU-IIST – p.25/46
Formal VerificationModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
HOL — Correctness Theorem
A. Cerone, UNU-IIST – p.26/46
Formal VerificationModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
HOL — Correctness Theorem∀̀ state traces.
initial state ∧device specification∧user model
⊃ ∃ t . (invariant t) ∧(goalachieved t)
A. Cerone, UNU-IIST – p.26/46
Formal VerificationModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
HOL — Correctness Theorem∀̀ state traces.
initial state ∧device specification∧user model
⊃ ∃ t . (invariant t) ∧(goalachieved t)
CSP
A. Cerone, UNU-IIST – p.26/46
Formal VerificationModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
HOL — Correctness Theorem∀̀ state traces.
initial state ∧device specification∧user model
⊃ ∃ t . (invariant t) ∧(goalachieved t)
CSP− Overall system
OverallSystem = U ‖ Device
A. Cerone, UNU-IIST – p.26/46
Formal VerificationModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
HOL — Correctness Theorem∀̀ state traces.
initial state ∧device specification∧user model
⊃ ∃ t . (invariant t) ∧(goalachieved t)
CSP− Overall system
OverallSystem = U ‖ Device− Temporal Logic Formula
23finished checked on OverallSystem A. Cerone, UNU-IIST – p.26/46
Classes of User ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Errors detected by attempts to prove the taskcompletion error
A. Cerone, UNU-IIST – p.27/46
Classes of User ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Errors detected by attempts to prove the taskcompletion error
Classes of errors defined in terms of theircognitive causes rather than their effects:
• post-completion errors• communication-goal errors• device delay errors
A. Cerone, UNU-IIST – p.27/46
Post-completion ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User terminates an interation with outstandingtasks remaining
A. Cerone, UNU-IIST – p.28/46
Post-completion ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User terminates an interation with outstandingtasks remaining
It emerges because of a rule allowing the user tostop once the goal is achieved
A. Cerone, UNU-IIST – p.28/46
Post-completion ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User terminates an interation with outstandingtasks remaining
It emerges because of a rule allowing the user tostop once the goal is achieved
Design Principle: goal cannot be achieved untilafter the interaction invariant is restored
A. Cerone, UNU-IIST – p.28/46
Post-completion ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User terminates an interation with outstandingtasks remaining
It emerges because of a rule allowing the user tostop once the goal is achieved
Design Principle: goal cannot be achieved untilafter the interaction invariant is restored
Error still present if a warning after goal achievedremind the user to do the completions tasks
A. Cerone, UNU-IIST – p.28/46
Communication ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User discharges communication goals in anorder different from the one required by thedevice
A. Cerone, UNU-IIST – p.29/46
Communication ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User discharges communication goals in anorder different from the one required by thedevice
It emerges because of communication ruleremoved too early =⇒ activate abort rule
A. Cerone, UNU-IIST – p.29/46
Communication ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User discharges communication goals in anorder different from the one required by thedevice
It emerges because of communication ruleremoved too early =⇒ activate abort rule
Design Principle: the device must not require aspecific order for the communication goal actions
A. Cerone, UNU-IIST – p.29/46
Communication ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User discharges communication goals in anorder different from the one required by thedevice
It emerges because of communication ruleremoved too early =⇒ activate abort rule
Design Principle: the device must not require aspecific order for the communication goal actions
Error still present if a message tell the user theright order
A. Cerone, UNU-IIST – p.29/46
Device Delay ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User discharges outstanding communicationgoals during device delay
A. Cerone, UNU-IIST – p.30/46
Device Delay ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User discharges outstanding communicationgoals during device delay
It emerges because of communication ruleremoved too early =⇒ activate abort rule
A. Cerone, UNU-IIST – p.30/46
Device Delay ErrorsModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
User discharges outstanding communicationgoals during device delay
It emerges because of communication ruleremoved too early =⇒ activate abort rule
Design Principle: the device delay can only occurwhen there is no outstanding communicatin goalin the presence of a “wait” warning causing a“pause” reaction
A. Cerone, UNU-IIST – p.30/46
TP vs. MCModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Theorem Proving
A. Cerone, UNU-IIST – p.31/46
TP vs. MCModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Theorem Proving• automated correctness proof
A. Cerone, UNU-IIST – p.31/46
TP vs. MCModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Theorem Proving• automated correctness proof• informal reasoning to detect errors
A. Cerone, UNU-IIST – p.31/46
TP vs. MCModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Theorem Proving• automated correctness proof• informal reasoning to detect errors
• Model Checking more promising
A. Cerone, UNU-IIST – p.31/46
TP vs. MCModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Theorem Proving• automated correctness proof• informal reasoning to detect errors
• Model Checking more promising• general correctness: 23finished
A. Cerone, UNU-IIST – p.31/46
TP vs. MCModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Theorem Proving• automated correctness proof• informal reasoning to detect errors
• Model Checking more promising• general correctness: 23finished• post-completion correctness: 23 invariant
A. Cerone, UNU-IIST – p.31/46
TP vs. MCModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• Theorem Proving• automated correctness proof• informal reasoning to detect errors
• Model Checking more promising• general correctness: 23finished• post-completion correctness: 23 invariant• automatically generated counterexample
allows error detection and correction
A. Cerone, UNU-IIST – p.31/46
Examination — ArchitecturesModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
SOAR and PUMA• Seminars
• Theorem proving and informal reasoning forusability studies
• The SOAR cognitive architecture• Reports
• CSP model of the PUMA cognitivearchitecture
A. Cerone, UNU-IIST – p.32/46
Models | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Examinations
A. Cerone, UNU-IIST – p.33/46
Seminar 1 — Full OCM for ATCModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Topic: Operator Choice Model for ATC
Full OCM model for the ATC• D. Leadbetter, P. Lindsay, A. Hussey, A. Neal and M. Humphreys
Towards Towards Model Based Prediction of Human Error Rates inInteractive Systems, 2000
• A. Hussey, D. Leadbetter, P. Lindsay, A. Neal and M. HumphreysModelling and Hazard Identification in an Air-Traffic ControlUser-Interface, 2000
• S. Connelly, P. Lindsay, A. Neal and M. HumphreysA formal model of cognitive processes for an Air Traffic ControlTask, 2001
A. Cerone, UNU-IIST – p.34/46
Seminar 2 — Mode ConfusionModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Topic: Mode Confusion
Formal analysis of mode confusion• S. P. Miller and J. N. Potts
Detecting Mode confusion Through formal Modelling and Analysis,1999
• N. Leveson, L. D. Pinnel, S. D. Sandys, S. Koga and J. D. ReeseAnalysing Software Specification for Mode Confusion Potential,1998
• R. W. Butler, S. P. Miller, J. N. Potts and V. A. CarrenoA Formal Methods Approach to the Analysis of Mode Confusion,1998
A. Cerone, UNU-IIST – p.35/46
Seminar 3 — PUMAModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Topic: PUMA Work
Theorem proving and informal reasoning forusability studies
• P. Curzon and A. BlandfordDetecting Multiple Classes of User Errors, 2001
• P. Curzon and A. BlandfordFrom a Formal User Model to Design Rules, 2002
• P. Curzon and A. BlandfordFormally Justifying User-Centred Design Rules: a Case Study onPost-completion Error, 2004
A. Cerone, UNU-IIST – p.36/46
Seminar 4 — SOARModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Topic: SOAR
The SOAR cognitive architecture (for one or more PhDstudents)
• SOAR Home Pagehttp://sitemaker.umich.edu/soar/
• The SOAR Tutorialhttp://sitemaker.umich.edu/soar/documentation and linksPart 1 | Part 2 | Part 3 | Part 4 | Part 5 | Part 6
A. Cerone, UNU-IIST – p.37/46
Report 1 — FM of Full ATCModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Topic: Operator Choice Model
Formal model of the full OCM for ATCusing CSP or other formalism, possibly running simulation using a tool
• D. Leadbetter, P. Lindsay, A. Hussey, A. Neal and M. HumphreysTowards Model Based Prediction of Human Error Rates inInteractive Systems, 2000
• S. Connelly, P. Lindsay, A. Neal and M. HumphreysA formal model of cognitive processes for an Air Traffic ControlTask, 2001
• Antonio Cerone, Simon Connelly and Peter Lindsay.Formal Analysis of Operator Behavioural Patterns in InteractiveSystems, submitted
A. Cerone, UNU-IIST – p.38/46
Report 2 — Cooperative TMModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Topic: Task Models
Formal Analysis of Cooperative Task ModelsDiscussion of the papers’ differences and limitations and proposepossible extensions
• F. Paternò, C. Santoro and S. ThamassebiFormal models for Cooperative Tasks: Concepts and anApplication for En-route Air Traffic Control
• V. M. R. Penichlet, F. Paternò, J. A. Gallud and M. D. LozanoCollaborative Social Structures and Task Modelling Integration
• D. Pinelle and C. GutwinTask Analysis for Groupware Usability Evaluation: ModelingShared Workplace Tasks with Mechanics of cCllaboration
A. Cerone, UNU-IIST – p.39/46
Report 3 — PUMAModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Topic: PUMA Work
CSP model of the PUMA cognitive architectureBuild a case study and formally analyse it with a tool (e.g. CWNC)
• P. Curzon and A. BlandfordUsing a Verification System to Reason about Post-CompletionErrors, 2000
• P. Curzon and A. BlandfordReasoning about Order Errors in Interaction, 2000
• P. Curzon and A. BlandfordDetecting Multiple Classes of User Errors, 2001
A. Cerone, UNU-IIST – p.40/46
Models | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
References
A. Cerone, UNU-IIST – p.41/46
Cognitive ArchitecturessModels | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
• []:
A. Cerone, UNU-IIST – p.42/46
[Newel et al. 91]Models | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Allen Newell, Gregg Yost, John Laird, PaulRosembloom, Ekkehard Altmann.Formaulating the problem-space computationalmodel.In R. F. Rashid (ed) CMU Computer Science: a25th Anniversary Commemorative, Chapter 11,ACM Press, 1991.
• Problem Space• Cognitive Architectures
A. Cerone, UNU-IIST – p.43/46
[Newel et al. 87]Models | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Allen Newell, John Laird, Paul Rosembloom.SOAR: an architecture for general intelligence.Artificial Intelligence 33, 1987, pages 1–64.
• SOAR
A. Cerone, UNU-IIST – p.44/46
[Young et al. 89]Models | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Richard Young, T. R. G. Green, Tony Simon.Programmable user models for predictiveevaluation of interface design.In K. Bice and G. Lewis (eds) Proceedings ofCHI’89: Human Factors in Computing Systems,ACM Press, 1989, pages 15–19.
• PUM
A. Cerone, UNU-IIST – p.45/46
[Curzon et al. 01]Models | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking | Rules | Exams | Refs
Paul Curzon, Ann Blandford.Detecting multiple classes of user errors.In Proceedings of EHCI’01, LNCS 2254,Springer, 2001, pages 57–71.
• Detecting Errors
A. Cerone, UNU-IIST – p.46/46