Model & Simulation Environment for UCADS (User-Centric - - PowerPoint PPT Presentation

model simulation environment for ucads
SMART_READER_LITE
LIVE PREVIEW

Model & Simulation Environment for UCADS (User-Centric - - PowerPoint PPT Presentation

Model & Simulation Environment for UCADS (User-Centric Automation Devices/Systems) Jane W. S. Liu Institute of Information Science Academia Sinica, Taiwan http://sisarl.org WORCS, June 2012, Boston About Us and Our Work People


slide-1
SLIDE 1

Model & Simulation Environment for

WORCS, June 2012, Boston

Jane W. S. Liu Institute of Information Science Academia Sinica, Taiwan

http://sisarl.org

UCADS

(User-Centric Automation Devices/Systems)

slide-2
SLIDE 2

§ People

  • Faculty members and students from NTU, NTHU, NCTU

and Academia Sinica, including C. S. Shih and T. K. Kuo

  • Nurses, pharmacists and IT staff from NTUH and

mechanical engineers from ITRI

n Projects

  • SISARL (2007-2009) Academic Sinica thematic project
  • iNuC: Intelligent nursing cart project supported by NTUH
  • MeMDAS: Medication management, dispensing and

administration systems project supported by MOEA, NTUH and Academia Sinica

§ Research emphases: user-centric approach

  • Component-based design, production, & quality assurance
  • Methods and tools for trading off usability, configurability

and other figures of merits

About Us and Our Work

slide-3
SLIDE 3

OUTLINE

n Motivation and rationales

q Examples of UCADS q Requirements and characteristics

n UCADS model: Workflow and GOMS n USE: UCADS simulation environment n Case studies n Missing pieces/wish list

slide-4
SLIDE 4

n Home and personal automation devices: Smart

storage panty, medication dispensers, fetcher,

  • bject locator, & housekeeping aids

n Automation equipment for care-providing

institutions: Medication dispensing and administration tools, delivery roots, tools for moving and bathing patients, etc.

n Service and social robots: Medication delivery

robots, exercise companions, etc.

n iGaD: Intelligent guards against disaster

Examples of UCADS

slide-5
SLIDE 5

Load Pantry

http://sisarl.org S m a r t p a n t r y

slide-6
SLIDE 6

BUD

Taiwan Beer

Wisk

Paper Tolls 6 rolls Load Pantry

Bob Alice

2 1 2

slide-7
SLIDE 7

Fetcher! Fetcher! Come here!

Delivery robots in general

slide-8
SLIDE 8

Basic Mobile Units (BaMU) (on a basic nursing cart) Intelligent Nursing Cart (iNuC) iNuC in use Drawers & interlocks

MUMS: Multi-user smart medication cabinets and server

Smart medication cabinets

MeMDAS Components

slide-9
SLIDE 9

Alert xmlns: … Sender: Central Weather Bureau Status: Actual MsgType: Alert Scope: Public Info Category: Geo Event: Earthquake Urgency: Immediate Severity: Strong Certainty: Observed Description: A strong earthquake measuring 6.9 occurred in … Parameters: Magnitude, depth, … Areas: Polygons specifying affected areas Resources: … …

A Future Scenerio

slide-10
SLIDE 10

Common Requirements

n Easy and safe to use:

l Serve users with little or no training l Can tolerate, and recover from, misuses and

abuses by users

l Can prevent harmful conditions & user actions

n Flexible:

l Are configurable to support different

processes and rely on different infrastructures

l Are easily customizable to suit different users l Can adapt to changes in user’s needs

slide-11
SLIDE 11

Typical Characteristics

n Do not (should not) have technologically

challenging functional features

n Are not small like handheld devices n Should have good interactive response

(e.g., 50 – 100 milliseconds)

n Have no hard real-time requirements n May rely on users to do critical work

slide-12
SLIDE 12

BUD

Remove Supply Load Pantry Put away supply

No erroneous (compartment, bar-code) – mappings !

slide-13
SLIDE 13

Nurse: Alice Patient:

  • S. K. Cheng
DOSING INFORMATION: The dose for adults is 325 to 650 mg every 4 to 6
  • hours. The maximum
daily dose is 4 grams.

Acetaminophen

Multi-User Medication Station (MUMS)

slide-14
SLIDE 14

[Alice] * Login BaMU#3 * Push RetrieveMedications button on GUI of BaMU#3 [MUMS Server] Get list of Alice’s patients with medications due and send the list to BaMU#3 [BaMU#3] * Display the patient list * Unlock all empty drawers * Wait for patient selection [Alice] Select a patient & open a unlocked drawer [BaMU#3] * Store (Patient, Drawer-location) and (Patient, Drawer-id) for the drawer * Send (BaMU#3, Alice, Patient) to Server MUMS server [MUMS] * Display (Alice, Patient) on all containers holding medications due * Wait for the bar-code id of a medication Do while some container displays (Alice, Patient) { [Alice] Scan bar-code on a container displaying her name [BaMU#3] Send (BaMU#3, Bar-code id) to MUMS [MUMS] Verify correctness & open scanned container [Alice] Retrieve a dose of medication, puts the dose in the patient’s drawer, & close the container [MUMS] Locks the container and turn off display on it } No

Go to patients

[Alice] Close the patient’s drawer [BaMU#3] * Lock the drawer * Remove the patient’s name from displayed list More patients ?

User-System Interactions During Bar-code Controlled Medication Dispensing

No dispensing error and no long waits

Model-based and component-based design, implementation and quality assurance

slide-15
SLIDE 15

About UCADS Model

n Leverages two widely used technologies:

q Workflows: for specification of device behavior,

use actions, and user-device interactions,

q CPM-GOMS (Goals, Operators, Methods, and

Selection rules): for modeling human user behavior and abilities

n Is easy to understand and executable n Becomes implementation for devices built

from workflow components

slide-16
SLIDE 16

Activities and Workflows and Microsoft .NET Workflow Foundation

slide-17
SLIDE 17

Workflow Definition of Load Pantry Process

USE Local Service User Workflows Device Workflows OperateDevice ( ) RespondToUser ( ) RespondToUserEvent OperateDeviceEvent

slide-18
SLIDE 18

On GOMS Model

n Proposed by Card, Moran and Newell in 1983

for description of human-computer interactions

n Comes in several variants, including l Card, Moran and Newell model (CMN) l Keystroke-Level model (KLM): simplified CMN l Natural GOMS Language (NGOMSL) l Cognitive Perceptual Motor model (CPM),

used with critical path method

l Queuing network model (QN-MHP/GOM) n Uses MHP (Model Human Processor)

slide-19
SLIDE 19

A CPM-GOMS Model

attend info Initiate eye- movement eye movement perceive info initiate cursor movement 50 verify location of phrase verify location

  • f cursor

move cursor perceive location

  • f cursor

50 50 50 50 480 290 100 30

  • Parallel processors (operators)
  • Execution time: critical path

Visual Perception Cognition Right Hand Motor Eye Motor

slide-20
SLIDE 20

Examples of Behavior Laws

n Response time of perception depends on

intensity of stimulus

n Stored information decays from working

memory

n Power Law of Practice: Cognition response

time decreases exponentially with practice

n Fitts Law: Time taken by hand to move to

target is proportional to log 2 (2 * distance/size)

n Hick-Hyman Law: Choice reaction time is

given by a + b log 2 (number of choices)

slide-21
SLIDE 21

Estimate Execution Time in CPM-GOMS

  • Extend operations by following

GOMS-MHP principles and rules

  • Use existing statistical data
  • Measure by volunteer users
slide-22
SLIDE 22

Transform CPM-GOMS PERT Chart to Workflow

<xpdl:Activity Id=“initial -hand-movement”> <xpdl:Description > <!-- Attributes of the operator. --> </xpdl:Description > <xpdl:Implementation > </xpdl:Implementation > <xpdl:Performers > </xpdl:Performers > <xpdl:TransitionRestrictions > <xpdl:TransitionRestriction > <xpdl:Split Type=“Parallel”> <xpdl:TransitionRefs > <xpdl:TransitionRef Id=“transition6” /> <xpdl:TransitionRef Id=“transition7” /> </xpdl:TransitionRefs > </xpdl:Split > </xpdl:TransitionRestriction > </xpdl:TransitionRestrictions > <xpdl:NodeGraphicsInfos > </ xpdl:NodeGraphicsInfos > </xpdl:Activity >

<xpdl:Transition From=“initial-hand-movement” Id=“transition6” To=“verify -location-of-button”> <xpdl:ConnectorGraphicsInfos > </xpdl:ConnectorGraphicsInfos > </xpdl:Transition >

Together XPDL and BPMN Workflow Editor (TWE) PERT chart view (BPMN notation) XPDL code view WF

Transformation Tool (XPDL Parser + Translator)

EMWF, WfMOpen

slide-23
SLIDE 23

Input: XPDL file of CPM-GOMS PERT chart G Output: A parallel workflow W parse G and save operators and transitions in it. create a parallel workflow W; for each human processor P in G // add a sequential sub-workflow S as a branch of W for each operator o carried out by P, starting from the first operator of P if o has a predecessor that is carried out by another human processor P ’; // add a wait-for-all-predecessors activity in S ADD-Wait-For-ALL-PREDECESSORS (predecessors of o, S); // add the activity for the operator o ADD-OPERATOR (o, S) in the sub-workflow S; APPLY-OPERATOR-ATTRIBUTES (o);

Pseudo code of Transformation Tool (Parser + Translator) Workflow in WF Walking to Cabinet in CPM-GOMS PERT chart

One-to-one mapping: Isomorphic

  • Check in/out degrees
  • Check critical path of

both graphs

slide-24
SLIDE 24

User Action Library

Hand_Put Workflow

Hand_Put in Custom Activity

Hand_Put in ToolBox Properities of Hand_Put

slide-25
SLIDE 25
slide-26
SLIDE 26

Simulation Set up Tools GUI Environment Settings Run-Time Setting Report Analysis Tools Report Generators Data Handling

Report

User Workflows Device Workflows

Run-time Environment

Scheduling Service Comm Services

Workflow Engine

Recording Service Model Generator Development Environment Device Workflow Library Resource Library User Action Library Human Model Library

USE: UCADS Simulation Environment

slide-27
SLIDE 27

Case Study 1: Debugging Smart Storage Pantry

no Scan the removed
  • bject
Remove last object in Comp[k] Sense compartment state change, find Comp[k] empty Get Comp[k].barcode Ask the user to scan object yes Generate error message Generate & send order containing the bar -code User Workflow Device Workflow Wait for bar -code

Load_Pantry (Low Priority) Remove_Pantry (High Priority)

slide-28
SLIDE 28

Base Container socket Indicator light LED display PTD button Verification boxes Dispensing cup Memory card reader

slide-29
SLIDE 29

Case Study 2: Testing Smart Medication Dispenser

Action-oriented model Executor-decision-maker communication Dispenser controller structure

slide-30
SLIDE 30 Yes Has user retrieved all medications? Yes

User Dispenser Application Controller

Wait for response timer Power on dispenser Wait for reminder Get reminder Push PTD Wait for reminder and retrieve medication timer Retrieve medications one at time as instructed Set up dispenser Powered
  • n and
initialize Do set up with user Invoke controller and scheduler workflows

Scheduler

Get next action Receive NHST & action list Set NHST timer Go to While action list is not empty? No DoseAfterResponse Action ? Other actions Wait for user to retrieve all medications & resend-reminder-timer expiration Compute initial schedule, first action list & NHST Wait for controller to call action complete or get next action Send NHST & action list Compute NHST & action list While dispenser is operating While dispenser is operating While dispenser is operating Is action list empty? Execute actions Execute actions Execute actions Set alarm (Send reminder) Cancel dose Action complete Wait for user to push PTD & NHST timer expiration PTD? No No Yes Wait for NHST timer

R

slide-31
SLIDE 31

A user is tardy by an amount of time. (0% ~ 100% noncompliance) 31

(a) (b)

Simulation Run2: How the device behave when user is tardy? Simulation Run1: Should the user take some drugs now?

slide-32
SLIDE 32

Simulation Parameters

!No. of patients per nurse: 6 !No. of medications for each patient: 6

  • 12

!No of medication containers: 138 !Medication use pattern: Zipf’s law !Operation of BaMU: CPM – GOMS !Times of user operations (e.g., walking, scan bar-code id, etc.): measured !Machine response time: 0.1 ~ 10 seconds

DOSING INFORMATION: The dose for adults is 325 to 650 mg every 4 to 6
  • hours. The maximum
daily dose is 4 grams.

Acetaminophen

Nurse: Alice Patient: K. S. Chaug

Case Study 3: Debugging and Performance Evaluation of Multi-User Medication Station

slide-33
SLIDE 33

Module Local service Runtime engine Core services Workflow instances

  • f other modules

RG LIM WTM CUEL iMAN RK DR BaMU 1.0 Psuedo Host

MUMS Server Host

BaMUStateMachine Workflow instance MUMSSM Workflow instance StateMachine local service

slide-34
SLIDE 34

n Motivation and rationales

q Examples of UCADS q Characteristics and requirements

n UCADS model: Workflow and GOMS n USE: UCADS simulation environment n Case studies n Missing pieces/wish list

q Intelligent monitoring

q Models of user-assistive-device and

human-robot interaction

OUTLINE

slide-35
SLIDE 35

A User Actions Monitor

User Workflow Device Workflow

Initial State Waiting for Plug-in State Initialize dispenser MSS Not Ready Ready for Scheduling State Plug in MSS Plug in Container Error State More container to plug? No Plug memory card into MSS port Plug a container into a socket Yes MSS Ready Plug in Container

Interface Service

slide-36
SLIDE 36

Disallowed ? yes

Error Handler

Assumed ?

Plant Monitor & Checker

yes

rollback request Normal Control law warning Degraded Control law

slide-37
SLIDE 37

n Conditions for action sequences

to be

q Observable and q Recoverable (undoable)

n Methods and tools

We lack

slide-38
SLIDE 38
slide-39
SLIDE 39

Thank You

slide-40
SLIDE 40

Workflow Definition Languages and Workflow Management Systems

  • Workflow Definition Languages

– XPDL: XML Process Definition Language – C# + XAML – BPEL: Business Process Execution Language – YAWL: Yet Another Workflow Language – BPMN: Business Process Model Language

  • Workflow Management Systems

– Enhydra Shark – Workflow Foundation – jBPM – Bonita – YAWL System – WfMOpen – ActiveBPEL – ProcessMaker

slide-41
SLIDE 41

GOMS (Goals, Operators, Methods, and Selection rules)

  • Why GOMS?

– John, B. E. (1995) Why GOMS? Interactions, vol. 2, no. 4. pp. 80-89. – John, B. E. and Kieras, D. E., “Using GOMS for User Interface Design and Evaluation: Which Technique?” in ACM Transactions on Computer-Human Interaction, Volume 3, Issue 4, December 1996. – Lu Luo, and Bonnie E. John, “Predicting task execution time on handheld devices using the keystroke-level model,” in Conference on Human Factors in Computing Systems, 2005. – John, B. E. and Suzuki, S., “Toward Cognitive Modeling for Predicting Usability,” in Proceedings of HCI, 2009 (19-24 July 09, San Diego, CA). – J. L. Drury, J. Scholtz, and D. Kieras, “Adapting GOMS to model human- robot interaction,” in Proceedings of the ACM/IEEE international conference on Human-robot interaction, Arlington, Virginia, March USA , 2007.

  • GOMS family

– KLM – CMN-GOMS – NGOMSL – CPM-GOMS

slide-42
SLIDE 42

Prototyping tools

  • CogTool, http://cogtool.hcii.cs.cmu.edu/
  • Hartmann, B., Klemmer, S.R., Bernstein, M., Abdulla, L., Burr, B.,

Robinson-Mosher, A., Gee, J., “Reflective physical prototyping through integrated design, test, and analysis,” in Proceedings of UIST 2006.

  • Björn Hartmann , Loren Yu , Abel Allison , Yeonsoo Yang , Scott
  • R. Klemmer, “Design As Exploration: Creating Interface Alternatives

through Parallel Authoring and Runtime Tuning,” in Proceedings of UIST 2008.

  • Barboni, E., Ladry, J., Navarre, D., Palanque, P., and Winckler, M.,

“Beyond modeling: an integrated environment supporting co- execution of tasks and systems models,” in Proceedings of the 2nd ACM SIGCHI Symposium on Engineering interactive Computing Systems (Berlin, Germany, June 19 - 23, 2010).

  • Rémi Bastide, David Navarre, and Philippe Palanque, “A Model-

Based Tool for Interactive Prototyping of Highly Interactive Applications,” in Proceeding CHI EA '02 CHI '02 extended abstracts

  • n Human factors in computing systems, Minneapolis, Minnesota,

USA, 2002.