Configuration de systèmes et de processus
Depuis les premiers problèmes de configuration définis par [Mittal+1989], de nombreux problèmes ont été définis dans les travaux de [Aldanondo+2008 ; Barták+2010 ; Dong+2011 ; Felfernig+2014 ; Sabin+1998 ; Zhang2014]. Les problèmes de configuration définissent tous les éléments nécessaires à la construction des modèles génériques de systèmes et/ou de processus à concevoir. La majorité des problèmes répertoriés dans les travaux scientifiques sont orientés sur la configuration de produits ou systèmes, et très peu sur la configuration de processus [Felfernig+2014 ; Zhang2014]. Configuration de systèmes En ce qui concerne la définition de la configuration de produits, selon les problèmes recensés, diférents aspects d’un produit sont considérés notamment les aspects physiques, les aspects descriptifs, les aspects fonctionnels [Aldanondo+2008 ; Djefel2010 ; Felfernig+2014 ; Mittal+1989 ; Zhang2014]. Parmi toutes ces définitions, nous considérons les éléments clés proposés par [Aldanondo+2008 ; Mittal+1989] et débouchons sur la définition suivante : • Hypothèse : un produit configurable est un ensemble de composants ; • Étant donné : 1. une architecture générique de produit qui décrit une famille de produits, 2. un ensemble de groupes de composants qui sont présents dans tous les produits, 3. un ensemble de groupes de composants optionnels, qui ne sont pas présents dans tous les produits, 4. un ensemble de propriétés qui caractérisent chaque composant, 5. un ensemble de contraintes qui définissent les combinaisons possibles de composants et / ou de valeurs de propriétés, 6. un ensemble d’exigences qui représentent les besoins client, où une exigence correspond à la sélection d’un sous-système composant dans un groupe ou d’une valeur de propriété. • Objectif : La configuration consiste à trouver au moins un ensemble de composants satisfaisant toutes les contraintes et les exigences du client. Dans le cadre de nos travaux, une modification mineure est faite pour adapter ce problème à la configuration de systèmes en substituant les notions de ń produit ż et de ń composant ż par celles de ń système ż et de ń sous-système ż respectivement. Sur cette base, un système est considéré comme un ensemble de sous-systèmes qui sont intégrés pour former l’architecture physique du système. Chaque sous-système est décrit par des propriétés qui le caractérisent. Ainsi, en considérant ce problème de configuration de systèmes, un modèle de configuration de systèmes considérant un seul niveau de décomposition (une décomposition de systèmes en sous-systèmes) a été développé dans [Sylla+2018b]. 19 Configuration de processus Concernant le problème de configuration de processus, peu d’auteurs ont proposé des définitions formelles. Cependant, une définition inspirée de l’approche utilisée pour les produits a été proposée par [Aldanondo+2008 ; Pitiot+2014]. Cette définition est considérée pour nos travaux et les éléments clés décrits ci-dessous sont repris : • Hypothèse : un processus est un ensemble d’activités liées par des contraintes de précédence, une activité est un ensemble de ressources caractérisées par une quantité requise ; • Étant donné : 1. une architecture générique du processus qui décrit une famille de processus, 2. un ensemble d’activités, avec pour chacune, un ensemble de ressources ayant des quantités requises, 3. un ensemble de contraintes qui définissent les combinaisons possibles d’activités, de ressources et de quantités de ressources, 4. un ensemble d’exigences correspondant à la sélection d’une activité, ou d’un couple (ressource, quantité de ressources), • Objectif : La configuration de processus consiste à trouver au moins un ensemble d’activités avec les couples (ressource, quantité de ressource) satisfaisant toutes les contraintes et les exigences. La plupart des problèmes de configuration répertoriés dans les travaux scientifiques font l’hypothèse que le système ou le processus à concevoir est assemblé à partir d’un ensemble de sous-systèmes ou d’activités prédéfinis ou totalement conçus (les éléments standards) et dont les modes d’assemblage ou d’intégration ont été aussi prédéfinis (assemblage ou intégration standards). Conformément à cela, les modèles de configuration proposés incluent uniquement des connaissances associées à des éléments standards (sous-systèmes ou activités standards) et des connaissances associées à des modes d’assemblage ou d’intégration standards. Ils n’incluent pas des connaissances associées à des éléments n’ayant pas été conçus en détail (des éléments non-standards). Ils ne permettent donc pas de sélectionner des sous-systèmes ou des activités non-standards pour configurer un système ou un processus non-standard [Aldanondo+2008 ; Felfernig+2014 ; Mittal+1989 ; Zhang2014]. Par exemple, lors de l’élaboration d’une ofre technique dans un processus de réponse à appel d’ofres, si les besoins du client requièrent la mise au point d’un sous-système ou d’une activité non-standard, ce sous-système ou cette activité ne peuvent être définis en utilisant ces modèles. En conséquence les modèles de configuration proposés aujourd’hui ne sont pas adaptés pour concevoir des ofres techniques non-standards dans des contextes de conception non-routinière.
Formalisation des connaissances en configuration
Différents formalismes sont utilisés pour construire les modèles génériques, notamment les problèmes de satisfaction de contraintes ou les ontologies. Les problèmes de satisfaction de contraintes ou encore CSP (Constraint Satisfaction Problem) sont le formalisme le plus utilisé en formalisation des connaissances en configuration 20 Problématiques de recherche [Felfernig+2014]. En efet, en raison de sa structure, le formalisme CSP s’adapte facilement aux problèmes de configuration [Sabin+1998]. Le formalisme CSP définit le problème comme un ensemble de contraintes (C), qui établissent des relations entre les variables (V) du problème où chaque variable (�i ∈ V) peut prendre une valeur unique dans un domaine fini (�i) [Montanari1974]. En se référant à cette définition, [Aldanondo+2008 ; Felfernig+2014 ; Sabin+1998], d’autres auteurs ont montré que le problème de configuration de produit défini ci-dessus peut être modélisé ou formalisé comme un CSP. Dans nos travaux, nous utilisons ce formalisme pour la configuration des deux constituants des ofres techniques : le système technique et le processus de réalisation.
Formalisation des systèmes techniques
En ce qui concerne la formalisation d’un système technique, chaque groupe de sous-systèmes et chaque propriété est associée à une variable du CSP. Une solution spécifique d’un groupe de sous-système ou une valeur spécifique d’une propriété correspond à une valeur dans le domaine de la variable correspondante. Les contraintes représentent les relations possibles entre les sous-systèmes et / ou les valeurs des propriétés. Pour modéliser les sous-systèmes optionnels, le cadre des CSP dynamiques ou CSP conditionnels noté DCSP (Dynamic Constraint Satisfaction Problem), introduit par [Mittal+1990], peut être utilisé. Dans ce cadre, les notions de variables actives / inactives et de contraintes actives / inactives sont rajoutées au cadre CSP, initialement présenté. Les variables et les contraintes sont partitionnées en sous-ensembles initialement actifs et inactifs. En se référant au problème de configuration défini ci-dessus, les groupes de sous-systèmes qui sont toujours présents dans un système sont associés à des variables initialement actives alors que les groupes de sous systèmes optionnels sont associés à des variables initialement inactives. L’activation des variables ou des contraintes inactives est efectuée en utilisant des contraintes d’activation qui peuvent ajouter au problème des variables et des contraintes qui étaient initialement inactives. Des contraintes peuvent également être utilisées pour lier des sous-systèmes ou lier le système à des caractéristiques telles que les performances techniques, le coût ou la confiance [Pitiot+2014 ; Sylla+2017c].
Formalisation des processus de réalisation
En ce qui concerne la formalisation d’un processus de réalisation, une approche similaire a été adoptée dans [Aldanondo+2008 ; Pitiot+2014]. La configuration du processus est formalisée comme un CSP, où chaque activité est décrite par un groupe de variables (certaines représentant les familles de ressources, leur quantité ou la durée de l’activité), reliées entre elles par des contraintes. Des contraintes temporelles sont aussi utilisées pour définir des relations de précédence entre les activités. De manière similaire aux systèmes techniques, la modélisation des activités optionnelles passent par l’utilisation des CSP dynamiques ou CSP conditionnels noté DCSP [Mittal+1990]. Les activités du processus de réalisation sont ainsi partitionnées en deux sous-ensembles disjoints, l’un regroupant les activités toujours présentes dans le processus tandis que l’autre regroupe celles qui sont optionnelles et activées à bon escient au cours du processus de configuration. L’activation des activités (variables et contraintes inactives) est, de manière similaire, supportée par des contraintes d’activation. Des contraintes peuvent également être utilisées pour lier les activités à des caractéristiques telles que le coût, la durée ou le niveau de risque.