• Aucun résultat trouvé

Composition utile de services Sommaire

6.5 Vers un traitement entièrement linguistique des préférences

Dans le cas d’une mise en œuvre entièrement automatique du processus de décision telle que pré-sentée dans ce chapitre, l’obtention de valeurs d’utilités locales et globales numériques est pertinente car les outils d’agrégation et de comparaison habituels s’avèrent alors adaptés et efficaces. Cependant, dans d’autres contextes d’application la prise de décision finale pourrait reposer sur l’intervention humaine. Dans ce second cas, une méthode d’inférence et d’agrégation entièrement linguistique, par exemple à base de 2-tuples flous, permettrait de faire “remonter” au preneur de décision des infor-mations sous une forme qualitative plus intelligible qu’un ensemble de valeurs numériques réelles, et cela sans perte de précision.

En se fondant sur le procédé représenté dans sa globalité par les figures 6.10 et 6.11, une partie des perfectionnements liés à un traitement linguistique “de bout en bout” des préférences qui ont été évoqués précédemment, pourrait être implantée comme suit :

– les partitionnements flous des domaines figurés à l’étape 1, y compris celui de l’utilité,

entrai-nerait la production de termes linguistiques sous la forme de 2-tuples, i.e. des paires (si, α),

avec α = 0, c’est-à-dire dire sans déplacement latéral. Par exemple, la bande passante se-rait représentée, en gardant le partitionnement flou présenté sur la figure 6.4, par {(low,0) ; (medium,0) ; (high,0)} ;

– à l’étape 2, les tables de préférence contiendraient elles-aussi des 2-tuples (par exemple (very low,0) ou (very low,−0.2)), au lieu de simples termes linguistiques (par exemple very low ). En effet, l’utilisateur exprime ses préférences de manière graphique, c’est pourquoi un déplacement latéral des termes linguistiques originaux pourrait apparaître. Par la suite, les règles obtenues par traduction des préférences en FIS pourraient posséder des 2-tuples : par exemple “If the resolution is (low,0) and the bandwidth is (high,0) then the utility is (very low,−0.2)" ; – à l’étape 3, on procéderait à la traduction des préférences vers des systèmes d’inférence floue

(FIS) pour 2-tuples, tel que proposé par Alcalá et al. [Alcalá et al., 2007] ; – lors de l’étape 4a, les valeurs injectées le seraient sous forme de 2-tuples ;

– l’étape 4b aurait pour résultat l’inférence d’utilités locales sous forme de 2-tuples ; – l’étape 4c de calcul des poids serait gardée en l’état ;

– pour finir, l’étape 4d de calcul de l’utilité globale procéderait à l’agrégation de 2-tuples pon-dérés [Herrera et Martínez, 2000] de manière à obtenir une utilité globale elle aussi sous forme de 2-tuple.

Il est aussi intéressant de noter que les 2-tuples flous pourraient s’avérer particulièrement utiles dans le cas où l’on souhaiterait offrir à l’utilisateur la possibilité de modifier les CPT des préférences a posteriori, par l’ajout ou la suppression d’une colonne ou d’une ligne : le système procéderait alors à la mise à jour et calcul de nouvelles utilités dans les tables, ces utilités pourraient alors être exprimées avec un déplacement latéral (par exemple sous la forme (very high,−0.1)) quand bien même

les utilités initiales des tables seraient sous forme (si, 0). En fait, dès que l’on souhaite procéder à une

reconfiguration automatique d’un LCP-net, on doit changer la granularité des domaines considérés et les 2-tuples apparaissent comme un outil de choix pour y procéder, en permettant au système

de conserver une relation avec l’ensemble de termes originaux (en l’occurrence grâce aux si des

2-tuples).

6.6 Conclusion

Afin de permettre la sélection de services dans le contexte multi-critères dans lequel nous nous trouvons, des préférences établies entre les propriétés non-fonctionnelles des services doivent être élicitées afin d’obtenir un ordre total sur les candidats. A cette fin, nous avons mis en avant dans ce chapitre la contribution scientifique de cette thèse portant sur l’établissement d’une nouvelle variante des CP-nets, appelée LCP-nets, qui combine certaines propriétés des UCP-nets et TCP-nets avec les avantages apportés par une approche linguistique floue pour discrétiser les domaines continus des variables. Un LCP-net permet par ailleurs l’expression de l’utilité qualitative des affectations de ses variables dans des tables de préférences conditionnelles dédiées.

Les LCP-nets s’avèrent ainsi particulièrement adaptés au contexte des SOA Sémantiques puis-qu’ils permettent aux utilisateurs de partitionner efficacement les domaines continus des variables de Qualité de Service avec des termes linguistiques appropriés, ainsi que d’exprimer l’utilité des affec-tations d’une manière qualitative plutôt que numérique, cette dernière s’avérant souvent artificielle. L’exécution du canevas de support des LCP-nets dans ce contexte permettra alors de comparer les services candidats entre eux, sur la base des utilités globales obtenues. C’est donc en ce sens que

l’on considère les LCP-nets comme la pierre angulaire de notre approche pour la composition utile de services.

Nous avons supposé pour le moment que les utilités des différents LCP-nets sont toujours ex-primées en utilisant le même ensemble de termes linguistiques (cf. le partitionnement de l’utilité (“utility”) sur la figure 6.4), mais cette restriction pourrait être levée par la mise en œuvre d’un procédé entièrement linguistique fondée sur les 2-tuples par l’utilisation d’une approche multi-granulaire [Herrera et al., 2002] lors du calcul de la fonction d’utilité globale. De même, l’hypothèse sur le positionnement des termes linguistiques (centrés sur 0.5, les termes étant alors distribués de manière équidistante) pourrait elle aussi être supprimée en implantant des approches permettant de faire face à des ensembles de termes déséquilibrés (“unbalanced term sets”) [Herrera et al., 2008].

Il est aussi important de souligner que bien qu’établis originellement pour le contexte particulier des SSOA, et présentés comme tel dans ce chapitre, le formalisme LCP-net et son canevas d’infé-rence ne sont pas liés à un domaine applicatif spécifique et pourraient tout à fait être déployés et appliqués à d’autres contextes de décision multi-critères exhibant des contraintes similaires. Citons à titre d’exemple les cas d’utilisation proposés dans la littérature pour la présentation d’imagerie mé-dicale [Boutilier et al., 2004] et la planification d’un voyage en avion [Brafman et Domshlak, 2002]. Pour le second, les préférences qui étaient initialement portées dans les tables de manière très stricte, car fondées sur la relation d’ordre binaire ‘>’ des CP-nets, pourraient dorénavant reposer sur une modélisation linguistique permettant d’indiquer plus finement le niveau de préférence. Il est aussi possible d’effectuer un partitionnement flou des domaines des variables considérées. Si on se limite à la variable D qui représente le jour du vol par rapport à une date fixe de conférence à laquelle la personne doit assister :

nb de jours d'avance sur la conférence 0 1 0.5 1 1.5 Très en retard 2 En retard A temps En avance Très en avance

Figure 6.17 – Partitionnement flou d’un domaine temporel.

– Dans l’exemple de base, la variable D pouvait prendre la valeur D1d(je prend l’avion seulement

un jour avant la conférence) ou D2d (je prend l’avion deux jours avant).

– Grâce aux SEF de l’approche linguistique floue mise en œuvre par les LCP-nets, on peut proposer le partitionnement suivant pour le domaine de la variable D (cf. figure 6.17) : Très en retard, En retard, A temps, En avance, Très en avance.

On utilise alors les nouveaux termes linguistiques sur D avec ceux du domaine utilité utilisés dans les exemples précédents de ce chapitre pour obtenir le LCP-net basique suivant (cf. figure 6.18, mis en comparaison avec la représentation CP-net de base, non linguistique, de la préférence. On

D Très en Avance very high En Avance high A temps medium low very low En retard Très en retard D D1d > D2d CP-net : LCP-net : utilité (degré de préférence) Préférence stricte,

entre deux valeurs très précises

Partitionnement flou

Figure 6.18 – CP-net vs. LCP-net : Préférence sur une date de départ en voyage.

constate que la préférence sous forme LCP-net est plus détaillée, tout en restant facilement intelligible pour l’utilisateur car entièrement linguistique. De plus, par le partitionnement flou, le modèle de préférences sera capable d’appréhender l’ensemble des cas intermédiaires entre 0 et 2 jours d’avance. Pour finir, la prochaine étape serait de concrétiser les améliorations évoquées dans la section 6.5 en termes de traitement linguistique “de bout en bout” des modèles de préférences LCP-nets.

Composition agile de services