570 likes | 815 Views
Interaction homme-machine. Jean Caelen Laboratoire CLIPS-IMAG. Historique. Opérateur humain (...perforation de cartes...) Ecran de saisie (...page par page...) Ecran graphique (...clavier, souris, écran...). Calculateur. Ordinateur. Personnel. Actuellement…. Personne / personne.
E N D
Interaction homme-machine Jean Caelen Laboratoire CLIPS-IMAG
Historique • Opérateur humain (...perforation de cartes...) • Ecran de saisie (...page par page...) • Ecran graphique (...clavier, souris, écran...) Calculateur Ordinateur Personnel
Actuellement… Personne / personne • De : Combiné téléphonique (...communication humaine...) • A : Interface instrumentale (...robot... action sur l’environnement…) Met en relationdes humains et des systèmes Personne / système
Les applications de l’informatique • les transports (air, rail, route, etc.), • les télé-services transactionnels : commerciaux et bancaires, • les télécommunications et les espaces de médiation, • la formation et la télé-formation, • la simulation et la conception assistée par ordinateur, • la robotique et la télé-manipulation, • la bureautique — concept du bureau du futur, du bureau de l’handicapé, etc., • l’utilisation collective de l’ordinateur : le travail collaboratif, les “ cyber-villages ”, etc., • la commande de processus continus ou discrets — environnement robotique, chaînes de production, etc., • l’aide à la création et aux activités artistiques, aux loisirs, à la diffusion de la culture — concept de télévision interactive, de musée virtuel, etc., • l'aide à la maintenance de systèmes complexes, etc. • l'aide à l'acte chirurgical et médical.
Nouvelles interfaces • Humains... plus diversifiés professionnel / grand public • Systèmes... plus complexes fonctions diversifiées, en réseau, distribués, agents, assistants • L’ordinateur envahit tous les champs d’application et atteint tous les publics • Les humains ne veulent plus « subir », la « machine » doit s’adapter
Les contours du domaine • Les modalités : vocal, gestuel, visuel • Le traitement automatique du langage naturel • L’ingénierie de l’interaction homme-machine • Les environnements virtuels et augmentés • L’image et le son (synthèse et traitement) • Les médiaspaces, les objets communicants • L’intelligence ambiante • Le collecticiel L’ergonomie des interfaces et la sociologie…
Les conditions de la réussite • « Utilité » adéquation au besoin opératoire (adéquation à la tâche) pertinence de l’outil (pas un outil à « tout faire ») • « Utilisabilité » fiabilité (vers le zéro-défaut) efficacité (réduction du temps de la tâche) facilité d’emploi (en adéquation avec la mémoire) rapidité d’apprentissage manipulation agréable Les ingénieurs ne sont pas seuls concernés par les interfaces
Principes ergonomiques • Adéquation des modes et des modalités sensorielles • Adéquation des représentations • Traitements compatibles avec les objectifs et avec le raisonnement H ► E + M modalités sensorielles modes représentations modèles, objets raisonnements traitements H = humain, E = environnement, M = machine
Processus interactionnel • Théorie de l’action [Norman, 86] • Modèle de [Rasmussen, 86] • Habiletés • Comportement • Raisonnement Raisonnement Comportement Habiletés
Le modèle ICS [Barnard, 92] ICS peut se voir, en première approximation, comme un affinement du Modèle du Processeur Humain [Card 83]. ICS est une architecture parallèle multi-processus décomposée en un ensemble de neuf sous-systèmes spécialisés
Cadre Des individus qui agissent intentionnellement sur un environnement naturel ou artificiel au moyen d’un système informatique pour réaliser une tâche.
Définition • Adaptateur d’impédance(elle doit « résister ») • Loupe(elle doit « focaliser ») • Miroir(elle doit « refléter ») • Attracteur (elle doit « motiver ») L’interface est une abstraction (elle ne commence ni ne s’arrête au clavier-écran : elle a une profondeur)
Interface : opérateur / tâche Activité de l’usager cadrée par la tâche
L’interface doit avoir : • des représentations sur l’opérateur, aux plans cognitif et/ou social, • une représentation des capacités perceptives et sensorielles humaines, • un modèle du domaine de la tâche, • un modèle d’interaction et/ou des règles sociales, • une représentation d’elle-même (pour s’adapter ou pour être plus générique) et de ses différents dispositifs.
Typologie • Typologie des usagers, • Typologie des environnements, • Typologie de l’interaction, • Typologie des tâches, • Typologie des connaissances, • Typologie des dispositifs.
Typologie des usagers • Utilisateur de référence = Ho • Usagers proches = Hp • Usagers distants = Hd • Système = M Ho U Hp travaillent avec Hd à l’aide de M
Uo Typologie des univers • Univers de référence artificiel = Uo • Univers réel proche = Up • Univers réel distant = Ud Environnement E = Uo U Up U Ud Ud Up
Typologie de l’interaction 4 Directions d’ajustement Ho contrôle E (Ho => E) Ho s’informe sur E (E => Ho) Ho interagit avec E (Ho E) Ho indépendant de E (Ho / E)
Rôles du système • Médiateur • Simulateur • Assistant • Partenaire
Typologie des tâches • Tâches routinières par réutilisation complète de schémas • Tâches innovantes ou de conception par réutilisation de parties de schémas (scripts) • Tâches de création toujours nouvelles • type de planification mise en jeu (hiérarchique, opportuniste, fin-moyens, etc.), • nombre de buts poursuivis simultanément, • avec partage des tâches à plusieurs ou non, • astreinte à un processus temps réel ou non (qui conditionne les interventions sur interruptions externes),
Typologie des connaissances • croyances de Ho sur E, • croyances de Ho sur le système M, • croyances de Ho sur lui-même, • représentations de E dans M, • croyances de M sur Ho,
Typologie des dispositifs • Dispositifs statiques (écran) • Dispositifs mobiles (robots) • Dispositifs portables (PDA, téléphone) • Dispositifs vestimentaires (capteurs) • Dispositifs environnementaux (bornes) Directionnalité (E/S), taille, type canal, débit, etc.
Exemple de dispositifs • Graphique (écran + clavier + souris) • Vocal (microphone + HP) • Gestuel (gant, retour d’effort) • Visuel (caméra, vidéo-projecteur) • Multimodal (mixte)
Exemple : interface vocale Interface vocale téléphonique pour le renseignement touristique • Ho = client, [Hd = agent], M = agent • E = Base de données “tourisme” • (E => Ho) • Connaissances Ho = {langue, transport} • Tâche = {routinier, hiérarchique, 1 but à la fois} • Dispositifs {entrée = microphone, sortie = HP)
Tâche / activité • Tâche : caractéristiques définition : suite(s) d’actions conduisant potentiellement à un(des) but(s) — nombre de buts poursuivis simultanément (tâches concurrentes et parallèles) — type de planification et dynamicité du raisonnement (de la routine à l’innovation) — tâche individuelle ou collective — astreinte à un processus externe (interruptions) — contraintes particulières (urgence, sécurité, etc.) — complexité (niveau cognitif exigé) • Activité suite d’actes effectués par un usager dans le cadre d’une tâche — actes langagiers — actes non-langagiers On distingue la tâche prescrite de la tâche réalisée
Analyse de tâche Pour concevoir et évaluer des systèmes informatiques, on analyse le comportement de l'utilisateur, avant pendant et après l'existence du système. • Le modèle UAN utilise des opérateurs d'enchaînement de tâches. • Séquence • Attente • Disjonction répétée • Indépendance d'ordre • Entrelacement • Parallélisme
Tâche = hiérarchie (a) $s : A(t) s (b) A(t) (x(t-1) x(t) "A, $ R : {a}A avec a = acte $a : aÆ où Æ est une non-action Modèle de tâche : Ensemble des actions A = (A) muni de relations: précédé (<), suivi (>), simultané (||), disjonctif (OU), Indépendance d'ordre (ET), entrelacements (,)
Représentation Script : s (ou scénario) | appartient-à {scénarios} | liens de séquentialité {<, >, ||, OU, ET} | Corps : {Actions} | Conditions : {Contraintes} |_ Effets : {Actions} Action : A | appartient-à {scripts s} | liens de séquentialité {<, >, ||, OU, ET} | Corps : {Processus élémentaires} | Conditions : {Contraintes} |_ Effets : {Processus élémentaires}
Activité Activité : {a1}A(1), {a2=a3}A(2), {a5}Æ, {a4<a6}A(3), {a7}A(4)
Modèles de tâche • pour conduire l'interaction : on s'appuie sur le modèle de tâche prescrit, • pour situer le cadre pragmatique : on s'appuie sur les connaissances requises, • Le modèle de tâche décrit la structure de coordination des activités entre l’usager et la machine • Deux catégories de modèles
Modèles explicites Définition : un modèle de tâche explicite décrit de manière explicite la succession des actions (corps, effets, conditions, ordonnancement, etc.) conduisant à un but donné. Propriété : ce modèle convient bien aux tâches dites de routine. Formalismes : CLG [Moran, 81], GOMS [Card, 83], TAG [Payne, 86], MAD [Pierret-Golbreich, 89], ETAG [Tauber, 90], TKS [Johnson, 91], UAN [Hartson, 92], LOTOS [Amodeus, 93] etc. Outils : Arbres ET/OU, ATN, Pétri, Schémas, etc. ± richesse des opérateurs
Tâche sélectionner objet Acte utilisateur Action machine Etat CursorMove Icône(objet) MouseDown MouseUp Icône(objet) Inverse vidéo Icône(objet) inv.video ObjetSélectionné(objet) UAN [Hartson, 92]
Modèles implicites Définition : un modèle de tâche implicite décrit seulement le but à atteindre et quelques moyens pour l’atteindre. Propriété : ce modèle convient aux tâches dites “innovantes” ou de conception. Formalismes issus de l’IA : • exploration d’arbres de buts [Mahler, 85], [Mittal, 85], • sélection et expansion de plans de conception [Brown, 85], • proposition et révision d’hypothèses par satisfaction et propagation des contraintes [Marcus, 86], • modification de solutions presque bonnes [Stallman, 77], [Howe, 88], Outils : Prototypes, algorithmes génétiques, etc.
Algorithmes génétiques Pour une séquence P de prototypes donnée et un but B à atteindre : a) Mutation P’m= M(Pm P) b) Croisement P’c = C((P’m) (P-Pm)) c) Sélection P’=S (P’c) d) Satisfecit si $ x P’ satisfaisant B alors arrêt sinon P = P'; retour a)
Modèle d’usager Profil… • Perceptif • Cognitif • Actionnel (-> par le langagier et le non-langagier) • Psycho-social Usage : Comportement type modèle de l’usager ou des usages ?
Modèles d’usager • Statiques -> Dialogue adaptable - préférences - niveau d’expertise - particularités langagières - etc. • Dynamiques -> Dialogue adaptatif - connaissances évolutives - stratégies dynamiques - robustesse - etc. Techniques
Architecture Seeheim • Modèle en couche : des dispositifs à l’application Seeheim (1980) Présentation contrôle lexical Dialogue contrôle syntaxique Interface de l'application contrôle sémantique
Le composant vocal… 1. Moteur 2. Filtrage acoustique 3. Filtrage linguistique 4. Lexique 5. Rehaussement 6. Rejet 7. Analyse sémantique 8. Synchronisation 9. Fusion 10. Transduction phonétique 11. Prosodie
ARCH : Seeheim révisé Contrôleur de Dialogue Techniques de Adaptateur de noyau fonctionnel Présentation Interaction de Bas Niveau Noyau Fonctionnel
Queues d'événements Système de fenêtrage ARCH : ex. système Matis Contrôleur de Dialogue Interaction de Bas Niveau Techniques de Présentation Entrées et Sorties graphiques Adaptateur de noyau fonctionnel Interface Builder Noyau Entrées en langage naturel Fonctionnel Parser (Grammaires) Reconnaissance Mapper Phrases Vocabulaire reconnues
Requêtes sous forme de structure de données Requêtes S.Q.L. ARCH : ex. système Matis Contrôleur de Dialogue Adaptateur du Noyau noyau fonctionnel Fonctionnel Techniques de Requêtes Présentation S.Q.L. Interaction de Bas Niveau Traduction Base de Résultats sous Données forme textuelle
Modèles à agents • Modularité et parallélisme • Conception itérative (modifiabilité) • Dialogue à plusieurs fils • Mise en œuvre des collecticiels • Correspondance avec l’approche objets • Catégorie d’agents réactifs => classe • Événement => méthode • Encapsulation : l’agent est seul à modifier son état • Mécanisme de sous-classe
MVC (Smalltalk) • M = MODEL la compétence abstraite de l’agent (noyau fonctionnel) • V = VIEW le rendu perceptible de l’agent (comportement en sortie) • C = CONTROLLER le comportement en entrée Un agent = 3 facettes Une hiérarchie d’agents
Architecture PAC (Coutaz 87) • Une hiérarchie d’agents Présentation Abstraction P A Contrôle
Exemple : le réchaud MasseEau TempEau TempSource • Deux agents : la casserole et le réchaud ObjetSur A P C A P C TempRéchaud On/off ObjetSur ON/OFF
Réchaud(TempSource, TempAmbiant, On, ObjetSur) facette-P image-réchaud if-MouseClick(button) On ; Color(button)=rouge if-MouseDoubleClick(button) ¬On ; Color(button)=noir if TempRéchaud > Teff image-effluves facette-A if-On TempRéchaud=F+(TempRéchaud, t) else TempRéchaud=F-(TempRéchaud, TempAmbiant, t) facette-C if-ObjetSur TempSource = TempRéchaud Casserole(TempSource, TempAmbiant, TempEau, MasseEau) facette-P image-casserole if-MouseDrag(Réchaud) ObjetSur ; else ¬ObjetSur if TempEau > T100 image-bulles facette-A TempEau=H(TempEau, MasseEau, TempSource, t) facette-C if- ¬ ObjetSur TempSource=TempAmbiant
ARCH-MVC Composants indépendants des modalités