• Aucun résultat trouvé

Construction des structures de jonctions

Chapitre 2 : Modélisation orientée objet pour les concepts bond graph

2.2 Un logiciel pour la modélisation automatique

2.2.1 Construction des structures de jonctions

Le processus de modélisation a été développé autour d’une série de règles décrites dans cette étude comme les postulats A1, A2 et A3:

A1:Tous les éléments sont attachés à des jonctions 1 (en cohérence avec les procédures

systématiques de construction des modèles bond graphs [Karnopp et Rosenberg, 1975].

A2: Il n’y a pas deux jonctions identiques consécutivement.

La première tâche est de déterminer toutes les structures de jonctions construites avec un certain nombre fixé de jonctions 0 et 1. Les structures sont comme des squelettes parce qu’elles contiennent seulement des jonctions et leurs liens. Pour représenter une telle structure, on utilise une matrice booléenne où une connexion entre deux jonctions est signalée par la valeur « 1 » dans la matrice. 1 2 1 2 1 1 0 1 0 0 1 1 M = Figure 2.2. Une structure de jonctions avec sa représentation

En utilisant cette représentation, les structures avec m jonctions 0 et n jonctions 1 sont duales aux structures à n jonctions 0 et m jonctions 1, il faut juste transposer la matrice. Nous allons déterminer les structures du triangle supérieur.

Nombre de jonctions 1 1 2 3 4 5 1 x y z l 2 x 3 y 4 z Nombre de jonctions 0 5 l Tableau 2.1. La symétrie des structures

L’algorithme démarre avec une structure minimale composée d’une jonction 1 et une jonction 0 représentée par la matrice M = (1)

Figure 2.3. Bond graph de départ

Les structures déjà développées sont considérées comme une base pour les prochaines structures avec un nombre plus élevé de jonctions 0 et 1. A partir de la figure 2.3 en ajoutant une nouvelle jonction 0, on obtient la structure de la figure 2.4 avec sa propre matrice :

M ⎛ ⎞11 = ⎜ ⎟ ⎝ ⎠

(a) ajout d’une jonction 0 (b) matrice correspondante Figure 2.4. Ajout d’une nouvelle jonction 0

Comme on peut déjà l’observer, ajouter des jonctions signifie ajouter des lignes ou des colonnes dans les matrices déjà développées (lignes pour de nouvelles jonctions 0 et colonnes pour de nouvelles jonctions 1). Une nouvelle jonction peut être ajoutée à plusieurs endroits, voir figure 2.5, chaque fois correspondant à une nouvelle structure.

(a) Ajout d’une jonction 1

1 2 3 4 5 1 1 1 2 1 1 1 1 1 0 1 0 1 1 1 ( 0 ) 0 0 1 1 1 0 M sur = 1 2 3 4 5 1 2 2 2 1 1 1 1 1 0 1 0 1 1 0 ( 0 ) 0 0 1 1 1 1 M sur = 1 2 3 4 5 1 3 1 2 2 1 1 1 1 1 0 1 0 1 1 1 ( 0 0 ) 0 0 1 1 1 1 M sur et = (b) Matrice correspondante

Figure 2.5. Ajout d’une nouvelle jonction 1

Du point de vue bond graph, les structures M1 et M sont équivalentes [Lamb, Woodall et 2

Asher, 1993], même si leurs matrices sont différentes (les lignes de la deuxième colonne sont permutées). Comme la procédure de génération des structures va fournir toutes les configurations possibles, on aura plusieurs configurations équivalentes, donc redondantes. Il nous faut une méthode d’élimination des structures redondantes.

a) Elimination de structures identiques

Pour éliminer les structures redondantes, on dispose de deux techniques. Une première technique est basée sur l’automorphisme des graphes à sommets colorés et appartient à Brendan Mckay [McKay, 1990]. Les graphes considérés sont les squelettes de graphes de liens obtenus antérieurement dont les sommets sont associés à des jonctions 0 et 1. Ces objets mathématiques, appelés plus généralement graphes à sommets colorés sont décrits dans l’annexe A2 avec les outils mathématiques et algorithmiques qui permettent de supprimer les doublons.

Ces outils font partie d’un logiciel très puissant développé par Mckay [McKay, 1990] et qui peut travailler sur des graphes avec des dizaines de milliers de sommets.

Une autre solution « maison » a été proposée (nos graphes ne dépassent pas une vingtaine de sommets). Elle se compose de deux tâches simples pour réussir à manipuler un grand nombre de matrices.

Chaque jonction possède un nombre de liens internes pour se connecter à d’autres jonctions. Chaque fois qu’une matrice est développée, elle doit être comparée avec celles déjà mémorisées pour décider si elle est redondante ou pas. La comparaison se fait entre les jonctions correspondantes et concerne les liens internes.

Au niveau de la matrice, pour chaque jonction, la totalité des liens internes est la somme par ligne (si c’est une jonction 0) ou colonne (si c’est une jonction 1). Les sommes sont calculées et retenues dans un ensemble. Pour les matrices suivantes, les ensembles sont :

1 1 1 0

M = ⎜

(2, 1) pour les jonctions 0; (2, 1) pour les jonctions 1

1 0 1 1

M = ⎜

(1, 2) pour les jonctions 0; (2, 1) pour les jonctions 1

Procédure P1:

-première tâche

• Si les ensembles pour les jonctions 0 (respectivement 1) sont différents (l’ordre de valeurs n’est pas important) alors la deuxième structure est considérée comme nouvelle et elle est mémorisée. Si les ensembles sont identiques, nous ne pouvons pas juger et nous exécutons la deuxième tâche;

-deuxième tâche

• Nous calculons tous les mineurs pour les matrices à comparer. Si les mineurs sont les mêmes, la deuxième matrice est considérée redondante et peut être éliminée.

Exemple: 1 0 1 1 1 0

M ⎛ ⎞

= ⎜

et ses mineurs (en valeur absolue) 1 0 1 1 1 = ; 1 1 1 1 0 = ; 0 1 1 1 0 = . b) Réductions possibles

Après cette procédure, toutes les structures retenues avec un certain nombre de jonctions 0 et 1 sont non redondantes. Le tableau 2.1 a été complété avec le nombre de solutions bonnes.

Nombre de jonctions 1 1 2 3 4 5 6 1 1 1 1 1 1 1 2 1 2 4 6 9 12 3 1 4 13 34 76 155 4 1 6 34 155 657 2587 Nombre de jonctions 0 5 1 9 76 657 8052 …… Tableau 2.2. Nombre de structures non redondantes

La plupart des structures peuvent être réduites en des structures plus simples de la manière suivante, indiquée sur la figure 2.6.

Figure 2.6. Réduction par compression

En effet, la règle A1 stipule que les éléments (R, I, C, Se, Sf, De, Df) ne peuvent pas être connectés sur les jonctions 0. A cause de cette règle, les jonctions 0 avec un seul lien interne deviennent inutiles et on peut les écarter par la suppression de leurs lignes correspondantes dans la matrice M.

Ce type de réduction est illustré dans la figure 2.6. Après une première réduction, la jonction 0 résultante possède deux liens internes. Cette jonction peut aussi être éliminée en rejoignant les deux jonctions 1.

Pour chaque structure développée, ces deux modifications sont effectuées et la nouvelle structure est retenue.

Documents relatifs