• Aucun résultat trouvé

Chapitre 3 ContextAA – Conception

3.6 Dynamique de contextualisation

ContextAA propose un modèle massivement décentralisé d’Agents contextualisés accomplissant chacun une mission, et n’interagissant que sur la base de Contexte. Ce Contexte est toujours le fruit d’une transformation effectuée par un Agent, qu’il s’agisse d’un composant logiciel simple sur un capteur, d’un composant complexe sur un serveur muni d’importantes ressources matérielles, ou d’une entité mobile migrant d’un appareil à l’autre en fonction du contexte.

L’Agent, en tant que lieu de génération du Contexte et en tant qu’acteur privilégié de cette génération, introduit une « subjectivité » dans le processus de production et de consommation de Contexte; c’est ce que nous nommons le Contexte-selon : ce que fait chaque Agent à partir du Contexte avec lequel il est mis en contact dépend de l’Agent, de son espace contextuel, de sa mission, de son cadre ontique, etc. et varie donc d’un Agent à l’autre. Rien n’est tenu pour acquis quant au comportement a priori d’un Agent du domaine dans notre modèle, outre le fait qu’il soit dépendant du Contexte.

Un Agent agit de prime abord sur ce qu’il tient pour Contexte à partir de l’information à sa disposition, et produit du Contexte sur cette base. Conséquemment, le Contexte consommé par un Agent est considéré comme une proposition parmi plusieurs, et chaque Agent est responsable de faire des choix quant à la valeur relative de Contextes distincts décrivant des réalités connexes, d’en évaluer « subjectivement » la qualité en fonction des critères décrits par son cadre ontique.

3.6.1 Gestion du Contexte

La gestion du Contexte se décline en deux catégories, soit la gestion de l’accès au Contexte et la gestion de sa durée de vie, qui est aussi associée directement à la gestion de la croissance de la charge sur les ressources d’un Hôte donné.

L’accès au Contexte par un Agent se fait sur la base de publication de Contexte, de consommation de Contexte et de mise en correspondance entre les deux. Tout Agent peut publier ou consommer du Contexte, et ce que décrit chaque Contexte dépend de l’acception qu’en font respectivement le producteur et le consommateur. Pour contrôler l’exposition du Contexte aux autres Agents, ContextAA utilise les qualifications d’accès au Contexte. Par qualifications d’accès au Contexte, nous entendons le recours à un mot contextuellement réservé pour indiquer qui a droit d’en explorer la valeur.

72

Comme mentionné précédemment, la visibilité du Contexte (public, local ou privé ) influence le processus de résolution automatisé des requêtes pour du Contexte. Pour ce qui est de la gestion de la durée de vie du Contexte, il se trouve que les Agents dans ContextAA consomment et produisent du Contexte sous plusieurs formes, et ce continuellement. Ainsi, si aucun mécanisme n’était mis en place pour contrôler la durée de vie du Contexte, l’espace requis pour l’entreposer croîtrait sans cesse.

Cette gestion se fait à l’aide de ce que nous nommons des méta-Contextes. Les méta-Contextes sont des Contextes destinés à informer les Agents standards appropriés de règles quant à la gestion du Contexte; il existe par exemple des méta-Contextes pour expliquer quels Contextes oublier, ce qui permet par exemple à un Agent qui publie une nouvelle version d’une requête pour du Contexte de demander la suppression des versions antérieures de cette requête.

3.6.2 « Contexte-selon », ou évaluation subjective de la qualité du Contexte

La mobilité potentielle des Agents dans l’espace intelligent ouvert amène chaque Agent à faire des choix, à discriminer entre plusieurs Contextes susceptibles de répondre à ses besoins.

Un Hôte offre aux Agents qu’il prend en charge un service de mise en correspondance des requêtes et du Contexte disponible. Rappelons que cette mise en correspondance est automatisée par l’action d’un Agent standard, et que son résultat est placé dans l’espace contextuel du demandeur. Une conséquence de cette dynamique de contextualisation est qu’il se peut que le demandeur n’obtienne aucun Contexte correspondant au modèle demandé, tout comme il se peut qu’il en obtienne plusieurs.

Placé devant deux Contextes susceptibles de répondre à ses besoins, un Agent peut discriminer sur la base de plusieurs critères. Par exemple :

 préférer le Contexte le plus récemment produit selon lui;

 préférer le Contexte dont le producteur prétend avoir réalisé la lecture de plus haute précision;  préférer le Contexte dont le producteur est le plus proche du point où se trouve l’Agent;  préférer le Contexte dont le producteur a meilleure réputation;

 préférer une mesure synthétique construite à partir d’un amalgame des Contextes reçus, comme par exemple la moyenne des températures décrites; etc.

Cette capacité de discriminer, que nous nommons évaluation subjective de qualité du Contexte, est au cœur du Contexte-selon, et les critères permettant de préférer un Contexte ou l’autre s’expriment, dans ContextAA, par du Contexte. L’évaluation subjective de la qualité du Contexte dépend d’autres facteurs, plus contextuels : la crédibilité apparente de l’émetteur, par exemple, qui peut être basé sur l’historique des interactions avec cet Agent (par le demandeur ou par d’autres Agents), ou encore la qualité de l’algorithme utilisé pour produire le Contexte, quand celui-ci est connu. Les critères effectifs de qualité d’un Contexte donné dépendent de l’observateur, donc de l’Agent demandeur. Les mécanismes qu’offre ContextAA pour évaluer la distance entre deux Contextes constituent un exemple d’outil permettant de réaliser certaines de ces évaluations en fonction des règles décrites dans le cadre ontique de l’Agent.

73

Pour un Agent sur un nœud muni d’actuateurs, il est probable que les requêtes décrivent des commandes qui lui sont destinées et que l’Agent transforme en actions. L’Agent placé face à un ensemble de requêtes discrimine parmi les Contextes obtenus; il peut trancher pour l’un ou l’autre des demandeurs, tout comme il peut soumettre des demandes supplémentaires aux fournisseurs de commandes pour l’actuateur, dans le but de trouver une action convenant à tous les demandeurs sans contrevenir aux contraintes décrites dans le Profil des usagers impliqués. ContextAA offre un cadre pour faciliter ces échanges, mais le processus décisionnel de l’Agent s’inscrit dans le Contexte-selon, et dépend aussi des règles décrites dans son cadre ontique.

74