Initiation à la systémique

G. Beuchot  - 8/07/2004

 9.      Approche Système :

 Décomposition des systèmes

 

Dans les chapitres précédents, en particulier dans les parties traitant de l’analyse des systèmes nous avons insisté sur leur décomposition, en général arborescente, voire hiérarchique, soit en activités et fonctions soit en sous-ensembles et composants.

Nous avons admis implicitement que cette décomposition était toujours possible. Cependant une analyse fine des fonctionnalités ou des éléments d’un système complexe montre que ces fonctions ou ces composants peuvent interagir plus ou moins fortement et qu’il n’est pas toujours simple de décomposer un système, certains systèmes pouvant même apparaître à priori comme non décomposables….

9.1     Quasi-décomposabilité

Si nous considérons un système décomposé en sous-systèmes et composants, nous pouvons distinguer entre interactions internes à un sous-système, entre ses composants, et interactions entre sous-systèmes. Ces interactions aux différents niveaux sont en générale d’ « amplitudes » différentes. Ainsi dans une organisation, il y aura en général plus d’interactions entre deux membres d’un même service qu’entre deux membres de services différents (au moins si ne nous considérons que les fonctions propres à l’organisation). Cependant les membres chargés des relations entre services peuvent ne pas répondre à cette règle….. De même, dans la matière organique, les forces intermoléculaires sont plus faibles que les forces moléculaires elles-même plus faibles que les forces nucléaires.

Dans certains systèmes, par exemple un gaz rare, les composants ont un comportement quasi indépendant et un tel système peut être considéré comme décomposable.

Si les interactions entre sous-systèmes ou composants sont faibles mais non négligeables, nous ferons appel à la théorie des systèmes quasi-décomposables. (voir Herbert A. Simon , Les Sciences de l’artificiel 2004 Folio essais)

Dans un système quasi-décomposable :

Le comportement à court terme de chacun des composants est approximativement indépendant du comportement à court-terme des autres composants

Le comportement  à long terme de chacun des composants n’est affecté par le comportement des autres que de façon agrégée.

Cet énoncé des propriétés des systèmes quasi-décomposables fait reposer ceux-ci sur l’analyse de leur évolution temporelle. Toutefois ce qui importe essentiellement c’est la quantité ou la qualité des interactions entre les composants et nous pouvons trouver des propriétés analogues au niveau fonctionnel.  et en tirer une méthode pour décomposer des systèmes complexes en vue de faciliter leur spécification.

  Nous allons donc étudier comment peut se caractériser le comportement temporel d’un système puis comment un système quasi-décomposable peut être peut être séparé en parties faiblement liées.

 

9.2      Evolution temporelle et quasi-décomposabilité

9.2.1         Réponse temporelle et constante de temps

Considérons un système simple, par exemple un radiateur de chauffage. On admet que l’apport d’énergie (électrique par exemple) est quasi instantané et que la déperdition de chaleur est proportionnelle à l’écart de température avec le milieu ambiant.

 

On observe son élévation de température lorsque l’on applique à un instant donné un flux d’énergie constant. Les courbes ci-contre montre cette élévation pour trois systèmes présentant des « inerties thermiques » différents. Ces courbes ont la même allure (exponentielle). Elles atteignent le même niveau d’équilibre qui correspond à l’égalité du flux d’énergie fournie et dissipée. .Elles sont caractérisées par un seul paramètre,: la vitesse de montée en température, qui peut être représentée par le temps mis pour atteindre environ 63% de la valeur finale (1-1/e). Cette valeur est la « constant de temps » de ce système. Dans ces exemples, elles valent  respectivement 1,3 et 5.

On peut aussi appliquer en entrée une quantité d’énergie élevée durant un temps très court. On observe alors les réponses ci-contre. Dans cet exemple, la surface sous chaque courbe est identique et correspond à l’énergie appliquée à l’entrée. Le temps de décroissance, de retour à l’état initial, est caractéristique de la « constante de temps » du système.

D’une manière générale, un système dont l’évolution temporelle s’exprime par une fonction continue du temps peut être modélisé par un système d’équations différentielles en fonction du temps. Si on applique à l’entrée d’un tel système une « impulsion » (signal de durée nulle et d’énergie finie …) la sortie obtenue est caractéristique du système seul et est appelée « réponse impulsionnelle ». On peut montrer que cette réponse impulsionnelle permet d’exprimer la sortie pour tout signal en entrée. On peut aussi caractériser un système par sa réponse indicielle correspondant à un signal « échelon » en entrée (intégrale de l’entrée impulsionnelle)

 

Pour un système linéaire simple, tel que celui décrit ci-dessus, l’évolution de la sortie y en fonction d’une entrée x peut s’exprimer par  

 t   est la « constante de temps » du système. Elle représente, dans le cas de la réponse indicielle, le temps mis pour atteindre 1/e (@ 37%) de la valeur finale.

 

Pour un système à plusieurs variables, chacune est caractérisée par sa constante de temps propre. Si ces constantes de temps sont du même ordre de grandeur, les variables peuvent interagir fortement (voir exemple « écologique») . Si elles sont suffisamment différentes, l’évolution temporelle d’une variable influe peu sur l’autre et nous retrouvons le critère de quasi-décomposabilité exprimé ci-dessus.

De même si un système simple est modélisé par une équation différentielle d’ordre n > 1, il est caractérisé par n constantes de temps correspondant à une évolution temporelle à différentes échelles de temps. Parfois, dans ce cas, une constante de temps est prépondérante pour le phénomène étudié et le système pourra être simplifié. Le cas ci-contre illustre un système du second ordre. On voit que l’élévation est d’abord lente, s’accélère puis ralentit. La courbe en pointillé donne la variation de la vitesse d’évolution (dérivée). Ce système est caractérisé par deux constantes de temps (ici 1 et 5 …)

 

Une autre manière d’exprimer les sorties d’un système en fonction de ses entrées est d’utiliser sa « fonction de transfert ». Selon le formalisme choisi celle-ci s’exprime par la Transformée de Fourier ou de Laplace de la réponse impulsionnelle. On est alors amené à étudier la réponse du système dans l’espace des fréquences et à distinguer les fréquences basses correspondant aux constantes de temps élevées des fréquences hautes correspondant à de courtes constantes de temps.

9.2.2        Quasi-décomposabilité d’après l’évolution temporelle du système

Cette quasi-décomposabilité est illustrée par l’exemple suivant donné par H.A. Simon : Herbert A. Simon , Les sciences de l'artificiel pp 343-344

 

Nous pouvons décrire formellement le processus de cet équilibre à l' aide des équations habituelles des flux de chaleur. Ces équations peuvent être représentées par la matrice de leurs coefficients rii, où rii est le taux auquel la chaleur est transférée pour un degré de différence de la ie à la je cellule. Si les cellules i et j n’ont pas de cloison commune, rij sera nul. Si les cellules i et j ont une cloison commune et sont dans la même pièce, rij sera grand. Si les cellules i et j sont séparées par la paroi d 'une pièce, rij sera différent de zéro, bien que très petit. De ce fait, en regroupant toutes les cellules qui sont dans une même pièce nous pouvons disposer la matrice des coefficients de telle façon que tous les grands nombres soient à l'intérieur d'un groupe de sous-matrices carré le long de la diagonale principale. Tous les éléments à l'extérieur de ces carrés en diagonale seront ou nuls, ou petits (voir ci-dessous). Nous pouvons toujours trouver un nombre petit, qui constituera la limite supérieure de la valeur de ces éléments hors de la bande diagonale. Nous appellerons la matrice ayant ces propriétés une matrice quasi décomposable.  

 

 

A1

A2

A3

B1

B2

C1

C2

C3

A1

 

100

 

2

 

 

 

 

A2

100

 

100

1

1

 

 

 

A3

 

100

 

 

2

 

 

 

B1

2

1

 

 

100

2

1

 

B2

 

1

2

100

 

 

1

2

C1

 

 

 

2

 

 

100

 

C2

 

 

 

1

1

100

 

100

C3

 

 

 

 

2

 

100

 

 

A1

B1

C1

A2

C2

A3

B2

C3

Regroupement

 Un hypothétique système quasi décomposable  

 Dans les termes de l'exemple d'échange thermique présenté dans le texte, Al, A2 et A3 peuvent être considérés comme des cellules dans une pièce, B1 et B2 comme des cellules dans une autre pièce et C1, C2 et C3 comme des cellules dans une troisième. Les coefficients de la matrice sont les coefficients de diffusion thermique entre les cellules.


9.3     Quasi-décomposabilité liée à la taille des composants

Exemple : Atome ou molécule – Cellule – Organe/système organique circulatoire, digestif).

 Un autre critère de quasi-décomposabilité consiste à prendre en compte la taille physique du composant. En général les composants ont une réponse d’autant plus rapide (constante de temps plus faible) que leur taille est faible. Ce critère exprime donc les mêmes propriétés que le critère de temporalité.

.

9.4     Décomposabilité fonctionnelle

En étudiant l’analyse des systèmes, nous avons noté que l’on devait procéder à la décomposition fonctionnelle puis structurale des systèmes complexes. Pour des systèmes ne comportant qu’un nombre limité de fonctions ou des ensembles de fonctions aisément regroupables, une analyse raisonnée du système, s’appuyant sur la connaissance qu’en a l’analyste ou le concepteur, permet souvent de réaliser cette décomposition. Toutefois, lorsque le nombre de fonctions est très élevé, ou , ce qui est parfois dans le cas de la spécification de systèmes technologiques, lorsque les regroupements « logiques » suggérés ne sont pas efficaces pour l’implémentation, il est possible de trouver  de manière plus systématique des regroupements fonctionnels utilisables.

9.2.3         Modélisation par automate d’états fini

La décomposabilité étudiée ci-dessus est relative à l’évolution temporelle continue ou quasi-continue du système. De nombreux systèmes ne relèvent pas de ce cas (par exemple, un système de feux tricolores).

L’évolution temporelle de tels systèmes est souvent modélisée par des automates à états finis ou des automates à états finis étendus  (automates d’état à prédicats).

Un automate à états fini est un quintuplet de (X, Q, f, Y, g) où X représente l’ensemble des entrées x, Q, l’ensemble des états q, Y l’ensemble des sorties y, f la fonction de transition  qui donne l’état successeur q+ d’un état q lorsque l’on a traité l’entrée x et g la fonction de sortie qui permet de calculer la sortie y à partir de l’état actuel q et de l’entrée x..

 Ces automates sont représentables de différentes manières : graphes, algorithmes, liste de quintuplets  (élémentaires), tables de transitions d’état. 

Pour plus de détails voir http://gerard.beuchot.free.fr/Reseaux/Descr_formelle/Dia_intro_descr_form.PDF 

L’utilisation de tables va nous permettre de décomposer les systèmes complexes comportant un grands nombres d’événements entrants et sortants.

9.2.4        Table de transition et regroupements fonctionnels

  Les tables de transition donnent le nouvel état obtenu suite à un événement entrant et la ou les sorties générées. Ainsi, chaque élément de la table contient l’état actuel, les actions à réaliser et les événements sortants qui en résultent.

  Pour les systèmes présentant un grand nombre d’états et d’entrées/sorties une manipulation simple  de la table permet de regrouper les éléments en « pavés » correspondant à des regroupements fonctionnels. Chaque éléments de la table contenant une action interne à effectuer ou une sortie à produire est codée par un symbole les autres restants vides. Des permutations systématiques des lignes et de colonnes permettent le plus souvent de regrouper les cases occupées dans certaine parties de la table. Ces parties permettent de définir des composants qui prendront en compte des groupes de transition. En cas de spécification, les cases dispersées peuvent permettre de définir des interactions entre ces composants.

 

Exemple :

 

Q1

Q2

Q3

Q4

Q5

Q6

Q7

Q8

Q9

Q10

Q11

Q12

Q13

X1

1

 

1

1

 

 

 

 

 

 

 

 

 

X2

 

 

 

 

 

 

 

1

1

 

1

 

 

X3

 

 

 

 

1

1

 

 

 

 

 

 

 

X4

 

1

 

1

 

 

 

 

 

 

 

 

 

X5

 

1

 

 

1

1

1

 

 

 

 

 

 

X6

 

 

 

 

 

 

 

1

 

1

 

1

1

X7

 

1

1

 

 

 

 

 

 

 

1

 

 

X8

 

 

 

 

 

1

1

 

 

1

 

 

 

X9

 

 

 

 

 

 

 

 

1

 

1

 

1

X10

 

 

 

 

1

 

1

 

 

 

 

 

 

X11

 

 

 

 

 

1

 

 

 

 

 

 

 

X12

1

 

1

1

 

 

 

 

 

 

 

 

 

X13

 

 

 

 

 

 

 

 

1

 

 

 

 

X14

 

 

 

 

 

 

 

 

 

1

 

1

 

X15

 

 

1

 

 

 

 

1

1

 

1

 

 

X16

 

 

 

 

 

1

 

 

 

 

 

 

1

X17

 

 

 

 

 

 

 

 

 

1

 

1

 

X18

1

 

 

1

 

 

 

 

 

 

 

 

 

X19

 

 

 

 

 

 

 

1

 

1

 

1

 

 

Q1

Q2

Q3

Q4

Q5

Q6

Q7

Q8

Q9

Q10

Q11

Q12

Q13

X1

1

 

1

1

 

 

 

 

 

 

 

 

 

X11

 

1

1

 

 

 

 

 

 

 

1

 

 

X6

1

 

 

1

 

 

 

 

 

 

 

 

 

X4

 

1

 

1

 

 

 

 

 

 

 

 

 

X8

1

 

1

1

 

 

 

 

 

 

 

 

 

X13

 

 

 

 

1

1

 

 

 

 

 

 

 

X2

 

 

 

 

 

1

1

 

 

1

 

 

 

X7

 

1

 

 

1

1

1

 

 

 

 

 

 

X18

 

 

 

 

1

 

1

 

 

 

 

 

 

X9

 

 

 

 

 

1

 

 

 

 

 

 

 

X10

 

 

 

 

 

 

 

1

1

 

1

 

 

X5

 

 

 

 

 

 

 

 

1

 

 

 

 

X12

 

 

 

 

 

 

 

1

 

1

 

1

1

X14

 

 

 

 

 

 

 

 

 

1

 

1

 

X15

 

 

1

 

 

 

 

1

1

 

1

 

 

X16

 

 

 

 

 

1

 

 

 

 

 

 

1

X17

 

 

 

 

 

 

 

 

 

1

 

1

 

X3

 

 

 

 

 

 

 

 

1

 

1

 

1

X19

 

 

 

 

 

 

 

1

 

1

 

1

 

Le second tableau fait clairement apparaître trois regroupements fonctionnels qui traiteront respectivement les événements entrants (x1,x4,x6,x8,x11), (x2,x7,x18,x9), (x3,x5,x12,x14,x15,x16,x17,x19). Les entées x2, x11 et x16 entraîneront des interactions entre sous-ensembles créés..

 

9.5     Conception des systèmes artificiels.

  La spécification des systèmes complexes peut s’appuyer avec profit sur l’approche système en suivant les mêmes principes et la même appréhension des problèmes posés que ceux utilisés dans l’analyse des système, en particulier dans l’ordre des phases et étapes à réaliser :

Analyse des besoins et définition des objectifs

 Définition de l’environnement. Prise en compte des contraintes de réalisation.

Décomposition et spécifications fonctionnelles

Décomposition statique et spécification de l’architecture

Spécification des interactions

 Ce processus est récursif et alterne des phases de synthèse et des phases de vérification. Les phases de synthèse permettent de raffiner la spécification en détaillant les fonctions et en décomposant les sous-ensembles. Dans ces phases on vérifie en permanence que les contraintes de validité restent satisfaites. Les phases de vérification nécessitent d’abstraire la spécification qui vient d’être réalisée pour vérifier qu’elle reste conforme aux objectifs, qu’aucun biais n’a été introduit.

 Cette approche sous-entend que le système à spécifier (puis à réaliser) est décomposable ou quasi-décomposable C’est à dire qu’il est effectivement possible de le décomposer sans être obligé de modifier les objectifs et en continuant de satisfaire aux contraintes imposées par l’environnement et aux contraintes de validité internes.