Macro Cognition: Using SGOMS to Pilot a Flight Simulator
Download
Report
Transcript Macro Cognition: Using SGOMS to Pilot a Flight Simulator
Macro Cognition :
Using SGOMS to Pilot a Flight Simulator
Sterling Somers : [email protected]
Dr. Robert West : [email protected]
Both @
Institute of Cognitive Science
Carleton University
Ottawa, ON, Canada
SGOMS
• SGOMS is an extension of GOMS to deal with interruptions,
teamwork, and re-planning
• Adds a control structure above unit tasks – planning unit
• SGOMS in ACT-R
• A particular way to program ACT-R to do complex tasks
• Adds more buffers to ACT-R
• Planning unit buffer
• Unit task buffer
• Method buffer
• These can be thought of collectively as the goal module
• To test SGOMS we need to show that it works across tasks
Different SGOMS models in the lab
Why Aviation?
1.
2.
3.
4.
5.
6.
Real World
Dynamic
Both Planned and Reactive Behaviour
Replanning
Expertise
Continuous / Feedback
Interface
Simulator
• FlightGear
• Free
• Open Source (hack simulation loop?)
Custom Python API
• Property tree via UDP/HTTP/Telnet
• http/telnet simultaneously (read/write)
• State / Control of aircraft
Problem
• Real time VS ACT-R time (for now…)
Simple Vision
• Python bindings to OpenCV
• Very efficient
• Redundancy check possible
Vision
Top Down:
• SOS Vision
Vision Module:
• When not busy
• Request from environment
• Motion Detection
Motion Detection
Python bindings OpenCV
• Screen shot VS centre of screen comparison / frame
Screen Shot at frame 1
Screen Shot at frame 2
(arrow indicates direction of movement)
Vision : Dynamic Salience / Context Dependence
Vision uses salience factor (0-1) to determine probability of
seeing an environment item
• Salience of Horizontal and Vertical movement calculated
according to size of movement (in pixels ∆ 𝑑)
∆ 𝑑0.5
𝑛
• 𝑛 is pixel movement threshold
• Possible different 𝑛 for different contexts?
Planning Unit: Prepare for take off
DM
+
Planning Unit: To take off speed
Cue:
Motor module: not busy
Auditory Module: no engine noise
DM
Unit Task: Get to speed
Unit Task: Get Started
+
Press Both Brakes
+
Release Brakes
+
Start Engine
+
To Full Throttle
Unit Task: Watch Speed
Unit Task: Do settings
+
Operator Pool
Motor Methods
+
Set Trim
Read Air Speed
Start Engine
Press Both Brakes
Recall Heading
Maintain Heading
To Full Throttle
Set Trim
Look Heading
Rudder Left/Right
To Full Throttle:
Continue increasing throttle until lever stops moving
Planning Unit: To take off speed
DM
Maintain Heading
Unit Task: Get to speed
+
Release Brakes
+
To Full Throttle
+
Rudder, etc.
+
Clear Buffer
(resulting in resume)
Interruption
Unit Task: Watch Speed
Read Air Speed
+
Vision Module
Look at [target]
Look out window
+
Top-down request
Opportunistic, when no top-down request
See movement
Reasonable sized move
Interruption
• Interruptions and re-planning take place on different levels
• Case 1
–
–
–
–
–
Bottom up scanning
Small
Expected
Context remains the same (still taking off)
Handle it within the unit task
• Case 2
–
–
–
–
–
Bottom up scanning
Large
Unexpected
Context is changed (abort take off)
New unit task needed
• SGOMS Hypothesis – there is a set processing structure used across tasks
Thank you.
Sterling Somers : [email protected]
Dr. Robert West : [email protected]
Both @
Institute of Cognitive Science
Carleton University
Ottawa, ON, Canada