137
Formal Methods for Interactive Systems Part 8 — Cognitive Architectures Antonio Cerone United Nations University International Institute for Software Technology Macau SAR China email: [email protected] web: www.iist.unu.edu A. Cerone, UNU-IIST – p.1/46

Formal Methods for Interactive Systems - di.unipi.itcerone/courses/fmis/course-slides/course-FMIS-08... · Models | Architectures | SOAR | PUM | PUMA | Theorem Proving | Model Checking

  • 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