Machine dans les plate-formes d’Intelligence Ambiante Point de vue technologique Christophe Cerisara
Jan 26, 2016
Les interfaces Homme-Machine dans les plate-formes d’Intelligence Ambiante
Point de vue technologique
Christophe Cerisara
La place des interfaces en AmI« One of the most significant challenges in AmI/pervasive computing technologies is to create user-friendly interfaces. »
[Raisinghani et al., Journal of Digital Information, août 2004]
« Interfaces, especially user interfaces are one of the crucial building blocks for AmI because they define the experience the user will have with the intelligence surrounding him/her. »
[Y. Punie, Key deliverable (EPTS, CEE) 2003]
« A central challenge of AmI is to create systems that are intuitive to use […] This will require techniques for dialogue-based and goal orientated negotiation systems […] Pattern recognition (including speech and gesture) is a key area that is evolving rapidly. »
[ISTAG Scenarios]
Besoin de nouvelles interfaces
Caractéristiques AmI Interfaces traditionnelles
Multiplicité des capteurs/terminaux
capteurs/terminaux prédéfinis
Nombreuses applications une, au mieux quelques applications
Mobilité peu d’adaptation au contexte (changements de capteurs, interruption, …)
Utilisateur quelconque Utilisateur moyen (vs. handicapé / très âgé / enfant /…)
Interfaces transparentes/discrètes
accapare l’attention de l’utilisateur
Multi-utilisateurs un seul utilisateur à la fois s’adresse au système
PlanComment adapter ces interfaces aux
besoins de l’AmI ?
Multiplicité des capteurs/terminauxMultiplicité des applicationsEnvironnements multi-utilisateursPrise en compte du contexteInteractions implicites
Problèmes de l’IHM classique: capteurs prédéfinisSolutions technologiques :
Découvrir les terminaux Sélection du meilleur terminal Fusion séquentielle des flux d’information Normalisation des données
Défi 1: gérer la multiplicité des terminaux
Plate-forme d’AmI
Protocoles UPnP, JXTA …
Problèmes de l’IHM classique: capteurs prédéfinisSolutions technologiques :
Découvrir les terminaux Sélection du meilleur terminal Fusion séquentielle des flux d’information Normalisation des données
Plate-forme d’AmI
Sélection à base de règles (éventuellement apprises)
• Proximité:
• GPS, détecteurs IR…
• Détection de l’utilisateur
• Standard supporté
• Contexte, préférences…
Défi 1: gérer la multiplicité des terminaux
Problèmes de l’IHM classique: capteurs prédéfinisSolutions technologiques :
Découvrir les terminaux Sélection du meilleur terminal Fusion séquentielle des flux d’information Normalisation des données
Plate-forme d’AmI
Programmation Dynamique:
Minimisation de distances
Défi 1: gérer la multiplicité des terminaux
Problèmes de l’IHM classique: capteurs prédéfinisSolutions technologiques :
Découvrir les terminaux Sélection du meilleur terminal Fusion séquentielle des flux d’information Normalisation des données
Plate-forme d’AmI
Ex: Flux audio: réduction du bruit convolutif
• Normalisation par histogrammes
• CMN, CVN, …
Défi 1: gérer la multiplicité des terminaux
Exemples de réalisations…
Fraunhofer ICG: découverte automatique des devices afin de les représenter (et de les contrôler) sur un PDA
Philips Research: « Follow me with magic wands »
Exemple : UbiComp Browser (Univ. de Karlsruhe)
1 capteur, N écrans.
Accès au Web à travers le PDA
• Affichage sur des écrans environnants. Sélection par:
• La proximité (notion de pièce, localisation IR)
• Les standards supportés
• Choix par des règles prédéfinies.
Exemples de réalisations…
Défis technologiques : Fusion instantanée des flux : utiliser tous les capteurs Améliorer la précision des capteurs / corriger les erreurs Nouvelles informations : ex. stéréophonie Prendre en compte un contexte plus large
Plate-forme d’AmI
Défi 1: gérer la multiplicité des terminaux
Problèmes:- Unicité des interfaces pour/adaptées à l’utilisateur- Réduire les coûts de développement / Ne pas recréer de nouvelles
interfaces à chaque application
Solutions technologiques:- Langage de description des interfaces indépendant des terminaux- Génération automatique des interfaces (Nichols, CMU)
Exemple 1 : IBMUniversal Information Appliance : Un seul PDA qui accède à tous les
services / appareilsMobile Document Application Language (MoDAL): basé sur XML, décrit les
interfaces et applications. Il implémente 4 actions:1. Afficher un GUI2. Réaliser des calculs locaux3. Lire / écrire sur une base de données locale4. Envoyer / recevoir des messages sur le réseau
Défi 2 : Multiplicité des applications
Exemple 2 : EMBASSI projectLangage de description des interfaces basé sur XML:
Multiplicité des interfaces
<?xml version="1.0" encoding="UTF-8"?>
<input id="field1" lang="DE" … >
<caption>
<text>Name:</text>
</caption>
<hint>Please enter your name. Up to 50
characters
</hint>
<help>http://www.embassi.de</help>
Défi 3 : Environnements multi-utilisateurs
Gérer plusieurs utilisateurs simultanément
Gérer des utilisateurs « non standards »: Âgés, enfants, handicapés, …
Problèmes (non résolus)
Identité des locuteurs ? Qui parle ? A qui ?
Technologies de base ? Identification Reco. des actes de dialogue Reco. robuste aux bruits / BSS
TeleTact II (CNRS)
LABIAO (LORIA): Enfants mal-entendants Communauté d’utilisateurs N’accapare pas l’attention
Le contexte peut être pris en compte sous différentes formes dans les interfaces:
Réagir à des changements contextuelsAdapter les interfaces au contexteInterrompre l’utilisateurGestion des ressourcesGénérer des méta-données
Défi 4 : Prise en compte du contexte
Applications proactives: Démarrer une application: alarmes, … Choisir une appli: position => PDA Paramétriser une appli: position, vitesse => système
de navigation
Démarrer un service Choisir un service Paramétriser un service
Ex. Alarmes Ex. PDA dans un centre commercial Ex. navigation
Prise en compte du contexte
Interfaces adaptables
Hardware
Choix des interfaces
- Bruit / lumière
- Préférences
- …
Prise en compte du contexte
Adaptation aux interfaces
Interruptions de l’utilisateur par le système Pré-définies: réunions prévues dans l’agenda. Déclenchées: appel téléphonique Choix du mode d’interruption selon le contexte (Interfaces
attentives) Jean travaille : faire clignoter une icône en bas de l’écran Jean discute : attendre une pause dans la conversation pour
interrompre oralement Jean.
Prise en compte du contexte
• Négociation progressive
• Commence par un signal discret
• Minimiser la perception des modifications
• Images fade-out … (MIT)
• Tangible bits
• Modalités non utilisées
• Interfaces attentives à l’utilisateur
• Habitude / routine: augmenter les objets usuels.
• ubicomp / unremarkable computing
• Retarder / Annuler l’interruption
• Proactive computing
Special Issue « Attentive User Interfaces », Communication ACM 2003.
Gestion des ressources Choix de l’imprimante la plus proche Plus généralement, utilisation des ressources les plus
proches[D. Kirsh, The Intelligent Use of Space, Journal of Artificial Intelligence, 73 (1-2), (1995) 31-68. Online: http://iclserver.ucsd.edu/~kirsh/Articles/Space/AIJ1.html]
Génération de méta-données automatiquement pour « étiqueter » les documents
Ex: A quel endroit me trouvais-je lorsque … ?[G. D. Abowd, Classroom 2000: An Experiment with the Instrumentation of a Living Educational Environment, IBM Systems Journal, Special issue on Pervasive Computing,
38 (4), (1999) 508-530]
Prise en compte du contexte
Défi 5 : Interfaces discrètes- Ne pas accaparer l’attention de l’utilisateur !
Alternative:
Interactions implicites, transparentes, calmes, …
Interfaces très opaques…
Implicit input: Acte de l’utilisateur interprétable par le système mais qui ne lui est pas destiné
Implicit output: Réponse du système « intégrée » à l’environnement et à la tâche de la personne
Exemple: Jean jette l’emballage d’un plat (taggué RFID)Analyser:
Jean mange-t-il de ce plat souvent ? Reste-t-il de ce plat ?
Proposer: Lorsque Jean est au supermarché: « désigner » ce plat.
Interfaces discrètes
Interactions implicites
Un modèle [Riva et al: Ambient Intelligence, 2005] :
Interactions implicites: défis Interpréter les actes complexes d’une personne (communication)[Riva et al: Ambient Intelligence, 2005]
Socle commun de connaissances (SCC)
Contexte(common ground)
« A common knowledge base is essential […] A discrepancy in the shared knowledge often leads to communication problems as probably most people have experienced in
everyday life, especially when travelling abroad »
• langage
• modèle du monde
• histoire, …
• Contexte textuel
• Langage non-verbal (ex: être pressé)
• Rôles / Objectif des interlocuteurs
• Environnements physiques / sociaux
Interactions implicites: défis Interfaces traditionnelles:
SCC réduit à peau de chagrin (vocabulaire limité, quelques concepts liés à l’application)…
… Mais ça marche, car l’utilisateur est coopératif / connaît les limites du système
Interfaces implicites: L’utilisateur n’explique pas au système:
le SCC est indispensable !
Comment modéliser le SCC ? Pour des domaines très spécifiques (ex: achats
alimentaires) « Modèles du monde », basés sur la logique du 1er
ordre: Discourse Representation Theory
Statistiquement: Latent Semantic: Signification d’un mot = coordonnées dans un espace à grandes dimensions
« Un chien aboie » : )()( xaboiexchienx
Concepts
Mots / phrases
Interactions implicites: défis
Interactions implicites: défis
Comment modéliser le contexte ?Langages de description d’ontologie:
XML(SGML)-familyOWL, Topic Maps, XCL
Common Logic-familyKIF, CGIF, XCL
Description Logic-familySNOMED-CT, OWLALC(D), SHOQ(D), SHIF(D), SHOIN(D) etc.
OthersUML, Entity-relationship model
In OMG ODM (Ontology Definition Metamodel)
S’interposer dans la communication entre personnes: En réunion / Dans une salle de classe
Afin d’expliquer pourquoi et comment telle décision… Pour aider pendant la réunion
Détecter incohérences Rappel de « patterns » d’interaction similaires passés …
Techno de base: NIST Meeting Room evaluation
Interactions implicites: Mediated Space (IBM)
Analyser le contexte d’apprentissage de l’utilisateur Écouter la radio / TV …
… en même temps que l’utilisateur: Rappeler plus tard le contexte, le contenu Corriger des erreurs, … Aide-mémoire
Techno de base: NIST Broadcast News evaluation / campagne ESTER
Interactions implicites: Mediated Space
De nombreuses briques de base…
… mais il reste à bâtir l’édifice !
Conclusions
Interactions implicites: en sortie
Exemples…
Développé par BT’s Research Labs:
Interaction device qui utilise la lumière et des sons pour attirer l’attention de l’utilisateur, et la détection de mouvements (de la main) en entrée.
Génère des odeurs en réponse aux emails/sms/…
Développé par Violet:
Lampe connecté à Internet par WiFi, sensible aux sons et au toucher, 9 zones de couleurs pour afficher des infos.