SlideShare a Scribd company logo
1 of 24
UsyBus: A Communication Framework
among Reusable Agents integrating
Eye-Tracking in Interactive Applications
Francis JAMBON
Univ. Grenoble Alpes, LIG, France
Jean VANDERDONCKT
Univ. catholique de Louvain, LouRIM, Belgium
& Univ. Grenoble Alpes, LIG, France (Jan-Jun 2016)
Motivations
• Eye movement analysis is popular to evaluate a UI
• Setting up an evaluation with an eye-tracker
is resource-consuming
2
• Areas of interest are defined manually,
exhaustively and redefined each time
the user interface changes
• Eye movement data must be
synchronized
• Even more serious when the user
interface changes dynamically in
response to user actions
• Difficult integration into applications
Introductory Example
• PILOTE2 Case Study
– An instrumented flight simulator developed in the context
of Technology Enhanced Learning Environments
– A proof of concept to study the feasibility of pilots’ skills
on-line diagnostics, based on the analysis of their
perceptive and gestural activities
– Eye-tracker integration is needed to capture pilot’s gaze on
the instrument panel in real-time, and to link this data to
pilot actions and aircraft parameters
3
Introductory Example
• PILOTE2
Case Study
Experimental
setup with the
flight simulator
(on the right)
and the data
acquisition
monitoring
consoles (on
the left)
4
Introductory Example
• PILOTE2 video…
5
6
Data
Exchange
Bus
Fix. in Zones
Fixations
Points
Eye Gaze
Fixations
Filter
Fixations
Zones
Fixations
in Zones
Detector
Actions
States
Flight
Simulator
Interface
Zones
Fix. In Zones Procedures
Analyzer
Actions
States
Eye-Tracker
Controller
(Tobii 1750)
Points
« T »
Patterns
Detector
Fix. in Zones
Points
Zones
Fixations
Eye
Tracking
Monitor
(optional) Fix. in Zones
Use Case: Simple Interactive Application
• An application dedicated to the registration of participants
• The user interface of the application is made up of five fields
(first name, last name, street, zip code and city) for each
participant to be registered
7
Use Case: Simple Interactive Application
• The application
is adaptive: it
dynamically
swaps controls
depending on
users’
perceptions
and actions
8
Use Case: Simple Interactive Application
• The adaptation engine
applies a Perception-
Decision-Action algorithm
(PDA) to differentiate:
– Fields that have been
watched at but left unused
– Fields that have been
watched at and used
– Fields that have been
ignored
9
Perception
Decision
Action
Perception
Decision
Action
End user System
User interface
Use Case: Simple Interactive Application
• At run-time, the adaptation engine suggests to the
application a new user interface layout, minimizing
the time required to complete the actual user
interaction path
• This application is intended to test the acceptability
of the dynamic adaptation feature to end-users
10
Use Case: Simple Interactive Application
• Five UsyBus
agents are
necessary:
– An eye-tracker
controller
– A gaze fixation
filter, and a
fixations in zones
detector
– An adaptation
engine
– The application
user interface
11
Use Case: Simple Interactive Application
• Data Flow:
Many data
exchanges
must be
performed
between
the agents
12
Use Case: Simple Interactive Application
• UsyBus
Framework:
The multi-
agent Usybus
architecture
defines
implicitly data
flows between
the agents
13
Usybus Multi-Agent Framework
• UsyBus adopts a Multiple-Input Multiple-Output
(MIMO) paradigm
– Any UsyBus agent can send data to the data exchange bus via
one or many channels, and receive data in the same way
– Channels are defined by UsyBus data types
14
Usybus Multi-Agent Framework
• Algorithms
– Agents first connect to the bus
– A receiving agent binds to each type
of data to be received, and then
enters in a listening loop for any
incoming message
– A sending agent sends data on the
bus, without worrying whether
other agents have a binding to the
data type or even connected
– When all operations are over, the
agents disconnect from the bus
15
Usybus Multi-Agent Framework
• The UsyBus datagram format define the syntax of
messages that are exchanged between UsyBus agents
• The datagram is structured into two parts:
– the header that contains metadata, such as the version of the
bus, the type of data and the origin of the data
– the payload that contains the data to be processed by the
receiving agent(s).
• The POSIX regular expression used to recognize a
syntactically valid UsyBus datagram is:
UB2;type=[^;]+;from=[^;]+(;[^;]+=[^;]+)+
16
Usybus Multi-Agent Framework
• Data types are the keystones of the UsyBus framework:
they implicitly define the data flow between agents
• Incorrect or incoherent definitions of data types may
produce communications mismatches between agents in
the dataflow, and as a consequence, unexpected
behaviors of applications
• A significant effort must be devoted to the specification
and the documentation of data types
17
Usybus Multi-Agent Framework
• Currently, UsyBus agents use the open-source Ivy
software library as messaging library
• Ivy is “a simple protocol and a set of open-source (LGPL)
libraries and programs that allows applications to
broadcast information through text messages, with a
subscription mechanism based on regular expressions”
• The implementation of UsyBus uses the binding
mechanism of Ivy, limiting it to the header part of
messages defining their type
• Any UsyBus agent could be implemented directly with
the Ivy library while respecting the UsyBus framework
18
Reusable agents (examples)
• Eye-Tracker Controllers
Data acquisition for “Eye Tribe”
or “Tobii 50 series” eye-trackers
19
Reusable agents (examples)
• Eye-Tracking Monitor
Displays in real time
gazes, fixations, zones,
and fixations in these
zones
20
Reusable agents (examples)
• Cognitive
Load Monitor
Displays in real
time the evolution
of the left and
right Index of
Cognitive Activity
(ICA) in a line
chart
21
Conclusion
• UsyBus framework
– A multi-agent architecture implicitly and dynamically
organized by types of data that agents send or receive
– A simplified agent definition based primarily on an easy-to-
implement “UsyBus datagram”
– Addresses three important ISO 25010 software quality
properties: compatibility, maintainability and portability
– Supports eye-tracking studies in a wide variety of contexts
of use (e.g. user interface evaluation, gaze interaction, …)
– Provides a portfolio of reusable agents (e.g. gaze capture,
fixation filtering, …)
22
Perspectives
• Implementation of controller agents for new eye-
trackers, especially for mobile eye-trackers (e.g. glasses)
• Solving time synchronization issues that remain when
different real-time clocks are used for gaze and zone (for
instance with an implementation of the NTP protocol)
• Implementation of Usybus on ZeroMQ (alternative to Ivy)
• Diffusion of the UsyBus framework and reusable agents:
https://usybus.imag.fr (the link is also in the article)
23
Acknowledgments
• Funding orgaznizations
– Wallonie Bruxelles International (WBI)
Grant No. 267168 (2016)
– EU Pathfinder “Symbiotik” project
– Agence Nationale de la Recherche (ANR)
TELEOS project (ANR-06-BLAN-0243)
– Laboratoire d’Informatique de Grenoble (LIG)
PILOTE2 and GELATI “Emergence” projects
24

More Related Content

Similar to UsyBus: A Communication Framework among Reusable Agents integrating Eye-Tracking in Interactive Applications

Living objects network performance_management_v2
Living objects network performance_management_v2Living objects network performance_management_v2
Living objects network performance_management_v2Yoan SMADJA
 
Anomaly detection in the services provided by multi cloud architectures a survey
Anomaly detection in the services provided by multi cloud architectures a surveyAnomaly detection in the services provided by multi cloud architectures a survey
Anomaly detection in the services provided by multi cloud architectures a surveyeSAT Publishing House
 
Sensor Adhoc Networks SECOM paper-Final - format
Sensor Adhoc Networks SECOM paper-Final - formatSensor Adhoc Networks SECOM paper-Final - format
Sensor Adhoc Networks SECOM paper-Final - formatJohn A. Serri
 
Smart government transportation with cloud security
Smart government transportation with cloud securitySmart government transportation with cloud security
Smart government transportation with cloud securityIRJET Journal
 
Configurable Monitoring For Multi-Domain Networks
Configurable Monitoring For Multi-Domain NetworksConfigurable Monitoring For Multi-Domain Networks
Configurable Monitoring For Multi-Domain NetworksIJMER
 
A Low-Cost IoT Application for the Urban Traffic of Vehicles, Based on Wirele...
A Low-Cost IoT Application for the Urban Traffic of Vehicles, Based on Wirele...A Low-Cost IoT Application for the Urban Traffic of Vehicles, Based on Wirele...
A Low-Cost IoT Application for the Urban Traffic of Vehicles, Based on Wirele...Fatima Qayyum
 
IRJET- Android Application for WIFI based Library Book Locator
IRJET-  	  Android Application for WIFI based Library Book LocatorIRJET-  	  Android Application for WIFI based Library Book Locator
IRJET- Android Application for WIFI based Library Book LocatorIRJET Journal
 
Mobile Crowdsensing with Mobile Agents
Mobile Crowdsensing with Mobile AgentsMobile Crowdsensing with Mobile Agents
Mobile Crowdsensing with Mobile AgentsTeemu Leppänen
 
Crowd dynamics management in IOT system
Crowd dynamics management in IOT systemCrowd dynamics management in IOT system
Crowd dynamics management in IOT systematul sahay
 
Conceptual models of enterprise applications as instrument of performance ana...
Conceptual models of enterprise applications as instrument of performance ana...Conceptual models of enterprise applications as instrument of performance ana...
Conceptual models of enterprise applications as instrument of performance ana...Leonid Grinshpan, Ph.D.
 
ATMOSPHERE at IBERGRID 2018
ATMOSPHERE at IBERGRID 2018ATMOSPHERE at IBERGRID 2018
ATMOSPHERE at IBERGRID 2018ATMOSPHERE .
 
IRJET- Smart IoT based Bridge Monitoring and Damage Detection using Android App
IRJET- Smart IoT based Bridge Monitoring and Damage Detection using Android AppIRJET- Smart IoT based Bridge Monitoring and Damage Detection using Android App
IRJET- Smart IoT based Bridge Monitoring and Damage Detection using Android AppIRJET Journal
 
Monitoring in Federated Future Internet Testbeds: the FIBRE case
Monitoring in Federated Future Internet Testbeds: the FIBRE caseMonitoring in Federated Future Internet Testbeds: the FIBRE case
Monitoring in Federated Future Internet Testbeds: the FIBRE caseFIBRE Testbed
 
Self-adaptation Challenges for Cloud-based Applications (Feedback Computing 2...
Self-adaptation Challenges for Cloud-based Applications (Feedback Computing 2...Self-adaptation Challenges for Cloud-based Applications (Feedback Computing 2...
Self-adaptation Challenges for Cloud-based Applications (Feedback Computing 2...Soodeh Farokhi
 
Advancing the JISC Access & Identity Management Programme
Advancing the JISC Access & Identity Management ProgrammeAdvancing the JISC Access & Identity Management Programme
Advancing the JISC Access & Identity Management ProgrammeJISC Netskills
 
Monitoring Docker Containers and Dockererized Application
Monitoring Docker Containers and Dockererized ApplicationMonitoring Docker Containers and Dockererized Application
Monitoring Docker Containers and Dockererized ApplicationRahul Krishna Upadhyaya
 

Similar to UsyBus: A Communication Framework among Reusable Agents integrating Eye-Tracking in Interactive Applications (20)

Observability
ObservabilityObservability
Observability
 
Living objects network performance_management_v2
Living objects network performance_management_v2Living objects network performance_management_v2
Living objects network performance_management_v2
 
Anomaly detection in the services provided by multi cloud architectures a survey
Anomaly detection in the services provided by multi cloud architectures a surveyAnomaly detection in the services provided by multi cloud architectures a survey
Anomaly detection in the services provided by multi cloud architectures a survey
 
Sensor Adhoc Networks SECOM paper-Final - format
Sensor Adhoc Networks SECOM paper-Final - formatSensor Adhoc Networks SECOM paper-Final - format
Sensor Adhoc Networks SECOM paper-Final - format
 
Smart government transportation with cloud security
Smart government transportation with cloud securitySmart government transportation with cloud security
Smart government transportation with cloud security
 
Configurable Monitoring For Multi-Domain Networks
Configurable Monitoring For Multi-Domain NetworksConfigurable Monitoring For Multi-Domain Networks
Configurable Monitoring For Multi-Domain Networks
 
A Low-Cost IoT Application for the Urban Traffic of Vehicles, Based on Wirele...
A Low-Cost IoT Application for the Urban Traffic of Vehicles, Based on Wirele...A Low-Cost IoT Application for the Urban Traffic of Vehicles, Based on Wirele...
A Low-Cost IoT Application for the Urban Traffic of Vehicles, Based on Wirele...
 
Comsnets2013
Comsnets2013Comsnets2013
Comsnets2013
 
IRJET- Android Application for WIFI based Library Book Locator
IRJET-  	  Android Application for WIFI based Library Book LocatorIRJET-  	  Android Application for WIFI based Library Book Locator
IRJET- Android Application for WIFI based Library Book Locator
 
Mobile Crowdsensing with Mobile Agents
Mobile Crowdsensing with Mobile AgentsMobile Crowdsensing with Mobile Agents
Mobile Crowdsensing with Mobile Agents
 
Crowd dynamics management in IOT system
Crowd dynamics management in IOT systemCrowd dynamics management in IOT system
Crowd dynamics management in IOT system
 
Conceptual models of enterprise applications as instrument of performance ana...
Conceptual models of enterprise applications as instrument of performance ana...Conceptual models of enterprise applications as instrument of performance ana...
Conceptual models of enterprise applications as instrument of performance ana...
 
ATMOSPHERE at IBERGRID 2018
ATMOSPHERE at IBERGRID 2018ATMOSPHERE at IBERGRID 2018
ATMOSPHERE at IBERGRID 2018
 
IRJET- Smart IoT based Bridge Monitoring and Damage Detection using Android App
IRJET- Smart IoT based Bridge Monitoring and Damage Detection using Android AppIRJET- Smart IoT based Bridge Monitoring and Damage Detection using Android App
IRJET- Smart IoT based Bridge Monitoring and Damage Detection using Android App
 
Monitoring in Federated Future Internet Testbeds: the FIBRE case
Monitoring in Federated Future Internet Testbeds: the FIBRE caseMonitoring in Federated Future Internet Testbeds: the FIBRE case
Monitoring in Federated Future Internet Testbeds: the FIBRE case
 
Self-adaptation Challenges for Cloud-based Applications (Feedback Computing 2...
Self-adaptation Challenges for Cloud-based Applications (Feedback Computing 2...Self-adaptation Challenges for Cloud-based Applications (Feedback Computing 2...
Self-adaptation Challenges for Cloud-based Applications (Feedback Computing 2...
 
Advancing the JISC Access & Identity Management Programme
Advancing the JISC Access & Identity Management ProgrammeAdvancing the JISC Access & Identity Management Programme
Advancing the JISC Access & Identity Management Programme
 
JISC's AIM programme
JISC's AIM programmeJISC's AIM programme
JISC's AIM programme
 
Arcadia overview nr2
Arcadia overview nr2Arcadia overview nr2
Arcadia overview nr2
 
Monitoring Docker Containers and Dockererized Application
Monitoring Docker Containers and Dockererized ApplicationMonitoring Docker Containers and Dockererized Application
Monitoring Docker Containers and Dockererized Application
 

More from Jean Vanderdonckt

To the end of our possibilities with Adaptive User Interfaces
To the end of our possibilities with Adaptive User InterfacesTo the end of our possibilities with Adaptive User Interfaces
To the end of our possibilities with Adaptive User InterfacesJean Vanderdonckt
 
Engineering the Transition of Interactive Collaborative Software from Cloud C...
Engineering the Transition of Interactive Collaborative Software from Cloud C...Engineering the Transition of Interactive Collaborative Software from Cloud C...
Engineering the Transition of Interactive Collaborative Software from Cloud C...Jean Vanderdonckt
 
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...Jean Vanderdonckt
 
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...Jean Vanderdonckt
 
Gesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOpsGesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOpsJean Vanderdonckt
 
Engineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with SlimeEngineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with SlimeJean Vanderdonckt
 
Evaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and MeasuresEvaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and MeasuresJean Vanderdonckt
 
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...Jean Vanderdonckt
 
Designing Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and PitfallsDesigning Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and PitfallsJean Vanderdonckt
 
Fundamentals of Gestural Interaction
Fundamentals of Gestural InteractionFundamentals of Gestural Interaction
Fundamentals of Gestural InteractionJean Vanderdonckt
 
Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?Jean Vanderdonckt
 
User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...Jean Vanderdonckt
 
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...Jean Vanderdonckt
 
Attach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you WorkAttach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you WorkJean Vanderdonckt
 
The Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV GesturesThe Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV GesturesJean Vanderdonckt
 
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-Defined Gestures with Upper BodyHead and Shoulders Gestures: Exploring User-Defined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper BodyJean Vanderdonckt
 
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for SmartphonesG-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for SmartphonesJean Vanderdonckt
 
Vector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture RecognitionVector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture RecognitionJean Vanderdonckt
 
An ontology for reasoning on body-based gestures
 An ontology for reasoning on body-based gestures An ontology for reasoning on body-based gestures
An ontology for reasoning on body-based gesturesJean Vanderdonckt
 
AB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design AlternativesAB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design AlternativesJean Vanderdonckt
 

More from Jean Vanderdonckt (20)

To the end of our possibilities with Adaptive User Interfaces
To the end of our possibilities with Adaptive User InterfacesTo the end of our possibilities with Adaptive User Interfaces
To the end of our possibilities with Adaptive User Interfaces
 
Engineering the Transition of Interactive Collaborative Software from Cloud C...
Engineering the Transition of Interactive Collaborative Software from Cloud C...Engineering the Transition of Interactive Collaborative Software from Cloud C...
Engineering the Transition of Interactive Collaborative Software from Cloud C...
 
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
µV: An Articulation, Rotation, Scaling, and Translation Invariant (ARST) Mult...
 
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
RepliGES and GEStory: Visual Tools for Systematizing and Consolidating Knowle...
 
Gesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOpsGesture-based information systems: from DesignOps to DevOps
Gesture-based information systems: from DesignOps to DevOps
 
Engineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with SlimeEngineering Slidable User Interfaces with Slime
Engineering Slidable User Interfaces with Slime
 
Evaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and MeasuresEvaluating Gestural Interaction: Models, Methods, and Measures
Evaluating Gestural Interaction: Models, Methods, and Measures
 
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
Conducting a Gesture Elicitation Study: How to Get the Best Gestures From Peo...
 
Designing Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and PitfallsDesigning Gestural Interaction: Challenges and Pitfalls
Designing Gestural Interaction: Challenges and Pitfalls
 
Fundamentals of Gestural Interaction
Fundamentals of Gestural InteractionFundamentals of Gestural Interaction
Fundamentals of Gestural Interaction
 
Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?Gestural Interaction, Is it Really Natural?
Gestural Interaction, Is it Really Natural?
 
User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...User-centred Development of a Clinical Decision-support System for Breast Can...
User-centred Development of a Clinical Decision-support System for Breast Can...
 
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...Simplifying the Development of  Cross-Platform Web User Interfaces by Collabo...
Simplifying the Development of Cross-Platform Web User Interfaces by Collabo...
 
Attach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you WorkAttach Me, Detach Me, Assemble Me like you Work
Attach Me, Detach Me, Assemble Me like you Work
 
The Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV GesturesThe Impact of Comfortable Viewing Positions on Smart TV Gestures
The Impact of Comfortable Viewing Positions on Smart TV Gestures
 
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-Defined Gestures with Upper BodyHead and Shoulders Gestures: Exploring User-Defined Gestures with Upper Body
Head and Shoulders Gestures: Exploring User-De fined Gestures with Upper Body
 
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for SmartphonesG-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
G-Menu: A Keyword-by-Gesture based Dynamic Menu Interface for Smartphones
 
Vector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture RecognitionVector-based, Structure Preserving Stroke Gesture Recognition
Vector-based, Structure Preserving Stroke Gesture Recognition
 
An ontology for reasoning on body-based gestures
 An ontology for reasoning on body-based gestures An ontology for reasoning on body-based gestures
An ontology for reasoning on body-based gestures
 
AB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design AlternativesAB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
AB4Web: An On-Line A/B Tester for Comparing User Interface Design Alternatives
 

Recently uploaded

KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样umasea
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...stazi3110
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfLivetecs LLC
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 

Recently uploaded (20)

KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
办理学位证(UQ文凭证书)昆士兰大学毕业证成绩单原版一模一样
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
How to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdfHow to Track Employee Performance A Comprehensive Guide.pdf
How to Track Employee Performance A Comprehensive Guide.pdf
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva2.pdf Ejercicios de programación competitiva
2.pdf Ejercicios de programación competitiva
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 

UsyBus: A Communication Framework among Reusable Agents integrating Eye-Tracking in Interactive Applications

  • 1. UsyBus: A Communication Framework among Reusable Agents integrating Eye-Tracking in Interactive Applications Francis JAMBON Univ. Grenoble Alpes, LIG, France Jean VANDERDONCKT Univ. catholique de Louvain, LouRIM, Belgium & Univ. Grenoble Alpes, LIG, France (Jan-Jun 2016)
  • 2. Motivations • Eye movement analysis is popular to evaluate a UI • Setting up an evaluation with an eye-tracker is resource-consuming 2 • Areas of interest are defined manually, exhaustively and redefined each time the user interface changes • Eye movement data must be synchronized • Even more serious when the user interface changes dynamically in response to user actions • Difficult integration into applications
  • 3. Introductory Example • PILOTE2 Case Study – An instrumented flight simulator developed in the context of Technology Enhanced Learning Environments – A proof of concept to study the feasibility of pilots’ skills on-line diagnostics, based on the analysis of their perceptive and gestural activities – Eye-tracker integration is needed to capture pilot’s gaze on the instrument panel in real-time, and to link this data to pilot actions and aircraft parameters 3
  • 4. Introductory Example • PILOTE2 Case Study Experimental setup with the flight simulator (on the right) and the data acquisition monitoring consoles (on the left) 4
  • 6. 6 Data Exchange Bus Fix. in Zones Fixations Points Eye Gaze Fixations Filter Fixations Zones Fixations in Zones Detector Actions States Flight Simulator Interface Zones Fix. In Zones Procedures Analyzer Actions States Eye-Tracker Controller (Tobii 1750) Points « T » Patterns Detector Fix. in Zones Points Zones Fixations Eye Tracking Monitor (optional) Fix. in Zones
  • 7. Use Case: Simple Interactive Application • An application dedicated to the registration of participants • The user interface of the application is made up of five fields (first name, last name, street, zip code and city) for each participant to be registered 7
  • 8. Use Case: Simple Interactive Application • The application is adaptive: it dynamically swaps controls depending on users’ perceptions and actions 8
  • 9. Use Case: Simple Interactive Application • The adaptation engine applies a Perception- Decision-Action algorithm (PDA) to differentiate: – Fields that have been watched at but left unused – Fields that have been watched at and used – Fields that have been ignored 9 Perception Decision Action Perception Decision Action End user System User interface
  • 10. Use Case: Simple Interactive Application • At run-time, the adaptation engine suggests to the application a new user interface layout, minimizing the time required to complete the actual user interaction path • This application is intended to test the acceptability of the dynamic adaptation feature to end-users 10
  • 11. Use Case: Simple Interactive Application • Five UsyBus agents are necessary: – An eye-tracker controller – A gaze fixation filter, and a fixations in zones detector – An adaptation engine – The application user interface 11
  • 12. Use Case: Simple Interactive Application • Data Flow: Many data exchanges must be performed between the agents 12
  • 13. Use Case: Simple Interactive Application • UsyBus Framework: The multi- agent Usybus architecture defines implicitly data flows between the agents 13
  • 14. Usybus Multi-Agent Framework • UsyBus adopts a Multiple-Input Multiple-Output (MIMO) paradigm – Any UsyBus agent can send data to the data exchange bus via one or many channels, and receive data in the same way – Channels are defined by UsyBus data types 14
  • 15. Usybus Multi-Agent Framework • Algorithms – Agents first connect to the bus – A receiving agent binds to each type of data to be received, and then enters in a listening loop for any incoming message – A sending agent sends data on the bus, without worrying whether other agents have a binding to the data type or even connected – When all operations are over, the agents disconnect from the bus 15
  • 16. Usybus Multi-Agent Framework • The UsyBus datagram format define the syntax of messages that are exchanged between UsyBus agents • The datagram is structured into two parts: – the header that contains metadata, such as the version of the bus, the type of data and the origin of the data – the payload that contains the data to be processed by the receiving agent(s). • The POSIX regular expression used to recognize a syntactically valid UsyBus datagram is: UB2;type=[^;]+;from=[^;]+(;[^;]+=[^;]+)+ 16
  • 17. Usybus Multi-Agent Framework • Data types are the keystones of the UsyBus framework: they implicitly define the data flow between agents • Incorrect or incoherent definitions of data types may produce communications mismatches between agents in the dataflow, and as a consequence, unexpected behaviors of applications • A significant effort must be devoted to the specification and the documentation of data types 17
  • 18. Usybus Multi-Agent Framework • Currently, UsyBus agents use the open-source Ivy software library as messaging library • Ivy is “a simple protocol and a set of open-source (LGPL) libraries and programs that allows applications to broadcast information through text messages, with a subscription mechanism based on regular expressions” • The implementation of UsyBus uses the binding mechanism of Ivy, limiting it to the header part of messages defining their type • Any UsyBus agent could be implemented directly with the Ivy library while respecting the UsyBus framework 18
  • 19. Reusable agents (examples) • Eye-Tracker Controllers Data acquisition for “Eye Tribe” or “Tobii 50 series” eye-trackers 19
  • 20. Reusable agents (examples) • Eye-Tracking Monitor Displays in real time gazes, fixations, zones, and fixations in these zones 20
  • 21. Reusable agents (examples) • Cognitive Load Monitor Displays in real time the evolution of the left and right Index of Cognitive Activity (ICA) in a line chart 21
  • 22. Conclusion • UsyBus framework – A multi-agent architecture implicitly and dynamically organized by types of data that agents send or receive – A simplified agent definition based primarily on an easy-to- implement “UsyBus datagram” – Addresses three important ISO 25010 software quality properties: compatibility, maintainability and portability – Supports eye-tracking studies in a wide variety of contexts of use (e.g. user interface evaluation, gaze interaction, …) – Provides a portfolio of reusable agents (e.g. gaze capture, fixation filtering, …) 22
  • 23. Perspectives • Implementation of controller agents for new eye- trackers, especially for mobile eye-trackers (e.g. glasses) • Solving time synchronization issues that remain when different real-time clocks are used for gaze and zone (for instance with an implementation of the NTP protocol) • Implementation of Usybus on ZeroMQ (alternative to Ivy) • Diffusion of the UsyBus framework and reusable agents: https://usybus.imag.fr (the link is also in the article) 23
  • 24. Acknowledgments • Funding orgaznizations – Wallonie Bruxelles International (WBI) Grant No. 267168 (2016) – EU Pathfinder “Symbiotik” project – Agence Nationale de la Recherche (ANR) TELEOS project (ANR-06-BLAN-0243) – Laboratoire d’Informatique de Grenoble (LIG) PILOTE2 and GELATI “Emergence” projects 24