La configuration basée sur les connaissances , également appelée configuration ou personnalisation de produit , consiste à adapter un produit aux besoins spécifiques d'un client. Le produit en question peut comprendre des pièces mécaniques, des services et des logiciels. La configuration basée sur les connaissances est un domaine d'application majeur de l'intelligence artificielle (IA). Elle repose sur la modélisation des configurations de manière à permettre l'utilisation de techniques d'IA pour rechercher une configuration adaptée aux besoins d'un client donné.
de l'intelligence artificielle établi de longue date (voir par exemple De manière informelle, la configuration peut être définie comme un cas particulier d'activité de conception, où l'artefact configuré est assemblé à partir d'instances d'un ensemble fixe de types de composants bien définis, composables selon un ensemble de contraintes . Ces contraintes représentent des restrictions techniques, des restrictions économiques et des conditions liées aux processus de production. Le résultat d'un processus de configuration est une configuration de produit (configuration concrète), c'est-à-dire une liste d'instances et, dans certains cas, de connexions entre ces instances. On peut citer comme exemples de telles configurations les ordinateurs à livrer ou les offres de services financiers (par exemple, une combinaison de prêt et d'assurance-risque correspondante).Théorie et complexité de la configuration
De nombreux problèmes de configuration pratiques peuvent être analysés à l'aide du cadre théorique de Najmann et Stein , une approche axiomatique ancienne qui ne présuppose aucun formalisme particulier de représentation des connaissances . Un résultat important de cette méthodologie est que les problèmes d'optimisation typiques (par exemple, la recherche d'une configuration à coût minimal) sont NP-complets . Ils nécessitent donc un temps de calcul potentiellement excessif, ce qui fait des algorithmes de configuration heuristiques le choix privilégié pour les artefacts complexes (produits, services).
Systèmes de configuration
Les systèmes de configuration , également appelés configurateurs ou outils de personnalisation de masse , figurent parmi les technologies d'intelligence artificielle les plus largement utilisées . On peut citer comme exemples l'industrie automobile , les télécommunications , l'informatique et les transformateurs électriques A8]. À partir d'approches basées sur des règles telles que R1/ XCON , des représentations de la connaissance basées sur des modèles (par opposition aux représentations basées sur des règles) ont été développées. Ces représentations séparent strictement la connaissance du domaine produit la connaissance nécessaire à résolution de problèmes . On peut citer comme exemples le problème de satisfaction de contraintes , le problème de satisfaisabilité booléenne et différentes représentations de la programmation par ensembles de réponses (ASP). Deux conceptualisations de la connaissance de configuration sont couramment citées . Les concepts les plus importants sont les composants, les ports, les ressources et les fonctions. Cette séparation des connaissances du domaine produit et des connaissances de résolution de problèmes a augmenté l'efficacité du développement et de la maintenance des applications de configuration, puisque les changements dans les connaissances du domaine produit n'affectent pas les stratégies de recherche et vice versa.
Les configurateurs sont souvent considérés comme des « boîtes à outils d'innovation ouverte », c'est-à-dire des outils qui accompagnent les clients dans la phase d'identification des produits. Dans ce contexte, les clients sont des innovateurs qui expriment leurs besoins, ce qui conduit à de nouveaux produits innovants. La « confusion massive » – le fait de submerger les clients face à un grand nombre de solutions alternatives (choix) possibles – est un phénomène fréquent lors de l'utilisation des technologies de configuration. Ce phénomène a motivé la création d'environnements de configuration personnalisés, prenant en compte les connaissances et les préférences du client.
processus de configuration
La configuration de base, c'est-à-dire le guidage de l'utilisateur et la vérification de la cohérence de ses exigences avec la base de connaissances , la présentation de la solution et la traduction des résultats de configuration en nomenclature (BOM), sont des tâches majeures que doit prendre en charge un configurateur. Les bases de connaissances de configuration sont souvent construites à l'aide de langages propriétaires. Dans la plupart des cas, ces bases de connaissances sont développées par des ingénieurs de la connaissance qui recueillent les connaissances relatives aux produits, au marketing et aux ventes auprès d'experts du domaine. Les bases de connaissances de configuration sont composées d'une description formelle de la structure du produit et de contraintes supplémentaires limitant les combinaisons possibles de fonctionnalités et de composants.
Les configurateurs dits « à base de caractéristiques » utilisent des ensembles de variables discrètes, binaires ou prenant plusieurs valeurs, qui définissent toutes les variations possibles du produit.
Configuration des logiciels et des services
Récemment, la configuration basée sur les connaissances a été étendue à la configuration des services et des logiciels. La modélisation de la configuration logicielle repose sur deux approches principales : la modélisation des fonctionnalités et les connecteurs de composants [A 26]. domaine Kumbang combine ces approches en s’appuyant sur la tradition de la configuration basée sur les connaissances