num ero d'iden ti cation : 95 - mon 2 - 2 5 3vismara/papers/vismara_these.pdfnum ero...

259

Upload: others

Post on 27-Feb-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

Num�ero d'identi�cation : 95 - MON 2 - 2 5 3

Acad�emie de Montpellier

U n i v e r s i t �e M o n t p e l l i e r I I

| Sciences et Technique du Languedoc |

T h �e s e

pr�esent�ee �a l'Universit�e des Sciences et Techniques du Languedocpour obtenir le diplome de DOCTORAT

Sp�ecialit�e : InformatiqueFormation Doctorale : Informatique�Ecole Doctorale : Sciences Pour l'Ing�enieur

Reconnaissance et repr�esentation d'�el�ements

structuraux pour la description d'objets

complexes. Application �a l'�elaboration de

strat�egies de synth�ese en chimie organique.

par

Philippe Vismara

Soutenue le 21 d�ecembre 1995 devant le Jury compos�e de :

M. Michel Habib, Professeur, Universit�e Montpellier II, : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : Pr�esidentM. Bernard Carr�e, Ma�tre de Conf�erences, Universite des Sciences et Technologies de Lille,RapporteurMme Monique Thonnat, Directeur de Recherche, Inria, Sophia Antipolis, : : : : : : : : : : : : : : : :RapporteurM. Roland Ducournau, Professeur, Universit�e Montpellier II, : : : : : : : : : : : : : : : : : : : : : : : : : : :ExaminateurM. Jean-Yves Lallemand, Professeur, �Ecole Polytechnique, Paris, : : : : : : : : : : : : : : : : : : : : : : :ExaminateurM. Claude Lauren�co, Directeur de Recherche, Cnrs/Ccipe, Montpellier, : : : : : : : : : : : : : : :ExaminateurM. Olivier Monga, Directeur de Recherche, Inria, Rocquencourt, : : : : : : : : : : : : : : : : : : : : : : : ExaminateurM. Amedeo Napoli, Charg�e de Recherche, Cnrs/Crin, Nancy, : : : : : : : : : : : : : : : : : : : : : : : : : ExaminateurM. Jo�el Quinqueton, Directeur de Recherche, Lirmm/Inria, Montpellier, : : : : : : : : Directeur de Th�ese

Page 2: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

TABLE DES MATI�ERES i

Table des mati�eres

Introduction 1

1 Graphes en chimie organique 5

1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.2 Quelques notions de base de la th�eorie des graphes . . . . . . . . . . 7

1.2.1 D�e�nition d'un graphe . . . . . . . . . . . . . . . . . . . . . . 7

1.2.2 Cha�nes et cycles . . . . . . . . . . . . . . . . . . . . . . . . . 8

1.2.3 Quelques propri�et�es d'un graphe . . . . . . . . . . . . . . . . . 9

1.3 Repr�esentation graphique des mol�ecules . . . . . . . . . . . . . . . . . 11

1.4 Mod�elisation des mol�ecules par des graphes . . . . . . . . . . . . . . . 16

1.4.1 Graphe mol�eculaire . . . . . . . . . . . . . . . . . . . . . . . . 16

1.4.2 Propri�et�es du graphe mol�eculaire . . . . . . . . . . . . . . . . 20

1.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2 Synth�ese en chimie organique 23

2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.2 La synth�ese en chimie organique . . . . . . . . . . . . . . . . . . . . . 25

2.3 Quelques syst�emes de synth�ese assist�ee par ordinateur . . . . . . . . . 28

2.4 Le syst�eme ReSyn . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

2.4.1 Transformations, objectifs et contextes . . . . . . . . . . . . . 33

2.4.2 Fonctionnement g�en�eral de ReSyn . . . . . . . . . . . . . . . 36

2.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

3 Histoires de cycles 41

3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Page 3: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

ii TABLE DES MATI�ERES

3.2 L'espace vectoriel C des cycles �el�ementaires . . . . . . . . . . . . . . . 43

3.2.1 D�e�nition de l'espace vectoriel C . . . . . . . . . . . . . . . . . 43

3.2.2 Dimension de C : un peu d'histoire . . . . . . . . . . . . . . . . 45

3.2.3 Composantes 2-connexes . . . . . . . . . . . . . . . . . . . . . 46

3.3 Bases fondamentales de cycles . . . . . . . . . . . . . . . . . . . . . . 48

3.3.1 Ensemble fondamental de cycles associ�e �a un arbre

recouvrant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

3.3.2 Autre notion de base fondamentale . . . . . . . . . . . . . . . 49

3.4 Bases de cycles de taille minimale . . . . . . . . . . . . . . . . . . . . 51

3.4.1 Base fondamentale de taille minimale . . . . . . . . . . . . . . 51

3.4.2 Base de taille minimale . . . . . . . . . . . . . . . . . . . . . . 52

3.4.2.1 Calcul d'une base minimale �a partir d'une base fon-

damentale . . . . . . . . . . . . . . . . . . . . . . . . 53

3.4.2.2 Recherche directe d'une base minimale . . . . . . . . 54

3.4.3 Un algorithme polynomial . . . . . . . . . . . . . . . . . . . . 58

3.4.3.1 L'algorithme de Horton . . . . . . . . . . . . . . . . 59

3.4.3.2 Complexit�e de l'algorithme . . . . . . . . . . . . . . 60

3.4.3.3 R�eduction de la taille de l'ensemble CI . . . . . . . . 62

3.4.3.4 Deux algorithmes analogues �a la m�ethode de Horton 67

3.5 Recherche de cycles �el�ementaires . . . . . . . . . . . . . . . . . . . . . 70

3.5.1 �Enum�eration de tous les cycles �el�ementaires . . . . . . . . . . 70

3.5.2 Recherche de cycles particuliers . . . . . . . . . . . . . . . . . 74

3.6 Bases de cycles �etendues . . . . . . . . . . . . . . . . . . . . . . . . . 75

3.6.1 Ajout de tous les cycles de longueur donn�ee . . . . . . . . . . 77

3.6.2 ESER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

3.6.3 ESSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

3.6.4 SER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

3.7 Cycles pertinents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

3.7.1 Limite d'une mod�elisation des mol�ecules �a l'aide de graphes . 83

3.7.2 D�e�nition de la pertinence d'un cycle . . . . . . . . . . . . . . 84

3.7.3 Construction d'un ensemble initial C0

I . . . . . . . . . . . . . . 88

3.7.4 D�etermination de CP sous la forme d'un ensemble de familles

de cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

Page 4: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

TABLE DES MATI�ERES iii

3.7.5 D�etermination du nombre de cycles pertinents . . . . . . . . . 97

3.7.5.1 Taille de CP . . . . . . . . . . . . . . . . . . . . . . . 97

3.7.5.2 Nombre de cycles pertinents contenant un sommet

donn�e . . . . . . . . . . . . . . . . . . . . . . . . . . 97

3.7.6 Un probl�eme ouvert . . . . . . . . . . . . . . . . . . . . . . . . 99

3.8 Syst�emes cycliques . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

3.8.1 Classi�cation des syst�emes cycliques en chimie

organique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

3.8.2 Graphe des cycles pertinents . . . . . . . . . . . . . . . . . . . 103

3.8.3 Extension de la notion de cycles pertinents . . . . . . . . . . . 107

3.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

4 Analyse structurale d'un graphe mol�eculaire 113

4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

4.2 Repr�esentation abstraite d'une mol�ecule . . . . . . . . . . . . . . . . 114

4.2.1 D�e�nitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114

4.2.1.1 Squelette d'une mol�ecule . . . . . . . . . . . . . . . . 114

4.2.1.2 Cha�nes carbon�ees . . . . . . . . . . . . . . . . . . . 116

4.2.1.3 Liens h�et�eroatomiques . . . . . . . . . . . . . . . . . 117

4.2.1.4 Liens de cycle . . . . . . . . . . . . . . . . . . . . . . 119

4.2.2 Algorithmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120

4.2.2.1 Squelette mol�eculaire . . . . . . . . . . . . . . . . . . 121

4.2.2.2 Cha�nes carbon�ees et liens h�et�eroatomiques . . . . . 122

4.2.2.3 Liens de cycle . . . . . . . . . . . . . . . . . . . . . . 125

4.3 Graphe associ�e �a l'analyse structurale d'une mol�ecule . . . . . . . . . 126

4.3.1 D�e�nition de la repr�esentation par blocs GRB . . . . . . . . . 126

4.3.2 Algorithme de construction de GRB . . . . . . . . . . . . . . . 130

4.4 Centralit�e des aretes d'un graphe mol�eculaire . . . . . . . . . . . . . . 131

4.5 Fonctionnalit�e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

4.6 Sym�etrie et st�er�eochimie . . . . . . . . . . . . . . . . . . . . . . . . . 135

4.6.1 Classes d'�equivalence pour la sym�etrie . . . . . . . . . . . . . 138

4.6.2 D�etermination de la st�er�eochimie . . . . . . . . . . . . . . . . 144

4.6.2.1 Quelques notions �el�ementaires . . . . . . . . . . . . . 144

Page 5: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

iv TABLE DES MATI�ERES

4.6.2.2 Les r�egles C.I.P. . . . . . . . . . . . . . . . . . . . . 146

4.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150

5 Repr�esentations �a objets dans ReSyn 153

5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153

5.2 Quelques notions de base en Y3 . . . . . . . . . . . . . . . . . . . . . 156

5.3 Objets composites et motifs structuraux . . . . . . . . . . . . . . . . 159

5.3.1 Liens inverses en Yafool . . . . . . . . . . . . . . . . . . . . 161

5.3.2 Repr�esentation des motifs structuraux . . . . . . . . . . . . . 162

5.3.3 Vers l'�elaboration de strat�egies de synth�ese . . . . . . . . . . . 162

5.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167

6 Raisonnement par classi�cation dans ReSyn 169

6.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169

6.2 Le raisonnement par classi�cation . . . . . . . . . . . . . . . . . . . . 170

6.2.1 Repr�esentation des cat�egories . . . . . . . . . . . . . . . . . . 171

6.2.2 Subsomption et appariement . . . . . . . . . . . . . . . . . . . 173

6.2.3 Un algorithme de classi�cation . . . . . . . . . . . . . . . . . . 176

6.2.3.1 D�etermination des pr�ed�ecesseurs imm�ediats . . . . . 176

6.2.3.2 D�etermination des successeurs imm�ediats . . . . . . 179

6.2.3.3 Ajout d'un nouveau concept dans la hi�erarchie . . . . 183

6.2.4 Raisonnement par classi�cation sur des graphes mol�eculaires . 184

6.3 Appariements de graphes . . . . . . . . . . . . . . . . . . . . . . . . . 184

6.4 Les r�eseaux d'objectifs et de contextes dans ReSyn . . . . . . . . . . 187

6.4.1 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187

6.4.2 Contextes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190

6.5 Appariements dirig�es . . . . . . . . . . . . . . . . . . . . . . . . . . . 197

6.5.1 Quelques d�e�nitions . . . . . . . . . . . . . . . . . . . . . . . 197

6.5.2 Probl�eme 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200

6.5.3 Probl�eme 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208

6.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220

Conclusion 223

Page 6: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

TABLE DES MATI�ERES v

A Bases de cycles de taille minimale dans un graphe valu�e 227

A.1 Cha�nes minimales dans un graphe valu�e . . . . . . . . . . . . . . . . 228

A.2 Base de cycles de taille minimale . . . . . . . . . . . . . . . . . . . . 230

A.3 Union des bases de cycles de taille minimale . . . . . . . . . . . . . . 233

R�ef�erences bibliographiques 239

Page 7: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

vi Remerciements

Je remercie Jo�el Quinqueton d'avoir accept�e de diriger cette th�ese, malgr�e ses nom-

breuses occupations. Sa sympathie et sa constante bonne humeur, ainsi que sa disponibilit�e

quand je le sollicitais, m'ont �et�e d'un grand soutien.

Je remercie Michel Habib de m'avoir fait l'honneur de pr�esider le jury de ma th�ese.

L'int�eret qu'il a port�e �a mon travail au cours de ces derni�eres ann�ees et ses nombreux

conseils dans le domaine de la th�eorie des graphes ont �et�e tr�es pr�ecieux.

Je tiens tout particuli�erement �a remercier Monique Thonnat, Bernard Carr�e et Jean-

MarcGeib d'avoir accept�e d'etre les rapporteurs de cette th�ese. Leurs remarques construc-

tives ont �et�e pour moi tr�es enrichissantes.

Je remercie �egalement Jean-Yves Lallemand et Olivier Monga de m'avoir fait l'hon-

neur de participer �a mon jury de th�ese. Le regard ext�erieur qu'ils ont su porter sur mon

travail, dans leurs domaines respectifs, a �et�e tr�es pro�table.

Je remercie Claude Lauren�co qui a dirig�e cette th�ese dans le domaine de la chimie et

m'a appris tout ce que je sais en synth�ese organique et beaucoup plus encore. Son soutien

moral, la curiosit�e et les qualit�es scienti�ques dont il fait toujours preuve m'ont permis de

d�ecouvrir le travail de chercheur sous son meilleur jour. Qu'il trouve ici le t�emoignage de

mon profond respect et de mon ind�efectible amiti�e.

Je remercie Roland Ducournau, qui m'a permis de d�ecouvrir, par le biais de son

langage yafool, l'int�eret et le plaisir de la programmation par objets. Nos nombreuses

discussions et ses pr�ecieuses relectures de ma th�ese ont �et�e tr�es pro�tables.

Je remercie Amedeo Napoli de l'enthousiasme qu'il a manifest�e pour la lecture de cette

th�ese et pour nos passionnantes discussions sur mon travail et sur bien d'autres choses.

Je remercie tous les membres { et amis { de l'�equipe TICCO avec qui j'ai pu partager

les joies du travail au sein d'un formidable groupe et bien plus encore : Jean-Charles, Pierre,

Olivier, Andreas, Yolande, Jacques, Michel et Jean.

Je tiens �egalement �a remercier les membres du LIRMM qui m'ont fait b�en�e�cier de leurs

conseils et leur soutien aussi bien dans le domaine de la recherche que de l'enseignement.

J'aimerais citer tous les th�esards avec qui j'ai partag�e tant de bons moments, mais s'il me

vient �a l'esprit un Guillaume, un Christophe, un Ollivier, des Philippes et tant d'autres,

combien vais-je en oublier qui, je l'esp�ere, ne douteront pas de l'amiti�e que je leur porte.

En�n, et surtout, j'adresse mes remerciements les plus vifs �a toutes celles et ceux qui

m'ont soutenu par leur a�ection et leur patience, et pour lesquels j'�eprouve des sentiments

que ma modeste prose ne saurait convenablement traduire ici : mes amis autour de Perpi-

gnan, �a Paris, �a S�ete ou ailleurs, mes parents, ma famille et Michelle, bien sur : : :

Page 8: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

Introduction 1

Introduction

Parmi les th�emes de recherche d�evelopp�es en Intelligence Arti�cielle, la probl�ema-

tique de l'aide au raisonnement occupe une part importante.Mais pour v�eritablement

aider un humain �a raisonner, une machine devrait disposer de capacit�es de r�e exion

qui appartiennent encore au domaine de la science �ction. Tout syst�eme d'aide �a la

conception se doit de rester modeste dans ses ambitions. Les probl�emes g�en�eralement

trait�es se ram�enent �a une simpli�cation de probl�ematiques qui seraient inabordables

dans toute leur complexit�e. Le risque de s'attaquer �a des questions triviales est sou-

vent di�cile �a �ecarter. Par ailleurs, en s'�eloignant du domaine d'expertise initial, on

minimise l'int�eret d'une collaboration avec de v�eritables sp�ecialistes. Pourtant, beau-

coup de travaux en Intelligence Arti�cielle n'auraient pas pu aboutir sans la patience

de quelques experts, fascin�es comme beaucoup d'informaticiens par l'id�ee saugrenue

de faire entrer un soup�con de raison dans de droles de machines.

Ainsi, lorsqu'un informaticien voit passer un expert avec un joli probl�eme �a r�e-

soudre, il ne peut s'empecher de tendre un peu l'oreille. Si le probl�eme para�t di�-

cile et laisse supposer une de ces fortes combinatoires qui font la joie des droles de

machines, il ouvre de grands yeux. Lorsque apr�es moult palabres, il s'av�ere que le

probl�eme peut se mod�eliser en termes civilis�es, l'informaticien, ravi, peut se mettre

au travail.

Toute similitude avec le probl�eme de la synth�ese en chimie organique ne serait,

bien sur, qu'une simple co��ncidence. Mais il faut bien dire que l'�elaboration d'un plan

de synth�ese pour une mol�ecule donn�ee n'est pas sans pr�esenter de nombreuses di�-

cult�es, y compris d'ordre combinatoire. Or il se trouve que les principaux concepts

Page 9: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

2 Introduction

manipul�es en chimie organique sont repr�esent�es sous la forme de structures mol�ecu-

laires qui se d�ecrivent relativement bien �a l'aide de graphes.

La construction d'un plan de synth�ese est g�en�eralement r�ealis�ee de mani�ere ana-

lytique, en appliquant des transformations �a la repr�esentation symbolique de la mo-

l�ecule cible que l'on veut synth�etiser. Une transformation peut etre vue comme l'op�e-

ration inverse d'une r�eaction chimique. Elle permet d'engendrer des pr�ecurseurs de

la mol�ecule cible �a partir desquels le raisonnement analytique est poursuivi jusqu'�a

l'obtention de mol�ecules disponibles. Le nombre de transformations existantes, la

possibilit�e de les appliquer en divers endroits de la mol�ecule et le nombre d'�etapes

constituant un plan de synth�ese, rendent toute recherche syst�ematique impossible. Il

faut alors d�e�nir des strat�egies de synth�ese qui orientent le choix des transformations

�a appliquer. L'�elaboration de telles strat�egies est un probl�eme particuli�erement int�e-

ressant. Cependant, avant d'entreprendre cette �etude, il faut etre capable de d�ecrire

l'ensemble des crit�eres d'ordre chimique qui pr�evalent �a la conception et l'�evalua-

tion de ces strat�egies. Certes, les structures mol�eculaires peuvent etre partiellement

appr�ehend�ees dans le cadre formel de la th�eorie des graphes. Mais les motifs structu-

raux qui d�e�nissent les mots du langage de description des strat�egies de synth�ese ne

sont pas pour autant faciles �a reconna�tre, repr�esenter ou organiser. C'est pourquoi,

nous nous int�eressons dans cette th�ese �a l'analyse structurale d'objets complexes re-

pr�esent�es �a l'aide de graphes. Le champ d'exp�erimentation d�e�ni par la synth�ese en

chimie organique permet non seulement de poser des probl�emes di�ciles mais aussi

de valider les r�esultats obtenus.

Le premier chapitre introduit quelques notions �el�ementaires de la th�eorie des

graphes et �etablit un lien avec le concept de structure mol�eculaire dans le cadre de la

chimie organique. La probl�ematique de la synth�ese est expos�ee dans le chapitre 2 qui

fait un rapide �etat de l'art de syst�emes existants de synth�ese assist�ee par ordinateur.

Ce chapitre d�e�nit �egalement l'architecture du syst�eme ReSyn qui a �et�e en grande

partie d�evelopp�e dans le cadre de cette th�ese.

Le chapitre 3 est d�edi�e �a l'�etude des cycles dans un graphe. Il aborde la notion

d'espace vectoriel engendr�e par l'ensemble des cycles �el�ementaires. Nous y proposons

des algorithmes permettant de rechercher une base de cycles de taille minimale ou

de d�eterminer l'union de toutes les bases de cycle de taille minimale. Nous montrons

comment cet ensemble peut etre utilis�e pour reconna�tre les cycles chimiquement

Page 10: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

Introduction 3

pertinents d'une mol�ecule. Nous proposons �egalement un mode de repr�esentation

des syst�emes cycliques d�ecrivant les relations structurales qui peuvent exister entre

les cycles. Ce chapitre est compl�et�e, en annexe, par une g�en�eralisation, aux graphes

valu�es, des algorithmes propos�es.

Le chapitre 4 est consacr�e aux autres analyses structurales d'un graphe mol�ecu-

laire. Il permet de d�e�nir une repr�esentation abstraite des mol�ecules qui rend compte

des liens structuraux qui existent entre les divers motifs caract�eristiques d'une mo-

l�ecule. Nous y abordons �egalement le probl�eme de la sym�etrie dans un graphe et son

lien avec la d�e�nition de la notion de st�er�eochimie d'une mol�ecule.

Le chapitre 5 est d�edi�e �a l'utilisation de repr�esentations par objets dans ReSyn.

Il expose notamment le mode de description des motifs structuraux dans le langage

�a objets yafool.

Quant au dernier chapitre, il traite du raisonnement par classi�cation dans Re-

Syn. Il pr�esente une organisation hi�erarchique des motifs structuraux ainsi que des

algorithmes de classi�cation adapt�es aux hi�erarchies de graphes. Nous introduisons

une relation originale de subsomption qui est d�e�nie, non pas sur un ensemble de

graphes, mais sur leurs appariements avec un meme graphe cible. Nous d�e�nissons

alors une notion d'appariements dirig�es permettant de faciliter le raisonnement par

classi�cation sur une hi�erarchie de graphes et de d�ecrire des connaissances expertes

sur la pertinence des appariements entre les graphes de cette hi�erarchie.

Page 11: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4 Introduction

Page 12: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

5

Chapitre 1

Graphes en chimie organique

1.1 Introduction

Lorsque que l'on s'int�eresse �a la r�esolution de probl�emes r�eels par l'intelligence

arti�cielle, il est n�ecessaire d'optimiser l'ad�equation entre le domaine �etudi�e et sa

mod�elisation. Faute de quoi, les r�esultats obtenus s'av�erent inexploitables de par

leur trop grande simplicit�e. Bien sur, il arrive parfois qu'une lointaine abstraction de

probl�emes concrets aboutisse �a des r�esultats th�eoriques particuli�erement int�eressants.

Il faut aussi remarquer que la plupart des probl�ematiques r�eelles sont inabordables

si l'on cherche �a les appr�ehender dans toute leur complexit�e.

On peut ainsi se demander si la pierre philosophale du chercheur en informa-

tique ne ressemble pas �a un domaine d'application qui soit en parfaite ad�equation

avec un th�eme de recherche th�eorique. En dehors d'une situation aussi id�eale, il

convient d'�eviter toute assimilation hative entre la perception super�cielle d'un pro-

bl�eme concret et une jolie th�eorie en mal de cautionnement exp�erimental. Il n'est

d'ailleurs pas toujours facile de bien appr�ehender une probl�ematique qui nous est

�etrang�ere et de s'apercevoir que l'on se cantonne �a l'�etude de ((probl�emes jouet)).

Dans la mesure o�u nous nous int�eressons aux strat�egies de construction d'objets

structur�es repr�esentables par des graphes, il est important de choisir un cadre d'ex-

p�erimentation bien adapt�e �a la th�eorie des graphes. Ce premier chapitre a pour but

Page 13: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6 Chapitre 1. Graphes en chimie organique

de montrer en quoi la synth�ese en chimie organique semble assez bien r�epondre �a

toutes ces exigences.

Comme toute science exp�erimentale, la Chimie s'e�orce de d�e�nir des mod�eles

abstraits visant �a appr�ehender une r�ealit�e qui, par essence, nous �echappe. De cette

quete | probablement sans �n | sont n�ees autant de disciplines que l'avanc�ee des

connaissances a engendr�e de nouvelles th�eories. Bien que tous ces domaines s'int�e-

ressent �a la meme ((mati�ere )), ils apportent par leur diversit�e une compl�ementarit�e de

points de vue tout �a fait indispensable. �A la question (( qu'est ce qu'une mol�ecule? )),

un chimiste r�epondra en fonction de crit�eres propres �a son domaine d'int�eret : la syn-

th�ese, l'analyse spectroscopique, les m�ecanismes r�eactionnels, la chimie th�eorique,

etc. C'est pourquoi, si l'on pose la meme question �a d'autres chimistes, ils propose-

ront toujours une d�e�nition qui sera chaque fois ((ni tout �a fait la meme, ni tout �a

fait une autre)). Certains chercheurs pourront meme s'interroger sur la pertinence du

concept de mol�ecule (cf. [Paoloni, 1985]).

Face �a cette multitude de perceptions, la th�eorie des graphes fournit un cadre for-

mel, parmi tant d'autres, permettant de d�e�nir un langage de description des struc-

tures mol�eculaires. La connivence entre chimie et th�eorie des graphes n'est d'ailleurs

pas nouvelle. Sans remonter jusqu'aux lointaines origines de ces disciplines, on peut

rappeler que l'�etude des graphes a �et�e stimul�ee au xix i�eme si�ecle par leur utilisation

pour d�ecrire les mol�ecules. On peut citer par exemple les travaux de Cayley qui a

grandement contribu�e �a la d�e�nition de la notion de graphe mol�eculaire dans ses

travaux sur le d�enombrement des ((isom�eres constitutionnels)) (voir [Cayley, 1874]).

Il nous para�t donc int�eressant d'�evoquer quelques utilisations de la th�eorie des

graphes dans le cadre de la chimie. Nous nous restreindrons plus pr�ecis�ement �a l'em-

ploi de graphes pour repr�esenter des mol�ecules en chimie organique. La premi�ere

partie de ce chapitre est consacr�ee �a la pr�esentation de quelques notions fondamen-

tales de la th�eorie des graphes. La plupart de ces notions seront utilis�ee dans toute

la suite de cette th�ese. Par souci de concision, ce paragraphe s'apparente plus �a un

glossaire qu'�a un v�eritable r�esum�e d'une th�eorie qui justi�erait, �a elle seule, qu'on

lui consacre tous les prochains chapitres. Pour les memes raisons, la seconde par-

tie revient sur la notion de mol�ecule en pr�esentant succinctement quelques r�egles

d�e�nissant leur mode de dessin. Nous nous baserons en e�et sur ce type de repr�esen-

tation pour d�esigner les structures chimiques tout au long de cette th�ese. Quant �a

Page 14: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

1.2. Quelques notions de base de la th�eorie des graphes 7

la derni�ere partie de ce chapitre, elle concerne le type de graphe le plus couramment

associ�e �a une mol�ecule : le graphe mol�eculaire.

1.2 Quelques notions de base de la th�eorie des

graphes

Nous allons rappeler ici bri�evement quelques notions de base de la th�eorie des

graphes. Ces d�e�nitions sont en grande partie inspir�ees de [Berge, 1973] auquel le

lecteur pourra se r�ef�erer pour un compl�ement d'information.

1.2.1 D�e�nition d'un graphe

Un graphe non orient�e G = (X;E) est constitu�e d'un ensemble X de som-

mets et d'un ensemble E d'aretes, o�u chaque arete est un sous-ensemble de X �a

deux �el�ements. Les deux sommets appartenant �a une arete constituent ses extr�e-

mit�es. Une arete est incidente �a un sommet si elle contient ce sommet. Une arete

incidente aux sommets x et y sera not�ee fx; yg. Le degr�e d'un sommet x, not�e d(x),

est �egal au nombre d'aretes incidentes �a ce sommet. Deux sommets sont voisins

s'ils appartiennent �a la meme arete. L'ensemble des voisins d'un sommet x sera not�e

�(x). Il s'en suit : d(x) = j�(x)j.

On d�e�nit g�en�eralement le degr�e maximal (not�e dmax) d'un graphe G par la

valeur maximale du degr�e d'un sommet de G.

Lorsque le graphe est orient�e, les aretes { appel�ees arcs { sont des couples

de sommets, c'est-�a-dire des �el�ements de X � X. Pour un arc (x; y), x constitue

l' extr�emit�e initiale et y l'extr�emit�e terminale. On d�e�nit alors pour chaque

sommet x son degr�e entrant (not�e d�(x)) par le nombre d'arcs dont x constitue

l'extr�emit�e terminale. De la meme fa�con, le degr�e sortant de x (not�e d+(x)) est �egal

au nombre d'arcs ayant x comme extr�emit�e initiale. Par analogie, on peut d�ecomposer

l'ensemble des voisins de x en deux parties : l'ensemble �+(x) de ses successeurs et

l'ensemble ��(x) de ses pr�ed�ecesseurs. Dans un graphe non orient�e, chaque arete

fx; yg est associ�ee aux deux arcs (x; y) et (y; x).

Page 15: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

8 Chapitre 1. Graphes en chimie organique

Un sous-graphe de G = (X;E) engendr�e par Y � X est un grapheH = (Y;EH)

tel que 8x; y 2 Y; (x; y) 2 EH , (x; y) 2 E.

Un graphe partiel de G = (X;E) engendr�e par E0 � E est un graphe

H = (X;E0) tel que 8x; y 2 X; (x; y) 2 E0 ) (x; y) 2 E.

Par extension, un sous-graphe partiel de G = (X;E) est un graphe H =

(Y;E0) tel que Y � X et 8x; y 2 Y; (x; y) 2 E0 ) (x; y) 2 E.

Pr�ecisons en�n que nous adopterons, tout au long de cette th�ese, les notations

usuelles pour d�esigner le nombre d'aretes m = jEj et de sommets n = jXj d'un

graphe G = (X;E).

1.2.2 Cha�nes et cycles

Une cha�ne est une s�equence � = (fx1; x2g; fx2; x3g; :::; fxq�1; xqg) d'aretes de

G telle que chaque arete de la s�equence ait une extr�emit�e en commun avec l'arete qui

la pr�ec�ede et l'autre extr�emit�e en commun avec l'arete suivante. On peut �egalement

d�ecrire une cha�ne par la s�equence de sommets [x1; x2; x3:::; xq] ordonn�ee suivant la

s�equence d'aretes d�e�nissant la cha�ne. Une cha�ne est simple si elle ne contient pas

deux fois la meme arete. Une cha�ne qui n'utilise pas deux fois le meme sommet est

dite �el�ementaire. La longueur d'une cha�ne est naturellement d�e�nie par le nombre

d'aretes de sa s�equence.

Dans un graphe orient�e, on peut pr�eciser la notion de cha�ne en d�e�nissant un

chemin par une s�equence d'arcs de la forme ( (x1; x2); (x2; x3); :::; (xq�1; xq) ). En

r�egle g�en�erale, un tel chemin sera not�e par la s�equence (x1; x2; x3; :::; xq). �Etant donn�e

deux sommets x et y, il peut exister une cha�ne entre x et y sans qu'il y ait pour

autant de chemin reliant x �a y du fait de l'orientation des arcs.

Nous appellerons distance entre deux sommets x et y, not�ee dist(x; y) , la

longueur de la plus courte cha�ne reliant x et y. On d�e�nit g�en�eralement le diam�etre

d'un graphe G = (X;E) par �(G) = maxx;y2X dist(x; y) .

Un cycle (parfois appel�e cycle simple) est une cha�ne simple dont les deux som-

mets plac�es aux extr�emit�es de cette cha�ne co��ncident 1.

1. pour etre exacte, la d�e�nition d'un cycle doit etre consid�er�ee ((�a une permutation circulaire

pr�es)) des extr�emit�es de la cha�ne consid�er�ee. Le cycle d�ecrit par la cha�ne [a; b; c; d; a] est en e�et

identique au cycle d�e�ni par la cha�ne [b; c; d; a; b], ou encore [a; d; c; b; a], etc.

Page 16: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

1.2. Quelques notions de base de la th�eorie des graphes 9

Dans un graphe orient�e, on peut aussi d�e�nir un circuit par chemin dont les

extr�emit�es co��ncident. De par l'orientation des arcs, un graphe peut contenir un cycle

sans poss�eder pour autant le moindre circuit.

On appelle arbre tout graphe qui ne contient pas de cycles.

Une corde est une arete reliant deux sommets d'un cycle mais qui n'appartient

pas �a ce cycle.

Un cycle est dit �el�ementaire s'il ne contient pas deux fois le meme sommet.

On peut aussi d�e�nir un cycle comme un sous-graphe partiel connexe dont tous les

sommets sont de degr�e pair. Cette d�e�nition consid�ere un cycle comme un ensemble

d'aretes et non comme une s�equence de sommets (l'ordonnancement des aretes dans

le cycle n'�etant pas prise en compte). Dans le chapitre 3, nous nous int�eresserons

principalement aux cycles �el�ementaires pour lesquels cette di��erence de d�e�nitions

n'a pas d'importance. En e�et, un cycle �el�ementaire d�e�nit un ordre circulaire unique

sur les aretes qui le composent. La description d'un tel cycle sous la forme d'un

ensemble d'aretes ne pr�esente donc pas d'ambigu��t�e. Cependant, nous d�esignerons

g�en�eralement un cycle par une s�equence de sommets [x1; x2; :::; xq�1; x1].

1.2.3 Quelques propri�et�es d'un graphe

Un graphe G est connexe si pour toute paire de sommets x; y il existe au moins

une cha�ne dans G qui relie x et y. L'existence d'une cha�ne entre deux sommets d'un

graphe quelconque d�e�nit une relation d'�equivalence sur les sommets de ce graphe.

Les classes d'�equivalence de cette relation constituent les composantes connexes

du graphe. La recherche des composantes connexes peut etre r�ealis�ee en O(n +m)

par un simple parcours du graphe.

On dit qu'un sommet x est un point d'articulation d'un graphe connexe G =

(X;E) si sa suppression d�econnecte le graphe (c.-�a-d. le sous-graphe de G engendr�e

par X n fxg n'est pas connexe).

La notion de connexit�e peut etre g�en�eralis�ee �a celle de k-connectivit�e. Un graphe

est k-connexe si on ne peut le ((d�econnecter )) (i.e. le rendre non connexe) qu'en

supprimant au moins k sommets. On peut �egalement caract�eriser la k-connectivit�e

en utilisant le th�eor�eme de Menger (1926) : ((un graphe est k-connexe si l'on peut

Page 17: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

10 Chapitre 1. Graphes en chimie organique

Fig. 1.1 { Un exemple de graphe poss�edant quatre composantes 2-connexes et deux

points d'articulation.

relier deux sommets distincts a et b par k cha�nes �el�ementaires disjointes n'ayant

deux �a deux en commun que les sommets a et b )).

Dans cette th�ese, nous nous int�eresserons plus particuli�erement aux composantes

2-connexes. On dit que deux sommets appartiennent �a la memecomposante 2-connexe

s'il existe un sous-graphe 2-connexe de G qui les contient tous les deux. Notons que

ces composantes 2-connexes ne constituent pas une partition des sommets de G puis-

qu'un meme sommet peut appartenir �a deux composantes di��erentes (voir �gure 1.1).

Un tel sommet est alors n�ecessairement un point d'articulation de G. On peut d�eter-

miner l'ensemble des composantes 2�connexes d'un graphe en O(n+m) en utilisant

le tr�es bel algorithme propos�e dans [Tarjan, 1972].

Par analogie avec la notion de graphe 2-connexe, on dit qu'un graphe est

2-aretes-connexe si on ne peut le ((d�econnecter )) qu'en supprimant au moins 2

aretes. Par exemple, le graphe de la �gure 1.1 est 2-aretes-connexe. Pr�ecisons qu'une

arete dont la suppression d�econnecte le graphe est appel�e un isthme. On peut aussi

caract�eriser un graphe 2-aretes-connexe par le fait que toute arete appartient au

moins �a un cycle. On dit que deux sommets appartiennent �a la meme composante

2-aretes-connexe s'il existe un cycle qui les contient tous les deux. Contraire-

ment aux composantes 2-connexes, les composantes 2-aretes-connexes constituent

une partition des sommets du graphe (voir �gure 1.2). L'ensemble des composantes

2-aretes-connexes peut lui aussi etre calcul�e en O(m + n) (cf. [Tarjan, 1972]).

Un graphe est planaire s'il peut etre repr�esent�e dans le plan de telle sorte que

tous les sommets soient des points distincts et que les aretes qui les relient soient des

courbes qui ne se croisent qu'en leurs extr�emit�es. La v�eri�cation de la planarit�e d'un

Page 18: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

1.3. Repr�esentation graphique des mol�ecules 11

Fig. 1.2 { Un graphe poss�edant trois composantes 2-aretes-connexes et deux isthmes.

graphe G peut etre r�ealis�ee en temps lin�eaire par rapport au nombre de sommets

de G. On peut utiliser par exemple l'algorithme de [Chiba et al., 1985] qui construit

�egalement une repr�esentation planaire du graphe.

1.3 Repr�esentation graphique des mol�ecules

Comme il a �et�e dit dans l'introduction, il serait illusoire de chercher �a donner

une d�e�nition �a la fois pr�ecise et universelle du concept de mol�ecule. D'un point de

vue structurel, on peut dire qu'une mol�ecule est un agr�egat d'atomes, li�es entre eux

et dont l'agencement spatial est contraint par de nombreuses r�egles. Une mol�ecule

est donc une entit�e tridimensionnelle poss�edant une forme et des dimensions qui,

bien que parfaitement d�e�nies, ne sont pas pour autant statiques. Toute mol�ecule

est en e�et soumise �a deux types de dynamique : une dynamique interne induisant

des d�eformations au sein de la mol�ecule (vibrations, rotations, inversions d'atomes)

et une dynamique externe li�ee au ((mouvement brownien)). Les mol�ecules sont en

e�et soumises �a des chocs incessants avec d'autres mol�ecules. Ces collisions peuvent

aboutir �a des r�eactions qui forment des mol�ecules di��erentes.

De par leur nature microscopique, les mol�ecules ne sont pas directement visibles.

Il est donc n�ecessaire de d�e�nir un mode de repr�esentation qui permette de les appr�e-

hender. Les mod�eles mol�eculaires sont par exemple utilis�es pour construire une repr�e-

sentation tridimensionnelle d'une mol�ecule sous la forme d'un ensemble de ((boules))

correspondant aux atomes et de ((tiges)) reliant ces boules et d�ecrivant les liaisons

entre atomes. Cette mod�elisation statique des liaisons n'est bien �evidemment pas

exacte. En chimie organique, une liaison, dite ((covalente)), correspond �a la mise en

commun d'une ou plusieurs paires d'�electrons entre deux atomes. Le nombre de paires

Page 19: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

12 Chapitre 1. Graphes en chimie organique

Fig. 1.3 { Repr�esentation graphique d'une mol�ecule.

ainsi �echang�ees d�e�nit le type ou ((ordre)) de la liaison : simple pour une paire, double

pour deux paires, etc. La repr�esentation des liaisons par des liens solides est donc

avant tout un moyen tr�es simple de visualiser une relation complexe qui ob�eit �a des

lois aussi bien physiques qu'�electroniques.

En dehors de ses limitations d'ordre purement chimique, le mod�ele mol�eculaire,

de par sa nature tridimensionnelle, n'est pas directement utilisable sur des supports

planaires (tableau, papier, etc.). C'est pourquoi les chimistes ont souvent recours �a

une repr�esentation graphique des mol�ecules g�en�eralement d�esign�ee par le terme de

formule (voir �gure 1.3).

Cette vision bidimensionnelle des mol�ecules peut appara�tre comme le parent

pauvre des mod�eles mol�eculaires. Meme en utilisant une repr�esentation en pers-

pective, il n'est que rarement possible de d�ecrire sur un dessin toute la structure

spatiale d'une mol�ecule. Cependant, en dessinant une mol�ecule suivant un point de

vue particulier, un chimiste pourra plus facilement mettre en �evidence les parties de

la structure mol�eculaire qui illustrent son propos. Il faut aussi pr�eciser que l'arran-

gement spatial des atomes d'une mol�ecule ob�eit �a des r�egles physico-chimiques tr�es

Page 20: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

1.3. Repr�esentation graphique des mol�ecules 13

pr�ecises (longueur des liaisons, valeur de l'angle d�e�ni par deux liaisons issues d'un

meme atome, etc). Un informaticien pourra ainsi d�eceler une certaine ambigu��t�e dans

un dessin de mol�ecule alors que cette ambigu��t�e n'aura pas de raison d'etre pour un

chimiste.

Les r�egles r�egissant le mode de repr�esentation graphique des mol�ecules visent �a

�etablir un �equilibre subtil entre pr�ecision et clart�e du dessin. Il va sans dire que ce

simple paragraphe ne saurait pr�etendre �a les d�ecrire toutes. Nous nous contenterons

d'�evoquer les r�egles les plus �el�ementaires, au risque de para�tre parfois un peu trop

simpliste.

Une formule contient principalement trois types d'information sur la mol�ecule :

� la composition qui d�ecrit le nombre et la nature des atomes,

� la constitution pr�ecisant la localisation et le type des liaisons entre atomes.

� quelques �el�ements de st�er�eochimie sp�eci�ant la disposition relative de certains

atomes dans l'espace;

Dans ce type de repr�esentation, les atomes de carbone sont symbolis�es par des

points. Les autres atomes sont repr�esent�es par le symbole atomique qui leur est

associ�e (H pour l'hydrog�ene, N pour l'azote, O pour l'oxyg�ene, etc).

Les liaisons entre atomes apparaissent sur le dessin sous la forme de segments

de droites. Une liaison simple, double ou triple est repr�esent�ee respectivement par

un, deux ou trois traits parall�eles. Certaines liaisons simples �echappent cependant �a

cette r�egle. Elles sont repr�esent�ees par des triangles pleins ou hachur�es. Ce mode de

description vise �a pr�eciser les positions spatiales de certaines parties de la mol�ecule.

Le dessin est alors consid�er�e comme une projection de la structure mol�eculaire dans

un plan. Les liaisons simples, symbolis�ees par un trait �n, sont suppos�ees appartenir

au plan de la projection. Les coins hachur�es correspondent aux liaisons situ�ees en

arri�ere de ce plan et les coins pleins d�esignent des liaisons qui sont plac�ees en avant.

Il faut tout de meme pr�eciser que cette prise en compte de la position spatiale des

liaisons n'est pas parfaite. Le dessin de la �gure 1.3 n'est pas une r�eelle projection

planaire de l'objet tridimensionnel que constitue la mol�ecule. Il s'agit avant tout d'un

dessin respectant un certain nombre de r�egles qui s'e�orcent d'�etablir un compromis

entre deux n�ecessit�es particuli�erement antagonistes : il faut d'une part repr�esenter

un maximum d'informations et d'autre part fournir une abstraction de la mol�ecule

qui soit la plus claire possible. Un meme dessin de mol�ecule pourra ainsi meler

Page 21: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

14 Chapitre 1. Graphes en chimie organique

Fig. 1.4 { Quatre notations �equivalentes d'un meme syst�eme aromatique

projections planaires et repr�esentations en perspective de di��erentes parties de la

structure mol�eculaire.

On peut �egalement noter dans la �gure 1.3 la pr�esence d'un syst�eme aromatique

symbolis�e par un cercle. Nous avons d�ej�a vu qu'une liaison covalente se traduit par

une (( circulation )) d'�electrons entre les atomes qui constituent ses extr�emit�es. Dans

le cas des syst�emes aromatiques, l'�echange d'�electrons ne concerne plus deux atomes

mais un ensemble d'atomes r�epartis dans un cycle ou sur plusieurs cycles accol�es. Le

cercle, plac�e sur le dessin au centre du cycle, symbolise donc cette circulation parti-

culi�ere des �electrons. Pr�ecisons que la mise en �evidence des cycles aromatiques par

des cercles n'est pas toujours utilis�ee. On rencontre parfois une mod�elisation �a l'aide

d'une suite altern�ee de liaisons simples et doubles comme le montre la �gure 1.4.

Dans cette repr�esentation, dite de K�ekul�e, on suppose qu'une des deux paires d'�elec-

trons de chaque liaison double se d�elocalise sur l'ensemble du syst�eme aromatique.

L'emplacement des liaisons doubles n'a donc pas d'importance pour peu que l'al-

ternance entre liaisons simples et doubles soit respect�ee. On peut alors repr�esenter

un meme syst�eme aromatique par des repr�esentations di��erentes mais parfaitement

�equivalentes (cf. �gure 1.4).

Les atomes d'hydrog�ene ne sont pas trait�es comme les autres dans les dessins

de mol�ecules. Pour expliquer cette nouvelle r�egle, nous devons introduire la notion

de valence. De fa�con informelle, on peut dire que la valence d'un atome d�esigne le

nombre d'atomes auxquels il doit etre simplement li�e pour que la mol�ecule �a laquelle il

appartient soit chimiquement valide. Par exemple, la valence d'un atome de carbone

vaut 4. Cela signi�e que tout carbone doit etre attach�e par quatre liaisons simples

ou bien deux liaisons doubles ou encore n'importe quelle combinaison de liaisons

respectant sa valence.

Page 22: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

1.3. Repr�esentation graphique des mol�ecules 15

Fig. 1.5 { Repr�esentation graphique simpli��ee de la mol�ecule de la �gure 1.3.

En chimie organique, les structures mol�eculaires sont compos�ees d'une grande

quantit�e d'atomes d'hydrog�ene. Ces atomes, dont la valence vaut 1, encombrent in-

utilement le dessin des mol�ecules (voir �gure 1.3). Connaissant la valence d'un atome

- ce qui est le cas de tout bon chimiste - on peut tr�es facilement retrouver le nombre

d'hydrog�enes qu'il faut ajouter �a cet atome pour qu'il soit satur�e. Les chimistes ne

dessinent donc que les atomes d'hydrog�ene qui occupent des positions importantes. Il

s'agit g�en�eralement de ceux qui sont attach�es par des liaisons situ�ees en avant ou en

arri�ere du plan du dessin. Leur pr�esence permet alors de pr�eciser la st�er�eochimie de

l'atome auquel ils sont attach�es. La repr�esentation (( compl�ete )) de la �gure 1.3 n'est

que tr�es rarement utilis�ee. On lui pr�ef�ere g�en�eralement la repr�esentation simpli��ee

(ou formule abstraite) de la �gure 1.5.

Il est donc �evident qu'un dessin de mol�ecule ne saurait rendre compte de toutes

les caract�eristiques de la structure qu'il repr�esente. Une mol�ecule n'�etant pas un objet

statique, elle est soumise �a des d�eformations permanentes qui ne peuvent appara�tre

explicitement dans une repr�esentation graphique. Le dessin des mol�ecules poss�ede

ainsi une grande part de subjectivit�e qui �echappe g�en�eralement aux non chimistes.

Ceci est d'autant plus vrai qu'une meme mol�ecule pourra etre dessin�ee de fa�con

Page 23: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

16 Chapitre 1. Graphes en chimie organique

sensiblement di��erente par des experts issus de diverses branches de la chimie ou par

une meme personne d�esirant insister sur des aspects di��erents de la mol�ecule.

1.4 Mod�elisation des mol�ecules par des graphes

La mod�elisation des mol�ecules �a l'aide de graphes est utilis�ee depuis longtemps

en chimie. Nous avons �etudi�e dans le paragraphe pr�ec�edent quelques notions de base

de ce que l'on nomme la (( th�eorie des graphes )). Cette formalisation du concept de

graphe o�re un cadre particuli�erement int�eressant pour repr�esenter des mol�ecules.

1.4.1 Graphe mol�eculaire

Parmi ces repr�esentations, le graphe mol�eculaire est certainement le plus r�e-

pandu. Il permet de d�ecrire la (( constitution )) d'une mol�ecule. Dans ce graphe, les

sommets correspondent aux atomes de la mol�ecule et les aretes d�ecrivent les liaisons

entre ces atomes. Pour tenir compte de la nature des atomes et des liaisons, le graphe

mol�eculaire est doublement �etiquet�e. Consid�erons le graphe mol�eculaire G = (X;E)

associ�e �a une mol�ecule.

Soit TA l'ensemble des symboles atomiques : TA = fC; H; N; O; Cl; ::: g.

Les �etiquettes des sommets de G sont d�e�nies par la fonction :

fA : X �! TAx 7�! fA(x) = symbole de l'atome associ�e �a x

Si TL = f simple; double; triple; aromatique g d�esigne l'ensemble des types de liai-

sons, on d�e�nit la fonction d'�etiquetage des aretes de G :

fL : E �! TLu 7�! fL(u) = type de la liaison associ�ee �a u

Un graphe mol�eculaire est alors parfaitement d�e�nit par le triplet (G; fA; fL ).

La �gure 1.6 donne un exemple de graphe mol�eculaire. Ce graphe correspond �a la

mol�ecule repr�esent�ee par la �gure 1.5. On remarquera ais�ement la correspondance

directe entre ces deux modes de repr�esentation.

Une l�eg�ere di��erence subsiste tout de meme au niveau des liaisons simples. Le

graphe mol�eculaire est en e�et une entit�e abstraite d�epourvue de toute signi�cation

Page 24: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

1.4. Mod�elisation des mol�ecules par des graphes 17

H

Simple

Simple

Simple

Double

Simple

N

SimpleTriple

Simple

Simple

Simple

Simple

Simple

Simple

Simple

Simple

Simple

Aromat.

Aromat.

Aromat.

Aromat.

Aromat.

Aromat.

C

C

O

O

C

C

C

C

C

C

C

C

CC

N

C

C

C

Fig. 1.6 { Graphe mol�eculaire associ�e �a la mol�ecule de la �gure 1.5.

tridimensionnelle. Il n'est donc pas adapt�e �a la repr�esentation des aretes qui sont

d�ecrites sur le dessin �a l'aide de triangles pleins ou hachur�es. Bien sur, on pourrait

r�esoudre ce probl�eme en divisant le type d'aretes simple en trois valeurs di��erentes :

simple plan, simple devant et simple derri�ere. Mais cette distinction n'aurait de sens

que pour un dessin particulier de la mol�ecule. Il est donc pr�ef�erable de conserver

l'ensemble de types d'aretes TA qui garantit l'unicit�e du graphe mol�eculaire engendr�e

�a partir d'un dessin quelconque de la mol�ecule.

La deuxi�eme di��erence notable concerne les cycles aromatiques symbolis�es par

un cercle sur le dessin de la �gure 1.5. Ce type de relation n'est que di�cilement

repr�esentable dans un graphe mol�eculaire. C'est pourquoi, on consid�ere g�en�eralement

que l'aromaticit�e du cycle se transmet aux aretes qui le composent. Toute arete

appartenant �a un cycle aromatique sera donc �etiquet�ee par le type (( aromatique )).

Mais la notion d'aromaticit�e ne peut pas se r�esumer �a une simple mise en relation

des atomes concern�es. L'existence d'un cycle aromatique est par exemple condition-

n�ee par le fait que tous les atomes qui le composent doivent appartenir �a un meme

plan. Un graphe mol�eculaire permettra tout au plus de pressentir la pr�esence d'un

syst�eme aromatique (en s'appuyant par exemple sur la repr�esentation en cha�nes

altern�ees de la �gure 1.4). La reconnaissance des syst�emes aromatiques est donc es-

Page 25: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

18 Chapitre 1. Graphes en chimie organique

Fe?≅

Fig. 1.7 { Le ferroc�ene : dessin et graphe mol�eculaire.

sentiellement �etrang�ere �a la th�eorie des graphes. De fa�con g�en�erale, la repr�esentation

des ((�electrons d�elocalis�es)) peut di�cilement s'e�ectuer dans les limites du mod�ele

de graphe mol�eculaire. La �gure 1.7 pr�esente par exemple un dessin de la mol�ecule

du ferroc�ene. Il est peu probable que le graphe mol�eculaire qui lui est associ�e d�ecrive

correctement les liaisons aromatiques qui interviennent dans ce type de structure.

Pour r�esoudre ce probl�eme de fa�con plus �el�egante, on pourrait envisager de repr�e-

senter les mol�ecules �a l'aide d'un hypergraphe. Rappelons que dans un hypergraphe,

les aretes sont des ensembles de sommets dont le cardinal peut etre sup�erieur �a 2.

Avec ce type de repr�esentation, une liaison simple, double ou triple correspondrait

toujours �a une paire de sommets. Mais un syst�eme aromatique serait d�e�ni par une

hyper-arete r�eunissant tous les atomes faisant partie du cycle aromatique. Cette

utilisation des hypergraphes, sugg�er�ee encore r�ecemment par [Konstantinova et Sko-

robogatov, 1995], n'est pas enti�erement satisfaisante. Le concept d'hyper-arete �etant

de nature ensembliste, il ne permet pas de traduire correctement les d�elocalisations

d'�electrons qui se produisent r�eellement entre les atomes du syst�eme aromatique.

Dans l'exemple du ferroc�ene, la d�e�nition d'une hyper-arete contenant 5 (ou 10)

atomes de carbone et l'atome de fer n'a pas beaucoup de sens.

Une approche plus int�eressante a �et�e propos�ee r�ecemment par [Dietz, 1995]. Elle

consiste �a utiliser non pas le concept d'hyper-graphe, mais celui de multigraphe 2.

Pour chaque ensemble d'�electrons d�elocalis�es, on d�ecrit toutes les circulations pos-

sibles de ces �electrons entre les sommets du graphe mol�eculaire, sous la forme d'un

ensemble de paires de sommets. La �gure 1.8 pr�esente le cas du ferroc�ene pour lequel

2. Dans un multigraphe, deux sommets peuvent etre reli�es par plusieurs aretes.

Page 26: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

1.4. Mod�elisation des mol�ecules par des graphes 19

A

B

C

1110

9 8

7

6

6

54

3

21 1

1110

9 8

7

6

54

3

2

A : ( 6 �electrons , f f1,2g, f2,3g, f3,4g, f4,5g, f5,1g, f1,6g, f2,6g, f3,6g, f4,6g, f5,6g g )

B : ( 6 �electrons , f f7,8g, f8,9g, f9,10g, f10,11g, f11,7g, f7,6g, f8,6g, f9,6g, f10,6g, f11,6g g )

C : ( 6 �electrons , f f1,6g, f2,6g, f3,6g, f4,6g, f5,6g, f7,6g, f8,6g, f9,6g, f10,6g, f11,6g g )

Fig. 1.8 { Description des �electrons d�elocalis�es suivant la mod�elisation de A. Dietz.

on distingue commun�ement trois groupes de 6 �electrons d�elocalis�es. Les paires de

sommets associ�ees �a un groupe donn�e peuvent etre assimil�ees �a de nouvelles aretes

du graphe mol�eculaire. Si l'on �etiquette ces aretes en fonction du groupe auquel elles

sont associ�ees, on obtient un multigraphe mol�eculaire comme celui de la �gure 1.8.

Si les �electrons d�elocalis�es semblent aussi di�cile �a repr�esenter, c'est certainement

parce que la th�eorie chimique �a laquelle ils font r�ef�erence n'est pas parfaitement

mod�elisable en termes de graphes. Quel que soit le mode de repr�esentation utilis�e,

il ne peut qu'�evoquer une structure chimique particuli�ere, mais en aucun cas la

d�ecrire parfaitement. Suivant le type de traitement que l'on veut r�ealiser, on choisira

de mettre en �evidence tel ou tel aspect d'une r�ealit�e qui, meme pour un chimiste,

n'est pas toujours parfaitement connue. Quant �a la reconnaissance des syst�emes

aromatiques �a partir d'une repr�esentation de K�ekul�e (cf. �gure 1.4), elle ne peut etre

r�ealis�ee que dans des cas relativement simples en utilisant, par exemple, l'ensemble

des cycles pertinents que nous d�e�nirons dans le chapitre 3.

Il faut en�n noter que certaines mol�ecules ne sont pas mod�elisables �a l'aide de

graphes mol�eculaires. La �gure 1.9 montre une structure mol�eculaire dont le graphe

associ�e, constitu�e par un unique cycle, ne donne qu'une bien pauvre repr�esentation

de la complexit�e de la mol�ecule.

Page 27: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

20 Chapitre 1. Graphes en chimie organique

Fig. 1.9 { Une mol�ecule en forme de n�ud (les traits correspondent en r�ealit�e �a des

encha�nements d'atomes).

O

O

OO

OO

O

O

O

N

N

N

NOO

O

Fig. 1.10 { Le catenane (les aretes O {O correspondent �a des cha�nes OCH2CH2O)

Dans la suite de cette th�ese, il nous arrivera fr�equemment de repr�esenter un

graphe mol�eculaire par le dessin de la mol�ecule �a laquelle il est associ�e. La �gure 1.5

nous para�t en e�et bien plus esth�etique que la �gure 1.6 qui ne contient d'ailleurs

pas plus d'informations.

1.4.2 Propri�et�es du graphe mol�eculaire

La premi�ere caract�eristique des graphes mol�eculaires r�eside dans le fait qu'ils

sont de degr�e born�e. Dans le cadre de la chimie organique, ce degr�e ne d�epasse

g�en�eralement pas la valeur 7. On peut meme a�rmer que dans la mesure o�u les

mol�ecules �etudi�ees sont majoritairement compos�ees d'atomes de carbone, le degr�e

moyen des sommets d'un graphe mol�eculaire est tr�es proche de 4.

Page 28: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

1.5. Conclusion 21

OO

O O

O

O O

OC

C

C

C

C

OO

O

O

O

O

O

C

O

O

O

Fig. 1.11 { Un exemple de graphe mol�eculaire non planaire.

La plupart des graphes mol�eculaires sont connexes. Il existe cependant de tr�es

rares exceptions comme la mol�ecule pr�esent�ee dans la �gure 1.10. Il para�t toutefois

raisonnable d'ignorer ces cas particuliers dans les algorithmes manipulant des graphes

mol�eculaires. Ces mol�ecules r�eclament en e�et un traitement bien particulier lors de

la plupart des analyses les concernant. Il faut aussi noter que le graphe mol�eculaire

associ�e au catenane de la �gure 1.10 ne rend pas vraiment compte de la structure de

cette mol�ecule. Ce graphe non connexe, compos�e de deux cycles disjoints, ne peut

pas mod�eliser l'enlacement des cycles qui caract�erise la mol�ecule.

Du point de vue de la planarit�e, on peut dire que presque tous les graphes mol�e-

culaires sont planaires. La mol�ecule de la �gure 1.11 oppose bien sur une exception

�a cette r�egle. Mais il faut dire que la synth�ese de ce type de mol�ecule, en chimie

organique, est tout �a fait exceptionnelle. On peut donc raisonnablement supposer

que tous les graphes mol�eculaires �etudi�es sont planaires.

1.5 Conclusion

Le graphe mol�eculaire n'est pas le seul type de graphe qui peut etre associ�e �a

une mol�ecule. Nous �etudierons dans le chapitre 3 le graphe des cycles pertinents qui

d�ecrit les parties cycliques d'une mol�ecule. On peut �egalement g�en�eraliser un graphe

mol�eculaire en rempla�cant certains types atomiques par des valeurs plus g�en�eriques.

Ce mode de repr�esentation permet de mod�eliser des familles de mol�ecules qui pos-

s�edent des structures identiques mais dont les labels associ�es aux sommets di��erent

l�eg�erement. Nous reviendrons sur ce type de graphe dans les prochains chapitres.

Page 29: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

22 Chapitre 1. Graphes en chimie organique

L'utilisation des graphes est en fait tr�es largement r�epandue en chimie. Bien

que la similitude entre graphe mol�eculaire et mol�ecule soit importante, il ne faut

jamais oublier que la th�eorie des graphes ne permet pas de d�ecrire compl�etement

les structures mol�eculaires. Nous verrons par exemple lors de l'�etude des syst�emes

cycliques (chapitre 3) qu'une mauvaise prise en compte de cette limitation peut

amener certains auteurs �a de vaines recherches. Il est en e�et illusoire de vouloir

retrouver toutes les caract�eristiques d'une mol�ecule dans le graphe qui lui est associ�e.

Les propri�et�es chimiques qui d�ependent de la con�guration tridimensionnelle d'une

mol�ecule ne peuvent g�en�eralement pas appara�tre dans le graphe mol�eculaire.

Si l'on sait tenir compte de ces in�evitables limites, la th�eorie des graphes o�re une

multitude d'outils algorithmiques qui sont particuli�erement bien adapt�es au cadre

de la chimie. A l'inverse, par les exemples concrets qu'ils proposent, les chimistes

soumettent aux informaticiens des probl�emes qui s'inscrivent souvent dans le cadre

de la recherche fondamentale. Nous aurons l'occasion tout au long de cette th�ese, de

constater �a quel point cet �echange peut etre fructueux pour les deux communaut�es.

Nous nous somme e�orc�es dans ce chapitre de d�e�nir les graphes comme un langage

de description des structures mol�eculaires que nous cherchons �a �etudier. Ce langage

devra etre compl�et�e pour pouvoir �enoncer les concepts qui lui sont �etrangers. Nous

nous e�orcerons donc dans les prochains chapitres de compl�eter cette mod�elisation

informatique des mol�ecules.

Page 30: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

23

Chapitre 2

Synth�ese en chimie organique

2.1 Introduction

La synth�ese est, avec l'analyse, l'un des aspects fondamentaux de l'activit�e des

chimistes organiciens. Un probl�eme de synth�ese se pose lorsque l'on veut pr�eparer une

nouvelle mol�ecule ou trouver une voie d'acc�es originale �a une mol�ecule d�ej�a connue.

�Etant donn�e une mol�ecule cible �a pr�eparer, il s'agit de d�eterminer un ensemble de

r�eactifs de d�epart { c'est-�a-dire des produits naturels ou commerciaux disponibles { et

une suite de r�eactions chimiques qui, appliqu�ees �a ces r�eactifs, permettent d'obtenir

la mol�ecule cible. Cet encha�nement de r�eactions constitue un plan de synth�ese qui

peut etre repr�esent�e par un arbre comme le montre la �gure 2.1.

La synth�ese revet une importance toute particuli�ere aussi bien dans le secteur

industriel (pharmacie, agrochimie, alimentation, photographie, �electronique, mat�e-

riaux, etc.) que dans le cadre de la recherche en chimie. Elle permet de r�efuter ou

de valider des th�eories existantes par la pr�eparation de mol�ecules jusque l�a hypoth�e-

tiques (cubane, prismane, etc.). Par ailleurs, la pr�eparation de mol�ecules naturelles

complexes (chlorophylle, st�ero��des, alcalo��des, etc.) permet de d�ecouvrir de nouveaux

r�eactifs et de nouvelles voies de synth�ese d'un int�eret g�en�eral, tout en contribuant

�a l'�emergence de nouvelles connaissances en chimie, notamment sur les m�ecanismes

r�eactionnels.

Page 31: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

24 Chapitre 2. Synth�ese en chimie organique

O

O

O

Réa

ctif

s de

dép

art

Molécule cible

+

+

+O

O

Cl

O

HO O

O

Fig. 2.1 { Un extrait de plan de synth�ese.

La recherche d'un plan de synth�ese est un probl�eme tr�es di�cile qui peut n�eces-

siter le travail d'une �equipe de chimistes durant plusieurs ann�ees. La synth�ese du

Taxol, une substance extraite de l'If du Paci�que et qui poss�ede des propri�et�es anti-

canc�ereuses, a par exemple requis le travail d'une trentaine d'�equipes pendant pr�es

de vingt ans, avant d'aboutir �a un premier r�esultat en 1993 [Holton et al., 1994].

La di�cult�e des probl�emes de synth�ese r�esulte en partie des faiblesses de la th�eorie

de la chimie organique - laquelle est plus apte �a expliquer les r�esultats d'une r�eaction

qu'�a les pr�edire - mais aussi de la complexit�e combinatoire inh�erente �a la recherche

d'un plan de synth�ese. On dispose en e�et de plus de 13 millions de r�eactifs et

de millions de r�eactions chimiques qui se r�epartissent en des dizaines de milliers

de types de r�eactions. Par ailleurs, pour r�ealiser la synth�ese totale d'une mol�ecule

comme le Taxol (�gure 2.2) �a partir de ses �el�ements constitutifs (carbone, hydrog�ene,

oxyg�ene et azote), il faudrait cr�eer successivement les 119 liaisons qui composent cette

mol�ecule. On peut donc th�eoriquement r�ealiser cette synth�ese de 119 ! � 10196 fa�cons

di��erentes, suivant l'ordre choisi. Ces probl�emes d'ordre combinatoire sont d'autant

plus di�ciles �a r�esoudre que l'�evaluation a priori d'une voie de synth�ese reste tr�es

complexe voire impossible. Les crit�eres d'�evaluation d'un plan de synth�ese peuvent

d'ailleurs extremement varier en fonction des motivations du chimiste. Une solution

peut etre bonne d'un point de vue acad�emique, car innovante, mais sans int�eret

industriel parce que trop couteuse.

Page 32: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

2.2. La synth�ese en chimie organique 25

O

O

O

OHO

OHH

O

O

O

O

NH

OH

O

O

O

Fig. 2.2 { La mol�ecule du Taxol.

L'objectif de ce chapitre est de pr�esenter quelques aspects fondamentaux de la

synth�ese en chimie organique, a�n de faciliter la compr�ehension des probl�emes de

synth�ese que nous pourrons �evoquer par la suite. Nous r�ealiserons un rapide �etat de

l'art des principaux syst�emes de synth�ese assist�ee par ordinateur et nous pr�esenterons

la d�emarche g�en�erale employ�ee dans ReSyn.

2.2 La synth�ese en chimie organique

La r�esolution d'un probl�eme de synth�ese comporte deux �etapes : l'�elaboration d'un

plan de synth�ese et son exp�erimentation. Pour �elaborer un plan, on peut utiliser deux

types de raisonnement : le premier est synth�etique et proc�ede par ((cha�nage avant)) 1

en appliquant des r�eactions �a des produits connus pour essayer d'aboutir �a la mo-

l�ecule cible; le second est r�etrosynth�etique et consiste �a rechercher, en ((cha�nage

1. les termes de ((cha�nage avant)) et ((cha�nage arri�ere)) sont issus de travaux en Intelligence

Arti�cielle, notamment dans le cadre des syst�emes de production [Lauri�ere, 1986]. Par exemple,

dans un d�emonstrateur de th�eor�emes, on dispose d'une base de faits et d'un ensemble de r�egles de

d�eduction. Le cha�nage avant consiste �a essayer de produire le th�eor�eme �a d�emontrer en appliquant

r�ecursivement les r�egles de d�eduction aux faits disponibles. �A l'inverse, le cha�nage arri�ere part du

th�eor�eme cible pour essayer d'aboutir �a des faits de la base.

Page 33: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

26 Chapitre 2. Synth�ese en chimie organique

H

O

X

O

O

X

H

O

SensRétrosynthétique

SensSynthétique+ HX

+

+Réaction

Transformation

Fig. 2.3 { Une meme r�eaction consid�er�ee d'un point de vue synth�etique et r�etrosyn-

th�etique.

arri�ere))1, des pr�ecurseurs de la mol�ecule cible jusqu'�a l'obtention de r�eactifs dispo-

nibles. La �gure 2.3 illustre ces deux modes de raisonnement. L'op�eration inverse

d'une r�eaction permettant de passer d'une mol�ecule �a ses pr�ecurseurs est appel�ee :

transformation .

La mod�elisation du raisonnement en synth�ese organique demeure un probl�eme

largement ouvert. Les perspectives de d�eveloppement des syst�emes informatiques

qui �emerg�erent dans les ann�ees 60, ont largement contribu�e �a stimuler la recherche

dans ce domaine. On ne peut manquer de citer E.J. Corey qui fut un des tout

premiers chercheurs �a s'int�eresser �a la formalisation de la synth�ese [Corey, 1967].

Une classi�cation des probl�emes rencontr�es en synth�ese a �et�e propos�ee par [Wipke,

1974] :

1 : ? �! A 2 : B �! ? 3 : B?�! A

Cette formulation tr�es g�en�erale peut etre utilis�ee sous di��erents points de vue

pour lesquels chaque variable d�esigne une mol�ecule, un ensemble de mol�ecule ou

encore un objectif synth�etique. Le premier cas correspond essentiellement �a une d�e-

marche r�etrosynth�etique : on cherche �a d�eterminer un ensemble de r�eactifs et de r�e-

actions permettant de produire la mol�ecule A. Le second cas d�ecrit un raisonnement

synth�etique : �evolution possible d'un ensemble B de r�eactifs, recherche des produits

pouvant etre obtenus �a partir d'une mol�ecule B (r�eutilisation des produits secon-

daires d'une synth�ese), etc. Quant au troisi�eme cas, il se situe �a mi-chemin entre les

Page 34: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

2.2. La synth�ese en chimie organique 27

deux pr�ec�edents dont il peut d�ecrire un protocole de validation : on cherche �a v�eri�er

ou compl�eter une solution obtenue pour un probl�eme de type 1 ou 2.

Dans le cadre d'un mode de raisonnement r�etrosynth�etique, on peut distinguer

trois niveaux d'�elaboration, allant du plus g�en�eral au plus sp�eci�que [Lauren�co et

al., 1990] :

� le niveau strat�egique concerne l'�elaboration d'un plan de construction de la

mol�ecule cible. Il s'agit de d�eterminer un ensemble d'objectifs possibles et d'en

extraire un ou plusieurs sous-ensembles coh�erents. Chaque sous-ensemble doit

etre ensuite ordonn�e pour d�eterminer la s�equence suivant laquelle les objectifs

seront �etudi�es.

� le niveau tactique correspond �a la recherche d'une m�ethode permettant d'at-

teindre un objectif donn�e : recherche des m�ethodes possibles, v�eri�cation de la

pertinence d'une m�ethode dans le contexte �etudi�e, choix des meilleuresm�ethodes

ou encore d�e�nition d'un sous-objectif en l'absence de m�ethodes directes.

� le niveau op�erationnel �etudie les conditions op�eratoires pour l'application

d'une m�ethode : simulation voire exp�erimentation d'une r�eaction, taux de ren-

dement, s�electivit�e de la r�eaction, etc.

Ces trois niveaux ob�eissent par ailleurs �a des contraintes d'ordre politique. Les

crit�eres de s�election utilis�es peuvent, par exemple, extremement varier suivant qu'il

s'agit d'une synth�ese industrielle ou acad�emique. Dans le premier cas, la contrainte

principale est l'innovation. On cherche �a �elaborer un plan plus logique que les pr�e-

c�edents, montrer une nouvelle tactique pour franchir les �etapes cl�es, permettre de

valider ou de r�efuter une th�eorie, etc. Dans le cas d'une synth�ese industrielle, il faut

imp�erativement obtenir la mol�ecule �a synth�etiser; on cherche �a utiliser des produits

de d�epart impos�es par l'abondance; les r�eactions ne peuvent etre employ�ees que si

elles respectent certaines contraintes (rendement, s�ecurit�e, : : : ).

Bien qu'il soit d�ecomposable en di��erents niveaux, le processus d'�elaboration d'un

plan de synth�ese n'est pas pour autant lin�eaire. D'une part, parce qu'il n'y a pas de

fronti�ere bien nette entre deux niveaux successifs. D'autre part, parce qu'il existe

tellement d'impond�erables qu'il faut souvent descendre jusqu'au niveau op�erationnel

pour valider ou invalider les d�ecisions qui ont �et�e prises aux autres niveaux. Cepen-

dant, il est souvent pr�ef�erable d'essayer d'optimiser une �ebauche de plan de synth�ese

Page 35: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

28 Chapitre 2. Synth�ese en chimie organique

�a un niveau g�en�eral avant d'entreprendre une phase d'exp�erimentation [Corey et

Cheng, 1989].

Pour terminer cette rapide pr�esentation de la synth�ese, nous devons parler des

r�eactions chimiques. D'apr�es [Ireland, 1969], suivi par [Hendrickson, 1986; Hendrick-

son, 1990] les r�eactions sont les outils de la synth�ese organique : il y a les ou-

tils de construction (formation de liaisons entre atomes de carbone) et les outils

de ((refonctionnalisation)) (modi�cation de la fonctionnalit�e 2). La construction du

((squelette de la mol�ecule)) (cf. x 4.2.1.1) s'appuie g�en�eralement sur la pr�esence de

groupements fonctionnels qui peuvent etre introduits ou retir�es de la mol�ecule par

le recours �a des refonctionnalisations. L'id�ee de cat�egoriser les r�eactions appara�t

�egalement dans [Corey, 1967] et [Corey et Cheng, 1989] o�u elle est beaucoup plus

d�etaill�ee.

2.3 Quelques syst�emes de synth�ese assist�ee par or-

dinateur

Les premiers syst�emes informatiques d�edi�es �a la chimie organique sont apparus

dans les ann�ees 60 pour g�erer des bases de donn�ees de r�eactions ou de mol�ecules.

Certains d'entre eux permettent aujourd'hui de g�erer des centaines de milliers de

r�eactions et sont largement utilis�es dans les laboratoires de synth�ese [Zas, 1990].

Les syst�emes dits de ((synth�ese assist�ee par ordinateur)) se r�epartissent en deux

cat�egories : les syst�emes de pr�ediction ou de simulation de r�eactions, qui fonctionnent

dans le sens synth�etique, et les syst�emes d'aide �a la conception de plan de synth�ese

qui utilisent g�en�eralement le sens r�etrosynth�etique. Dans la mesure o�u nous n'allons

pas pr�esenter tous ces syst�emes, le lecteur int�eress�e par une �etude plus compl�ete

pourra se r�ef�erer �a [Bador et al., 1992; Ott et Noordik, 1992].

Il existe deux approches di��erentes pour concevoir ces syst�emes d'aide : la pre-

mi�ere, due �a Corey, est essentiellement empirique alors que la seconde est plus for-

2. nous reviendrons sur la notion de fonctionnalit�e dans le paragraphe 4.5. On peut dire qu'une

fonctionnalit�e correspond �a des propri�et�es chimiques li�ees �a la pr�esence d'un motif structural dans le

graphe mol�eculaire. Un tel motif structural est g�en�eralement d�esign�e sous le terme de ((groupement

fonctionnel)).

Page 36: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

2.3. Quelques syst�emes de synth�ese assist�ee par ordinateur 29

melle et correspond �a l'�ecole de Ugi. Cette derni�ere d�emarche repose sur un forma-

lisme math�ematique d�ecrivant les r�eactions chimiques �a l'aide de quelques sch�emas

g�en�eraux qui traduisent les principes fondamentaux de la th�eorie structurale. Il n'y a

donc pas besoin d'utiliser et de maintenir une base de connaissance sur les m�ethodes

de synth�ese. A l'inverse, la d�emarche empirique fait largement appel �a la connais-

sance des experts, aussi bien pour �evaluer les conditions d'application des r�eactions

que pour �elaborer des strat�egies de synth�ese.

L'approche formelle est plus particuli�erement adapt�ee �a la simulation de r�eactions

ou la recherche de r�eactions nouvelles, comme dans le syst�eme EROS [Gasteiger et al.,

1992]. Dans le syst�eme RAIN [Ugi et al., 1994], l'utilisateur dispose d'un ensemble de

r�egles pour d�ecrire les r�eactions et les interm�ediaires permis. Le syst�eme recherche un

ensemble de solutions combinatoirement complet qui respecte les contraintes d�e�nies

par l'utilisateur. La recherche peut etre r�ealis�ee dans le sens synth�etique ou r�etrosyn-

th�etique, ou encore dans les deux sens. Dans ce dernier cas, l'utilisateur fournit un

ensemble de mol�ecules de d�epart et d'arriv�ee, et le syst�eme d�etermine un moyen pour

passer de l'un �a l'autre en respectant le principe de ((distance chimique minimale))3.

Dans le meme ordre d'id�ees, le syst�eme SYNGEN [Hendrickson et Parks, 1992]

permet de construire automatiquement des chemins de synth�ese �a partir d'une mo-

l�ecule cible fournie par l'utilisateur. C'est le premier syst�eme qui fait la distinction

entre le niveau strat�egique et le niveau tactique d'une recherche. Le syst�eme com-

mence par essayer de fragmenter le squelette de la mol�ecule en deux parties, de toutes

les fa�cons possibles et en d�econnectant une liaison (ou deux dans le cas d'un cycle).

Si les fragments obtenus ne correspondent pas �a des r�eactifs disponibles, le processus

est r�eit�er�e. La phase tactique explore les plans g�en�eraux ainsi �etablis en essayant de

trouver des m�ethodes qui r�ealisent les d�econnexions pr�evues et tiennent compte de

la pr�esence des groupements fonctionnels n�eglig�es lors de la phase strat�egique.

Le premier syst�eme de synth�ese bas�e sur une d�emarche empirique, baptis�e OCSS,

fut d�ecrit par [Corey et Wipke, 1969]. Il a donn�e naissance �a deux syst�emes assez

proches : LHASA [Corey et al., 1985] et SECS [Wipke, 1974; Wipke et al., 1977]. De

tous les programmes d'aide �a la synth�ese, LHASA semble etre le plus performant.

3. on cherche �a minimiser les redistributions d'�electrons entre les atomes pour passer d'un en-

semble �a l'autre.

Page 37: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

30 Chapitre 2. Synth�ese en chimie organique

C'est un syst�eme de r�etrosynth�ese interactif qui propose �a l'utilisateur de faire des

choix tactiques et strat�egiques. Les strat�egies sont bas�ees sur la fonctionnalit�e, sur la

topologie (recherche de liaisons strat�egiques dans les syst�emes polycycliques), sur les

transformations les plus importantes que l'on essaie d'appliquer syst�ematiquement

(Diels-Alder, : : : ), sur la st�er�eochimie ou encore sur les produits de d�eparts (recon-

naissance de r�eactifs disponibles pouvant appara�tre dans le graphe mol�eculaire). De

l'avis des auteurs du programme, et apr�es 25 ans de d�eveloppement, LHASA n'est

pas encore assez performant pour devenir un outil indispensable aux chimistes qui

pratiquent la synth�ese. Si les r�esultats au niveau tactique sont relativement int�e-

ressants, le nombre de solutions propos�ees est souvent trop important. Cela oblige

l'utilisateur �a r�ealiser des tris qui sont rendus d'autant plus fastidieux que le syst�eme

n'explique pas ses r�esultats. Le niveau strat�egique est encore trop faible, du fait de

l'anciennet�e de sa conception et de la rigidit�e de son impl�ementation qui empeche

le syst�eme d'�evoluer correctement et rend di�cile la mise �a jour des connaissances.

Les conditions d'application des transformations sont par exemple d�ecrites de fa�con

proc�edurale comme le montre la �gure 2.4

Le syst�eme SYNCHEM [Gelernter et al., 1973; Gelernter et al., 1990] est fond�e

sur des principes similaires mais fonctionne de mani�ere automatique. La recherche de

solutions se fait au moyen d'un algorithme de type A� 4. Le cout du chemin en cours

de d�eveloppement est �evalu�e �a partir du rendement pr�evu et des caract�eristiques

des transformations utilis�ees, auxquels s'ajoute une estimation du parcours restant �a

faire en se basant sur la complexit�e du pr�ecurseur atteint. L'exploration d'un chemin

s'arrete lorsqu'un produit commercial a �et�e engendr�e.

De par la nature combinatoire des probl�emes de synth�ese et en l'absence d'une

th�eorie su�sante pour d�ecrire les strat�egies, les syst�emes de recherche automatique

produisent des r�esultats qui sont g�en�eralement inexploitables. Le programme de Ber-

4. l'algorithme A� [Hart et al., 1968] est un des grands classiques de l'I.A. (cf. [Lauri�ere, 1986]).

On consid�ere le graphe dont les sommets sont les �etats possibles du probl�eme �a r�esoudre et les aretes

d�e�nissent les transitions entre ces �etats. L'algorithmeA� recherche un chemin minimal reliant l'�etat

initial �a un �etat solution, en limitant l'exploration grace �a une fonction heuristique donnant une

minoration de la distance entre l'�etat courant et la solution. Si on cherche la meilleure route reliant

deux villes, la fonction heuristique que l'on emploie naturellement est la distance �a vol d'oiseau.

Page 38: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

2.3. Quelques syst�emes de synth�ese assist�ee par ordinateur 31

nom mn�emonique Aldolisation, par exemple

commentaires bibliogra-

phiques

score initial indique l'int�eret synth�etique de la transformation et varie au cours

de l'application de celle-ci en fonction des conditions structurales ou

r�eactionnelles

r�etron sous-structure cl�e dont la pr�esence dans la mol�ecule cible est n�eces-

saire pour que la transformation soit s�electionn�ee

indications strat�egiques

et/ou tactiques

enquetes de la forme si ... alors ..., elles testent l'environnement de la cible

et �xent les limites d'application de la transformation : rejet ou mo-

di�cation du score (par exemple, si un halog�ene est li�e au carbone

n�2 alors la transformation n'est pas applicable)

conditions r�eaction-

nelles

la pr�esence, dans la structure cible, de groupements fonctionnels sen-

sibles aux conditions r�eactionnelles peut entra�ner un abaissement du

score initial

manipulations actions que le syst�eme doit e�ectuer pour engendrer les pr�ecurseurs

�a partir de la cible (casser la liaison entre les atomes n�1 et 2, etc.)

Fig. 2.4 { description d'une transformation dans le syst�eme LHASA.

sohn [Dogane et al., 1992] est ainsi capable de g�en�erer un arbre de synth�ese compor-

tant des centaines de milliers de pr�ecurseurs.

La principale faiblesse des syst�emes interactifs con�cus selon l'approche empi-

rique r�eside dans leur mode de repr�esentation des connaissances. Les transformations

sont d�ecrites de fa�con proc�edurale �a l'aide d'un langage sp�ecialis�e : CHMTRN pour

LHASA (cf. �gure 2.4) ou ALCHEM pour SECS. L'emploi d'un tel langage rend

di�cile la mise �a jour de la connaissance qui est pourtant indispensable dans toute

d�emarche empirique. En dehors du fait que l'utilisation et la compr�ehension de ces

langages n�ecessite de bonnes notions de programmation, la repr�esentation proc�edu-

rale ne permet pas de traduire les relations structurales qui peuvent exister entre

di��erentes transformations.

Page 39: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

32 Chapitre 2. Synth�ese en chimie organique

2.4 Le syst�eme ReSyn

Un syst�eme d'aide �a la synth�ese doit essayer de remplir plusieurs roles parmi

lesquels : la conservation et la transmission du savoir, ce qui suppose la capacit�e de

g�erer les connaissances n�ecessaires �a l'�elaboration d'un plan de synth�ese; l'acquisition

et la confrontation de connaissances issues de di��erents experts; ou encore l'aide �a

la d�ecouverte par l'examen d'un grand nombre d'hypoth�eses et une recherche syst�e-

matique (control�ee) permettant de mettre en �evidence des d�emarches inhabituelles.

Tout cela suppose l'existence d'un dialogue syst�eme-utilisateur reposant sur des ex-

plications mutuelles des choix ou des hypoth�eses. Si l'avanc�ee actuelle des techniques

informatiques ne permet pas de r�ealiser pleinement cet objectif, il convient n�eanmoins

d'en tenir compte dans l'�elaboration de tout syst�eme.

�A la suite d'une �etude montrant les insu�sances des syst�emes disponibles en

synth�ese assist�ee par ordinateur, la soci�et�e Roussel Uclaf a lanc�e un projet vi-

sant �a explorer les possibilit�es o�ertes par des techniques d'Intelligence Arti�cielle

plus �elabor�ees que celles employ�ees jusqu'alors. Ce projet, qui a d�ebut�e en collabo-

ration avec le Lirmm par l'interm�ediaire de la soci�et�e Framentec-Cognitech, se

poursuit aujourd'hui dans le cadre du GDR TICCO, un groupement de recherche

r�eunissant entre autres des industriels de la chimie et des laboratoires de recherche

en synth�ese organique et informatique. ReSyn est un prototype de syst�eme d'aide

�a la synth�ese qui a �et�e d�evelopp�e au Lirmm 5 en se basant sur les travaux de C.

Lauren�co [Lauren�co, 1985; Lauren�co et al., 1990] et en b�en�e�ciant des r�esultats de

ces collaborations. ReSyn int�egre de nombreuses connaissances expertes dont celles

qui ont �et�e apport�ees par E. Toromano�, un sp�ecialiste reconnu du domaine de la

synth�ese organique.

Le premier int�eret de ReSyn est d'avoir �et�e �elabor�e �a partir de nombreuses

connaissances expertes en chimie, provenant de di��erentes origines, aussi bien uni-

versitaires qu'industrielles. L'ambition du projet ReSyn n'est pas de concevoir un

syst�eme de synth�ese automatique mais simplement d'apporter une aide lors de l'�ela-

boration d'un plan de synth�ese. Pour ce faire, il �etait primordial de faciliter le dia-

logue entre l'utilisateur et le syst�eme, en choisissant un mode de repr�esentation des

5. �a l'exception de l'�editeur de mol�ecules dont la version initiale a �et�e con�cue par la soci�et�e

Framentec.

Page 40: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

2.4. Le syst�eme ReSyn 33

HO

Objectif

casser

doubler

Contexte

O

Minimal

O

x 2

HOO

x 2

OO

H

O

OO

x 2

+

+Rétron

transformation

réaction

O OH

OH

Rétron

Fig. 2.5 { Une r�eaction d'aldolisation et la transformation correspondante.

connaissances qui soit proche du langage de description employ�e par un chimiste.

C'est pourquoi, la majeure partie des connaissances manipul�ees par ReSyn sont des

graphes mol�eculaires. La deuxi�eme pr�eoccupation qui a guid�e l'�elaboration deReSyn

concerne l'explication syst�ematique des d�ecisions prises par le syst�eme, qu'elles soient

positives ou n�egatives (possibilit�e ou non d'appliquer une transformation, etc.).

2.4.1 Transformations, objectifs et contextes

Commenous l'avons d�ej�a dit, une transformation peut etre vue comme l'op�eration

inverse d'une r�eaction. La transformation ne concerne qu'une partie de la mol�ecule

qui correspond au ((r�etron)) de la transformation (cf. �gure 2.5). Le r�etron d�e�nit la

sous-structure minimale caract�erisant la transformation.

Dans le cadre de ReSyn, nous avons choisi de distinguer deux parties du r�etron :

� l'objectif de la transformation est d�e�ni par la sous-structure connexe minimale

contenant l'ensemble des liaisons modi��ees par la transformation,

Page 41: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

34 Chapitre 2. Synth�ese en chimie organique

favorable

Objectif

Contexte

défavorableContexte

équivalentContexte

Contexteminimal

très

défavorableContexte

favorableContexte

favorable

H

O

O

H

O

HO

O OH

O OH

O OH

HO

x 2

O

Fig. 2.6 { Hi�erarchie de contextes favorables ou d�efavorables �a l'application d'une

transformation.

� le contexte minimal favorable �a l'application de la transformation correspond

g�en�eralement au r�etron. Il contient l'objectif de la transformation et d�e�nit

l'environnement minimal qui autorise l'application de la transformation. Ce

contexte minimal favorable peut etre �equivalent �a l'objectif lorsqu'il n'y a au-

cune contrainte pour appliquer la transformation. On parle alors de contexte

�equivalent �a l'objectif ;

Tout comme un certain environnement est parfois n�ecessaire pour l'application

d'une transformation, il peut exister des environnements d�efavorables. On d�e�nit

ainsi un ensemble de contextes favorables ou d�efavorables �a l'application de la trans-

formation. Ces contextes s'organisent de fa�con hi�erarchique suivant une relation de

sp�ecialisation li�ee �a la relation d'((inclusion)) de sous-structures, c'est-�a-dire, la rela-

tion de sous-graphe partiel (cf. �gure 2.6). Un contexte favorable peut etre masqu�e

par un contexte d�efavorable plus sp�eci�que que lui. De meme, un contexte d�efavo-

Page 42: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

2.4. Le syst�eme ReSyn 35

H

x 2

H

x 2

O

O

O

x 2

OH

OH

x 2

O

x 2

Fig. 2.7 { Hi�erarchie des objectifs de transformations.

rable peut etre masqu�e par un contexte plus sp�eci�que qui est favorable. Il arrive

parfois qu'un contexte favorable soit masqu�e par un autre contexte favorable. Dans ce

cas, on retient le contexte le plus sp�eci�que dans la mesure o�u il d�etient l'information

la mieux adapt�ee au cas �etudi�e.

Dans le chapitre 6, nous reviendrons plus en d�etails sur cette hi�erarchie de

contextes (x 6.4) et sur le raisonnement par ((classi�cation)) qui est utilis�e pour la par-

courir. Ce mode de repr�esentation facilite l'ajout d'une nouvelle information concer-

nant les conditions d'utilisation d'une transformation. Il su�t en e�et d'introduire

une nouvelle structure dans la hi�erarchie des contextes. L'explication de l'�echec ou

du succ�es d'une tentative d'application de transformation peut etre r�ealis�ee en mon-

trant la sous-structure d�e�nissant l'environnement correspondant. Chaque contexte

dispose en outre d'informations suppl�ementaires relatives �a l'explication (r�ef�erences

bibliographiques, �evaluation de la ((rentabilit�e)) de la transformation pour le contexte

consid�er�e, etc.).

Si une transformation est li�ee �a un objectif unique, plusieurs transformations

peuvent r�ealiser un meme objectif. De plus, un objectifO1 donn�e peut etre r�ealis�e par

une transformation dont l'objectif O2 int�egre O1 tout en r�ealisant des modi�cations

suppl�ementaires. L'ensemble des objectifs est ainsi organis�e sous forme hi�erarchique

de fa�con similaire �a la hi�erarchie de contexte (cf. �gure 2.7).

Page 43: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

36 Chapitre 2. Synth�ese en chimie organique

transformationsapplicables

contextesdéfavorables

contextesfavorables

ensembled’objectifs

Choix d’un objectif

objectifsélémentaires

Règles destratégie

plus spécifiquesRecherche des objectifs

Reconnaissance etordonnancement des

objectifs élémentaires

réprésentationsabstraites

Perception

objectif initial

précurseursmolécule cible

interditestransformations

Application des transformationsà la molecule

des contextes qui sont favorablesou défavorables à l’application d’une

transformation réalisant l’objectif

Recherche, pour chaque objectif,

Fig. 2.8 { Sch�ema g�en�eral du fonctionnement de ReSyn.

2.4.2 Fonctionnement g�en�eral de ReSyn

Le sch�ema de la �gure 2.8 r�esume le fonctionnement g�en�eral de ReSyn. La pre-

mi�ere �etape consiste �a analyser le graphe mol�eculaire de la cible propos�ee par l'utili-

sateur, a�n d'en percevoir les propri�et�es caract�eristiques. Nous reviendrons sur cette

�etape de perception dans les chapitres 3 et 4. Cette analyse de la mol�ecule doit per-

mettre d'�elaborer une strat�egie de synth�ese. Dans l'�etat actuel de ReSyn, l'aspect

strat�egique reste cependant tr�es rudimentaire. Il se limite �a l'�evaluation de l'impor-

tance strat�egique d'une liaison en se basant sur la topologie (cycles, liens de cycles,

etc.), sur les groupements fonctionnels ou sur la centralit�e des liaisons. Ces crit�eres

permettent de classer un ensemble d'objectifs dits ((�el�ementaires)) qui correspondent

chacun �a une liaison de la mol�ecule. Des m�ethodes de recherche syst�ematique du

r�etron des transformations les plus importantes (Diels-Alder, Claisen, etc.) sont �ega-

Page 44: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

2.5. Conclusion 37

lement mises en �uvre. Dans les deux cas, l'utilisateur choisit l'objectif qui lui para�t

le plus prometteur. La troisi�eme phase consiste alors �a rechercher une transformation

r�ealisant cet objectif.

On commence par d�eterminer tous les objectifs plus sp�eci�ques que l'objectif

initialement choisi. On obtient un ensemble d'objectifs dont les transformations as-

soci�ees r�ealisent au moins cet objectif initial. Pour chacune des transformations as-

soci�ees �a un de ces objectifs sp�eci�ques, on cherche le contexte le plus sp�eci�que qui

int�egre cet objectif. Si ce contexte est d�efavorable, la transformation est rejet�ee et le

syst�eme peut utiliser ce contexte pour justi�er sa d�ecision. Si le contexte est favo-

rable, la transformation est appliqu�ee au graphe mol�eculaire cible, a�n d'engendrer

un ou plusieurs pr�ecurseurs. Le processus g�en�eral peut alors etre r�eit�er�e �a partir de

ces pr�ecurseurs. Une base de donn�ee de r�eactifs disponibles permet de d�eterminer si

un pr�ecurseur constitue un produit de d�epart.

Toutes les �etapes de cette recherche sont regroup�ees au sein d'un arbre comme

celui pr�esent�e dans la �gure 2.9. La mol�ecule cible initiale constitue la racine de

cet arbre et les autres n�uds d�ecrivent les diverses voies de synth�ese qui ont �et�e

envisag�ees. L'utilisateur peut acc�eder �a toutes ces informations et choisir le chemin

de synth�ese dont il d�esire poursuivre l'�etude.

2.5 Conclusion

Ce chapitre nous a permis de pr�esenter bri�evement la synth�ese en chimie orga-

nique. Comme on a pu le constater, ce domaine semble constituer un excellent champ

d'exp�erimentation pour la recherche en informatique. La complexit�e des probl�emes

rencontr�es est un v�eritable d�e� �a l'algorithmique. L'�etendue des connaissances ma-

nipul�ees, leur organisation en de multiples hi�erarchies et les faiblesses de certaines

th�eories du domaine, constituent autant de n�uds de complexit�e pour l'acquisition

et la repr�esentation de connaissances, sans parler du raisonnement. D�es lors, on ne

s'�etonnera pas de l'insu�sance des syst�emes actuels de synth�ese assist�ee que nous

avons �evoqu�es dans ce chapitre. On comprendra �egalement que l'ambition du sys-

t�eme ReSyn, d�evelopp�e en grande partie dans le cadre de cette th�ese, ne soit pas

de construire des chemins de synth�ese mais simplement d'aider un chimiste dans la

Page 45: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

38 Chapitre 2. Synth�ese en chimie organique

Précurseur

Objectif

Règle de

Molécule

StratégieSpécifiqueObjectif

Élémentaire

Contexte Transformation

Cible

Fig. 2.9 { Un extrait de l'arbre de r�etrosynth�ese pouvant etre construit lors de l'�etude

de l'acide chrysanth�emique.

Page 46: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

2.5. Conclusion 39

r�ealisation de cette tache. Dans les deux prochains chapitres, nous exposerons plus

en d�etail les algorithmes permettant de percevoir les propri�et�es structurales de la

mol�ecule cible, a�n d'�elaborer des strat�egies de synth�ese. Cet aspect strat�egique de

la synth�ese reste, comme dans tous les syst�emes de synth�ese assist�ee, la partie de

ReSyn qui doit encore etre la plus d�evelopp�ee. Nous reviendrons sur ce point dans

le chapitre 5. Quant au niveau tactique, il repose sur les concepts d'objectif et de

contexte que nous avons d�e�nis. Les hi�erarchies de graphes qui leur sont associ�ees

facilitent la mise �a jour de la connaissance et la recherche de transformations ap-

plicables, en utilisant un raisonnement par classi�cation qui sera pr�esent�e dans le

chapitre 6.

Page 47: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

40 Chapitre 2. Synth�ese en chimie organique

Page 48: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

41

Chapitre 3

Histoires de cycles

3.1 Introduction

Si l'�etude des cycles est une vieille histoire, elle n'est certainement pas encore

termin�ee. Il su�t de s'int�eresser d'assez pr�es aux propri�et�es d'un graphe pour que

resurgisse in�evitablement cette notion fondamentale. D'ailleurs, si tous les graphes

�etaient des arbres, la plupart des probl�emes d'algorithmique seraient d�ej�a r�esolus de

fa�con e�cace. Mais les cycles existent et nous sommes condamn�es �a les prendre en

compte pour �eviter, autant que faire se peut, de tourner en rond.

En chimie organique, les cycles constituent un �el�ement essentiel des structures

mol�eculaires. En r�eduisant le degr�e de libert�e des atomes, ils in uencent le niveau

�energ�etique des mol�ecules et contribuent �a l'�emergence de propri�et�es fondamentales

qu'elles soient physiques, chimiques ou biologiques. Ils conditionnent ainsi le choix

des strat�egies et des tactiques employ�ees pour synth�etiser ces mol�ecules. On com-

prend alors pourquoi toute mod�elisation de la synth�ese en chimie organique doit tenir

compte des syst�emes cycliques pr�esents dans la structure mol�eculaire. Cette �etude des

cycles est d'ailleurs indispensable �a tout syst�eme informatique d'aide en chimie : syn-

th�ese assist�ee, simulation de r�eactions, mod�elisation mol�eculaire, construction d'un

nom de nomenclature �a partir d'une formule structurale, etc.

Page 49: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

42 Chapitre 3. Histoires de cycles

Fig. 3.1 { La mol�ecule du pagodane.

Un rapide parcours des bases de donn�ees chimiques montre qu'un bon nombre

de mol�ecules poss�edent des syst�emes cycliques relativement simples. Mais ce n'est

�evidemment pas toujours le cas. Les mol�ecules les plus di�ciles �a synth�etiser sont

souvent celles qui poss�edent un noyau cyclique particuli�erement �eto��e. Le pagodane,

repr�esent�e par la �gure 3.1, donne ainsi une id�ee de la complexit�e des syst�emes

cycliques que l'on peut rencontrer.

Ce chapitre est donc enti�erement consacr�e �a l'�etude des cycles dans un graphe, en

se focalisant plus particuli�erement sur le domaine de la chimie organique. Le nombre

d'articles consacr�es aux cycles �etant particuli�erement important, l'�etat de l'art que

nous allons dresser ne pouvait etre que partiel (et donc un tantinet partial). Qu'il

s'agisse de publications issues de la th�eorie des graphes ou de l'informatique chimique,

nous ne retiendrons que les articles qui nous paraissent introduire des solutions ef-

�caces ou particuli�erement �el�egantes. Beaucoup de probl�emes ont �et�e in�egalement

trait�es par l'une ou l'autre de ces deux communaut�es de chercheurs. Notre �etat de

l'art pr�esentera donc les publications importantes sans se soucier d'une quelconque

parit�e entre ces deux domaines. Pr�ecisons en�n que le lecteur int�eress�e par une �etude

presque exhaustive des algorithmes li�es aux cycles en chimie, pourra se r�ef�erer �a

[Downs et al., 1989a]. Cet article pr�esente une bibliographie plus compl�ete bien que

comportant quelques erreurs d'analyse en complexit�e plus ou moins importantes.

Ce chapitre commence par rappeler les d�e�nitions d'espace vectoriel associ�e aux

cycles, de base fondamentale et de base de taille minimale. Nous nous int�eresse-

rons plus particuli�erement �a la recherche d'une base minimale en pr�esentant une

Page 50: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.2. L'espace vectoriel C des cycles �el�ementaires 43

succession de m�ethodes de calcul aboutissant �a l'algorithme polynomial publi�e dans

[Horton, 1987]. Nous proposerons une nouvelle version de cet algorithme permet-

tant d'en r�eduire la complexit�e (c.-�a-d. le temps de calcul). Nous traiterons ensuite

du probl�eme de la recherche d'un ensemble de cycles chimiquement valides. Nous

pr�esenterons diverses notions de bases �etendues en montrant en quoi ces d�e�nitions

ne nous semblent pas satisfaisantes. Nous introduirons alors une notion originale de

cycle pertinent qui nous para�t bien adapt�ee au domaine de la chimie. Nous pro-

poserons un algorithme polynomial permettant de calculer cet ensemble de cycles.

Quant �a la derni�ere partie de ce chapitre, elle est consacr�ee �a la d�etermination de

l'arrangement relatif des cycles �a l'int�erieur d'un syst�eme cyclique. Nous d�e�nirons

�a ce sujet le graphe des cycles pertinents qui est utilis�e dans ReSyn pour d�ecrire les

parties cycliques d'une mol�ecule.

3.2 L'espace vectoriel C des cycles �el�ementaires

Si la litt�erature concernant les cycles d'un graphe est particuli�erement riche, c'est

peut-etre parce qu'ils se pretent tr�es bien �a une analyse formelle. On peut en e�et

d�e�nir un espace vectoriel sur l'ensemble des cycles d'un graphe. Cet espace vectoriel

introduit une notion de base de cycles qui o�re une repr�esentation concise du syst�eme

cyclique auquel elle est associ�ee. L'ensemble des cycles �el�ementaires d'un graphe

intervient �egalement dans la d�e�nition des matro��des graphiques [Tutte, 1960].

3.2.1 D�e�nition de l'espace vectoriel C

En consid�erant un cycle comme un ensemble d'aretes, il est facile de d�e�nir l'op�e-

rateur d'addition relatif �a deux cycles par l'union disjointe de leurs aretes :

8 C1 et C2 deux cycles de G; C1 + C2 = (C1 [ C2) n (C1 \ C2)

On remarquera ais�ement que la somme de deux cycles �el�ementaires ne constitue pas

toujours un cycle �el�ementaire (voir C1+C2 dans la �gure 3.2). Par contre, il est int�e-

ressant de noter que tout cycle est la somme de cycles �el�ementaires sans aretes com-

munes. Cette d�ecomposition s'obtient simplement en parcourant la s�equence d'aretes

du cycle et en cr�eant un nouveau cycle �el�ementaire chaque fois que l'on atteint un

Page 51: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

44 Chapitre 3. Histoires de cycles

G C3C1 C2

C1 + C2 + C3C1 + C2

Fig. 3.2 { Quelques exemples de sommes de cycles

sommet d�ej�a travers�e. On obtient ainsi un ensemble de cycles �el�ementaires aux aretes

disjointes.

En faisant la somme de deux cycles on n'obtient pas toujours un cycle mais

parfois un sous-graphe non-connexe (par exempleC1+C2+C3). Il est donc n�ecessaire

d'�etendre l'ensemble initial des cycles si l'on cherche �a d�e�nir une structure d'espace

vectoriel.

d�e�nition : Soit C l'ensemble des sous-graphes partiels de G dont tous les sommets

sont de degr�e pair .

On v�eri�era ais�ement que C correspond �a l'ensemble des cycles clos par l'op�erateur

d'addition.

Nous pouvons maintenant d�e�nir une structure de groupe commutatif ( C ;+) :

� op�erateur : + (op�eration interne, associative et commutative)

� �el�ement neutre : ?

� inverse : chaque �el�ement est son inverse

Il s'en suit une structure d'espace vectoriel ( C ;+ ; : ) d�e�nie sur le corps des

bool�eens Z=2Z

o�u :

8 C 2 C; 0 � C = ? et 1 � C = C

Page 52: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.2. L'espace vectoriel C des cycles �el�ementaires 45

Cet espace vectoriel est en fait un sous espace de f0; 1gm o�u m d�esigne le nombre

d'aretes du graphe. En e�et, tout cycle �el�ementaire C peut etre repr�esent�e sous la

forme d'un vecteur de f0; 1gm tel que C[j] = 1 ssi C contient la ji�eme arete du graphe.

Nous verrons par la suite que cette repr�esentation des cycles sous forme de vecteurs

est �a l'origine de nombreux algorithmes manipulant des matrices bool�eennes.

Rappelons, �a titre indicatif, que cette d�e�nition de C peut etre �etendue aux

graphes orient�es en utilisant les vecteurs de Rm. On montre alors que l'espace en-

gendr�e par les cycles �el�ementaires et celui associ�e aux cocycles du graphe sont deux

sous-espaces suppl�ementaires (voir [Berge, 1973]). Un cocycle de G = (X;E) est un

ensemble d'arcs !(A) d�e�ni �a partir d'un sous-ensemble A de X et contenant tous

les arcs qui ont une seule extr�emit�e dans A (mais pas les deux).

En dehors de son aspect purement formel, la notion d'espace vectoriel associ�e aux

cycles permet d'obtenir une repr�esentation concise de l'ensemble des cycles. Il su�t

en e�et de trouver une base de cycles, c'est-�a-dire un ensemble de cycles �a la fois

libre et g�en�erateur de C.

3.2.2 Dimension de C : un peu d'histoire

Pour d�eterminer le nombre de cycles contenus dans toute base de C, on est amen�e

�a calculer la dimension de l'espace vectoriel associ�e aux cycles. Cette valeur est

souvent appel�ee nombre cyclomatique et not�ee 1 par le symbole �. La formule

utilis�ee pour d�eterminer le nombre cyclomatique a une longue et riche histoire. En

parcourant divers articles consacr�es aux cycles, on ne peut manquer de s'�etonner de

la diversit�e des citations utilis�ees pour r�ef�erencer le mode de calcul de ce nombre.

Nous allons donc essayer de faire le point sur ces d�e�nitions �equivalentes.

La plus vieille r�ef�erence utilis�ee remonte �a [Euler, 1752] dont est extraite la c�el�ebre

formule permettant de calculer le nombre de faces d'un poly�edre : n � m + f = 2

(o�u f repr�esente le nombre de faces). Le nombre minimal de cycles permettant de

d�ecrire C est alors �egal �a f � 1 (il su�t de n�egliger la face ext�erieure).

Dans son m�emoire relatif aux poly�edres [Cauchy, 1813], Cauchy s'est attach�e �a

g�en�eraliser le th�eor�eme d'Euler et �a en donner, de ce fait, une nouvelle d�emonstration.

1. Cette notation ne fait pas l'unanimit�e. La lettre � est parfois utilis�ee.

Page 53: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

46 Chapitre 3. Histoires de cycles

De ce nouveau th�eor�eme 2 l'auteur d�eduit que le nombre de polygones contenus dans

la projection planaire d'un poly�edre est �egal �a : m� n+ 1.

Dans les articles relatifs �a la chimie, c'est la m�ethode propos�ee par Fr�erejacque qui

est le plus souvent cit�ee sous la forme de ce que les chimistes nomment : le nombre de

Fr�erejacque. Dans son article [Fr�erejacque, 1939], surtout consacr�e �a un concept assez

obscur baptis�e (( condensation d'une mol�ecule )), l'auteur ne fait allusion aux cycles

que par cette simple phrase : ((une formule plane contient autant de cycles qu'il faut

faire d'ouvertures de cha�nes pour transformer cette formule en une formule �a cha�ne

lin�eaire )).

Cette notion d'ouverture de cha�nes fait bien �evidemment penser au concept

d'arbre recouvrant. Nous verrons dans le paragraphe 3.3.1 que la taille de l'ensemble

fondamental de cycles associ�e �a un arbre recouvrant est �egale au nombre cycloma-

tique, ce qui constitue un autre mode de calcul.

Notons en�n que la d�etermination du nombre cyclomatique ne semble pas encore

d�elaiss�ee en chimie, puisque r�ecemment [Elk, 1984] a donn�e une nouvelle formule 3

en notant, tout de meme, sa ressemblance avec celle d'Euler.

3.2.3 Composantes 2-connexes

La notion de composante 2-connexe, que nous avons �evoqu�ee dans le paragraphe 1.2,

permet d'optimiser consid�erablement l'�etude de l'espace vectoriel associ�e aux cycles.

Pour trouver une base de C, il su�t de rechercher une base pour chaque espace

vectoriel de cycles associ�e �a une composante 2-connexe du graphe. En e�et, consid�e-

rons l'ensemble G1; :::; Gk des sous-graphes associ�es aux k composantes 2-connexes

du graphe G. Notons Ci l'espace vectoriel des cycles associ�e au sous-graphe Gi. Si

pour tout i 2 1::k, Bi est une base de Ci, alors l'ensemble B =Si21::k Bi est une base

de C. Cette propri�et�e est li�ee au fait que l'ensemble des Ci constitue un ensemble de

2. Le th�eor�eme de Cauchy :

((Si l'on d�ecompose un poly�edre en tant d'autres que l'on voudra, en prenant �a volont�e dans l'in-

t�erieur de nouveaux sommets; que l'on repr�esente par P le nombre des nouveaux poly�edres ainsi

form�es, par S le nombre total de sommets, y compris ceux du premier poly�edre, par F le nombre

total de faces, et par A le nombre total d'aretes, on aura : S + F = A+ P + 1 ))

3. Le nombre � de cycles est donn�e par la formule : 1 + 1

2

Px2X (d(x) � 2) qui est �evidemment

�egale �a m � n+ 1.

Page 54: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.2. L'espace vectoriel C des cycles �el�ementaires 47

C = [a,b,c,d,e,f,g,h,i,j,k,l,m,h,n,o,p,d,q,r,a]

C = [a,b,c,d,q,r,a] + [d,e,f,g,h,n,o,p,d]

+ [h,i,j,k,l,m,h]

a

cb

r q p o n m l

k

ji

h

gfe

d

G2 G3G1

Fig. 3.3 { Tout cycle est d�ecomposable en autant de cycles qu'il traverse de compo-

santes 2-connexes.

sous-espaces suppl�ementaires de C. Si C 2 C est un cycle traversant plusieurs compo-

santes 2-connexes, il est d�ecomposable en autant de cycles (sans aretes communes)

qu'il y a de composantes (cf. �gure 3.3). Par ailleurs, les espaces vectoriels associ�es �a

deux composantes sont n�ecessairement disjoints puisque les cycles qui les composent

ne partagent aucune arete.

La notion de composante 2-connexe n'est g�en�eralement pas utilis�ee dans les ar-

ticles de chimie (�a l'exception de [Fan et al., 1993], qui emploie une notion de ((block ))

�equivalente mais calcul�ee �a l'aide d'un algorithme tr�es lourd). Pourtant, cette d�ecom-

position du graphe, calculable en temps lin�eaire (voir [Tarjan, 1972]), permet de sim-

pli�er l'�etude des cycles par d�ecomposition du probl�eme en plusieurs recherches plus

simples. Cette r�eduction est d'autant plus int�eressante que les graphes mol�eculaires

sont ((peu li�es)).

La seule simpli�cation parfois employ�ee consiste �a (( e�euiller )) la mol�ecule en

�eliminant r�ecursivement les sommets de degr�e 1, comme le font [Roos-Kozel et Jor-

gensen, 1981] et [Leach et al., 1990]. Dans le meme ordre d'id�ee, [Baumer et al.,

1991] construit un graphe (( �ecras�e )) 4 o�u les sommets de degr�e 1 et 2 sont �elimin�es et

m�emoris�es (un sommet de degr�e 2 �etant remplac�e par une arete reliant ses deux voi-

sins). La recherche des cycles se fait alors sur le graphe compact�e ainsi obtenu. Cette

technique, permettant d'optimiser les parcours de graphes, se trouve in�evitablement

confront�ee au probl�eme de l'extension des cycles compacts ainsi trouv�es. L'e�cacit�e

de la suppression des sommets de degr�e 2 reste ainsi �a d�emontrer, surtout lorsque le

crit�ere de s�election des cycles est li�e �a la longueur des cha�nes parcourues.

4. traduction libre de (( crunched graph ))

Page 55: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

48 Chapitre 3. Histoires de cycles

3.3 Bases fondamentales de cycles

Parmi les types de bases de cycles les plus commun�ement utilis�es, la notion de

base fondamentale occupe une place importante. Nous allons donc �etudier ce concept

en pr�esentant deux d�e�nitions di��erentes d'une base fondamentale. La premi�ere et la

plus courante est due �a [Kirchho�, 1847] alors que la seconde repose sur les travaux

de [Whitney, 1935].

3.3.1 Ensemble fondamental de cycles associ�e �a un arbre

recouvrant

Le premier algorithme de d�etermination d'une base de C est du �a [Kirchho�, 1847]

qui a introduit la notion de base fondamentale de cycles. Cette base correspond �a

l'ensemble fondamental de cycles associ�e �a un arbre recouvrant . Rappe-

lons qu'un arbre recouvrant T = (X;E0) d'un graphe G = (X;E) divise l'ensemble

E des aretes de G en deux parties : les aretes appartenant �a l'arbre et celles qui

constituent des aretes de fermeture de cycle. Dans la suite de ce paragraphe, nous

noterons E n E0 ce second ensemble.

En ajoutant une arete quelconque de l'ensemble E nE0 �a l'arbre T , on obtient un

(et un seul) cycle fondamental . L'ensemble des jE nE0j = m� (n� 1) = � cycles

ainsi engendr�es constitue une base fondamentale de l'espace vectoriel C associ�e �a G.

Cet ensemble est libre puisque chaque cycle ne contient qu'une arete de E nE0. Nous

pouvons aussi montrer que cet ensemble est g�en�erateur de C :

Soit C un cycle de C et a1; a2; :::ak les aretes de C qui n'appartiennent

pas �a l'arbre recouvrant. Consid�erons le cycle C 0 = C1 + C2 + ::: + Ck

o�u Ci d�esigne le cycle fondamental associ�e �a l'arete ai. La somme C +C 0

est un cycle ou une union de cycles disjoints. De plus, C + C 0 ne peut

contenir que des aretes de l'arbre recouvrant. On en d�eduit C + C 0 = ?

d'o�u C = C1 + C2 + :::+ Ck 2

Le probl�eme de la recherche d'une base fondamentale a �et�e abondamment trait�e.

Citons par exemple [Welch, 1966; Gibbs, 1969; Paton, 1969]. Les algorithmes pr�esen-

t�es dans ces articles manipulent des matrices bool�eennes de taille n�m ou n�n. Les

Page 56: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.3. Bases fondamentales de cycles 49

G T

Fig. 3.4 { Un exemple de base fondamentale associ�ee �a un arbre recouvrant

principales di��erences qui les caract�erisent reposent principalement sur des probl�emes

d'optimisation de l'espace m�emoire requis.

Plus r�ecemment, [Syslo, 1979] et [Cribb et al., 1981] ont pr�esent�e une caract�eri-

sation des bases fondamentales d'un graphe. Soit B une base de cycles associ�ee au

graphe 2-connexe G = (X;E). On peut r�esumer l'ensemble de ces r�esultats en disant

que les propositions suivantes sont �equivalentes :

(1) B est une base fondamentale relativement �a un arbre recouvrant T

(2) B ne contient aucun cycle dont toutes les aretes appartiennent �a

d'autres cycles de B

(3) Si Gk est le sous-graphe partiel de G engendr�e par un sous-ensemble

de B contenant k cycles, Alors le nombre cyclomatique de Gk est �egal �a k.

3.3.2 Autre notion de base fondamentale

La notion de ((base fondamentale )) est parfois employ�ee avec un sens di��erent

de celui relatif �a un arbre recouvrant. Mais cette autre d�e�nition n'a pas vraiment

d'int�eret dans le cadre de l'�etude des cycles en chimie. Il para�t cependant n�ecessaire

d'en exposer le principe a�n d'�eviter toute confusion �eventuelle.

D'apr�es cette d�e�nition, introduite par [Whitney, 1935], une base B = fC1; :::; C�g

est fondamentale s'il existe un ordonnancement � des �el�ements de B tel que :

8j; 2 � j � �; C�(j) nj�1[i=1

C�(i) 6= ?

Page 57: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

50 Chapitre 3. Histoires de cycles

G

C1 C2 C3 C4

2

1B

B

Fig. 3.5 { La base B1 est fondamentale au sens de [Whitney, 1935] (suivant l'ordre

1; 2; 3; 4, les aretes n'appartenant pas aux cycles pr�ec�edents sont dessin�ees en gras).

Cette propri�et�e signi�e qu'il existe un ordonnancement de B pour lequel chaque cycle

poss�ede au moins une arete qui n'appartient pas aux cycles pr�ec�edents. Par exemple,

pour la base B1 de la �gure 3.5, il su�t de choisir l'ordre 1; 2; 3; 4 (ou 1; 3; 2; 4 ou

2; 1; 3; 4 ou 3; 1; 2; 4). Par contre, quel que soit l'ordre utilis�e pour la base B2, il ne

v�eri�e pas la propri�et�e pr�ec�edente. Cette base n'est donc pas fondamentale au sens

de Whitney.

En se basant sur cette d�e�nition, Hartvigsen et Zemel ont propos�e un algorithme

permettant de d�eterminer si une base de cycles est fondamentale (voir [Hartvigsen et

Zemel, 1989]). Cette nouvelle notion est plus g�en�erale que la pr�ec�edente puisque toute

base fondamentale associ�ee �a un arbre recouvrant est n�ecessairement fondamentale

au sens de la d�e�nition de Whitney. �A l'inverse, une base fondamentale au sens de

Whitney ne peut pas toujours etre associ�ee �a un arbre recouvrant. Par exemple, pour

la base B1 de la �gure 3.5, toutes les aretes du cycle C1 appartiennent �a au moins

un autre cycle de la base. D'apr�es la proposition (2) du paragraphe pr�ec�edent, B1 ne

peut etre associ�ee �a aucun arbre recouvrant.

D'autres caract�erisations des bases de cycles ont �et�e propos�ees par [Hartvigsen et

Mardon, 1991] :

� B est ((Block Expanding )) relativement �a � si 8j 2 f1::�g;Sji=1 C�(i) est un

graphe 2-connexe.

� B k-recouvrante si B recouvre au moins k fois chaque arete du graphe.

Page 58: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.4. Bases de cycles de taille minimale 51

Les auteurs de cet article se sont ensuite attach�es �a comparer ces diverses carac-

t�erisations en montrant en quoi elles sont, ou non, compatibles entre elles.

Dans le meme ordre d'id�ees, citons en�n la conjecture de [Dixon et Goodman,

1976], r�efut�ee par [Syslo, 1979]. Elle supposait que si B = fCigi2I est une base

fondamentale associ�ee �a un arbre recouvrant et C un cycle �egal �a la somme des

Cj pour j 2 J � I, on pouvait r�eordonner l'ensemble des Cj de fa�con �a ce que

8i 2 1::(jJ j � 1); C1 + :::+ Ci soit un cycle dont l'intersection avec Ci+1 n'est pas

nulle. Cette jolie propri�et�e, plus forte que la notion de base fondamentale au sens de

Whitney, n'est cependant pas vraie.

3.4 Bases de cycles de taille minimale

Si le nombre de cycles contenus dans une base est �x�e par le nombre cyclomatique,

il n'en va pas de meme de la taille de la base d�e�nie par la somme des longueurs

des cycles qu'elle contient. Dans la mesure o�u une base est cens�ee d�ecrire de fa�con

r�eduite la totalit�e de l'espace vectoriel des cycles, il semble assez naturel d'avoir

cherch�e �a d�eterminer une base qui soit la plus petite possible.

3.4.1 Base fondamentale de taille minimale

En ce qui concerne les bases fondamentales, le probl�eme consiste �a trouver un

arbre recouvrant qui minimise la taille de l'ensemble fondamental de cycles qui lui

est associ�e.

Nous n'allons pas exposer ici tous les algorithmes qui vont dans ce sens. Nous

nous contenterons d'�evoquer les travaux de [Deo et al., 1982] qui montrent que ce

probl�eme est NP-Complet. Les auteurs de cet article ont plus pr�ecis�ement montr�e

que le probl�eme de la recherche d'un arbre recouvrant T de G tel que la somme des

longueurs des cycles fondamentaux de G associ�es �a T soit inf�erieure �a un entier L

est NP-Complet.

Page 59: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

52 Chapitre 3. Histoires de cycles

Utilisant une d�emarche classique, ils ont d�emontr�e qu'un probl�eme NP-Complet

connu (voir [Garey et Johnson, 1979]) se transforme en temps polynomial dans le

probl�eme pr�ec�edent. Ils s'agit en l'occurrence du probl�eme suivant :

donn�ees : G = (V;E), K 2 N

question : Existe-t-il un arbre recouvrant T de G tel que la somme, sur

toutes les paires de sommets u; v 2 V , de la longueur de la cha�ne de u �a

v dans T soit inf�erieure �a K ?

Le lecteur int�eress�e par cette d�emonstration pourra se r�ef�erer �a [Deo et al., 1982].

A la �n de cet article, les auteurs proposent quelques heuristiques pour am�eliorer

la recherche d'un arbre recouvrant dont la base fondamentale de cycles associ�ee

est minimale. Ils conjecturent en�n que la borne sup�erieure de la taille de la base

minimale de cycles fondamentaux est de l'ordre de O(n2). Cette hypoth�ese est �etay�ee

par les travaux de [Horton, 1987] qui a montr�e qu'elle se con�rme dans le cas d'une

base minimale de cycles quelconques (la taille d'une telle base �etant major�ee par32(n� 1)(n � 2)).

3.4.2 Base de taille minimale

Il appara�t n�ecessaire d'insister ici sur la di��erence majeure qui existe entre une

base fondamentale minimale et une base minimale. En e�et, une base fondamentale

de cycles est n�ecessairement li�ee �a un arbre recouvrant. Par contre, il peut exister

des bases de cycles qui ne sont li�ees �a aucun arbre recouvrant. La �gure 3.6 donne un

exemple de graphe pour lequel aucune base fondamentale ne constitue une base mi-

nimale. Si le probl�eme de la recherche d'une base fondamentale minimale

est NP-Complet, nous verrons que le probl�eme de la recherche d'une

base minimale, non n�ecessairement fondamentale, est polynomial.

Dans le cadre de l'algorithmique d�evelopp�ee en chimie, la notion de base mini-

male, non n�ecessairement fondamentale, a donn�e naissance au concept de ((plus petit

ensemble des plus petits cycles )) souvent appel�e S.S.S.R (Smallest Set of Smallest

Rings).

Page 60: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.4. Bases de cycles de taille minimale 53

a

b

Fig. 3.6 { Le plus petit ensemble fondamental de cycles associ�e �a un arbre recou-

vrant ne correspond pas n�ecessairement �a la base de cycles de taille minimale. Dans

l'exemple ci-dessus, tout ensemble fondamental associ�e �a un arbre recouvrant ne

poss�edera au plus que 3 cycles de taille 3 (plus un de taille 4 obtenu pour l'arete b)

contrairement �a la base minimale qui contient 4 cycles de taille 3.

3.4.2.1 Calcul d'une base minimale �a partir d'une base fondamentale

Dans la mesure o�u la base de cycles la plus facile �a calculer est une base fon-

damentale, il n'est pas �etonnant de constater qu'un certain nombre d'algorithmes

de recherche d'une base minimale commencent par calculer une base fondamentale.

Le principe g�en�eral de ces m�ethodes consiste �a remplacer les cycles appartenant �a

l'ensemble fondamental initial BI par des sommes de cycles plus petites. Soit plus

formellement :

8Ci; Cj 2 BI; garder les deux plus petits cycles parmi Ci; Cj et Ci + Cj

L'utilisation de ce simple m�ecanisme (comme dans [Wipke et Dyott, 1975]) ne ga-

rantit pas forc�ement l'obtention d'une base minimale. C'est pourquoi [Corey et Pe-

tersson, 1972] propose d'optimiser la base r�eduite ainsi obtenue. Cet algorithme est

malheureusement trop compliqu�e et impr�ecis pour qu'il soit possible d'en �evaluer la

validit�e et la complexit�e r�eelles.

Nous citerons en�n les travaux de [Hendrickson et al., 1984] qui, �a partir d'une

repr�esentation matricielle particuli�ere (appel�ee ((matrice d'adjacence maximale))),

parvient �a obtenir directement une base fondamentale de faible poids. �Evidemment,

il ne s'agit pas n�ecessairement d'une base minimale, surtout dans le cas de syst�emes

cycliques complexes.

Page 61: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

54 Chapitre 3. Histoires de cycles

3.4.2.2 Recherche directe d'une base minimale

L'optimisation d'une base fondamentale ne semble pas constituer une m�ethode

tr�es e�cace pour construire une base minimale. De nombreux travaux ont donc

port�e sur la recherche directe d'une base minimale. Les algorithmes que nous allons

�evoquer dans ce paragraphe sont assez h�et�eroclites. Il semblerait que le probl�eme de la

recherche d'une base minimale ait �et�e surtout trait�e dans des travaux d'informatique

chimique. Il faut pr�eciser que devant la quantit�e de r�esultats obtenus dans ce domaine,

il est n�ecessaire de faire un choix que nous baserons sur un crit�ere d'originalit�e

des heuristiques employ�ees. Si certaines de ces techniques s'av�erent erron�ees, il faut

remarquer qu'elles s'inscrivent dans le cadre de graphes mol�eculaires o�u elles donnent

de bons r�esultats dans la majorit�e des cas.

Les algorithmes utilisant une base fondamentale associent �a chacune des � aretes

n'appartenant pas �a l'arbre recouvrant un cycle qui n'est pas n�ecessairement mini-

mal. Le principe g�en�eral des algorithmes, que nous quali�erons de ((directs )), consiste

�a rechercher pour chaque arete un des cycles minimaux qui la contiennent. Malheu-

reusement, le nombre de cycles obtenus par cette m�ethode est g�en�eralement inf�erieur

au nombre cyclomatique. Toute la di�cult�e du probl�eme r�eside donc dans l'ajout

de nouveaux cycles �a cet ensemble initial jusqu'�a l'obtention d'une base minimale

compl�ete.

3.4.2.2.1 Faces d'une repr�esentation planaire

Les premiers travaux que nous allons �etudier sont dus �a [Zamora, 1976]. Bien

qu'ils n'utilisent pas la notion d'arbre recouvrant, ils reposent sur le principe de

couverture des aretes du graphe par des cycles minimaux. Plus pr�ecis�ement, Zamora

emploie une classi�cation des syst�emes cycliques d�ecrite dans la �gure 3.7.

Partant de ce principe, l'algorithme recherche le plus petit cycle attach�e �a un

sommet, puis recommence avec un sommet non atteint et ainsi de suite jusqu'�a

ce que tous les sommets aient �et�e atteints. On obtient ainsi les cycles de type I. La

recherche se poursuit ensuite �a partir des aretes non atteintes jusqu'�a ce que le graphe

soit recouvert (type II). Ce m�ecanisme s'arrete d�es que le nombre cyclomatique est

atteint. Malheureusement, si le nombre de cycles n�ecessaires n'est pas obtenu �a la �n

de la deuxi�eme phase (syst�eme cyclique de type III), Zamora propose de rechercher

Page 62: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.4. Bases de cycles de taille minimale 55

I II III

Fig. 3.7 { Les trois types de syst�emes cycliques d'apr�es Zamora. I : aucun sous

ensemble de cycles d'une base minimale ne couvre le graphe, II : il existe un sous-

ensemble qui couvre les sommets mais pas les aretes, III : il existe un sous-ensemble

qui couvre les sommets et les aretes.

les (( faces manquantes )) . C'est lors de cette derni�ere �etape que l'algorithme peut

etre mis en �echec. Le probl�eme repose sur l'absence de relation directe entre une

base minimale et les faces d'une repr�esentation planaire du graphe.

Pour un graphe planaire (comme la plupart des mol�ecules), l'ensemble des faces

int�erieures associ�ees �a une repr�esentation planaire constitue une base de cycles. Cette

propri�et�e se v�eri�e ais�ement �a partir des deux remarques suivantes :

� le nombre de faces int�erieures est �egal au nombre cyclomatique

� l'ensemble des cycles associ�es aux faces int�erieures est lin�eairement ind�ependant.

Bien qu'une telle base de cycles soit relativement facile �a calculer, elle poss�ede

l'inconv�enient majeur de n'etre que rarement minimale. Tout d'abord parce que

les repr�esentations planaires d'un meme graphe ne correspondent pas toutes �a des

bases minimales. Ensuite, et c'est plus grave, parce que certains graphes n'admettent

aucune repr�esentation planaire dont la base de cycles associ�ee soit minimale. La

�gure 3.8 donne un exemple de ce type de graphes. Nous reviendrons sur cette notion

de faces dans le paragraphe 3.6.3 �a propos des bases de cycles �etendues.

3.4.2.2.2 Vers un algorithme polynomial

L'algorithme de Zamora que nous venons d'�etudier ne garantit pas l'obtention

d'une base. L'id�ee de rechercher un ensemble de cycles couvrant toutes les aretes

Page 63: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

56 Chapitre 3. Histoires de cycles

Fig. 3.8 { Quelle que soit la repr�esentation planaire utilis�ee pour ces graphes, la

base de cycles qui lui est associ�ee n'est pas minimale. Pour le graphe de gauche, il

manque le cycle de taille 4 et pour celui de droite (la mol�ecule de [1.1.1] Propellane)

on ne peut jamais obtenir les trois cycles de taille 3.

ou les faces du graphe n'est pas satisfaisante. En e�et, il su�t parfois de moins

de � cycles pour recouvrir tout le graphe. La notion de base fondamentale garantit,

quant �a elle, l'obtention d'une ensemble de cycles dont le cardinal est �egal au nombre

cyclomatique.Chacune des � aretes de fermeture de cycle est alors associ�ee �a un cycle

fondamental qui lui est propre.

Cette id�ee d'utiliser les aretes de fermeture de cycle a �et�e reprise par [Gasteiger

et Jochum, 1979] pour construire une base minimale. Bien que leur algorithme ne

propose qu'une heuristique, il n'est pas sans int�eret de d�etailler ici cette m�ethode qui

poss�ede l'�el�egance de la simplicit�e.

On commence par calculer un arbre recouvrant �a l'aide d'un parcours en largeur

�a partir d'un sommet racine quelconque. On recherche ensuite, dans tout le graphe,

le plus petit cycle associ�e �a chacune des aretes de fermeture de cycle (le cycle associ�e

�a l'une de ces aretes pouvant tr�es bien en contenir d'autres).

Malheureusement, lorsqu'un meme cycle est obtenu pour deux aretes di��erentes

l'ensemble �nal de cycles ne constitue pas une base. Pour surmonter ce probl�eme,

les auteurs de l'article proposent de remplacer les aretes du graphe qui font partie

de l'arbre recouvrant par des arcs dirig�es vers la racine. Le plus petit cycle associ�e

�a une arete de fermeture de cycle n'est alors recherch�e que dans la direction de la

racine de l'arbre (voir �gure 3.9.a).

Page 64: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.4. Bases de cycles de taille minimale 57

21

ba

racine

a) En recherchant (dans le graphe entier)

le plus petit cycle associ�e �a chaque arete de

fermeture de cycle on ne trouve que le cycle

2. Si l'on oriente la recherche en direction

de la racine de l'arbre, on obtient le cycle 1

pour l'arete a et le cycle 2 pour l'arete b.

racine

b) La mol�ecule du bullvalene o�re un

contre-exemple �a cette heuristique. Le

cycle de taille 3 n'est associ�e �a aucune

liaison de fermeture de cycles bien qu'il

fasse partie de toute base minimale.

Fig. 3.9 { L'heuristique de Gasteiger et Jochum

Il existe cependant des graphes pour lesquels cette technique ne permet pas l'ob-

tention d'une base minimale. C'est le cas de la mol�ecule de bullvalene comme le

montre la �gure 3.9.b. Les auteurs proposent alors une �evaluation de (( la complexit�e

du syst�eme cyclique )) permettant de d�etecter les cas o�u la recherche doit etre recom-

menc�ee �a partir d'un nouvel arbre recouvrant. Une rapide analyse de ce crit�ere de

(( complexit�e )) montre qu'il est souvent erron�e.

Nous pourrions cependant envisager une l�eg�ere modi�cation de l'heuristique de

Gasteiger. Il s'agit d'a�ner l'orientation du graphe en num�erotant les aretes suivant

l'ordre dans lequel elles sont atteintes lors du parcours en largeur �a partir du sommet

racine. La recherche du cycle contenant une arete de fermeture de cycle se fait tou-

jours en se restreignant aux aretes de num�ero inf�erieur. Cette d�emarche permet de

r�esoudre le probl�eme du bullvalene puisqu'une des aretes du cycle de taille 3 poss�ede

un num�ero sup�erieur aux deux autres, bien qu'elles correspondent au meme degr�e de

profondeur.

Malheureusement, notre nouvelle heuristique peut etre mise en d�efaut comme le

montre la �gure 3.10. Dans cet exemple, bien que le nombre cyclomatique soit atteint

en associant �a chaque arete de fermeture de cycle le plus petit cycle de num�eros

Page 65: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

58 Chapitre 3. Histoires de cycles

racine1

15

16

17

20

23

24 2

3

4

5

6

7

8

9

10

11

12

1314

18

19

22

21

Fig. 3.10 { Un contre-exemple relatif �a la modi�cation de l'heuristique de Gasteiger

et Jochum

inf�erieurs, la base obtenue ne contient pas le cycle de taille 4 (puisque chaque arete

de ce cycle est associ�ee �a un cycle de taille 3). Cette base n'est pas minimale.

3.4.3 Un algorithme polynomial

Les deux algorithmes que nous venons d'�etudier ne garantissent pas l'obtention

d'une base de taille minimale. Comme pour bon nombre d'algorithmes dans le meme

cas, cette faiblesse peut etre imput�ee �a la trop grande ambition de la m�ethode em-

ploy�ee. En e�et, ces algorithmes essaient de trouver une base minimale non seulement

en utilisant un unique arbre recouvrant, mais surtout en ne construisant directement

que les cycles appartenant �a la base recherch�ee. La solution consiste �a construire un

ensemble de cycles de taille sup�erieure �a � dont on extrait ensuite une base minimale.

Cette m�ethode a �et�e employ�ee avec succ�es par [Horton, 1987] dont nous �etudie-

rons l'algorithme dans le prochain paragraphe. Le principe de cet algorithme semble

particuli�erement judicieux puisqu'il �a �et�e publi�e au moins quatre fois. La premi�ere

pr�esentation est due �a [Sorkau, 1985]. Malheureusement, dans cet article �ecrit en al-

lemand et certainement peu di�us�e, Sorkau n'a pas jug�e utile de montrer la validit�e

de son algorithme, ni meme d'en �etudier la complexit�e. Par contre, Horton s'est plei-

nement acquitt�e de ces deux taches. Il est d'ailleurs dommage que la similitude entre

ces deux algorithmes n'ait pas �et�e relev�ee dans la revue des articles consacr�es aux

bases minimales de [Downs et al., 1989a]. Plus surprenante encore est la publication

par [Leach et al., 1990], sans r�ef�erence aux travaux ant�erieurs, d'un algorithme l�eg�e-

Page 66: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.4. Bases de cycles de taille minimale 59

rement di��erent mais bas�e sur le meme principe. Nous reviendrons sur cet algorithme

dans le paragraphe 3.4.3.4 o�u nous �evoquerons aussi l'article [Balducci et Pearlman,

1994] qui utilise une m�ethode semblable.

3.4.3.1 L'algorithme de Horton

L'algorithme pr�esent�e par Horton repose principalement sur le th�eor�eme suivant :

Th�eor�eme 1 Pour tout sommet x d'un cycle C appartenant �a une base de taille

minimale, il existe une arete fy; zg telle que C est compos�e d'une plus courte

cha�ne reliant x �a y, d'une plus courte cha�ne reliant x �a z et de l'arete fy; zg.

La d�emonstration de ce th�eor�eme consiste principalement �a montrer que dans le

cas contraire on n'aurait pas une base minimale (puisqu'il su�rait de remplacer C

par un cycle v�eri�ant la propri�et�e pour obtenir une base plus petite). Notons qu'il

s'agit l�a d'une condition n�ecessaire. L'ensemble des cycles v�eri�ant cette propri�et�e ne

constitue pas forc�ement une base minimale. L'algorithme de Horton consiste donc �a

ne garder ensuite qu'un plus petit ensemble libre de cardinal �egal au nombre cyclo-

matique �.

Il en d�ecoule l'algorithme suivant qui s'applique �a une composante 2-connexe :

1. 8a; b 2 X chercher une cha�ne P (a; b) de longueur minimum reliant a �a b.

2. Pour tout v 2 X faire :

Pour tout fx; yg 2 E faire :

Si P (v; x) \ P (v; y) = fvg

Alors cr�eer le cycle C(v; x; y) = P (v; x) [ P (v; y) [ fx; yg

3. Ordonner l'ensemble CI des cycles obtenus en fonction de leur taille

4. Utiliser un algorithme glouton pour en d�eduire une base de taille minimale.

En dehors du probl�eme de la complexit�e, Horton s'est d'abord attach�e �a prouver

que son algorithme permet bien d'obtenir une base de taille minimale. La princi-

pale di�cult�e repose sur le choix a priori d'une cha�ne particuli�ere parmi toutes les

cha�nes minimales qui relient deux sommets x et y. La d�emarche employ�ee par Hor-

ton consiste �a prouver qu'une base minimale quelconque B peut etre remplac�ee par

une base de cycles uniquement compos�es �a l'aide des cha�nes initialement choisies.

Page 67: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

60 Chapitre 3. Histoires de cycles

Nous n'allons pas reprendre ici l'int�egralit�e de cette preuve. Nous en ferons simple-

ment un rapide r�esum�e en insistant plus particuli�erement sur certains points qui nous

paraissent insu�samment d�evelopp�es dans l'article de Horton. Nous proposons donc

la d�emonstration suivante (illustr�ee par la �gure 3.11) :

Soit B une base de cycles de taille minimale (�gure 3.11.4). Comme dans

la preuve de Horton, on remplace dans chaque cycle de B toute cha�ne

minimale reliant deux sommets u et v par la cha�ne choisie lors de la pre-

mi�ere �etape (en proc�edant dans l'ordre croissant des tailles des cha�nes).

Si tous les ensembles d'aretes ainsi engendr�es sont des cycles �el�ementaires,

on obtient une base minimale.Dans le cas contraire (�gure 3.11.5) le cycle

de la base initiale qui a engendr�e un ((monstre)) peut etre remplac�e par

un cycle �el�ementaire construit �a partir des cha�nes qui ont �et�e choisies

(�gure 3.11.6).

En e�et, s'il existe dans la base initiale un cycle contenant les sommets v,

x et y, c'est qu'il existe dans le graphe une cha�ne [v; :::; z; y] qui n'a pas

d'aretes communes avec la cha�ne choisie pour aller de v �a x (�gure 3.11.3)

et telle que la sous-cha�ne [v; :::; z] ait �et�e choisie pour relier v �a z. Dans

le cas contraire, le cycle de la base initiale serait court-circuit�e par la

cha�ne [p:::w:::q] reliant la cha�ne choisie entre v et x �a la cha�ne choisie

entre v et z. Le cycle initial pourrait alors etre remplac�e dans B par le

cycle [p; :::; x; y; z; :::; q; :::; w; :::p] qui constituerait un de ses composants

strictement plus petit que lui 5 . Ce qui est contraire �a l'hypoth�ese de base

minimale pour B 2

3.4.3.2 Complexit�e de l'algorithme

En terme de complexit�e, l'analyse de l'algorithme de Horton peut se r�esumer

ainsi :

La premi�ere �etape correspond �a des parcours en largeur du graphe et peut etre

r�ealis�ee enO(nm) op�erations. La deuxi�eme�etape correspond �a la g�en�eration d'au plus

5. Si le cycle C = C1 + C2 appartient �a une base de cycles B alors (B n fCg) [ fC1g ou bien

(B n fCg) [ fC2g constitue aussi une base.

Page 68: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.4. Bases de cycles de taille minimale 61

x

yv

x

yv

x

yv

w

3)

q

p

1) graphe initial

x

yv

yv

x

4) base minimale B

x

yv

x

yv

vy

x

z

zz

2) chaînes minimales choisies

5) ensemble engendré à partirde 4) par les chaînes choisies

6) base minimale correspondantaux chaines choisies

Fig. 3.11 { Illustration de la preuve de l'algorithme de Horton.

n�m cycles de taille au plus �egale �a 2 �(G) (o�u �(G) d�esigne le diam�etre du graphe).

Pour �eliminer les cycles ((d�eg�en�er�es)) (i.e. ni simples, ni �el�ementaires), il faut v�eri�er

si les cha�nes P (v; x) et P (v; y) sont disjointes. Ce qui donne �nalement une com-

plexit�e en O(n �(G)m) pour cette seconde �etape. On pourrait cependant envisager

de n�egliger l'�elimination des cycles non �el�ementaires pour ramener cette complexit�e

�a O(nm). Cette variante, sugg�er�ee par Horton, ne garantit pas une am�elioration glo-

bale de l'algorithme. Le nombre de cycles �el�ementaires est en e�et souvent n�egligeable

par rapport au nombre de cycles ((d�eg�en�er�es)). Or, c'est le nombre de cycles obtenus

lors de l'�etape 2 qui conditionne le cout des �etapes suivantes et tout particuli�erement

de l'�etape 4 qui est la plus gourmande en termes de complexit�e.

Si l'on conserve tous les cycles �el�ementaires obtenus lors de l'�etape 2, chaque cycle

C de cardinal jCj appara�tra jCj fois. Il est donc important d'�eliminer les occurrences

multiples dans l'ensemble construit lors de cette �etape. Pour ce faire, Horton propose

d'utiliser la m�ethode de [Tierman, 1970] qui d�e�nit un ordre � quelconque sur les

sommets du graphe. Lorsqu'un sommet x est �etudi�e, on ne retient que les cycles

compos�es exclusivement de sommets pr�ec�edant x dans l'ordre �. De ce fait, le nombre

de cycles trouv�es dans l'�etape 2 pour le ki�eme sommet correspond au nombre d'aretes

de fermeture de cycle du sous graphe engendr�e par les k premiers sommets. Cette

valeur correspond au nombre cyclomatique �k associ�e �a ce sous-graphe (soit(k�1)(k�2)

2

Page 69: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

62 Chapitre 3. Histoires de cycles

dans le cas d'un sous-graphe complet). Ce qui donne �nalement pour l'ensemble du

graphe un nombre total de cycles major�e par n� (soit n(n�1)(n�2)6

pour un graphe

complet).

La troisi�eme �etape se limite �a un tri des O(n�) cycles obtenus pr�ec�edemment. Sa

complexit�e est donc O(n � log n)). On remarquera au passage que le tri des cycles

peut etre r�ealis�e directement en O(n�) en utilisant un tableau de n listes de cycles

correspondant aux n tailles possibles de cycles �el�ementaires.

L'�etape 4 consiste en�n �a rechercher un sous-ensemble libre dont la taille est

�egale au nombre cyclomatique �. La d�etermination de l'ind�ependance des cycles se

fait �a l'aide d'un algorithme glouton. Pour savoir si un cycle donn�e est lin�eairement

ind�ependant des t cycles d�ej�a retenus, il su�t de v�eri�er que la matrice bool�eenne

(t + 1) � m correspondant aux (t + 1) cycles est inversible (Chaque cycle �etant

repr�esent�e par une ligne de la matrice contenant des 0 ou des 1 suivant que l'arete

correspondante appartient ou non au cycle). En r�ealisant par exemple une �elimination

gaussienne sur cette matrice bool�eenne, on peut v�eri�er l'ind�ependance en O(mr) o�u

r est le nombre de lignes. Le nombre de cycles �a tester �etant de l'ordre de O(n �) et la

taille de la matrice �etant limit�ee �a � lignes on obtient �nalement une complexit�e en

O(m�2 n). La quatri�eme �etape �etant la plus couteuse, on en d�eduit que la complexit�e

globale de l'algorithme de Horton est en O(m�2 n).

Horton a en�n montr�e que la longueur d'une base minimale de cycles dans un

graphe dont les aretes ne sont pas valu�ees est au plus �egale �a 32(n � 1)(n � 2). Ce

r�esultat accr�edite la conjecture de [Deo et al., 1982] �enonc�ee au paragraphe 3.4.1

puisqu'il la d�emontre dans le cadre d'une base de cycle quelconque (i.e. non li�ee �a

un arbre recouvrant).

3.4.3.3 R�eduction de la taille de l'ensemble CI

Nous allons proposer maintenant une m�ethode pour d�eterminer un nouvel en-

semble initial de cycles CI dont est extraite la base minimale dans l'algorithme de

Horton. Ce nouveau mode de calcul de CI nous permet d'introduire une variante de

l'algorithme qui r�eduit le nombre de cycles de cet ensemble initial. Nous avons vu

dans le paragraphe pr�ec�edant que la taille de CI conditionne le cout de la derni�ere

Page 70: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.4. Bases de cycles de taille minimale 63

�etape et par l�a meme toute la complexit�e de l'algorithme. En diminuant la taille de

cet ensemble nous pouvons r�eduire le temps global de calcul.

L'algorithme de Horton pouvant s'appliquer �a un graphe muni d'une valuation

positive, une version de notre variante adapt�ee �a ce type de graphe sera pr�esent�ee

dans l'annexe A.

Consid�erons pour tout sommet r 2 X la base fondamentale Br associ�ee �a un

arbre recouvrant obtenu par un parcours en largeur �a partir de r. Un ensemble de

cycles �equivalent �a CI peut alors se d�e�nir �a partir de l'union des bases fondamen-

tales associ�ees �a chaque sommet du graphe. On ne retient pour chaque ensemble

fondamental que les cycles qui contiennent la racine r du parcours correspondant.

Soit plus formellement :

CI =[r2XfC 2 Br tel que r 2 Cg

Bien que l'ensemble CI obtenu �a l'aide de cette notion ne corresponde pas di-

rectement �a la d�e�nition de Horton, ces deux principes restent tr�es voisins. Tout

cycle appartenant �a ce nouveau CI v�eri�e la propri�et�e du th�eor�eme 1 puisqu'il a

�et�e obtenu par un parcours en largeur. En terme de complexit�e, les deux d�e�nitions

conduisent �a un algorithme de calcul de CI en O(mn2) (en tenant compte du cout

de l'�enum�eration de chaque cycle).

Ce nouvel ensemble initial CI permet d'�eliminer directement certains cycles qui

ne peuvent pas appartenir �a la base minimale. Nous allons maintenant pr�esenter la

propri�et�e qui est utilis�ee dans notre variante pour r�eduire la taille de CI .

Soit � un ordre quelconque sur les sommets de G.

Notons Xr = fx 2 X tel que �(x) � �(r)g et Gr = (Xr ; Er) le sous-graphe de G

induit par Xr.

Consid�erons un sommet quelconque r de X et un sommet x 2 Xr n frg.

Nous d�e�nissons l'ensemble des ((ancetres)) de x (not�e ancetr(x)) par :

ancetr(x) =

8>><>>:a 2 �(r) \ Xr tel que

��������il existe une cha�ne minimale dans G

reliant r �a x, passant par a et dont

tous les sommets appartiennent �a Xr

9>>=>>;

Page 71: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

64 Chapitre 3. Histoires de cycles

rza

p

q

r

p

xza

qa

a y

y a

a y

y

p p

q q

p p

q q

Fig. 3.12 {

Proposition 1 Soit C 2 CI un cycle construit �a partir du sommet r (tel que

�(r) = maxx2C �(x)) et des sommets p; q tels que dist(r; p) = dist(r; q) =j jCj�1

2

kSi ancetr(p) \ ancetr(q) 6= ? alors C n'appartient �a aucune base minimale.

D�emonstration

Consid�erons un cycle C 2 CI compos�e des deux cha�nes minimales

[r; ap; :::; p] et [r; aq; :::; q] reli�ees par l'arete fp; qg si jCj est impair ou par

la cha�ne minimale [p; x; q] dans les autres cas (voir �gure 3.12).

Supposons qu'il existe un sommet a tel que a 2 ancetr(p) \ ancetr(q) .

Notons yp (respectivement yq) le premier sommet de la cha�ne [r; ap; :::; p]

(resp. [r; aq; :::; q]) qui poss�ede a parmi ses ancetres.

Le cycle C (en gras dans la �gure 3.12) constitue la somme de trois

cycles C1 = [r; ap; :::; yp; :::; z; :::; a; r], C2 = [r; aq; :::; yq; :::; z; :::; a; r] et

C3 = [z; ::; yp; ::; p; x; q; ::; yq; ::; z] 6 o�u z d�esigne le dernier sommet com-

mun aux cha�nes [r; a; :::yp] et [r; a; :::yq] .

Tous ces cycles sont de taille au plus �egale �a 2j jCj�1

2

k< jCj. Notons

que dans le cas o�u a = aq ou a = ap on obtient seulement deux cycles

strictement plus petits que C. Si C appartenait �a une base B de taille

minimale, en rempla�cant C dans B par C1, C2 ou C3, on obtiendrait une

nouvelle base 5 plus petite que B. Ce qui entra�ne une contradiction 2

La proposition 1 conduit �a une variante permettant d'�eliminer directement cer-

tains cycles de l'ensemble CI sans devoir tester l'ind�ependance d'un ensemble de

cycles comme dans l'�etape 4 de l'algorithme de Horton. Elle permet �egalement de

d�eterminer s'il existe un cycle �el�ementaire reliant les sommets r, p et q sans avoir �a

6. ou bien C3 = [z; :::; yp; :::; p; q; :::; yq; :::; z] lorsque jCj est impair.

Page 72: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.4. Bases de cycles de taille minimale 65

parcourir les cha�nes [r; ::; p] et [r; ::; q] pour v�eri�er si elles sont disjointes. Cette va-

riante, remplace les deux premi�eres �etapes de l'algorithme de Horton par la m�ethode

suivante :

1. Pour chaque r 2 X faire :

Pour chaque arete de fermeture de cycles fp; qg 2 Er,

obtenue lors d'un parcours en largeur �a partir de r, faire :

Si ancetr(p) \ ancetr(q) = ? Alors ajouter le cycle C(r; p; q) dans CI

La principale di�cult�e r�eside dans la d�etermination des ensembles ancetr(x) lors

du parcours en largeur �a partir de r. Consid�erons un sommet p dont on conna�t

l'ensemble ancetr(p) et un sommet f pouvant etre atteint �a partir de p :

� si le nouveau sommet f n'a jamais �et�e atteint alors ancetr(f) = ancetr(p)

� si f est d�ej�a atteint et dist(r; f) > dist(r; p)

alors ancetr(f) = ancetr(f) [ ancetr(p)

L'ensemble ancetr n'est donc r�eellement calcul�e que pour chaque arete de fer-

meture de cycle dont les deux extr�emit�es n'ont pas le meme niveau de profondeur

(relativement au parcours en largeur �a partir de r). La mise en �uvre de la variante

lors de la construction des cycles de CI relativement au sommet r, sera r�ealis�ee en

O(� d(r)) (le pire cas correspondant �a un graphe sans cycles impairs). Si, comme dans

l'algorithme de Horton, on n'utilise pas l'ensemble des ancetres, il faut v�eri�er pour

chaque cycle qu'il est bien compos�e de deux cha�nes disjointes. Cette v�eri�cation, qui

serait r�ealis�ee en O(dist(r; p)), devient inutile lorsqu'on emploie notre variante.

Pour la globalit�e du calcul de CI , la d�etermination des ((ancetres)) est donc r�ea-

lis�ee en O(� n �d(G)) o�u �d(G) d�esigne le degr�e moyen des sommets du graphe (i.e.�d(G) = 1

n

Px2X d(x)). Cette complexit�e doit etre compar�ee au temps de calcul n�e-

cessaire, dans l'algorithme de Horton, pour �eliminer les cycles d�eg�en�er�es, c'est �a dire

O(� n �(G)).

Notre variante permet donc d'optimiser l'algorithme lorsque le degr�e moyen du

graphe est plus petit que son diam�etre. Par exemple, lorsque le degr�e moyen est

born�e, la complexit�e du calcul des ensembles d'ancetres se r�eduit �a O(� n).

En chimie organique, le diam�etre d'un graphe mol�eculaire est souvent fonction

du nombre n de sommets. Par contre le degr�e maximal peut etre born�e par la valeur

Page 73: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

66 Chapitre 3. Histoires de cycles

X 2X 1

a1

r

z

z

z

z

a t

al

i jb

b k

4

3

2

1

Fig. 3.13 { Un graphe pour lequel la variante permet un gain de temps maximal

8. On peut donc facilement repr�esenter chaque ensemble d'ancetres par un vecteur

de bits et r�ealiser toutes les op�erations en O(1).

Quoi qu'il en soit, le cout du traitement des ancetres lors de la construction

de CI reste en O(m2) pour un graphe quelconque. Cette complexit�e est d'ailleurs

relativement faible par rapport �a la complexit�e globale de l'algorithme qui est en

O(m�2 n). La proposition 1 permet g�en�eralement d'�eliminer de nombreux cycles

de CI avec un cout comparable �a celui du test d'un seul cycle lors de l'�etape 4

de l'algorithme de Horton (i.e. O(� m)). Notre variante est donc souvent amen�ee �a

am�eliorer l'algorithme de Horton, meme lorsque le degr�e moyen du graphe n'est pas

born�e.

Consid�erons, par exemple, le graphe de la �gure 3.13 construit autour du biparti

complet entre les sous-ensembles de sommets X1 et X2 (o�u jX1j = jX2j). Toute base

minimale de cycles devra contenir le cycle C1 = [r; a1; z1; z2; z3; z4; r] poss�edant 6

sommets et jX1jjX2j�1 cycles de 4 sommets de la forme [r; ai; bj; al; r] ou [t; bj; ai; bk; t]

(avec 8p; ap 2 X1 et 8p; bp 2 X2). Lors de la construction de CI , l'�etude du sommet

r doit entra�ner la cr�eation d'autant de cycles [r; ai; bj; t; bk; al; r] de taille 6 qu'il y a

d'aretes fbj; tg. Tous ces cycles seront directement �elimin�es grace �a la proposition 1

alors que la phase 4 de l'algorithme de Horton devrait e�ectuer O(n � m) op�erations

(pour peu que C1 soit test�e en dernier). La variante bas�ee sur les ancetres communs

peut donc apporter une r�eduction du temps de calcul de l'ordre de O(n � m) avec un

cout �equivalent au temps de traitement d'un seul cycle de CI . Nous verrons dans le

paragraphe 3.7, que l'utilisation des ancetres est particuli�erement int�eressante lors

de la construction d'un ensemble de cycles pertinents.

Page 74: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.4. Bases de cycles de taille minimale 67

3.4.3.4 Deux algorithmes analogues �a la m�ethode de Horton

Pour conclure cette �etude des algorithmes de calcul d'une base minimale, nous

allons revenir un instant sur deux articles post�erieurs �a celui de Horton mais utilisant

des m�ethodes semblables.

Nous avons d�ej�a �evoqu�e l'algorithme propos�e par [Leach et al., 1990]. La m�ethode

qu'ils emploient peut se r�esumer ainsi : Apr�es avoir construit un arbre recouvrant,

on commence par chercher le (ou les) plus petit(s) cycle(s) associ�e(s) �a chaque arete

de fermeture de cycle. Si un ensemble libre et g�en�erateur n'est pas obtenu, on re-

commence en cherchant les seconds plus petits cycles et ainsi de suite jusqu'�a ce que

l'ensemble de cycles obtenu contienne une base minimale.

Le lecteur perspicace aura certainement not�e que l'algorithme de Horton construit

un ensemble initial de cycles tout �a fait similaire quoique g�en�eralement plus petit

que celui de Leach. La di��erence majeure entre ces deux approches peut se r�esumer

ainsi : Horton construit un unique ensemble initial, dont il extrait une base minimale;

par contre, Leach fabrique des ensembles de plus en plus gros jusqu'�a ce qu'il trouve

une base minimale. Cette derni�ere m�ethode peut s'av�erer plus e�cace si la base

est obtenue lors des toutes premi�eres recherches. Mais globalement, le cout de ces

investigations successives rend cet algorithme moins int�eressant que celui de Horton.

Il faut pr�eciser que l'absence de d�etails dans la description de l'algorithme de

Leach rend cette comparaison relativement di�cile. Dans la variante de l'algorithme

de Horton que nous avons �etudi�ee, on r�ealise successivement un parcours en largeur �a

partir de chaque sommet du graphe. On ne cherche �a construire la base minimale que

lorsque tous les parcours ont �et�e e�ectu�es. La m�ethode propos�ee par Leach revient �a

r�ealiser en meme temps tous les parcours en largeur �a partir des sommets du graphe.

Ces parcours sont interrompus d�es que l'on a trouv�e au moins un nouveau cycle pour

chaque sommet. On recherche alors la base minimale parmi les cycles d�ej�a construits.

Si cette recherche �echoue, les parcours sont repris l�a o�u ils ont �et�e interrompus.

Cette id�ee de r�ealiser tous les parcours en meme temps �a �et�e utilis�ee par [Balducci

et Pearlman, 1994]. Ces derniers proposent ainsi (mais sans le dire) une mise en �uvre

plus pr�ecise de l'algorithme de Leach. Il serait particuli�erement fastidieux d'exposer

en d�etail l'algorithme de Balducci et Pearlman. Pr�ecisons simplement qu'ils d�ecrivent

les divers parcours en largeur sous la forme d'envois de messages entre les sommets

Page 75: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

68 Chapitre 3. Histoires de cycles

a

10 10

f

0

d

g

b

0

65

c

4321

c

d

f

b

a

efirst = 1

BEEP : 10000

nfirst = a

efirst = 1

nlast = a

BEEP : 100000

nfirst = a

efirst = 1

nlast = b

BEEP : 110000

nfirst = a

efirst = 1

nlast = c

BEEP : 111000

nfirst = a

efirst = 6

nlast = g

nfirst = a

efirst = 6

nlast = d

nfirst = a

BEEP : 10000

efirst = 1

BEEP : 11000

efirst = 1

BEEP : 11100

nlast = a

nlast = b

nfirst = f

nlast = f

nfirst = f

nfirst = f

efirst = 1efirst = 6

nlast = a

nfirst = a

nlast = d

nfirst = a

BEEP : 10001

nfirst = a

nlast = f

BEEP : 000011

efirst = 1

BEEP : 10011

BEEP : 000001

nfirst = a

nlast = d

efirst = 6

efirst = 1

BEEP : 000011

BEEP : 000111

nlast = a

4

I

3

cycle impaircycle pair

II

III

52II

II

premier noeud

première arête

dernier noeud

BEEP = chemin parcouru par le message

numéro des arêtes

bits

Pronfondeur de parcours

1

I

2

6

3 4

1

5

I

II

III

II

IIIIII

I

Fig. 3.14 { Envois de messages dans l'algorithme de [Balducci et Pearlman, 1994].

du graphe baptis�es ((n�uds)). Il semblerait d'ailleurs que les auteurs de cet article ne

se soient pas rendu compte que leur algorithme se ram�ene �a des parcours en largeur.

Chaque message correspond �a une cha�ne minimale dans le graphe dont l'origine

est �egale �a la racine du parcours en largeur correspondant. Un message est compos�e

d'un vecteur BEEP de m bits d�ecrivant la cha�ne parcourue et de trois champs

n�rst , e�rst et nlast pr�ecisant respectivement les noms du premier n�ud, de la

premi�ere arete et du dernier n�ud travers�es. La �gure 3.14 donne quelques exemples

de propagation des ces messages.

�A chaque �etape (ou niveau) des parcours en largeur, les n�uds sont s�equentiel-

lement activ�es pour traiter les messages qu'ils ont re�cu. Lorsqu'un n�ud x re�coit

Page 76: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.4. Bases de cycles de taille minimale 69

deux messages issus d'un meme n�ud racine et dont les cha�nes minimales associ�ees

sont disjointes, il cr�ee un cycle pair d�e�ni par la r�eunion de ces deux cha�nes (voir

�gure 3.14). Si le n�ud x re�coit k messages de ce type (en provenance de k voisins de

x), il cr�eera 12k(k� 1) cycles pairs correspondant �a toutes les combinaisons possibles

de cha�nes. Notons que dans la meme situation, l'algorithme de Horton ne cr�eera

que k � 1 cycles associ�es aux k� 1 aretes de fermeture de cycle entrant en x. Quant

aux cycles de taille impaire, ils sont d�etect�es par un sommet recevant deux messages

disjoints �a l'exception de la premi�ere arete dont chaque extr�emit�e est �a l'origine d'un

des deux messages (voir �gure 3.14).

Comme dans l'algorithme de Leach, on essaie d'agrandir la base minimale cou-

rante �a la �n de chaque niveau des parcours en largeur. En dehors de cette particula-

rit�e, l'algorithme de Balducci et Pearlman di��ere de celui de Horton par le nombre de

cycles pairs engendr�es. Les auteurs de l'article justi�ent ce choix par le fait qu'il o�re

la possibilit�e de construire une ((base minimale pr�ef�er�ee )). Parmi toutes les 12k(k�1)

combinaisons de cha�nes possibles, on peut en e�et choisir celles qui r�epondent le

plus �a des crit�eres li�es �a la nature du cycle engendr�e (nombre d'h�et�eroatomes, nature

des liaisons ou st�er�eochimie).

Cette possibilit�e de s�election des cycles de la base augmente cependant de cout de

l'algorithme. Il n'est pas non plus certain que la m�ethode particuli�erement complexe

que proposent les auteurs soit plus e�cace qu'une simple succession de parcours en

largeur �a partir de chaque sommet du graphe. Quoi qu'il en soit, ces deux d�emarches

ont un cout th�eorique �equivalent. Dans leur �etude de la complexit�e, Balducci et

Pearlman a�rment que leur algorithme est en O(d3n2 log n) (o�u d d�esigne le degr�e

maximal d'un sommet). Ce r�esultat est malheureusement faux.

La partie la plus couteuse de leur algorithme correspond �a l'extraction d'une base

minimale �a partir de l'ensemble de cycles engendr�es. La taille de cet ensemble est

de l'ordre du nombre de cycles pairs. Suite �a une petite erreur de raisonnement,

les auteurs a�rment que cette valeur est en O(d2 n log n). Il su�t de consid�erer le

nombre de cycles de taille 4 dans un graphe biparti complet (i.e. O(d2 n2)) pour

constater que cette majoration est insu�sante. Le nombre de cycles obtenus est

plutot en O(nmd) o�u n correspond aux nombre d'�emetteurs initiaux (les n�srt)

et md �a la somme des combinaisons possibles entre les voisins des n r�ecepteurs

potentiels (i.e.P

x2X d(x)2 � md). Le cout d'une �elimination gaussienne �etant en

Page 77: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

70 Chapitre 3. Histoires de cycles

O(� m), on obtient comme complexit�e �nale : O(� m2 nd). Ce r�esultat correspond �a

la complexit�e de l'algorithme de Horton augment�ee d'un facteur d du �a la prise en

compte de toutes les combinaisons de cha�nes.

Lors de la publication de son article en 1987, Horton pr�esentait son algorithme

comme le premier du genre ayant une complexit�e polynomiale. Il semblerait que cet

algorithme soit aussi le seul �a ce jour qui soit ex�ecutable en temps polynomial. Quant

au fait que la m�ethode de Horton ait �et�e plusieurs fois r�einvent�ee depuis, il ne peut

que nous convaincre de l'int�eret de cet algorithme. Bien sur, comme nous l'avons vu

dans le paragraphe pr�ec�edent, des variantes de l'algorithme peuvent permettre de

r�eduire consid�erablement le temps de calcul r�eel, tout en conservant la complexit�e

th�eorique en O(�m2n).

3.5 Recherche de cycles �el�ementaires

En dehors des bases de cycles, le sous-ensemble de C qui est le plus souvent

manipul�e est celui des cycles �el�ementaires. En e�et, un cycle simple est toujours

d�ecomposable en cycles �el�ementaires disjoints. Quant aux autres vecteurs de C, ils

correspondent �a des unions de cycles simples n'ayant aucun sommet en commun.

Nous allons donc �etudier quelques travaux li�es �a la recherche de cycles �el�ementaires.

3.5.1 �Enum�eration de tous les cycles �el�ementaires

Les premiers algorithmes de d�etermination de l'ensemble des cycles �el�ementaires

utilisaient des bases de cycles (principalement fondamentales). C'est le cas de [Welch,

1966] et [Gibbs, 1969]. Le principe de ces algorithmes est tr�es simple : �a partir d'une

base de cycles, on engendre l'ensemble des vecteurs de C puis on �elimine ceux qui ne

correspondent pas �a des cycles �el�ementaires. Malheureusement, cette d�emarche est

g�en�eralement ine�cace. En e�et, [Mateti et Deo, 1975] ont montr�e que cette m�ethode

est susceptible de g�en�erer 2� �1 cycles dont une faible partie correspond �a des cycles

Page 78: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.5. Recherche de cycles �el�ementaires 71

K3

K4

K4-x K

3,3

Fig. 3.15 { Les quatre graphes r�eduits poss�edant 2� � 1 cycles �el�ementaires.

�el�ementaires. Les seuls graphes r�eduits 7 dont aucun vecteur de C ne correspond �a une

union de cycles �el�ementaires disjoints sont : K3, K4, K4�x et K3;3 (voir �gure 3.15).

Pr�ecisons cependant qu'une ((approche vectorielle)) reste e�cace dans le cadre de

graphes planaires comme l'a montr�e [Syslo, 1981].

Le second type de d�emarche utilis�e pour rechercher les cycles �el�ementaires est

bas�e sur un parcours en profondeur du graphe avec retour arri�ere (backtrack). Il

s'agit d'�enum�erer toutes les cha�nes qui relient deux sommets d et f . L'algorithme

g�en�eralement utilis�e construit une cha�ne �a partir de d en employant la proc�edure

suivante :

Recherche cha�ne ( x,f ) :

? cha�ne courante contient une cha�ne �el�ementaire issue de d

et se terminant en un sommet voisin de x ?

1. Ajouter x �a la cha�ne courante

2. Pour tout y 2 �+(x) faire :

3. Si y = f Alors a�cher le cycle �el�ementaire obtenu

4. Sinon Si y 62 cha�ne courante Alors Recherche cha�ne (y,f );

5. Retirer x de la cha�ne courante

Pour �enum�erer les cycles �el�ementaires du graphe, cette proc�edure peut etre ap-

pliqu�ee �a tous les sommets s par l'appel de recherche cha�ne(s,s). Cette m�ethode

pr�esente cependant l'inconv�enient de g�en�erer un meme cycle autant de fois qu'il

7. la r�eduction appliqu�ee ici �a un graphe non orient�e consiste �a �eliminer les sommets de degr�e 2

dont les deux voisins ne sont pas directement li�es entre eux. La pr�esence de tels sommets ne modi�e

pas le nombre de cycles du graphe.

Page 79: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

72 Chapitre 3. Histoires de cycles

x0

1x

2x x

k

s

Fig. 3.16 {

contient de sommets. Pour pallier cette di�cult�e, plusieurs d�emarches ont �et�e pro-

pos�ees. Nous avons d�ej�a �evoqu�e la m�ethode de [Tierman, 1970] qui utilise un ordre �

sur les sommets de fa�con �a restreindre la recherche des cycles contenant un sommet

s aux seuls x 2 X tels que �(x) � �(s). Cette d�emarche �a �et�e optimis�ee par [Read

et Tarjan, 1975]. L'ordre � est d�e�ni par rapport �a un parcours en profondeur sur le

graphe. Il correspond �a l'ordre d'exploration des sommets. Ce parcours construit un

arbre recouvrant T = (X;E0) dont on d�eduit un ensemble d'aretes de fermeture de

cycle E n E0. On n'applique la proc�edure recherche cha�ne(s,s) que sur les sommets

s du graphe qui ont au moins une arete incidente appartenant �a E nE 0. On est ainsi

certain de trouver pour chaque sommet s au moins un cycle qui v�eri�e la contrainte

relative �a l'ordre �. De plus, tous les cycles cr�e�es �a partir de s ne pourront pas etre

engendr�es par d'autres sommets.

Citons en�n la m�ethode employ�ee par [Shelley, 1983]. On commence par recher-

cher un arbre recouvrant G0 = (X;E0). Pour chaque arete fa; bg de EnE0, on ex�ecute

la proc�edure recherche cha�ne(a,b) dans G0 puis on rajoute fa; bg �a G0. L'ensemble

des cycles engendr�es pour fa; bg contient le cycle fondamental qui lui correspond

(dans l'arbre recouvrant initial) ainsi que tous les cycles incluant �a la fois fa; bg et

des aretes ajout�ees �a G0 avant fa; bg. Chaque cycle ne peut donc etre cr�e�e qu'une

seule fois.

Malgr�e toutes ces pr�ecautions pour �eviter les occurrences multiples dans l'en-

semble de cycles engendr�e, ce type de m�ethode est g�en�eralement peu e�cace. De tels

algorithmes peuvent meme avoir un cout exponentiel pour des graphes dont le nombre

de cycles �el�ementaires est polynomial par rapport au nombre de sommets. Consid�e-

rons, par exemple, le graphe de la �gure 3.16. La proc�edure recherche cha�ne(s,s),

�enum�erant tous les cha�nes issues de s, va envisager inutilement les 2k sous-cha�nes

de la forme [x0; :::; xk].

Page 80: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.5. Recherche de cycles �el�ementaires 73

y1

y2 p

y

1z

2zz

r

s

v

qw w

i+1

wi

w2

w1

Fig. 3.17 {

Ce probl�eme a �et�e r�esolu par [Read et Tarjan, 1975]. Il s'agit de limiter les

(( retours arri�eres )) aux seuls sommets pouvant appartenir �a plusieurs cycles �el�emen-

taires. Comme nous venons de voir, on utilise un parcours en profondeur du graphe

pour d�eterminer l'ordre � permettant de ne trouver chaque cycle qu'une seule fois.

Ce premier parcours d�etermine aussi l'ensemble des sommets s �a partir desquels on

pourra cr�eer au moins un cycle �el�ementaire.

Consid�erons maintenant la recherche des cycles contenant le sommet s. Le prin-

cipe de l'algorithme consiste �a n'e�ectuer le parcours en profondeur issu de s que le

long de cha�nes appartenant �a au moins un cycle �el�ementaire. La nouvelle proc�edure

de recherche (illustr�ee par la �gure 3.17) peut se r�esumer ainsi :

Recherche cycle ( v) :

? Soit � = [s; y1; y2; :::; yp; v] la cha�ne �el�ementaire courante allant de s au sommet v.

Il doit exister au moins un cycle �el�ementaire contenant � ?

1. Pour tout w1 2 �+(v) t:q 9 cha�ne �el�ementaire [w1; w2; wq; s] disjointe de � faire :

2. i 1;

3. Tant que i � q et�il n'existe pas de cha�ne [wi; z1; z2; zt; s]disjointe de � et telle que z1 6= wi+1

�faire :

4. ajouter wi �a �;

5. i i+ 1;

6. Si i > q Alors a�cher le cycle �el�ementaire [s; y1; y2; :::; yp; v; w1; w2; wq; s]

7. Sinon Recherche cycle(wi) fsi

8. Retirer tous les wi de la cha�ne courante �;

Lors de l'�etape 3, la recherche d'un voisin z1 de wi v�eri�ant la propri�et�e est r�ealis�ee

�a l'aide d'un parcours en profondeur �a partir de wi. On cherche �a atteindre s sans

Page 81: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

74 Chapitre 3. Histoires de cycles

passer par wi+1. En cas de r�eussite, wi constitue un nouveau point de ((backtrack))

sur la cha�ne courante et on ex�ecute un nouvel appel r�ecursif de la proc�edure. S'il

n'existe pas de zi satisfaisant, on peut ajouter wi �a la cha�ne courante sans risquer de

perdre des cycles �el�ementaires. Le parcours �a partir de wi est r�ealis�e en marquant les

sommets qui ne m�enent pas �a s. Ce marquage n'est pas r�einitialis�e entre le traitement

de sommetswi successifs. De ce fait, les aretes dessin�ees en pointill�es sur la �gure 3.17

ne seront explor�ees que pour le sommet w1. Lors du parcours r�ealis�e �a parti de w2,

elles seront ignor�ees puisqu'elles ne permettent pas d'atteindre s. Le marquage est

�evidemment initialis�e avant le traitement de tout voisin w1 du sommet v (ligne 1)

La m�ethode propos�ee par Read et Tarjan aboutit donc �a un algorithme en

O(n+m+m� nombre de cycles �el�ementaires).

Du point de vue de la chimie, la recherche de tous les cycles reste un probl�eme

d'ordre th�eorique. En e�et, les cycles complexes (aussi appel�es ((cycles enveloppe)))

sont souvent n�eglig�es au pro�t de cycles plus simples qui traduisent r�eellement des

propri�et�es chimiques au niveau des atomes ainsi li�es. Nous verrons au paragraphe 3.6

diverses d�e�nitions de cycles chimiquement valides. L'utilisation de l'ensemble des

cycles �el�ementaires peut aussi poser un probl�eme d'ordre combinatoire. Pour la mo-

l�ecule du pagodane (�gure 3.1), le nombre de cycles �el�ementaires est �egal �a 685 alors

que toute base de C ne contient que 11 cycles.

3.5.2 Recherche de cycles particuliers

Parmi les sous-ensembles de C qui peuvent etre int�eressants en chimie se trouve

l'ensemble des cycles de taille donn�ee. Il s'agit par exemple de rechercher tous les

cycles contenant 6 sommets. Nous verrons dans le prochain paragraphe que cette

notion est parfois utilis�ee pour d�e�nir un ensemble de cycles chimiquement pertinents.

Certaines structures chimiques remarquables sont �egalement associ�ees �a des cycles

de taille pr�ecise qu'il peut etre utile de rechercher. Lorsque l'on veut synth�etiser une

mol�ecule, il peut etre tr�es int�eressant de d�etecter la pr�esence de cycles de taille 6

pour lesquels on conna�t des m�ethodes de construction e�caces (comme la r�eaction

de Diels-Alder).

Dans la mesure o�u ce type de recherche n'est pas fondamental en chimie, nous

nous contenterons d'une br�eve pr�esentation du probl�eme. Citons cependant les tra-

Page 82: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.6. Bases de cycles �etendues 75

vaux de [Chiba et Nishizeki, 1985] qui proposent un algorithme en O(a(G)m), o�u

a(G) d�esigne l'arboricit�e 8 du graphe, pour �enum�erer tous les cycles de taille 3 et 4.

Cette utilisation de l'arboricit�e dans le calcul de la complexit�e est particuli�erement

int�eressante. En e�et, les auteurs de cet article ont montr�e que l'arboricit�e d'un

graphe v�eri�e les trois propri�et�e suivantes :

1. a(G) �jp

2m+n2

k2. a(G) � n

2 3. a(G) � 3 si G est planaire.

Ils utilisent en�n une quatri�eme propri�et�e tout aussi int�eressante :X(x;y)2E

minfd(x) ; d(y)g � 2 a(G)m

En ce qui concerne les cycles de taille 5 et 6, [Richards, 1986] a propos�e un

algorithme en O(n log(n)) pour d�eterminer leur pr�esence. Citons en�n l'article de

[Fleischner et Woeginger, 1992] qui d�ecrit un algorithme lin�eaire pour trouver un

cycle passant par trois sommets donn�es.

3.6 Bases de cycles �etendues

Si de nombreuses �etudes ont port�e sur les bases de cycles de taille minimale, c'est

certainement parce qu'il s'agit du moyen le plus �economique de repr�esentation des

syst�emes cycliques. Malheureusement, qui dit �economie de place ne signi�e pas pour

autant gain d'e�cacit�e. Lorsque l'ensemble de cycles utilis�e ne se limite pas �a la base

minimale, la seule solution consiste �a �enum�erer tous les cycles �el�ementaires.

Dans le cadre de la chimie, la recherche d'une base de cycles n'a d'int�eret que du

point de vue de la m�emorisation. Lorsqu'il s'agit de d�etecter des propri�et�es chimiques,

pour r�esoudre par exemple un probl�eme de synth�ese, il n'est plus possible de se

contenter d'une base de cycles. Le seul crit�ere qui puisse etre d�e�ni �a partir de cette

base consiste �a savoir si un sommet appartient ou non �a un syst�eme cyclique. En

dehors de certains cas bien particuliers, il est impossible de d�eterminer le nombre et la

nature des cycles auxquels appartient un sommet sans e�ectuer un calcul �equivalent

�a la recherche de tous les cycles. Pour surmonter cette di�cult�e, les chimistes ont

8. l'arboricit�e d'un graphe est �egale au nombre minimal d'arbres (aux aretes disjointes) qu'il faut

pour recouvrir toutes les aretes du graphe.

Page 83: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

76 Chapitre 3. Histoires de cycles

b

a

Fig. 3.18 { Certains cycles ne pr�esentent pas de r�eel int�eret en chimie.

cherch�e �a d�eterminer (( l'ensemble des cycles chimiquement valides )). Il s'agit en fait

d'un ensemble de cycles g�en�erateur mais rarement libre.

�Evaluer la validit�e chimique d'un cycle est une tache particuli�erement di�cile.

Le fait que certains atomes appartiennent �a un cycle, d�e�nit sur ces atomes tout un

ensemble de propri�et�es aussi bien physiques que chimiques. Mais pour que de telles

propri�et�es apparaissent, il faut que le cycle soit relativement simple, c'est �a dire qu'il

ne soit pas d�ecomposable en une multitude de cycles plus petits. Dans le graphe

mol�eculaire de la �gure 3.18, il existe un cycle contenant les atomes a et b. Mais

l'existence de ce cycle n'�etablit aucune relation chimique particuli�ere entre ces deux

atomes.

Nous commencerons l'�etude des cycles chimiquement valides par la pr�esentation

de quelques d�e�nitions de ((bases minimales �etendues )). Il s'agit d'ensembles obtenus

par l'adjonction de cycles particuliers �a une base minimale pr�ealablement calcul�ee.

Il va sans dire que ce concept est �etroitement li�e �a l'utilisation �nale de l'ensemble

de cycles obtenu. �A ce titre, nous nous int�eresserons surtout au point de vue de

la synth�ese en chimie organique. Il est d'autant plus di�cile d'analyser les articles

consacr�es �a ce sujet que ces derniers ne pr�ecisent pas toujours l'int�eret r�eel que

pr�esente leur approche par rapport �a un objectif particulier. Quant �a la complexit�e

des m�ethodes employ�ees, elle est souvent oubli�ee au pro�t d'une �etude de validit�e

bas�ee sur l'int�egration de contre-exemples connus.

Nous allons donc �etudier quelques travaux signi�catifs en essayant d'en montrer

l'int�eret mais aussi les limites. Ce rapide �etat de l'art devrait nous permettre de

mieux cerner le sens de la (( validit�e d'un cycle )). Nous pourrons ensuite discuter de

la di�cult�e li�ee �a la d�e�nition de ce concept et proposer une notion originale de

(( cycle pertinent )) dans la prochaine section.

Page 84: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.6. Bases de cycles �etendues 77

3.6.1 Ajout de tous les cycles de longueur donn�ee

Dans la mesure o�u la plupart des cycles qui ont un int�eret en chimie organique sont

de petite taille, les premiers algorithmes rajoutaient tous les cycles inf�erieurs �a une

certaine longueur. C'est ce que font [Wipke et Dyott, 1975] et [Corey et Petersson,

1972] avec les cycles de taille au plus �egale �a 8 pour Wipke et 6 pour Corey.

Il faut cependant remarquer que si cette d�emarche �a l'avantage d'etre relativement

simple, elle peut etre facilement mise en d�efaut. Paradoxalement, c'est le principe

meme utilis�e pour la justi�er qui peut servir �a en montrer les limites. En e�et, s'il

est exact de dire que bon nombre de cycles chimiquement valides sont de petite

taille, il faut aussi pr�eciser que, dans le cadre de la chimie organique, il n'est pas rare

de rencontrer des mol�ecules o�u presque tous les cycles ne contiennent pas plus de 8

atomes. La mol�ecule du cubane 9, par exemple, ne contient que 6 cycles chimiquement

valides qui sont tous de taille 4. Les autres cycles (de taille 6 et 8) devraient etre

�elimin�es parce que dans un tel contexte, les m�ethodes g�en�eralement employ�ees pour

les synth�etiser ne fonctionnent pas. Ce probl�eme est d'autant plus genant que la taille

maximale servant �a s�electionner les cycles devrait aujourd'hui d�epasser le nombre 8.

En e�et, celle limite est �etroitement li�ee �a l'avanc�ee des connaissances en synth�ese

organique. Elle correspond plus pr�ecis�ement �a la longueur du plus grand cycle que

l'on sait construire au cours d'une synth�ese. Bien que les cycles poss�edant entre 8

et 11 atomes aient toujours �et�e di�ciles �a construire, les progr�es r�ealis�es dans les

m�ethodes de synth�ese depuis vingt ans n'autorisent plus le rejet syst�ematique de tels

cycles. Au del�a de 11 atomes, il existe �egalement des m�ethodes de construction qui

permettent de synth�etiser des cycles de grande taille.

L'ajout dans une base minimale de tous les cycles inf�erieurs �a une longueur don-

n�ee n'a donc plus beaucoup de sens aujourd'hui. �A plus ou moins court terme, cet

ensemble de cycles sera �equivalent �a celui des cycles �el�ementaires et ce quelle que

soit la mol�ecule �etudi�ee.

9. Le cubane est une mol�ecule de formule C8H16 dont les 8 atomes de carbone sont agenc�es de

mani�ere �a former un cube.

Page 85: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

78 Chapitre 3. Histoires de cycles

N

N

N

Fig. 3.19 { Les cycles en gras sont (( d�ependants )) puisqu'ils peuvent etre couverts

par un ensemble de cycles li�es v�eri�ant les 4 propri�et�es.

3.6.2 ESER

C'est �a partir de crit�eres principalement issus de la chimie que [Fujita, 1987]

d�e�nit l'ensemble ESER (Essential Set of Essential Rings). Cette d�e�nition est bas�ee

sur la notion de (( cycle li�e )) (tied cycle) qui d�esigne un cycle poss�edant au moins une

corde. Un cycle C est ((d�ependant )) s'il existe un ensemble de cycles li�es tel que : 1.

l'ensemble des aretes de tous les cycles li�es couvre le cycle C; 2. la taille de chaque

cycle li�e est au plus �egale �a celle de C; 3. chaque cycle li�e est compos�e au moins

pour moiti�e d'aretes de C. 4. chaque cycle li�e contient au plus le meme nombre

d'h�et�eroatomes (N, P, O ou S) que C. L'ensemble ESER est obtenu par �elimination

des cycles d�ependants ou li�es �a partir de l'ensemble de tous les cycles �el�ementaires

pr�ealablement calcul�e.

La �gure 3.19 donne ainsi deux exemples de cycles ((d�ependants )).

Pour la mol�ecule de gauche, la ((d�ependance )) du cycle en gras s'appuie sur deux

cycles li�es contenant chacun un atome d'azote (i.e. N). Quant au cycle de taille 6 (en

gras) dans le graphe de droite, il est lui aussi ((d�ependant )) puisque les trois cycles

li�es de taille 4 v�eri�ent les propri�et�es de la d�e�nition. Sur ce meme graphe, le second

cycle de taille 6 (face centrale) est �egalement d�ependant. De ce fait, l'ensemble ESER

de ce graphe ne contiendra que les cycles de taille 3. Pourtant, toute base minimale

doit int�egrer au moins un cycle de taille 6. Il existe donc des graphes pour lesquels

l'ensemble ESER ne contient meme pas une base minimale du graphe.

Outre la recherche de tous les cycles �el�ementaires, l'algorithme de Fujita n�eces-

site la d�etermination de tous les cycles li�es. Cela entra�ne donc une complexit�e non

n�egligeable. Si l'ensemble ESER contient bon nombre de cycles chimiquement va-

Page 86: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.6. Bases de cycles �etendues 79

Fig. 3.20 { Les cycles en gras font partie de l'ensemble ESER puisqu'ils ne sont pas

d�ecomposables en cycles li�es.

lides, il en est d'autres qui ne pr�esentent pas de r�eel int�eret. Quant �a l'utilisation de

l'ensemble des cycles li�es, elle ne semble pas tr�es justi��ee. Un cycle peut etre chi-

miquement inint�eressant sans pour autant constituer la somme de cycles li�es. (voir

�gure 3.20).

3.6.3 ESSR

La troisi�eme m�ethode que nous allons �etudier est plus proche de la th�eorie des

graphes. �Elabor�ee par [Downs et al., 1989b; Downs et al., 1989c], cette d�emarche

�etudie les projections planaires d'un graphe mol�eculaire pour d�e�nir l'ensembleESSR

(Extended Set of Smallest Rings). Elle repose sur l'id�ee intuitive selon laquelle les

faces d'une repr�esentation planaire sont proches des cycles minimaux d'une base.

Cette similitude n'est cependant pas compl�ete comme nous l'avons vu �a propos de

la recherche d'une base minimale (voir �gure 3.8).

L'ensemble ESSR calcul�e contient tout d'abord l'ensemble des ((faces simples)) :

cycles sans cordes constituant une face d'au moins une projection planaire. Cet en-

semble n'est pas su�sant puisque certains cycles importants ne peuvent pas appa-

ra�tre sous la forme de faces simples. Les auteurs d�e�nissent alors les ((faces coup�ees))

correspondant aux cycles sans cordes qui ne sont pas des faces simples. Parmi ces

cycles, ils isolent les ((faces coup�ees primaires)) qui sont contigu�es �a au moins une

face simple de taille sup�erieure ou �egale (voir �gure 3.21).

Page 87: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

80 Chapitre 3. Histoires de cycles

Fig. 3.21 { Le cycle de taille 4 (en gras) constitue une ((face coup�ee primaire ))

puisqu'il est contigu �a au moins une ((face simple )) de taille 5.

e d

c

ba

f

e

f

d

ba

c

Fig. 3.22 { Les cycles en gras correspondent �a des faces simples suivant la d�e�nition

relative au ESSR (la repr�esentation planaire correspondante s'obtient en repla�cant

les aretes en trait �n par celles en pointill�es).

L'algorithme utilis�e pour d�eterminer l'ensemble ESSR est inspir�e de celui de [Za-

mora, 1976] dont la troisi�eme phase a �et�e largement compl�et�ee. Le test d'arret n'�etant

plus bas�e sur le nombre cyclomatique, le nombre total de cycles �nalement retenus

reste di�cile �a �evaluer. De plus, il n'est pas du tout �evident que toute face d'une

repr�esentation planaire corresponde �a un cycle chimiquement valide. La �gure 3.22

donne deux exemples de cycles qui tout en �etant des ((faces simples)) ne sont pas tr�es

int�eressants.

Page 88: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.6. Bases de cycles �etendues 81

Fig. 3.23 { Un contre-exemple de la conjecture de Elk.

Le probl�eme des projections planaires d'un graphe a �egalement �et�e �evoqu�e par

[Elk, 1985]. Il consid�ere que le crit�ere de planarit�e du graphe mol�eculaire n'est pas

pertinent en chimie. Le cubane, par exemple, est un graphe planaire bien qu'une telle

projection n'ait pas de sens dans le cadre de la chimie. Elk conjecture, �a tort, que tous

les graphes 3-r�eguliers 10 correspondent �a des ((entit�es)) de dimension trois. C'est �a

dire que tout graphe 3-r�egulier ne peut etre repr�esent�e dans le plan de telle sorte que

toutes les aretes soient des segments de droite disjoints et de meme longueur. Cette

jolie conjecture est pourtant fausse comme le montre la �gure 3.23. Cette notion

de ((planarit�e avec des segments de droite de meme longueur )) ne semble d'ailleurs

pas tr�es utile pour la recherche de cycles chimiquement valides. Elle peut permettre

d'�eliminer certaines faces dont la repr�esentation planaire associ�ee ne v�eri�e pas cette

propri�et�e (comme les deux cycles de la �gure 3.22). Mais elle interdit aussi la prise

en compte de cycles importants dans des syst�emes cycliques complexes pour lesquels

toute repr�esentation planaire n�ecessite des segments de di��erentes longueurs. Elle se

heurte en�n au probl�eme des cycles valides qui ne peuvent appara�tre comme face

d'une repr�esentation planaire (comme le cycle de taille 4 dans la �gure 3.8).

Il est donc peu probable que la planarit�e du graphe mol�eculaire puisse jouer un

grand role dans l'�etude des cycles de la mol�ecule. On peut meme se demander si

les tentatives infructueuses que nous avons �etudi�ees ne sont pas li�ees �a une certaine

confusion entre deux notions fondamentalement distinctes : d'une part la repr�esen-

tation d'un graphe mol�eculaire planaire et d'autre part la projection dans un plan

de l'objet tridimensionnel que constitue la mol�ecule. Seule cette deuxi�eme notion est

10. un graphe est 3-r�egulier si tous ses sommets sont de degr�e 3.

Page 89: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

82 Chapitre 3. Histoires de cycles

susceptible de fournir un crit�ere e�cace pour s�electionner les cycles chimiquement

int�eressants. Mais son utilisation ne semble pas facile, ce qui expliquerait cette vaine

recherche de propri�et�es spatiales dans un graphe mol�eculaire qui ignore sciemment

les coordonn�ees des atomes.

3.6.4 SER

Nous terminerons cette �etude des bases de cycles �etendues par la pr�esentation des

travaux de [Takahashi, 1994]. Ce dernier d�e�nit l'ensemble SER (Set of Elementary

Rings o�u le terme ((Elementary)) n'a rien �a voir avec la notion de cycle �el�ementaire).

Cette d�e�nition est bas�ee sur le concept de (( �-graphe )). Un �-graphe est un graphe

connexe dont tous les sommets poss�edent 2 voisins �a l'exception de deux sommets

non adjacents qui sont de degr�e 3. Un tel graphe est donc induit par deux cycles

partageant au moins deux aretes contigu�es.

L'ensemble SER est construit �a partir d'une base de taille minimale. Pour chaque

paire de cycles (C1, C2), si le sous-graphe partiel induit par C1 [ C2 est un �-graphe

alors le cycle C1 + C2 est ajout�e �a l'ensemble SER. Ce processus est r�eit�er�e avec

le nouvel SER jusqu'�a ce que cet ensemble soit stable (voir �gure 3.24). Bien que

cette d�e�nition donne de bons r�esultats pour des mol�ecules relativement simples,

elle a le facheux inconv�enient de s�electionner des cycles sans grand int�eret. Dans

la �gure 3.24, les cycles C1+C2+C3 et C1+C2+C3+C4 sont construits par cette

m�ethode bien que leur pertinence soit plus que douteuse.

3.7 Cycles pertinents

Comme nous avons pu le voir dans le paragraphe pr�ec�edent, la recherche d'un

sous-ensemble de cycles importants reste tr�es di�cile �a d�e�nir. Pourtant, bien que

la validit�e chimique d'un cycle soit tr�es subjective, cette perception des syst�emes

cycliques est indispensable �a toute analyse approfondie des graphes mol�eculaires. Le

probl�eme r�eside alors dans la recherche de modes de repr�esentation qui mettent en

valeur les cycles potentiellement les plus importants tout en permettant la g�en�eration

de tous les autres cycles.

Page 90: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.7. Cycles pertinents 83

+

C1C1 + C2

C2

C1 + C2 + C3

+

C4

+

C3

C1 + C2 + C3 + C4

Fig. 3.24 { Quelques cycles ajout�es au SER pour la mol�ecule de la �gure 3.1.

3.7.1 Limite d'une mod�elisation des mol�ecules �a l'aide de

graphes

Bien que la plupart des mol�ecules correspondent �a des graphes planaires, elles

constituent avant tout des objets tridimensionnels. Nous avons d�ej�a vu que la re-

pr�esentation planaire du graphe mol�eculaire n'a que peu de rapport avec une r�eelle

projection planaire de la mol�ecule. Il su�t de s'int�eresser au probl�eme du dessin des

mol�ecules pour voir �a quel point ces deux notions di��erent. Le cadre ((traditionnel))

de la th�eorie des graphes semble ainsi mal adapt�e �a la mod�elisation d'objets tridi-

mensionnels. On peut certes envisager le recours �a des mod�eles de graphes plus com-

plexes, comme les ((graphes topologiques)) qui int�egrent des informations suppl�emen-

taires d'ordre topologique (d�e�nition d'un ordre circulaire sur les aretes incidentes �a

un sommet, notion d'arete reliant des faces contigu�es, etc.).

On peut aussi associer une valuation au graphe a�n de mod�eliser la (( longueur ))

des aretes. Mais cette valuation n'a de sens que dans la mesure o�u elle repr�esente

bien l'�eloignement entre deux sommets. Par exemple, on peut tr�es bien mod�eliser une

carte routi�ere �a l'aide d'un graphe valu�e. Si l'on se d�eplace en voiture, la distance �a

vol d'oiseau n'a pas grand int�eret. Seule compte la longueur des routes repr�esent�ees

Page 91: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

84 Chapitre 3. Histoires de cycles

par les aretes. Une cha�ne dans le graphe mod�elise alors tr�es bien un trajet �a travers

le r�eseau routier. Nous pouvons ainsi �enoncer cette �evidence : la th�eorie des graphes

n'est pertinente que lorsqu'elle est appliqu�ee �a des entit�es qui se r�eduisent �a des

ensembles de sommets et d'aretes, c'est-�a-dire �a des graphes !

Il va sans dire que ce n'est pas enti�erement le cas en chimie. Pour pouvoir r�eel-

lement �evaluer l'int�eret chimique d'un cycle, il faudrait au moins l'�etudier dans le

cadre d'un espace vectoriel de dimension 3. Mais une telle mod�elisation ne serait cer-

tainement pas satisfaisante sans avoir recours, �a son tour, �a d'autres th�eories (pour

tenir compte, par exemple, des interactions atomiques). Et c'est ici qu'appara�t tout

l'int�eret en chimie de la th�eorie des graphes. Si une mol�ecule n'est pas un graphe, son

�etude dans le cadre de cette th�eorie permet de r�ealiser certaines analyses de fa�con

tr�es e�cace. On peut ainsi d�e�nir un mod�ele des syst�emes cycliques qui soit satisfai-

sant dans la majorit�e des cas. Mais il ne faut pas esp�erer retrouver dans un graphe

toutes les propri�et�es spatiales voire �electroniques qui d�e�nissent l'importance de tel

ou tel cycle. Aussi rigoureuse soit-elle, toute d�e�nition issue de la th�eorie des graphes

ne peut etre enti�erement satisfaisante du point de vue de la chimie. Faute de recon-

na�tre cette in�evitable imperfection, on aboutit immanquablement �a des d�e�nitions

bancales qui sacri�ent g�en�eralit�e et coh�erence au pro�t de quelques cas particuliers.

C'est donc en respectant ce pr�ecepte que nous allons tenter de d�eterminer l'ensemble

des cycles pertinents d'une mol�ecule.

3.7.2 D�e�nition de la pertinence d'un cycle

L'�etude de divers travaux portant sur des bases minimales �etendues nous a montr�e

qu'aucune notion universelle n'a pu etre d�e�nie jusqu'�a pr�esent. Toutes ces tentatives

ont cependant le m�erite de proposer une d�e�nition plus ou moins formelle d'une

notion de validit�e chimique pour le moins abstraite. Ce relatif �echec est en partie li�e

�a la multitude de points de vue que l'on peut rencontrer en chimie. Si nous n'avons

pas encore �enonc�e dans ce chapitre de d�e�nition pr�ecise de la ((pertinence chimique

d'un cycle )), c'est justement parce qu'il n'existe pas de d�e�nition universelle. Chaque

expert poss�ede son propre point de vue qui lui-meme d�epend du type d'analyse

r�ealis�ee.

Page 92: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.7. Cycles pertinents 85

Pour r�esoudre ce probl�eme par une unique d�e�nition, nous pouvons adopter deux

d�emarches. La premi�ere consiste �a d�eterminer l'ensemble des cycles qui peuvent etre

jug�es importants selon au moins un point de vue. Cette m�ethode est peu r�ealiste

puisqu'elle suppose que l'on conna�t tous les points de vue possibles. Elle aurait aussi

pour cons�equence de d�e�nir un ensemble de cycles tr�es proche de celui de tous les

cycles �el�ementaires. La d�emarche oppos�ee s'attache �a reconna�tre les cycles qui sont

importants pour presque tous les points de vue. Elle permet d'�etablir un consensus

�a partir duquel on peut toujours d�e�nir un ensemble de cycles plus important qui

r�eponde �a un besoin pr�ecis.

Nous avons vu dans le paragraphe pr�ec�edant que le second �ecueil dans notre quete

de la d�e�nition id�eale est directement li�e �a la mod�elisation des mol�ecules sous forme

de graphes. Nous devons donc chercher une d�e�nition qui ait un sens dans le cadre

de la th�eorie des graphes.

�A partir de ces deux remarques, nous pouvons uni�er l'ensemble des notions de

cycle chimiquement important par la propri�et�e suivante :

Tout cycle qui ne constitue pas la somme de cycles strictement plus petits

que lui est chimiquement pertinent.

Cette constatation nous conduit �a la d�e�nition suivante :

C 2 C est pertinentdef() 9/ C1; C2; :::; Ck 2 C tels que

8>><>>:8i 2 [1::k]; jCij < jCj

et

C = C1 + C2 + :::+ Ck

Cette d�e�nition correspond �a l'ensemble des cycles qui sont pertinents relative-

ment �a n'importe quel point de vue. Il est important de noter que cet ensemble est

unique pour un graphe G donn�e. Cette d�e�nition s'inscrit pleinement dans le cadre

de la th�eorie des graphes. Elle est d'ailleurs tr�es proche de la notion de base minimale.

Notons CP l'ensemble des cycles pertinents.

Propri�et�e 1 CP =Union des bases de cycles de G de taille minimale.

D�emonstration

Tout cycle appartenant �a une base minimale est n�ecessairement pertinent

puisque dans le cas contraire la base ne serait pas minimale. A l'inverse,

Page 93: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

86 Chapitre 3. Histoires de cycles

C2C1a

h

a

db ci

lef

g

k

j

h

Fig. 3.25 { Tous les cycles de taille 6 de ce graphe sont pertinents puisqu'ils appar-

tiennent �a au moins une base minimale.

soit C un cycle de CP et B une base de taille minimale.

Posons C = B1 + :::+Bk avec 8i; Bi 2 B.

Puisque C est pertinent et B minimale, il doit exister un cycle Bi tel que

jBij = jCj. L'ensemble de cycles (B n fBig ) [ fCg constitue donc une

base de cycles de taille �egale �a celle de B 2

Ainsi, pour le graphe de la �gure 3.25, tous les cycles de taille 6 seront consid�er�es

comme pertinents. Par contre, dans une base minimale, on ne retiendrait que deux

cycles parmi C1 = [a; b; c; h; g; f; a], C2 = [c; d; e; f; g; h; c] et C3 = [a; b; c; d; e; f; a].

C'est pour cette raison que l'on ne peut pas se contenter d'une simple base minimale.

Si l'on choisit les cycles C1 et C2, le sommet h appartient �a deux cycles de la base

alors que le sommet a n'appara�t que dans un seul. Cette distinction n'a pas de sens

puisque h occupe une position sym�etrique �a celle de a.

L'utilisation de l'union des bases de cycles de taille minimale a d�ej�a �et�e sugg�er�ee

par [Plotkin, 1971] pour rechercher les cycles chimiquement importants. Mais l'heu-

ristique qu'il propose pour calculer cet ensemble de cycles ne fonctionne que pour

des graphes relativement simples et avec un temps de calcul parfois exponentiel. Un

autre article �evoquant le probl�eme de la non unicit�e des bases minimales a �et�e pu-

bli�e par [Roos-Kozel et Jorgensen, 1981]. Ces derniers sugg�erent d'ajouter �a la base

minimale les cycles �equivalents �a ceux qui ont �et�e s�electionn�es. Malheureusement, la

m�ethode particuli�erement confuse qu'ils proposent �a cet e�et ne semble pas garan-

Page 94: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.7. Cycles pertinents 87

u

vyx

b d

ca

w

Fig. 3.26 { Suivant la d�e�nition des cycles pertinents, l'ensemble CP inclut 2n4 cycles

de longueur 3n4( [x; b; u; v; d; w; :::; y; :::; x]; [x; a; u; v; d; w; :::; y; :::; x]; etc).

tir l'obtention de l'union des bases minimales. Il ne semble donc pas tr�es utile de

pr�esenter ici ces deux d�emarches qui peuvent souvent etre mises en �echec.

La principale cons�equence de la propri�et�e 1 r�eside dans le fait que le nombre total

de cycles pertinents d'un graphe peut s'av�erer tr�es important. Si dans le cas d'un

graphe complet le nombre de cycles obtenus reste polynomial (il est alors �egal au

nombre de cycles de taille 3), il existe des graphes pour lesquels le nombre de cycles

pertinents est exponentiel par rapport au nombre de sommets. La �gure 3.26 donne

un exemple de graphe de ce type. Chaque base minimale contient tous les n4 cycles

de taille 4 et un cycle �el�ementaire quelconque de longueur 3n4 . Comme tous les cycles

de ce type appartiennent �a une base minimale, ils sont tous pertinents.

Notons au passage que la plupart des d�e�nitions de bases �etendues que nous

avons �etudi�ees se heurtent au meme probl�eme. Ainsi, l'ensemble ESER associ�e �a la

�gure 3.26 contiendrait lui aussi un nombre exponentiel de cycles puisque ce graphe

ne poss�ede pas de (( cycles li�es )) (il n'y a pas de cordes). De meme, chaque cycle �el�e-

mentaire de taille 3n4 est une (( face simple )) de ce graphe et fait donc partie de l'en-

semble ESSR. Quant �a l'ensemble SER, il contient aussi tous ces cycles qui peuvent

etre obtenus �a partir d'une base minimale par une s�erie de sommes de deux cycles

(un grand et un petit) formant un (( �-graphe )).

L'existence de ce type de graphe ne doit pas masquer l'int�eret des cycles per-

tinents. Pour certains domaines, comme la chimie organique, de tels graphes sont

exceptionnels voire impossibles. La mol�ecule du pagodane (�gure 3.1) ne contient

par exemple que 13 cycles pertinents. De plus, nous allons montrer qu'il existe un

algorithme permettant de d�eterminer CP sous la forme d'un nombre polynomial de

familles de cycles. L'ensemble de ces familles constitue une partition de CP. L'al-

Page 95: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

88 Chapitre 3. Histoires de cycles

gorithme que nous allons proposer permet d'exhiber pour chaque famille un cycle

prototype ainsi que le nombre total de cycles qu'elle contient. On peut alors �enum�erer

tous les cycles pertinents en O(n jCP j).

L'algorithme construisant CP est inspir�e de la variante de celui de Horton que

nous avons propos�ee au paragraphe 3.4.3.3. Nous consid�ererons que le graphe trait�e

est 2-connexe (dans le cas contraire, la recherche des cycles est appliqu�ee �a chaque

composante 2-connexe).

Notre algorithme commence par d�eterminer un ensemble initial de cycles not�e

C0

I . Cet ensemble est construit comme CI �a l'aide de parcours en largeur �a partir de

chaque sommet de degr�e au moins �egal �a 3. Nous utilisons en e�et un ordre � sur

les sommets du graphe pour �eviter les occurrences multiples de cycles (on ne retient

pour chaque sommet racine que les cycles compos�es de sommets plus petits que lui

relativement �a l'ordre �). Cet ordre est d�e�ni par une extension lin�eaire de l'ordre

partiel induit par le degr�e des sommets du graphe. On ne peut donc pas trouver de

cycle �a partir d'un sommet de degr�e 2. L'ensemble C0

I peut contenir plus de cycles

que CI mais sa taille reste polynomiale par rapport au nombre de sommets.

La deuxi�eme partie de l'algorithme extrait de C0

I tous les cycles qui sont perti-

nents. On en d�eduit alors autant de familles de cycles qui constituent des parties de

l'ensemble CP .

Pr�ecisons en�n qu'une version de cet algorithme adapt�ee aux graphes valu�es est

pr�esent�ee dans l'annexe A.

3.7.3 Construction d'un ensemble initial C0

I

Pla�cons nous dans le cadre d'un parcours en largeur �a partir d'un sommet r.

Soient p et q deux sommets de Xr11, reli�es �a r par au moins une cha�ne minimale

ne contenant que des sommets de Xr, tels que dist(r; p) = dist(r; q) et qui v�eri�ent

la propri�et�e relative au parcours ancetr(p) \ ancetr(q) = ?.

Deux cas peuvent se pr�esenter :

� Si fp; qg 2 E, on cr�ee un seul cycle impair [r; ::; p; q; ::; r] (voir 1 );

11.Xr �etant l'ensemble des sommets de X qui pr�ec�edent r dans l'ordre �

Page 96: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.7. Cycles pertinents 89

� Sinon on cr�ee autant de cycles pairs [r; ::; p; x; q; ::; r] qu'il y a de sommets x 2 Xr

tels que dist(r; x) = dist(r; p) + 1 et fp; xg; fq; xg 2 E (voir 2 ).

r xx'

p

q

p

q

r

p

q

xp'r

1 2 3

Cette d�emarche est di��erente de celle employ�ee pour construire l'ensemble CIdans la variante de l'algorithme de Horton. En e�et, s'il existe un sommet p0 tel que

ancetr(p0) \ ancetr(q) = ?, on ajoutera deux cycles �a C0I contenant l'arete fq; xg

(voir 3 ). Lors de la construction de CI , on n'en conserverait qu'un seul.

L'utilisation d'un ordre � sur les sommets permet d'�eviter la g�en�eration de cycles

identiques (on restreint la recherche aux sommets x tels que �(x) � �(r)) . De ce

fait, le parcours peut etre interrompu d�es que tous les sommets situ�es �a la p�eriph�erie

de l'ensemble explor�e n'appartiennent pas �a Xr.

Pour d�eterminer le nombre de cycles pertinents, nous aurons besoin d'�evaluer le

nombre r(x) de cha�nes minimales reliant dans G un sommet x �a la racine r et qui

constituent des sous-graphes partiels de Gr. Soit, plus formellement :

8x 2 Xr; r(x) = j f� = [r; y1; :::; yk; x] tel que j�j = dist(r; x) et 8z 2 �; z 2 Xr g j

Pour tout sommet x de Xr, d�e�nissons l'ensemble p�eresr(x) :

p�eresr(x) =

(z 2 Xr \ �(x) tel que

����� il existe une cha�ne minimale [r; :::; z; x]

dans G qui est incluse dans Gr

)

On v�eri�era alors ais�ement la propri�et�e suivante :

8x 2 Xr; r(x) =X

z2p�eresr(x)

r(z)

A partir de l'ensemble p�eresr(x) nous d�e�nissons l'ensemble �egaux(x) :

8x 2 Xr; �egaux(x) = fz 2 Xr \ �(x) tel que p�eresr(z) 6= ? et dist(r; x) = dist(r; z)g

Nous pouvons maintenant �enoncer l'algorithme de construction de C0

I . Cet algo-

rithme construit l'ensemble C0

I en utilisant la proposition 1 sur les (( ancetres )) qui

Page 97: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

90 Chapitre 3. Histoires de cycles

s'av�ere ici particuli�erement int�eressante (le cardinal de C0

I �etant g�en�eralement plus

important que celui de CI ).

1. Pour tout r 2 X faire :

2. Pour tout x 2 X faire : niveau(x) +1; p�eresr(x) ?; �egaux(x) ? fpour

3. r(r) 1; p�eresr(r) frg; sph�ere frg; niveau(r) 0; explor�es ?

4. Tantque sph�ere \Xr 6= ? faire :

5. copie sph�ere sph�ere; sph�ere ?

6. Pour x 2 copie sph�ere faire :

7. Pour y 2 �(x) faire :

8. Si niveau(x) < niveau(y) Alors :

9. si y 2 Xr et p�eresr(x) 6= ? alors p�eresr(y) p�eresr(y) [ fxg fsi

10. niveau(y) niveau(x) + 1; sph�ere sph�ere [ fyg

11. Sinon :

12. si p�eresr(y) 6= ? et p�eresr(x) 6= ? alors �egaux(y) �egaux(y) [fxg

13. 8p; q 2 p�eresr(x) tels que ancetr(p) \ ancetr(q) = ?

ajouter le cycle pair [r; :::; p; x; q; :::; r] �a C0

I14. 8e 2 �egaux(x) \ explor�es tel que ancetr(e) \ ancetr(x) = ?

ajouter le cycle impair [r; :::; x; e; :::; r] �a C0

I15. explor�es explor�es [ fxg;

16. choisir une cha�ne r! x parmi les p�eresr(x)

17. r(x) =P

z2 p�eresr(x) r(z)

En terme de complexit�e, nous pouvons �enoncer le th�eor�eme suivant :

Th�eor�eme 2 L'ensemble C0

I contient O(m2) cycles.

D�emonstration L'ensemble C0

I est compos�e soit de O(nm) cycles im-

pairs reliant un sommet r �a une arete (p; q) (cf. ligne 13), soit de cycles

pairs joignant r et x (cf. ligne 14).

Le nombre de cycles pairs est major�e parP

r2XP

x2Xrjp�eresr(x)j2.

Si l'ensemble des sommets de G est class�e dans l'ordre des degr�es crois-

sants (i.e. 8x 2 Xr; d(x) � d(r) ), on peut aussi majorer le nombre de

cycles pairs de C0

I parP

r2X (d(r) �P

x2Xrd(x)) � m2

2

Page 98: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.7. Cycles pertinents 91

Les divers parcours en largeur e�ectu�es par la r�ep�etitive globale de la ligne 1 sont

r�ealis�es en O(nm). Le calcul des ensembles ancetr(x), pour x 2 Xr, est e�ectu�e en

O(� m), comme au paragraphe 3.4.3.3.

La m�emorisation de la cha�ne choisie entre r et x �a la ligne 16, correspond en fait

�a la construction d'un arbre recouvrant dont r est la racine. Elle est donc directement

r�ealis�ee par le parcours en largeur issu de r et n�ecessite un espace m�emoire en O(n2)

pour la totalit�e des parcours.

Pour m�emoriser chaque cycle il su�t de conserver un quadruplet r; p; q; x (resp.

un triplet r; p; q) pour chaque cycle pair (resp. impair) dans la mesure o�u les cha�nes

vers r sont d�ej�a m�emoris�ees.

Pour v�eri�er si un cycle peut etre �elimin�e grace �a la proposition 1 sur les ancetres,

on calcule l'intersection de deux ensembles ancetr en O(d(r)). Le cardinal de C0

I �etant

au plus �egal �a m2, on obtient une complexit�e globale de l'algorithme en O( dmaxm2 ).

Lorsque le degr�e des sommets du graphe est born�e, la complexit�e se r�eduit �a O(m2).

3.7.4 D�etermination de CP sous la forme d'un ensemble de

familles de cycles

La deuxi�eme phase de l'algorithme de construction de CP consiste �a rechercher

l'ensemble des cycles pertinents contenus dans C0

I .

Pour ce faire, nous allons construire une base de cycles de taille minimale.

Soit B = fB1; B2; :::; B�g cette base minimale ordonn�ee de fa�con �a ce que pour

tout i 2 [2::�]; jBij � jBi�1j.

Soit C un cycle de C0

I . Notons Bk le cycle de B de taille strictement inf�erieure �a

celle de C et dont l'indice dans B est le plus grand.

Proposition 2 C est pertinent , fC;B1; B2; :::; Bkg est un ensemble libre

L'int�eret de cette proposition est de permettre la v�eri�cation de la pertinence

d'un cycle de fa�con polynomiale. La recherche d'un ensemble de cycles susceptibles

de montrer la non pertinence d'un cycle C peut ainsi se limiter aux cycles plus petits

que C faisant partie d'une base minimale.

La d�emonstration de cette proposition ne pr�esente pas de di�cult�e particuli�ere.

L'implication \C pertinent ) fC;B1; B2; :::; Bkg libre" est une cons�equence de la

Page 99: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

92 Chapitre 3. Histoires de cycles

d�e�nition de la notion de pertinence. Quant �a la r�eciproque, elle peut se montrer de

la fa�con suivante :

Supposons que C ne soit pas pertinent. Il existe alors un ensemble de

cycles C1; C2; :::Ct tels que : 8i 2 [1::t]; jCij < jCj et C = C1+C2+:::+Ct

Pour tout cycle Ci, si l'ensemble fCi; B1; B2; :::; Bkg �etait libre alors Ci

serait la somme d'�el�ements de B, dont au moins un cycle d'indice su-

p�erieur �a k. En rempla�cant ce cycle par Ci dans B, on obtiendrait une

base de taille inf�erieure �a celle de B (puisque Ci < C < Bk+1), ce qui est

contraire �a l'hypoth�ese initiale de base minimale.

Donc 8Ci; fCi; B1; B2; :::; Bkg est un ensemble li�e.

Cela entra�ne que fC;B1; B2; :::; Bkg est li�e, ce qui est contraire �a l'hypo-

th�ese de d�epart 2

La recherche des cycles pertinents est e�ectu�ee lors de la construction d'une

base minimale B. Comme dans l'algorithme de Horton, on parcourt l'ensemble C0

Idans l'ordre des tailles croissantes en essayant d'ajouter un nouveau cycle �a la sous-

base minimale courante. La pertinence d'un cycle C est alors test�ee en v�eri�ant si

l'ensemble compos�e de C et des k cycles de B strictement plus petits que C constitue

un ensemble libre. Ce test peut etre r�ealis�e au moyen d'une �elimination gaussienne

sur la matrice de taille (k + 1) �m associ�ee �a cet ensemble.

Le parcours de C 0I s'arrete lorsque l'on a �etudi�e tous les cycles dont la taille est

au plus �egale �a celle du plus grand cycle de la base minimale compl�ete 12.

Durant l'�etude d'un cycleC, notons B< (respectivementB=) l'ensemble des cycles

de la sous-base courante qui ont une taille strictement inf�erieure (respectivement

�egale) �a celle de C. L'algorithme construisant CP \ C0

I peut alors s'�ecrire :

B< ?; Explor�es ?; R�esultat ?; taille 0;

R�ep�eter

C plus petit cycle de C0

I n Explor�es;

Explor�es Explor�es [ fCg;

Si jCj > taille Alors :

taille jCj; B< B< [ B=; B= ?;

12. Puisque 8 B1 et B2 deux bases de cycles de taille minimale, maxB2B1

jBj = maxB2B2

jBj.

Page 100: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.7. Cycles pertinents 93

Si B< [ fCg est ind�ependant Alors :

R�esultat R�esultat [ fCg;

Si B< [ B= [ fCg est ind�ependant Alors :

B= B= [ fCg;

Jusqu'�a (jB<j+ jB=j = �) et ( 9/ C 0 2 C0

I n Explor�es tel que jC0j = taille )

La taille de C0I �etant en O(m2) et chaque test de pertinence n�ecessitant au plus

O(� m) op�erations, l'ensemble C0I \ CP peut etre calcul�e en O(� m3).

Nous allons maintenant associer une famille de cycles �a chaque �el�ement de

l'ensemble C0I \ CP .

Consid�erons le cycle C = [r; ::; p; q; ::; r] (resp.[r; ::; p; x; ; q; ::; r]), de longueur im-

paire (resp. paire), construit �a partir des sommets r; p et q o�u r d�esigne le plus grand

sommet de C et p; q les sommets de C tels que dist(r; p) = dist(r; q) =j jCj�1

2

k. Le

cycle C est compos�e de deux cha�nes minimales [r:::p] et [r:::q] reli�ees par l'arete

fp; qg si C est impair ou par la cha�ne minimale [p; x; q] si C est pair.

Notons F(C) la famille des cycles pertinents associ�ee �a C d�e�nie comme suit :

F(C) =

(C 0 2 CP tel que

C 0 s'obtient en rempla�cant dans C les cha�nes (r:::p)

et (r:::q) par des cha�nes �equivalentes inclues dans Gr

)

Tous les cycles appartenant �a F(C) constituent des ((prototypes)) de cette famille.

On peut caract�eriser tout cycle C 0 de F(C) par le fait qu'il contient n�ecessairement :

� le sommet r tel que �(r) = miny2C0 �(y),

� deux cha�nes minimales [r:::p] et [r:::q] telles que dist(r; p) = dist(r; q) =j jCj�1

2

k,

� l'arete fp; qg si C est impair ou par la cha�ne minimale [p; x; q] si C est pair.

La famille F(C) est parfaitement repr�esent�ee par un triplet (C; H(r; p); H(r; q))

o�u H(r; p) d�esigne le sous graphe partiel de Gr compos�e de l'union des cha�nes mi-

nimales reliant r �a p en ne passant que par des sommets y tels que �(y) � �(r).

Le sous-graphe H(r; p) peut etre m�emoris�e lors de la construction de l'ensemble C0Isans modi�er la complexit�e de ce calcul et en utilisant un espace m�emoire en O(nm).

En e�et, comme toute sous-cha�ne d'une cha�ne minimale est n�ecessairement mi-

nimale, le sous-graphe H(r; x) associ�e �a un sommet x est forc�ement recouvert par le

sous-graphe H(r; y) correspondant �a un sommet y atteint depuis r en passant par x.

Page 101: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

94 Chapitre 3. Histoires de cycles

La m�emorisation de tous les H(r; x)x2Xr se fait donc en orientant Gr suivant le sens

inverse du parcours en largeur issu de r et en �eliminant les aretes qui n'apparaissent

dans aucun H(r; x).

On d�e�nit ainsi un graphe orient�e Dr = (Xr; U0

r) tel que :

U0

r = f (y; z) tel que y 2 Xr et z 2 p�eresr(y) g

rp

qy

z

z’

Ce graphe poss�ede deux propri�et�es majeures :

� il ne contient aucun circuit ,

� et 8x 2 Xr, tout chemin (x; :::; r) dans Dr correspond �a une cha�ne minimale

[r; :::; x] dans G.

L'�enum�eration des cycles pertinents appartenant �a la famille F(C) peut alors

etre facilement r�ealis�ee. Il su�t de parcourir le graphe orient�e Dr de fa�con �a obtenir

toutes les cha�nes minimales de G reliant r �a p et r �a q.

Pour ce faire, on d�e�nit la fonction r�ecursive suivante :

Fonction �Enum�erer Cha�nes( x; cha�ne courante)

ajouter x �a la �n de cha�ne courante;

Si x = r Alors Retourner(fcha�ne couranteg)

Sinon :

R�esultat ?;

Pour tout z tel que (x; z) 2 U0

r Faire

R�esultat R�esultat [ �Enum�erer Cha�nes(y, cha�ne courante);

Retourner(R�esultat)

Pour construire F(Crp;q), on commence par remplacer dans Cr

p;q la cha�ne [p; :::; r]

par chacune des cha�nes r�esultant de l'appel �Enum�erer Cha�nes(p, [ ]). Puis on rem-

place, dans chacun des cycles ainsi cr�e�es, la cha�ne [q; :::; r] par chacune des cha�nes

retourn�ees par �Enum�erer Cha�nes(q, [ ]).

Tous les cycles ainsi obtenus sont n�ecessairement pertinents. En e�et, si ce n'�etait

pas le cas, C ne pourrait pas appartenir �a C.

Page 102: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.7. Cycles pertinents 95

y4y2

C'

C

y3

z6z5z4z3z2z1

y5y1

Cycle impair

r

q

p

xr

p

q

Cycle pair

L'�enum�eration des cycles de F(C) est donc r�ealis�ee en O(dist(r; p) jF(C)j ).

Th�eor�eme 3 l'ensemble fF(C) gC 2C0I\CP constitue une partition de l'ensemble

des cycles pertinents.

Pour prouver ce th�eor�eme, il faut d'abord montrer que toutes les familles de cycles

construites �a partir de C0I \ CP sont disjointes. Cette propri�et�e d�ecoule directement

du mode de construction de C0I . En e�et, chaque famille F(C) est caract�eris�ee par le

cycle qui lui sert de prototype et plus pr�ecis�ement par le triplet r; p; q (ou le quadru-

plet r; p; q; x si l'arete fp; qg n'existe pas). Comme il ne peut y avoir d'occurrences

multiples dans C0I , toutes les familles de cycles sont bien disjointes.

Nous devons ensuite v�eri�er que tout cycle de CP appartient bien �a une famille.

Le cas des cycles appartenant aussi �a C0I est directement r�egl�e par construction. Il

nous reste �a prouver la proposition suivante :

Proposition 3 8 C 2 CP nC0

I il existe un unique C 0 2 CP \ C0

I tel que C 2 F(C 0).

D�emonstration

Soient r le plus grand sommet du cycle C et p; q les deux sommets de C

tels que dist(r; p) = dist(r; q) =j jCj�1

2

k.

Notons C 0 le cycle de C0

I construit �a partir du sommet r et de l'arete

fp; qg si C est impair ou bien de l'arete fp; xg ou fq; xg si C est pair. Par

construction de C0

I , le cycle C0 doit n�ecessairement avoir �et�e cr�e�e lors de

l'�etude du sommet r (C 0 est d'ailleurs unique).

Posons C \ C 0 = [r; y1; :::; yk�1; p; (x; )q; zr�1; :::z1] (avec r = z0 = y0; p =

yk et q = zr) o�u les sommets yi; i � 0 (resp. zj; j � 0) sont indic�es suivant

le sens de parcours r ! p (resp. r! q) dans C.

Le cycle C peut alors etre obtenu �a partir de C 0 en rempla�cant chaque

cha�ne [yi; ::; yi+1] (resp. [zj; ::; zj+1]) de C 0 par la cha�ne correspondante

Page 103: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

96 Chapitre 3. Histoires de cycles

dans C. Notons Cyi (resp. Cz

j ) le cycle engendr�e par l'union des cha�nes

[yi; ::; yi+1] (resp. [zj; ::; zj+1]) de C et de C 0. Tous ces cycles sont de

taille strictement inf�erieure �a celle de C. De plus, ils v�eri�ent l'�egalit�e

C = C 0 + Cy0 + :::+ Cy

k�1 + Cz0 + :::+ Cy

r�1.

Si C 0 n'�etait pas pertinent, il constituerait la somme de cycles strictement

plus petits que lui. D'o�u, d'apr�es l'�egalit�e pr�ec�edente, C 62 CP ce qui est

contraire �a l'hypoth�ese de d�epart. Donc C 0 2 CP 2

Nous venons d'�etudier les diverses �etapes d'un algorithme polynomial permettant de

d�eterminer une repr�esentation de l'ensemble CP correspondant �a l'union de toutes les

bases de cycles de taille minimale. Cet algorithme construit enO(� m3) un ensemble

de familles de cycles pertinents constituant une partition de CP . Chaque famille est

repr�esent�ee par un ensemble de sommets r; p; q (ou r; p; q; x) et un sous-graphe partiel

H(r) de G.

Tout l'int�eret de cet algorithme r�eside dans l'utilisation de ((prototypes)) pour re-

pr�esenter les familles de cycles de fa�con implicite. On peut ainsi manipuler un nombre

polynomial de cycles pertinents meme lorsque la taille de CP est exponentielle. Dans

un pareil cas, on veut g�en�eralement conna�tre un repr�esentant d'une famille de cycles

sans s'int�eresser pour autant �a tous les cycles qui lui sont �equivalents. La notion de

familles de cycles constitue en fait une description ((en intension)) de CP .

Reprenons, par exemple, le graphe de la �gure 3.26. En utilisant un ordre �

qui est une extension lin�eaire de l'ordre partiel induit par le degr�e des sommets,

on obtient un unique repr�esentant pour tous les cycles de taille 3n4 . La �gure 3.27

pr�esente l'ensemble des prototypes de familles de cycles pertinents pour ce graphe.

Chaque cycle de taille 4 appartient �a une famille dont il est l'unique membre. On

obtient donc �nalement un nombre polynomial de cycles pertinents qui d�ecrivent

parfaitement la structure cyclique du graphe.

De fa�con g�en�erale, l'ensemble des prototypes de familles permet d'�enum�erer tous

les cycles pertinents en O(n jCP j).

Grace �a l'utilisation des prototypes pour construire CP , le nombre de v�eri�cations

de la pertinence d'un cycle est toujours polynomial. Ces v�eri�cations se limitent en

e�et aux cycles de l'ensemble C 0I dont le cardinal est toujours en O(m2).

Page 104: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.7. Cycles pertinents 97

...

Fig. 3.27 { L'ensemble des ((prototypes )) de familles de cycles pertinents pour le

graphe de la �gure 3.26(page 87).

Nous allons maintenant montrer comment on peut d�eterminer le nombre de cycles

pertinents en temps polynomial, c'est-�a-dire sans avoir besoin de les �enum�erer.

3.7.5 D�etermination du nombre de cycles pertinents

3.7.5.1 Taille de CP

La d�ecomposition de CP en familles de cycles permet d'�evaluer la taille de cet

ensemble sans avoir besoin d'�enum�erer tous les cycles pertinents.

L'algorithme construisant C0

I d�etermine aussi le nombre r(x) de cha�nes mini-

males reliant r et x en ne traversant que des sommets plus petits que r.

Notons Crp;q un cycle de CP \ C

0

I construit �a partir du sommet racine r et des

sommets p et q d�e�nis comme pr�ec�edemment.Consid�erons la famille de cyclesF(Crp;q)

associ�ee �a Crp;q. D'apr�es la d�e�nition des familles de cycles, nous pouvons d�eterminer

le cardinal de F(Crp;q) en utilisant la fonction r :

j F(Crp;q) j = r(p) � r(q)

Puisque l'ensemble des familles de cycles engendr�ees par CP \ C0

I constitue une

partition de CP, nous pouvons �enoncer le r�esultat suivant :

j CP j =X

Crp;q 2CP \C0I

r(p)� r(q)

3.7.5.2 Nombre de cycles pertinents contenant un sommet donn�e

L'�etude des syst�emes cycliques est parfois utilis�ee pour comparer les atomes d'une

mol�ecule. Il peut etre ainsi tr�es int�eressant de d�eterminer le nombre de cycles perti-

nents contenant un sommet donn�e. Plus pr�ecis�ement, nous voulons savoir pour tout

Page 105: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

98 Chapitre 3. Histoires de cycles

p

q

r

y

a 44

3

1

2

11

1

11

1

1

1

2

2

2

2

2

6

Fig. 3.28 { Comme r(p) = 4 et r(q) = 6, la famille de cycles F(Crp;q), associ�ee

au cycle Crp;q (en traits pleins), contient 24 cycles pertinents.

sommet y combien de cycles pertinents de taille donn�ee contiennent y. Par exemple,

le sommet a de la �gure 3.28 appartient �a deux cycles de taille 4, un cycle de taille

6 et douze cycles de longueur 13.

Consid�erons la famille de cycles F(Crp;q) dont le prototype est C

rp;q.

Notons nb cy (y;F(Crp;q)) le nombre de cycles de F(Cr

p;q) contenant le sommet y.

Supposons maintenant que le sommet y appartient �a une cha�ne minimale [r; ::; q]

incluse dans Gr (on remarquera alors que y ne peut pas faire partie d'une cha�ne

minimale [r; ::; p] puisque Crp;q est pertinent).

Soit �r(y; q) le nombre de cha�nes minimales reliant les sommets y et q en ne

passant que par des sommets plus petits que r. Par exemple, dans la �gure 3.28

�r(y; q) = 3. La fonction �r constitue en fait une g�en�eralisation de la fonction r que

nous avons d�ej�a utilis�ee ( 8x 2 Xr; r(x) = �r(r; x) ). On peut d�eterminer la valeur

de �r(y; q), en r�ealisant un parcours en largeur d'abord dans le sous-graphe partiel

H(r; q). En e�et, puisque y appartient �a au moins une cha�ne minimale [r; ::; q], toute

cha�ne minimale reliant q �a y est une sous-cha�ne d'une cha�ne minimale reliant q �a

r. Le calcul de la fonction �r(y; q) pour y 2 Xr sera donc r�ealis�e en O(m). Puisqu'il

y a O(m2) familles de cycles, le temps de calcul global des fonctions � est en O(m3).�Etant donn�e un sommet y et une famille de cycles pertinents F(Cr

p;q), on v�eri�era

ais�ement le r�esultat suivant :

nb cy (y;F(Crp;q)) = r(y)� �r(y; q)� r(p)

Dans la �gure 3.28, le sommet y appartient aux 24 cycles pertinents de la famille

F(Crp;q). On a bien nb cy (y;F(Cr

p;q)) = 2� 3� 4 = 24 = jF(Crp;q)j.

Page 106: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.7. Cycles pertinents 99

ab c d

y

ab

v

a

b c dy

v

c d...

Fig. 3.29 { L'ensemble des ((prototypes )) de familles de cycles pertinents d'un graphe

G = (X;E) pour un ordre � tel que �(v) = maxx2X �(x)

3.7.6 Un probl�eme ouvert

L'ensemble des cycles pertinents est d�e�ni de fa�con unique pour un graphe donn�e.

Par contre, l'ensemble des prototypes de familles de cycles pertinents d�epend de

l'ordre � utilis�e pour d�eterminer CP . Consid�erons par exemple le graphe de la �-

gure 3.29. Ce graphe contient n

2+ 2 sommets de degr�e 3.

Le nombre de prototypes de familles de cycles pertinents d�epend de l'ordre �

d�e�ni sur les sommets du graphe. Si le plus grand sommet relativement �a � est

choisi parmi les sommets a, b, c, ..., tous les cycles pertinents de longueur 3n4 seront

regroup�es dans la meme famille. Par contre, si c'est le sommet v qui est maximal,

on obtiendra deux familles. Celle des cycles passant par v et celle de ceux qui ne le

traversent pas.

Ceci nous am�ene �a poser le probl�eme suivant :

Comment choisir un ordre � tel que le nombre de prototypes de familles

de CP qui lui est associ�e soit minimal.

Il serait en e�et utile d'�eviter de d�ecouper une meme cat�egorie de cycles pertinents

en plusieurs familles parce qu'on a mal choisi l'ordre �. Ce probl�eme se pose surtout

dans le cas de graphes poss�edant un nombre important { voire exponentiel { de cycles

pertinents. Dans les autres cas, on peut directement manipuler tous les cycles de CPsans avoir recours aux prototypes.

Page 107: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

100 Chapitre 3. Histoires de cycles

La recherche d'un ordre � optimal peut etre plus ou moins contrainte. On peut,

dans un premier temps, se restreindre aux ordres qui constituent une extension li-

n�eaire de l'ordre partiel d�e�ni par le degr�e des sommets. Mais il faudrait aussi s'int�e-

resser aux graphes pour lesquels l'ordre qui minimise le nombre de familles ne v�eri�e

pas cette propri�et�e. Dans le graphe ci-dessous, le sommet v sera maximal relative-

ment �a � si l'on respecte le degr�e des sommets. Les cycles de taille 3n�34

seront donc

r�epartis entre deux familles selon qu'il contiennent v ou pas. Pourtant, en choisissant

le plus grand sommet parmi a; b; c; ... on obtiendrait une famille de cycles pertinents

en moins.

ab c d

v

3.8 Syst�emes cycliques

Nous nous sommes int�eress�es jusqu'�a pr�esent �a la d�etection des cycles chimi-

quement importants. Cette �etude nous a permis de d�eterminer l'ensemble de cycles

pertinents sans conna�tre pour autant les relations qui peuvent exister entre eux.

Mais pour etre compl�ete, toute analyse de la structure cyclique d'une mol�ecule ne

peut se contenter d'un simple ensemble de cycles. Nous allons donc nous int�eresser

maintenant aux syst�emes cycliques.

3.8.1 Classi�cation des syst�emes cycliques en chimie

organique

Comme nous l'avons d�ej�a dit, les cycles ont une grande importance dans le cadre

de la chimie organique. Ils font partie de la nomenclature chimique et sont utilis�es

pour associer un nom canonique �a chaque mol�ecule. Ils permettent �egalement de

caract�eriser certaines familles de mol�ecules. Les st�ero��des sont ainsi reconnaissables

Page 108: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.8. Syst�emes cycliques 101

�a leur syst�eme cyclique qui est constitu�e par agencement particulier de trois cycles

de taille 6 et d'un cycle de longueur 5 (voir �gure 3.30).

H

HO

H H

Fig. 3.30 { La mol�ecule du cholest�erol fait partie de la famille des st�ero��des

Dans le cadre de la chimie organique, la d�e�nition des divers types de syst�emes

cycliques ne fait pas toujours l'unanimit�e. Il est toutefois possible de d�etacher quatre

formes de relations entre les cycles (comme le montre la �gure 3.31) :

� un cycle est isol�e s'il ne partage aucun sommet avec un autre cycle.

� deux cycles sont condens�es s'ils n'ont qu'une arete en commun.

� deux cycles sont spiraniques s'ils n'ont qu'un sommet en commun.

� deux cycles constituent un syst�eme pont�e s'ils ont plusieurs aretes en commun.

Il faut cependant noter que ces quatre familles ne sont pas r�eellement disjointes

(�a l'exception des cycles isol�es). Il s'agit plus de relations entres les cycles que d'une

r�eelle partition de l'ensemble des syst�emes cycliques. La mol�ecule de la �gure 3.32

contient deux cycles spiraniques C1 et C2 qui sont condens�es �a un meme cycle C3.

Cette d�emarche de mod�elisation des syst�emes cycliques peut etre poursuivie lors-

qu'il s'agit de mettre en valeur des propri�et�es chimiques portant sur des con�gura-

tions tr�es pr�ecises. C'est ainsi que dans le cadre de la synth�ese organique, [Corey

et Cheng, 1989] d�e�nit divers types de relations entre les aretes des syst�emes cy-

cliques condens�es. Il s'agit plus pr�ecis�ement de caract�eriser les positions relatives des

(( aretes de condensation )) qui appartiennent �a plusieurs cycles. La �gure 3.33 donne

un exemple des quatre classes de relations que les auteurs de cette �etude distinguent.

Les deux premiers graphes montrent la di��erence entre des aretes de conden-

sation reli�ees par une arete (directement li�ees) et celles qui sont attach�ees par une

Page 109: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

102 Chapitre 3. Histoires de cycles

isol�e

pont�e

spiranique

condens�e

Fig. 3.31 { Les divers types de syst�emes cycliques.

O

O

C1 C2

C3

Fig. 3.32 { un exemple de syst�eme �a la fois spiranique et condens�e.

cha�ne (non directement li�ees). Quant aux relations pr�esent�ees dans les deux derniers

exemples, elles correspondent �a des syst�emes cycliques plus complexes dans lesquels

plusieurs aretes de condensation peuvent etre adjacentes. Cette analyse des syst�emes

cycliques condens�es est utilis�ee pour �enoncer des r�egles de strat�egie en synth�ese or-

ganique.

La d�etection des syst�emes cycliques ne pose pas de r�eelle di�cult�e. Il faut cepen-

dant prendre quelques pr�ecautions quant �a l'utilisation de la notion de composante

2-connexe. On ne peut pas directement rechercher les syst�emes cycliques de type

spiranique �a l'int�erieur des composantes 2-connexe (un syst�eme spiranique pouvant

s'�etaler sur deux composantes). Il faut utiliser les points d'articulation pour recons-

Page 110: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.8. Syst�emes cycliques 103

directement liéesnon directement liées contiguës cyclo-contiguës

Fig. 3.33 { Les divers types de relations, d'apr�es Corey, entre les (( aretes de conden-

sation )) des syst�emes cycliques condens�es.

Fig. 3.34 { Di��erence entre les composantes 2-connexes (�a gauche) qui cassent le

syst�eme polycyclique, au niveau de la connexion spiranique, et les composantes 2-

aretes-connexes (�a droite) qui le conservent.

truire les syst�emes spiraniques �a partir des cycles obtenus dans di��erentes compo-

santes 2-connexes. Comme le montre la �gure 3.34, une solution plus simple consiste

�a d�ecomposer le graphe en composantes 2-aretes-connexes. Les syst�emes de type

spiraniques sont alors pr�eserv�es par cette d�ecomposition.

En se r�ef�erant �a la classi�cation des syst�emes cycliques (�gure 3.31), nous pouvons

dire qu'un cycle isol�e est une composante 2-connexe dont le nombre cyclomatique

est �egal �a 1. Dans la plupart des cas, un syst�eme spiranique est associ�e �a un point

d'articulation. La �gure 3.32 oppose cependant un contre exemple �a cette d�e�nition.

3.8.2 Graphe des cycles pertinents

L'ensemble des cycles pertinents que nous venons d'�etudier constitue une pre-

mi�ere �etape dans la description des syst�emes cycliques. Pour que cette analyse soit

satisfaisante, nous devons nous int�eresser �a l'arrangement relatif de ces cycles. C'est

Page 111: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

104 Chapitre 3. Histoires de cycles

c

1 2

3

a b

de

f

g

h

ij

G

c

1 2

3

a bd

e

i

h

j

fg

ext.*G

ext.

Fig. 3.35 { Graphe dual des faces d'une repr�esentation planaire de G

dans ce but que nous allons d�e�nir le graphe des cycles pertinents qui repose sur une

relation de contigu��t�e entre les cycles.

Cette notion de graphe associ�e �a un ensemble de cycles n'est pas enti�erement

nouvelle. Elle a d�ej�a �et�e utilis�ee dans le cadre de graphes planaires. Consid�erons

un graphe planaire G = (X;E) et une repr�esentation planaire de ce graphe. On

peut associer un cycle �a chacune des faces int�erieures de cette repr�esentation. Par

exemple, dans la �gure 3.35, on obtient trois cycles. L'ensemble des cycles ainsi

engendr�es constitue une base B de l'espace vectoriel des cycles de G.

Pour repr�esenter le syst�eme cyclique de G, on peut alors d�e�nir un multigraphe 13

dual G� = (X�; E�) tel que :

� l'ensemble X� des sommets de G� est �egal �a B [ fCext g o�u Cext d�esigne le

cycle associ�e �a la face ext�erieure de la repr�esentation planaire;

� pour toute arete u de G, on ajoute l'arete fCi; Cjg dans E� o�u Ci et Cj sont

les deux cycles de B qui contiennent l'arete u.

On parle ici de graphe dual dans la mesure o�u G�� est isomorphe �a G. En e�et,

les faces du graphe planaire G� correspondent aux sommets de G (voir �gure 3.35).

En appliquant la meme d�emarche au graphe G� on obtient bien le graphe G.

La notion de graphe dual des faces ne peut pas etre directement utilis�ee pour re-

pr�esenter la structure chimique d'un graphe mol�eculaire. Une restriction de ce graphe

ne contenant pas le sommet associ�e �a la face externe a �et�e cependant employ�ee par

13. dans un multigraphe, deux sommets peuvent etre reli�es par plusieurs aretes

Page 112: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.8. Syst�emes cycliques 105

[Corey et Cheng, 1989] pour repr�esenter des mol�ecules contenant un syst�eme cyclique

condens�e. Pour ce type de mol�ecules, la repr�esentation planaire g�en�eralement utilis�ee

induit une base de cycle qui est minimale. Mais cette propri�et�e n'est pas vraie dans

la majorit�e des cas. Nous proposons plutot d'utiliser l'ensemble des cycles pertinents.

Nous d�e�nirons donc le graphe des cycles pertinents que nous noterons GP .

Pour tout cycle C du graphe G = (X;E), notons som(C) (resp. aret(C)) l'en-

semble des sommets de C (resp. l'ensemble des aretes).

Soit GP = (CP ; EP) le graphe �etiquet�e d�e�ni sur l'ensemble des cycles pertinents

du graphe G et tel que :

8C1; C2 2 CP ; fC1; C2g 2 EP , som(C1) \ som(C2) 6= ?

Soit E : EP �! N � N la fonction d'�etiquetage des aretes de GP telle que :

8u = fC1; C2g 2 EP; E(u) = ( j som(C1) \ som(C2) j ; j aret(C1) \ aret(C2) j )

La �gure 3.36 donne quelques exemples de graphes de cycles pertinents. Elle

montre ainsi comment divers types de syst�emes cycliques peuvent etre facilement

caract�eris�es au niveau de GP .

Nous avons choisi d'utiliser un couple de valeurs pour �etiqueter les aretes de fa�con

�a faire appara�tre certains types de con�guration. En se limitant au nombre d'aretes

communes, on ne peut pas mettre en �evidence les syst�emes spiraniques qui sont ici

identi��es par le couple (1; 0). Ce type d'�etiquettes permet aussi de distinguer d'autres

structures remarquables. Dans la �gure 3.37, le cycle B partage deux aretes avec les

cycles A et C. Par contre, le nombre de sommets communs varie de quatre �a trois.

Dans le graphe des cycles, l'arete reliant A �a B sera �etiquet�ee (4; 2) alors que celle

qui relie B et C portera le couple (3; 2).

Quant �a la construction du graphe des cycles pertinents, elle ne pr�esente pas de

r�eelle di�cult�e. Elle peut etre r�ealis�ee en temps polynomial par rapport au cardinal

de CP (on peut largement majorer ce temps de calcul par O(mjCP j2)).

Notons en�n que contrairement au graphe dual des faces d'une repr�esentation pla-

naire, le graphe des cycles pertinents d'une mol�ecule est unique. Cette propri�et�e par-

ticuli�erement int�eressante repose sur l'unicit�e de l'ensemble CP . Le fait qu'il n'existe

qu'un seul graphe des cycles pertinents pour une mol�ecule donn�ee ne signi�e pas

Page 113: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

106 Chapitre 3. Histoires de cycles

Spiraniques

PontésC1 C2( 3,2 )

( 2,1)C1 C2

( 1,0 )C2C1

Condensés

( 2,1)( 2,1)

( 1,0 )

Spiranique

et

CondenséO

O

C1 C2

C3

C1 C2

C1 C2

C2C1

C1 C2

C3

6

6 6

6

5 5

5

5

6

Fig. 3.36 { Quelques exemples de graphes des cycles pertinents.

5 , 4

3 , 2

4 , 25 , 4

9 , 8

2 , 1

4 , 2

2 , 1

2 , 1

7 , 6

2 , 1

3 , 2

A BC

B

CA

Fig. 3.37 {

Page 114: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.8. Syst�emes cycliques 107

4

( 6,4 )

7

7

( 2,1)

7

4

C1

C3

C211

4

11

( 2,1)

C3

C2

C1 C1 C3

C2

( 2,1)

( 3,2 )

( 2,1)

( 2,1)

( 2,1)

( 3,2 )

( 3,2 ) C3

C1

C2

C3

C4

C2

C1

C5

C1

C2

C3

C4

C5

C5

C4

Fig. 3.38 { Quelques exemples de graphes ayant le meme graphe des cycles pertinents

pour autant que la r�eciproque soit vraie. La �gure 3.38 pr�esente deux exemples de

graphes des cycles pertinents qui peuvent etre associ�es �a des graphes di��erents.

Dans le cadre de la chimie organique, la plupart des mol�ecules ont des graphes

des cycles pertinents di��erents. Ce mode de repr�esentation des syst�emes cycliques

fournit donc un outil tout �a fait e�cace pour analyser les mol�ecules.

3.8.3 Extension de la notion de cycles pertinents

Au cours des paragraphes pr�ec�edents, nous avons vu �a quel point il �etait di�cile

de d�e�nir une notion de validit�e chimique pour un cycle. Le probl�eme vient surtout

de certains syst�emes pont�es pour lesquels deux cycles pertinents engendrent un cycle

non pertinent mais pouvant etre utile dans un raisonnement de chimie organique.

Par exemple, pour la mol�ecule de la �gure 3.39, on aimerait conserver le cycle de

taille 6 mais rejeter celui de taille 7.

Page 115: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

108 Chapitre 3. Histoires de cycles

?

f

jc

d

e

b

i

a

h

Fig. 3.39 { Comment peut-on d�eterminer les cycles chimiquement importants mais

qui ne sont pas dans CP ?

Comme nous l'avons d�ej�a dit, il semble illusoire d'esp�erer trouver une d�e�nition

parfaite de l'int�eret chimique d'un cycle sans sortir du cadre de la th�eorie des graphes.

Nous pouvons cependant essayer d'�etendre l'ensemble des cycles pertinents �a certains

types de cycles particuliers. Pour ce faire, nous pouvons utiliser le graphe des cycles

pertinents.

Le cas le plus classique de cycle important n'appartenant pas �a CP est celui du

cycle de taille 6 dans la �gure 3.39. Il s'agit d'un cycle pont�e dont l'ensemble des

atomes se situent dans un plan moyen auquel n'appartient pas le ((pont )). Ce type

de cycles nous am�ene �a d�e�nir l'ensemble des cycles pont�es simples que nous

noterons PS . Ce sont des cycles de taille paire obtenus par la r�eunion de deux cycles

de taille impaire imm�ediatement inf�erieure (cf. �gure 3.40).

Soit plus formellement : 8C1; C2 2 CP tels que jC1j = jC2j = 2 k + 1 (o�u k 2 N�)

C1 + C2 2 PS , 9u 2 EP telle que u = fC1; C2g et E(u) = (k; k � 1)

L'ensemble PS permet ainsi d'obtenir le cycle de taille 8 de la �gure 3.41.A . Par

contre, le cycle de taille 9 dans la mol�ecule B ne correspond pas �a la d�e�nition de

cycle pont�e simple. Dans la mesure o�u ces deux cycles sont relativement voisins, on

pourrait chercher �a �etendre la d�e�nition de PS �a ce type de cycles.

Page 116: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.9. Conclusion 109

( k , k - 1 )x2

x3

x1

C2

xk

C12k+1 2k+1

C1 C2

Fig. 3.40 {

A B

Fig. 3.41 {

Il su�rait pour cela de r�eduire les contraintes impos�ees �a l'un des cycles C1 et C2.

On conserverait alors le cycle C1+C2 dans le cas o�u C1 serait un cycle de taille 2 k+1

et C2 un cycle quelconque reli�e �a C1 dans GP par une arete d'�etiquette (k; k � 1).

Cette nouvelle d�e�nition englobe bien le cycle de taille 9 de la �gure 3.41.B.

Mais elle admet aussi un certain nombre de cycles dont l'int�eret chimique est moins

important. Comme le montre la �gure 3.42, on retrouve un des cycles engendr�es par

la notion de SER pour la mol�ecule du pagodane.

3.9 Conclusion

Nous nous sommes e�orc�es, tout au long de ce chapitre, de faire le point sur le

probl�eme de l'�etude des cycles, en nous int�eressant plus particuli�erement au domaine

de la chimie. L'�etat de l'art que nous avons dress�e a permis de mettre en �evidence

la diversit�e des d�e�nitions et des m�ethodes utilis�ees pour d�eterminer un ensemble

de cycles importants. Nous nous sommes attach�es �a replacer ces d�emarches dans le

Page 117: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

110 Chapitre 3. Histoires de cycles

+

Fig. 3.42 {

cadre formel de la th�eorie des graphes en faisant appara�tre leur originalit�e mais aussi

leurs limites.

Nous avons introduit une d�e�nition des cycles pertinents correspondant �a l'union

des bases de cycles de taille minimale. De par sa d�e�nition, cet ensemble (not�e CP)

peut contenir un nombre de cycles important, voire exponentiel. Pour des graphes

mol�eculaires, le cardinal de CP est g�en�eralement faible ce qui rend cet ensemble

facilement utilisable en chimie. Dans un cadre plus g�en�eral, l'int�eret de l'union des

bases de cycles de taille minimale est �etroitement li�e �a l'existence d'un algorithme

e�cace pour construire cet ensemble.

Nous avons montr�e dans le paragraphe 3.7 que l'ensemble CP peut toujours etre

d�ecompos�e en un nombre polynomial de ((familles de cycles)) qui constituent une

partition de CP. L'algorithme que nous proposons permet de calculer en temps poly-

nomial un ensemble de cycles qui d�e�nissent les ((prototypes)) de ces diverses familles.

�A partir d'un cycle prototype, on peut directement d�ecrire tous les cycles de la fa-

mille correspondante par de simples remplacements de cha�nes �equivalentes. Quant

�a l'�enum�eration de tous les cycles pertinents, elle est r�ealis�ee en O(njCP j) �a partir de

cet ensemble polynomial de familles de cycles.

La notion de cycle pertinent sert de base �a la description des syst�emes cycliques et

contribue �a l'�elaboration d'heuristiques pour les strat�egies de synth�ese. Il va sans dire

que l'ensemble des cycles ainsi s�electionn�es ne saurait pr�etendre �a une quelconque

Page 118: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

3.9. Conclusion 111

optimalit�e ou universalit�e. Son seul objectif est de proposer un crit�ere simple et pr�ecis

permettant de d�eterminer les cycles qui sont chimiquement importants suivant la

plupart des points de vue. Le graphe des cycles pertinents que nous avons pr�esent�e

d�epeint quant �a lui les relations �el�ementaires qui peuvent exister entre ces cycles. Il

o�re aussi un mod�ele relativement simple pour d�ecrire certaines structures cycliques

remarquables que l'on veut reconna�tre.

Mais quels que soient nos e�orts, nous nous heurterons toujours aux limites de la

repr�esentation des mol�ecules sous forme de graphes. Seule une mod�elisation tenant

compte de toutes les propri�et�es chimiques permettrait de r�esoudre ce probl�eme de

fa�con optimale. En attendant, la notion de cycle pertinent semble constituer un

compromis tout �a fait acceptable. Dans le cadre du projet ReSyn, cette notion

pourra etre am�elior�ee �a long terme par une confrontation avec des probl�emes r�eels.

La d�e�nition d'un ensemble de cycles pertinents n'est en fait que l'�etape initiale -

mais o combien indispensable - d'un travail de description des syst�emes cycliques,

du point de vue de la synth�ese en chimie organique, qui ne fait que commencer.

La d�etermination de l'union des bases de cycles de taille minimale peut s'av�erer

utile en dehors du cadre de la chimie organique, pour peu que les concepts manipul�es

soient mod�elisables par des graphes. On peut par exemple envisager d'appliquer les

r�esultats obtenus �a la recherche d'isomorphismes de graphes. Nous avons en e�et pr�e-

sent�e un algorithme polynomial permettant de d�eterminer le nombre et la taille des

cycles pertinents d'un graphe. Ces caract�eristiques constituent un ((invariant)) pour

l'isomorphisme de graphes qu'il serait int�eressant d'�etudier (puisque deux graphes

isomorphes contiennent n�ecessairement les memes cycles pertinents). On peut esp�e-

rer que cette d�emarche donne de bons r�esultats pour des graphes majoritairement

2-connexes qui posent g�en�eralement le plus de di�cult�es pour les probl�emes d'iso-

morphisme.

Rappelons, pour �nir, que l'�etude de l'union des bases de cycles de taille minimale

peut etre �etendue aux graphes munis d'une valuation positive (cf. Annexe A) avec

une complexit�e similaire.

Page 119: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

112 Chapitre 3. Histoires de cycles

Page 120: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

113

Chapitre 4

Analyse structurale d'un graphe

mol�eculaire

4.1 Introduction

Quel que soit le probl�eme de d�ecision que l'on cherche �a r�esoudre, on ne peut

pas �elaborer la moindre strat�egie de r�esolution si l'on ne dispose pas, au pr�ealable,

d'une connaissance tr�es �ne de la situation �a traiter. Dans le cadre de la synth�ese,

cette �etape initiale passe par l'analyse structurale de la mol�ecule �etudi�ee et plus

pr�ecis�ement de la principale repr�esentation dont on dispose : le graphe mol�eculaire.

Nous avons vu dans le chapitre pr�ec�edent comment pouvait etre trait�e le probl�eme de

la reconnaissance des syst�emes cycliques. Il convient maintenant de s'int�eresser aux

autres aspects structuraux d'une mol�ecule qui sont susceptibles d'intervenir dans la

description de strat�egies de synth�ese.

L'objectif de ce chapitre est de montrer comment des notions appartenant au

domaine de la chimie peuvent etre trait�ees de mani�ere informatique en s'appuyant

sur le cadre formel de la th�eorie des graphes. Nous pr�esenterons des algorithmes

e�caces permettant de reconna�tre di��erents motifs structuraux comme les cha�nes

carbon�ees, les liens de cycle ou les liens h�et�eroatomiques. Nous montrerons ensuite

Page 121: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

114 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

comment tous ces motifs structuraux peuvent etre rassembl�es de fa�con �a construire

une repr�esentation abstraite d'une mol�ecule qui permette de mettre en exergue la

structure g�en�erale du graphe mol�eculaire.

Nous nous int�eresserons �egalement �a d'autres propri�et�es structurales de la mo-

l�ecule comme la d�etermination de la centralit�e des liaisons, la reconnaissance des

groupements fonctionnels et surtout l'analyse de la sym�etrie de la mol�ecule. Nous

pr�esenterons �a cet e�et un algorithme e�cace permettant de d�eterminer les princi-

pales sym�etries d'un graphe en construisant une relation d'�equivalence sur l'ensemble

des sommets. Cette relation est utilis�ee pour optimiser le calcul de la st�er�eochimie

suivant les r�egles CIP.

4.2 Repr�esentation abstraite d'une mol�ecule

4.2.1 D�e�nitions

Les d�e�nitions que nous allons pr�esenter dans ce paragraphe sont directement

inspir�ees de concepts issus de la chimie organique. Bien que ces notions soient relati-

vement universelles, leur d�e�nition exacte ne fait pas toujours l'unanimit�e. L'objectif

de ce paragraphe est donc double. D'une part, il s'agit de pr�eciser la s�emantique as-

soci�ee �a quelques termes emprunt�es au langage chimique. D'autre part, il convient

de d�ecrire les concepts qui leur sont associ�es dans le cadre formel de la th�eorie des

graphes. Pour ce faire, nous utiliserons la notion de graphe mol�eculaire introduite

dans le paragraphe 1.4.1.

4.2.1.1 Squelette d'une mol�ecule

En chimie organique, les mol�ecules sont principalement compos�ees d'atomes de

carbone et d'hydrog�ene. Mais d'autres types d'atomes peuvent aussi intervenir dans

la composition des mol�ecules : ce sont les h�et�eroatomes. Les principaux h�et�eroa-

tomes que l'on trouve dans des mol�ecules organiques sont l'oxyg�ene (O), l'azote (N),

le chlore (Cl), le soufre (S), le phosphore (P), le brome (Br), l'iode (I), le uor (F)

et le silicium (Si).

Page 122: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.2. Repr�esentation abstraite d'une mol�ecule 115

S O

N

S NN

a ) Squelette carboné

b ) connexitéc ) Squelette

OH

O

N

NSCl

O

Fig. 4.1 { D�e�nition du squelette d'une mol�ecule

Pour d�e�nir un graphe mol�eculaire G = (X;E), nous avons utilis�e une fonction

d'�etiquetage fA : X �! TA o�u TA d�esigne l'ensemble des symboles atomiques.

On peut ainsi construire une partition des sommets de G en fonction du symbole

atomique qui leur est associ�e :

� XCarb: = f x 2 X tel que fA(x) = C g (atomes de carbone)

� XHydr: = f x 2 X tel que fA(x) = H g (atomes d'hydrog�ene)

� XHet: = f x 2 X tel que fA(x) 2 TA n fC; Hg g (h�et�eroatomes)

L'architecture d'une mol�ecule est principalement d�etermin�ee par l'ensemble des

liaisons qui relient ses atomes de carbone. Ces liaisons entre carbones d�e�nissent le

squelette carbon�e de la mol�ecule.

Par rapport au graphe mol�eculaire, le squelette carbon�e correspond au sous-graphe

de G engendr�e par l'ensembleXCarb: associ�e aux atomes de carbone. Pour beaucoup

de mol�ecules, ce sous-graphe est connexe. Mais il existe un nombre non n�egligeable de

structures mol�eculaires pour lesquelles cette propri�et�e de connexit�e n'est pas v�eri��ee

(voir �gure 4.1.a). Le squelette carbon�e ne repr�esente donc pas parfaitement l'ar-

chitecture de la mol�ecule. C'est pourquoi, il est n�ecessaire de lui rajouter certaines

aretes comportant des atomes qui ne sont pas des carbones.

Page 123: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

116 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

Les atomes d'hydrog�ene ayant une valence �egale �a 1, ne peuvent etre rattach�es

qu'�a un seul autre atome. Ils ne sont donc jamais responsables de la non connexit�e

du squelette carbon�e. On dit que les atomes d'hydrog�ene sont terminaux .

Dans le cadre de la th�eorie des graphes, cette propri�et�e est souvent d�e�nie par la

notion de sommet pendant . Nous dirons donc qu'un sommet x du graphe G = (X;E)

est pendant si son degr�e dans le graphe G est �egal �a 1.

Pour obtenir une repr�esentation connexe �a partir du squelette carbon�e, il faut

int�egrer certains h�et�eroatomes. Cependant, le seul crit�ere de connexit�e ne saurait etre

satisfaisant. Pour la mol�ecule de la �gure pr�ec�edente, l'ajout des deux h�et�eroatomes

voisins S et N �a l'ensemble des atomes de carbone permet de d�e�nir un sous-graphe

qui est connexe (voir �gure 4.1.b) Mais ce sous-graphe ne d�ecrit pas convenablement

l'architecture de la mol�ecule initiale. Il ne contient pas le cycle de 5 aretes qui passe

pourtant par trois atomes de carbone. De fa�con g�en�erale, il convient de conserver

tous les h�et�eroatomes qui appartiennent au moins �a un cycle.

Pour ce faire, nous devons d�e�nir l'ensemble XCycles des sommets d'un graphe

mol�eculaire G = (X;E) qui appartiennent �a un cycle :

XCycles =[

Cy 2CPsommets(Cy )

Nous d�e�nissons donc le squelette SG = (XS ; ES) d'un graphe mol�eculaire G

par le sous-graphe de G engendr�e par l'ensemble de sommets XS tel que :

XS = XCarb: [ XCycles [

8>><>>:x 2 XHet: tel que

��������il existe une cha�ne �el�ementaire

[y; :::; x; :::; z] dans G telle que

y et z appartiennent �a XCarb:

9>>=>>;

La �gure 4.1.c donne un exemple de squelette de graphe mol�eculaire r�epondant �a

cette d�e�nition. On v�eri�era ais�ement que le squelette associ�e �a une mol�ecule donn�ee

est n�ecessairement unique de par sa d�e�nition.

4.2.1.2 Cha�nes carbon�ees

Comme nous l'avons vu pr�ec�edemment, les atomes de carbone occupent une place

pr�epond�erante en chimie organique. Il est donc important de d�eterminer les parties

Page 124: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.2. Repr�esentation abstraite d'une mol�ecule 117

O

RamifiéeChaîne carbonée

Linéaire

C C

C

C C O

C COO Si

O

C

C

C OC C C

O

C OC

Fig. 4.2 { Quelques exemples de cha�nes carbon�ees.

d'une mol�ecule qui sont exclusivement compos�ees d'atomes de carbone. Dans la me-

sure o�u les sous-structures cycliques font l'objet d'une description particuli�ere, nous

nous int�eressons ici uniquement aux carbones acycliques de la mol�ecule.

Nous d�e�nissons l'ensemble des cha�nes carbon�ees d'un graphe mol�eculaire par

l'ensemble des composantes connexes du sous-graphe engendr�e par XCarb: nXCycles .

Le terme de ((cha�ne carbon�ee )) appartient au langage de la chimie organique.

Dans le cadre de la th�eorie des graphes, l'expression ((arbre carbon�e)) serait plus

exacte. On distingue en e�et en chimie les ((cha�nes carbon�ees lin�eaires)) dont le graphe

associ�e se r�eduit �a une cha�ne et les ((cha�nes carbon�ees rami��ees)) qui correspondent

�a des arbres (voir �gure 4.2).

4.2.1.3 Liens h�et�eroatomiques

Lors de la d�e�nition du squelette d'un graphe mol�eculaire, nous avons remarqu�e

que certains h�et�eroatomes doivent etre rajout�es au squelette carbon�e pour pouvoir

d�ecrire la structure d'une mol�ecule. Si l'on exclut les h�et�eroatomes qui appartiennent

au moins �a un cycle, on constate que les h�et�eroatomes restants assurent la connexit�e

du squelette de la mol�ecule. Ont dit alors qu'ils d�e�nissent des liens h�et�eroatomiques

entre les diverses parties de ce squelette.

De fa�con plus formelle, nous dirons qu'un lien h�et�eroatomique Lhet: du graphe

mol�eculaire G est d�e�nit par son noyau et sa p�eriph�erie, o�u :

� le noyau de Lhet: est une composante connexe du sous-graphe de SG engendr�e

par (XS nXCycles ) \ XHet:

Page 125: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

118 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

O

O

O

Cl

Br

Br

Br

noyau périphérie

PN O

NS

C0

O

N

C

C CO Si

O

O

C

C

C OC C C

O

Fig. 4.3 { Quelques exemples de liens h�et�eroatomiques.

C CO Si

O

O

C

C

C OC C C

O

Chaîne carbonnée

Lien hétéroatomique

noyau périphérie

Fig. 4.4 { Relations entre cha�nes carbon�ees et liens h�et�eroatomiques.

� et la p�eriph�erie de Lhet: est d�e�nie par l'ensemble des aretes de SG qui sont

incidentes �a au moins un sommet du noyau de Lhet:.

La �gure 4.3 donne quelques exemples de liens h�et�eroatomiques.

La perception des cha�nes carbon�ees et des noyaux de liens h�et�eroatomiques per-

met de d�e�nir une d�ecomposition des parties non cycliques du squelette d'un graphe

mol�eculaire en composantes connexes homog�enes, c'est-�a-dire dont tous les sommets

sont de meme nature. Les ensembles d'aretes correspondant aux p�eriph�eries de liens

h�et�eroatomiques d�ecrivent, quant �a elles, les relations de connexit�e qui existent entre

ses diverses composantes (voir �gure 4.4). Nous reviendrons sur le cas particulier des

liens h�et�eroatomiques contigus �a un cycle dans le prochain paragraphe consacr�e aux

liens de cycles.

Page 126: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.2. Repr�esentation abstraite d'une mol�ecule 119

4.2.1.4 Liens de cycle

�A ce stade de l'analyse d'un graphe mol�eculaire, nous sommes en mesure de

d�ecrire trois types de motifs structuraux : les syst�emes cycliques, les cha�nes carbon�ees

et les liens h�et�eroatomiques. Notre objectif est de repr�esenter la structure d'une

mol�ecule �a l'aide d'un graphe comprenant ces di��erentes composantes. Pour que ce

graphe puisse etre connexe, il nous faut maintenant �etudier les relations qui existent

entre les parties cycliques et le reste de la mol�ecule. Pour ce faire, nous allons d�e�nir

la notion de lien de cycle.

De fa�con informelle, on peut dire qu'un lien de cycle est caract�eris�e par un som-

met appartenant �a un cycle et qui est adjacent �a au moins une arete non cyclique

du squelette mol�eculaire GS . Ce sommet particulier assure la connexit�e du graphe

mol�eculaire aux abords d'un cycle.

Notons ECycles l'ensemble des aretes d'un graphe mol�eculaire G = (X;E) qui

appartiennent �a un cycle :ECycles =

[Cy 2CP

aretes(Cy )

Pour tout sommet x de XCycles qui est adjacent �a au moins une arete de ES n

ECycles , on d�e�nit un lien de cycle Lcy par son noyau et sa p�eriph�erie, o�u :

� le noyau de Lcy se r�eduit au sommet x

� et la p�eriph�erie de Lcy contient les aretes de ES n ECycles adjacentes �a x.

Dans cette d�e�nition des liens de cycle, nous avons choisi de mettre en valeur le

sommet ((noyau)) qui relie le cycle �a une partie non cyclique du squelette mol�eculaire.

On peut ainsi caract�eriser un lien de cycle suivant la nature de son noyau. On dira

qu'un lien de cycle est ((h�et�eroatomique)) si son noyau est un h�et�eroatome. Cette

distinction est particuli�erement int�eressante dans le cadre de la synth�ese en chimie

organique. En e�et, lors d'une analyse r�etrosynth�etique de la mol�ecule, on pourra

rep�erer les liens de cycle de type h�et�eroatomique et, par exemple, privil�egier leur

suppression.

La ((p�eriph�erie)) d'un lien de cycle contient l'ensemble des aretes qui assurent

la connexit�e du squelette mol�eculaire aux abords d'un cycle. Comme pour les liens

h�et�eroatomiques, cet ensemble est directement d�e�ni par le noyau du lien de cycle

et ce de fa�con unique. On pourra remarquer dans la �gure 4.6 qu'une meme arete

peut appartenir aux p�eriph�eries d'un lien de cycle et d'un lien h�et�eroatomique. Cette

Page 127: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

120 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

O

O

noyau périphérie

O

O

P O

O

PPO

O

O

O

PS N

N

O

C C

Fig. 4.5 { Quelques exemples de liens de cycles.

�gure pr�esente aussi un graphe mol�eculaire contenant un lien h�et�eroatomique qui

est contigu �a un lien de cycle dont le noyau est un h�et�eroatome. Dans un tel cas, le

noyau de lien h�et�eroatomique ne peut pas contenir le sommet d�e�nissant le noyau du

lien de cycle puisque ce sommet appartient �a Xcycles. Par contre, l'arete qui relie ce

sommet au noyau de lien h�et�eroatomique appartient aux p�eriph�eries des deux liens.

4.2.2 Algorithmes

Nous allons proposer ici quelques algorithmes permettant de rechercher les divers

types de motifs structuraux que nous venons de d�e�nir. On pourra ainsi constater

que toutes ces sous-structures peuvent etre d�etermin�ees en temps lin�eaire par rapport

�a la taille du graphe mol�eculaire (i.e. en O(m+ n)).

Page 128: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.2. Repr�esentation abstraite d'une mol�ecule 121

SiC C

Cpériphérie

Lien de cycle

Lien hétéroatomique

noyau périphérieCP O

N

N

noyau

Fig. 4.6 { Relations entre lien h�et�eroatomique et lien de cycle.

4.2.2.1 Squelette mol�eculaire

La construction du squelette mol�eculaireGS = (XS ; ES) ne pr�esente pas de r�eelle

di�cult�e. Il su�t de supprimer dans le graphe G = (X;E) les sommets de XHydr:

puis d'�eliminer r�ecursivement tous les sommets de XHet: qui sont pendants.

L'algorithme de construction du squelette mol�eculaire peut donc se r�esumer ainsi :

Donn�ees : G = (X;E) un graphe mol�eculaire, XHet: et XHydr: deux sous-ensembles

disjoints de X.

R�esultat : GS = (XS ;�S) le squelette mol�eculaire issu de G, o�u �S d�esigne l'ensemble

des listes d'adjacence des sommets de GS .

1. XS X nXHydr:;

2. Som Term ?; ? ensemble des sommets terminaux �a supprimer ?

3. Pour tout x 2 XS faire :

4. �S(x) �(x);

5. si x 2 XHet: et j�S(x)j = 1 alors Som Term Som Term [ fxg fsi

6. fpour

7. Tant que Som Term 6= ? faire :

8. Choisir x 2 Som Term; Som Term Som Term n fxg;

9. y le sommet de GS tel que �S(x) = fyg;

10. Supprimer x dans GS ;

11. si j�S(y)j = 1 alors Som Term Som Term [ fyg fsi

12. ftq

Page 129: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

122 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

En utilisant des structures de donn�ees appropri�ees, on peut ex�ecuter cet algo-

rithme en O(m + n) (o�u m et n d�esignent le nombre de sommets et d'aretes de

G).

4.2.2.2 Cha�nes carbon�ees et liens h�et�eroatomiques

Pour d�eterminer l'ensemble des cha�nes carbon�ees et liens h�et�eroatomiques, nous

utilisons un algorithme inspir�e des m�ethodes de calcul des composantes 2-connexe

d'un graphe. En se limitant aux parties non cycliques du graphe, on r�ealise un par-

cours en profondeur �a partir d'un sommet quelconque. Il s'agit alors de d�ecomposer

l'ensemble des sommets et aretes parcourus en di��erentes ((composantes connexes

homog�enes)) (cha�nes carbon�ees ou liens h�et�eroatomiques).

Consid�erons l'exploration d'un sommet y. Si tous les sommets accessibles �a partir

de y sont de meme nature que y (des carbones, par exemple) on devra construire

une composante connexe homog�ene contenant y et tous ces sommets atteints (une

cha�ne carbon�ee dans le cas de carbones). Supposons maintenant que le sommet y ait

�et�e explor�e �a partir d'un sommet x (i.e. y 2 �(x)). Deux cas peuvent se pr�esenter.

Ou bien x et y ne sont pas de la meme nature et il faut alors cr�eer la composante

contenant y avant de poursuivre l'exploration de x. Ou bien x et y sont de meme

type et l'on doit int�egrer x �a la composante de y.

La cr�eation de la composante homog�ene contenant un sommet donn�e est retard�ee

au maximum de fa�con �a obtenir des composantes de taille maximale. Il faut donc

m�emoriser les sommets explor�es jusqu'�a ce que l'on soit en mesure de construire

la composante qui les contient. Cette construction ne peut en e�et intervenir que

lorsque le dernier sommet de la composante aura �et�e explor�e. La principale di�cult�e

provient du fait que l'on peut commencer �a explorer une nouvelle composante avant

d'avoir termin�e l'exploration de la composante en cours. Consid�erons par exemple le

graphe de la �gure 4.7. Lors de la cr�eation de la premi�ere composante qui contient les

sommets 6 et 7, deux autres composantes sont en cours d'exploration : la composante

III dont on n'a alors atteint que les sommets 4 et 5 et la composante IV qui se limite,

�a cet instant, aux sommets 1, 2 et 3.

La structure de donn�ees permettant de m�emoriser les composantes en cours d'ex-

ploration doit tenir compte de cette particularit�e. Pour ce faire, on utilise une struc-

Page 130: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.2. Repr�esentation abstraite d'une mol�ecule 123

4

IV

II

2

31

5III

I

6 7

8 910II

6

Sens du parcours

Ordre de création

des sommetsOrdre de parcours

en profondeur

des composantes

Fig. 4.7 { Construction de composantes connexes ((homog�enes ))

ture de pile pour stocker les sommets d�ej�a atteints. Lorsque l'on commence �a explorer

un sommet, on le place en haut de la pile. Nous avons d�ej�a vu qu'une composante

est cr�e�ee chaque fois que l'on revient de l'exploration d'un sommet y qui n'est pas

du meme type que le sommet x �a partir duquel il a �et�e atteint. �A cet instant, tous

les sommets de la pile situ�es au dessus de y sont n�ecessairement de meme nature que

y. Il su�t donc de les d�epiler pour construire la nouvelle composante.

Dans la �gure 4.7, lorsque l'on revient de l'exploration du sommet 6, la pile de

sommets correspond �a la liste ( 7; 6; 5; 4; 3; 2; 1 ) o�u 7 se situe en haut de la pile. En

d�epilant jusqu'au sommet 6 inclus, on obtient bien la premi�ere composante.

Une d�emarche similaire est utilis�ee pour m�emoriser les aretes atteintes lors du

parcours en profondeur. Une l�eg�ere di��erence intervient cependant pour le traitement

de l'arete fx; yg reliant les sommets x et y de nature di��erente. Cette arete doit en

e�et etre associ�ee au lien h�et�eroatomique qui correspond �a la composante du sommet

x ou du sommet y.

Le parcours en profondeur commence �a partir d'un sommet de XS n XCycles.

Lorsque ce premier parcours se termine, on recommence avec un nouveau sommet

non cyclique qui n'a pas encore �et�e atteint. Tous les parcours sont r�ealis�es �a travers

les aretes de ES n ECycles. Lorsque le sommet x explor�e est un h�et�eroatome li�e �a un

sommet y deXCycles , l'arete fx; yg est plac�ee dans la pile des aretes pour etre int�egr�ee

au lien h�et�eroatomique correspondant. Par contre, le sommet y n'est pas empil�e ni

explor�e puisqu'il appartient �a un cycle.

Apr�es avoir expos�e les grandes lignes de la d�emarche employ�ee, nous pouvons

maintenant d�etailler l'algorithme de recherche des cha�nes carbon�ees et des liens h�e-

Page 131: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

124 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

t�eroatomiques d'un squelette de graphe mol�eculaire GS = (XS ;�S) :

Recherche des cha�nes carbon�ees et des liens h�et�eroatomiques :

1. Atteints XCycles ;

2. Initialiser(Pile Aretes);

3. Initialiser(Pile Sommets);

4. Pour tout x 2 XS faire :

5. Si x =2 Atteints Alors :

6. Recherche Prof(x);

7. Construire composante (x; x );

8. fpour

Proc�edure Recherche Prof (x )

? Proc�edure r�ecursive d'exploration en profondeur d'un sommet x ?

? Construit la composante associ�ee �a tout voisin de x qui n'est pas du meme type?

? (Remarque : Cette fonction ne construit pas la composante contenant x) ?

1. Atteints Atteints [ fxg;

2. Empiler(Pile Sommets ; x );

3. Pour tout y 2 �(x) faire :

4. Si y 2 Atteints Alors :

5. Si ( x 2 XHet: et y 2 XCycles ) Alors Empiler(Pile Aretes ; fx; yg ) fsi

6. sinon

7. Empiler(Pile Aretes ; fx; yg );

8. Recherche Prof(y);

9. si fA(x) 6= fA(y) alors : Construire composante (x; y ) fsi

10. fpour

Proc�edure Construire composante (x; y )

? Construit la composante homog�ene associ�ee au sommet y explor�e depuis x ?

? en utilisant et modi�ant les piles de sommets et d'aretes. ?

? (lorsque x n'a pas de pr�ed�ecesseurs dans le parcours, on pose y = x) ?

Page 132: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.2. Repr�esentation abstraite d'une mol�ecule 125

1. Aret: ?; Somm: ?;

2. R�ep�eter

3. z D�epiler(Pile Sommets );

4. Somm: Somm: [ fzg;

5. Jusqu'�a z = y;

6. Si fA(y) = C Alors :

7. Tant que ( : V ide(Pile Aretes ) et Premier(Pile Aretes ) 6= fx; yg ) faire :

8. u D�epiler(Pile Aretes ); Aret: Aret: [ fug;

9. ftq

10. Cr�eer nouvelle cha�ne carbon�ee (Somm: ; Aret:);

11. Sinon :

12. R�ep�eter

13. u D�epiler(Pile Aretes );

14. Aret: Aret: [ fug;

15. Jusqu'�a ( u = fx; yg ou V ide(Pile Aretes ) )

16. Cr�eer nouveau lien h�et�eroatomique (Somm: ; Aret:);

17. fsi

Les fonctions de cr�eation des deux types de composantes ne pr�esentent pas de

di�cult�e. Dans le cas de liens h�et�eroatomiques, il convient cependant de rechercher,

parmi l'ensemble d'aretes d�etermin�e par la proc�edure Construire composante, les

aretes qui appartiennent au noyaux et celles qui font partie de la p�eriph�erie du lien.

Quant �a la complexit�e de l'algorithme principal, on v�eri�e ais�ement qu'elle est en

O(jXS j+ jESj).

4.2.2.3 Liens de cycle

L'algorithme de recherche des liens de cycle d�ecoule directement de leur d�e�nition.

Il su�t de rechercher les sommets faisant partie d'un cycle et qui ont au moins une

arete adjacente n'appartenant �a aucun cycle.

On en d�eduit l'algorithme suivant qui s'applique �a un squelette de graphe mol�e-

culaire GS = (XS ;�S) :

Page 133: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

126 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

Recherche des liens de cycle:

1. Pour tout x 2 XCycles faire :

2. P �eriph�erie ?;

3. Pour tout y 2 �(x) faire :

4. Si fx; yg =2 ECycles Alors : P �eriph�erie P �eriph�erie [ ffx; yg g fsi

5. fpour

6. Si P �eriph�erie 6= ? Alors : Cr�eer Lien de Cycle (x; P �eriph�erie ) fsi

7. fpour

Si l'on r�ealise le test d'appartenance d'une arete �a ECycles de mani�ere e�cace, on

obtient une complexit�e de cet algorithme en O( jXS j+ jESj).

4.3 Graphe associ�e �a l'analyse structurale d'une

mol�ecule

Nous venons de d�eterminer un certain nombre de motifs structuraux permettant

d'analyser un graphe mol�eculaire. Il s'agit maintenant de regrouper toutes ces sous-

structures et de d�ecrire les relations de proximit�e qui existent entre elles.

4.3.1 D�e�nition de la repr�esentation par blocs GRB

Nous adopterons les notations suivantes :

� CP = ensemble des cycles pertinents,

� Cha�nesC = ensemble des cha�nes carbon�ees,

� LiensHet: = ensemble des liens h�et�eroatomiques,

� LiensCycle = ensemble des liens de cycle;

Pour pouvoir comparer ces divers motifs structuraux, nous devons uni�er leur

mode de description. Cette uni�cation est assez naturelle puisqu'il s'agit de sous-

graphes connexes du squelette du graphe mol�eculaire. Toutefois, dans le cas de liens

h�et�eroatomiques ou de liens de cycles, nous avons choisi de scinder le graphe connexe

correspondant en deux parties : le noyau et la p�eriph�erie. A�n d'uni�er les d�e�nitions

Page 134: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.3. Graphe associ�e �a l'analyse structurale d'une mol�ecule 127

périphérie

noyau

61

8

7

9

3

4

5

2

N(b) = { 6, 7, 8, 9 }

P(b) = { 1, 2, 3, 4 }

Fig. 4.8 { Partition des sommets d'un bloc b en deux ensembles N(b) et P (b).

des motifs structuraux, nous dirons que pour une cha�ne carbon�ee ou un cycle perti-

nent, le noyau regroupe tous les sommets et les aretes de la sous-structure associ�ee,

alors que la p�eriph�erie est vide.

Cette pr�ecision �etant donn�ee, nous pouvons entreprendre la d�e�nition d'une abs-

traction du graphe mol�eculaire. Nous cherchons �a construire un graphe dont les

sommets correspondent aux di��erents motifs structuraux per�cus. Nous dirons que ce

graphe, not�e GRB d�e�nit une repr�esentation par blocs du squelette du graphe

mol�eculaire.

Les sommets de GRB, que nous appellerons ((blocs)) appartiennent �a l'ensemble :

XRB = CP [ Cha�nesC [ LiensHet: [ LiensCycle

Pour tout bloc b appartenant �a XRB nous d�e�nissons une partition des sommets

du sous-graphe associ�e �a b. Soit N(b) l'ensemble des sommets qui appartiennent au

noyau de b. Nous noterons P (b) l'ensemble des sommets inclus dans une arete de la

p�eriph�erie de b et qui n'appartiennent pas �a N(b). La �gure 4.8, donne un exemple

de d�e�nition de cette partition.

L'ensemble ERB des aretes de GRB se d�e�nit alors de la fa�con suivante :

ERB = f fb1; b2g � XRB tels que N(b1) \ N(b2) 6= ? ou N(b1) \ P (b2) 6= ? g

Cette d�e�nition signi�e simplement que deux blocs appartenant �a XRB sont reli�es

dans GRB si au moins un sommet du noyau du premier bloc appartient au noyau ou

�a la p�eriph�erie du second.

Consid�erons par exemple le graphe mol�eculaire de la �gure 4.9. L'analyse struc-

turale du squelette qui lui est associ�e permet de distinguer 9 di��erents blocs qui

Page 135: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

128 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

Liens de cycle

Chaînes carbonées

Cycles

Lien hétéroatomique

S N

O

N

S N

O

N

CC

S

C C

N

Graphe moléculaire

OH

O

N

NSCl

O

C C

C C

C

N

S

C

GRB

Fig. 4.9 { Repr�esentation par blocs associ�ee �a un graphe mol�eculaire.

d�e�nissent l'ensembleXRB. Le graphe GRB peut alors etre directement construit en

respectant la d�e�nition de ERB.

De par sa d�e�nition, l'ensemble ERB est n�ecessairement unique pour une d�e-

composition en blocs donn�ee. La recherche des motifs structuraux �etant elle-meme

d�eterministe, on en d�eduit que tout graphe mol�eculaire admet une unique repr�esen-

tation par blocs GRB.

L'objectif de la construction du graphe GRB est avant tout de fournir une repr�e-

sentation abstraite de la mol�ecule. Bien qu'il soit utile de conna�tre le contenu de

chaque bloc, nous nous int�eressons surtout �a sa nature. C'est pourquoi, nous repr�e-

senterons g�en�eralement les graphes GRB en �etiquetant chaque sommet par la nature

du bloc qu'il repr�esente. On peut ainsi voir dans la �gure 4.10, quelques repr�esenta-

tions par blocs visualis�ees, dans ReSyn, en respectant cette d�emarche.

Page 136: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.3. Graphe associ�e �a l'analyse structurale d'une mol�ecule 129

Fig. 4.10 { Visualisation dans ReSyn des repr�esentations par blocs associ�ees �a

quelques graphes mol�eculaires (les liens de cycles sont repr�esent�es par des cercles

noirs comportant �eventuellement la lettre H si le noyau du lien est un h�et�eroatome).

Page 137: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

130 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

4.3.2 Algorithme de construction de GRB

Connaissant l'ensemble de blocs XRB, il s'agit de d�eterminer l'ensemble ERB des

aretes de la repr�esentation par blocs GRB.

Pour tout �el�ement b de XRB, nous avons d�e�ni dans le paragraphe pr�ec�edent les

ensembles N(b) et P (b) contenant les sommets du noyau et de la p�eriph�erie de b.

Soit x un sommet du graphe mol�eculaire G = (X;E). Nous noterons :

� Blocs(x) = f b 2 XRB tel que x 2 N(b) [ P (b) g

� Noyaux Blocs(x) = f b 2 XRB tel que x 2 N(b) g

Notons Bmax le nombre maximal de blocs auquel peut appartenir un sommet

de G (i.e. Bmax = maxx2X jBlocs(x)j).

Pour la quasi-totalit�e des mol�ecules, le nombre Bmax est major�e par le degr�e

maximal dmax de G. En e�et, tout sommet ne peut appartenir �a plus de liens ou de

cha�nes carbon�ees qu'il n'a de voisins. Par ailleurs, on peut raisonnablement a�rmer

que, pour la plupart des graphes mol�eculaires, un sommet appartient au plus �a dmax

cycles pertinents.

La construction des ensembles Blocs(x) et Noyaux Blocs(x) peut etre r�ealis�ee

en O(jXS jBmax) par l'algorithme suivant :

1. Pour tout x 2 XS faire : Blocs(x) ?; Noyaux Blocs(x) ? fpour

2. Pour tout b 2 XRB faire :

3. Pour tout x 2 N(b) faire : Noyaux Blocs(x) Noyaux Blocs(x) [ fxg fpour

4. Pour tout x 2 N(b) [ P (b) faire : Blocs(x) Blocs(x) [ fxg fpour

5. fpour

Nous pouvons alors construire l'ensemble ERB de la mani�ere suivante :

1. ERB ?

2. Pour tout x 2 XS faire :

3. Pour tout b1 2 Noyaux Blocs(x) faire :

4. Pour tout b2 2 Noyaux(x) n fb1g faire :

5. ERB ERB [ ffb1; b2g g

6. fpour

Page 138: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.4. Centralit�e des aretes d'un graphe mol�eculaire 131

Cet algorithme peut etre ex�ecut�e en O(P

x2XSjNoyaux Blocs(x)j�jNoyaux(x)j),

ce qui donne �nalement un temps de calcul en O(jXS jBmax2) pour construire ERB.

Dans la mesure o�u Bmax ' dmax pour la plupart des mol�ecules, on peut dire que

la construction des aretes de GRB est g�en�eralement r�ealis�ee en O(jXS j d2max), c'est

�a dire en temps lin�eaire par rapport au nombre de sommets du graphe mol�eculaire

(puisque ce dernier est de degr�e born�e).

4.4 Centralit�e des aretes d'un graphe mol�eculaire

Au cours de l'analyse d'un graphe mol�eculaire, on est souvent amen�e �a d�eterminer

la partie centrale de la mol�ecule. Par exemple, lors de l'�elaboration d'une strat�egie de

r�etrosynth�ese, on va chercher �a ((casser)) la mol�ecule au centre de fa�con �a obtenir deux

parties de tailles semblables. Cette d�emarche { dite convergente { peut permettre de

scinder le probl�eme trait�e en deux sous-probl�emes de complexit�e deux fois moindre.

Nous allons donc nous e�orcer de formaliser cette notion de ((centralit�e)).

La recherche du centre d'un graphe n'est pas nouvelle en informatique (cf. [Berge,

1973]). On commence par d�e�nir, pour tout sommet x d'un graphe G = (X;E), son

�ecartement not�e e(x) o�u :

e(x) = maxy2Xnfxg

dist(x; y)

Tout sommet x0 d'�ecartement minimum est alors appel�e centre du graphe G.

Cette d�e�nition du centre d'un graphe n'est pourtant pas su�sante dans le cadre

de la chimie. En e�et, lorsque l'on e�ectue une d�emarche r�etrosynth�etique, on s'in-

t�eresse plus �a la centralit�e des aretes du graphe mol�eculaire qu'�a celle des sommets.

Cette di��erence s'explique simplement par le fait qu'une r�eaction chimique (ou une

transformation r�etrosynth�etique) modi�e surtout les liaisons de la mol�ecule et par l�a

meme les aretes du graphe mol�eculaire.

Par ailleurs, il faut reconna�tre que cette notion de ((centre du graphe mol�eculaire))

n'est qu'une mod�elisation assez lointaine de ce qu'un chimiste pourra d�esigner comme

�etant le ((centre de la mol�ecule)). Le premier �ecueil li�e �a cette formalisation correspond

au choix du graphe sur lequel le centre va etre recherch�e. Bien que le choix du graphe

mol�eculaire semble le plus naturel, on peut aussi lui pr�ef�erer le squelette mol�eculaire

qui rend mieux compte de la structure g�en�erale de la mol�ecule. Dans le meme ordre

Page 139: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

132 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

d'id�ees, il peut etre tout a fait judicieux de d�eterminer le centre du graphe associ�e �a

la repr�esentation par blocs de la mol�ecule.

Cet �eventail de choix du graphe utilis�e pour repr�esenter la mol�ecule, engendre

autant de solutions pour en d�esigner le centre. Bien sur, quelle que soit la repr�e-

sentation utilis�ee, les r�esultats obtenus ne seront jamais totalement oppos�es. Mais il

para�t di�cile de limiter la d�e�nition du centre de la mol�ecule �a un ensemble r�eduit

de liaisons qui d�epende �a ce point du mod�ele de graphe utilis�e pour le d�eterminer.

Il nous semble pr�ef�erable de d�e�nir la centralit�e d'une arete de fa�con relative sans

chercher �a isoler a priori une petite partie des aretes �etudi�ees.

Consid�erons donc un graphe G = (X;E) non orient�e et connexe.

Nous allons �etendre la notion d'�ecartement d'un sommet aux aretes de G. Pour

toute arete u = fx; yg 2 E nous d�e�nissons l'�ecartement de u not�e � (u) par :

� ( fx; yg ) = e(x) + e(y)

On en d�eduit alors la centralit�e de l'arete u :

centralit�e(u) = � (u)�minu02E

� (u0)

Suivant cette d�e�nition, les aretes les plus ((centrales)) auront une centralit�e �egale

�a 0, celles qui les entourent seront associ�ees �a la valeur 1 et ainsi de suite. On peut

alors d�e�nir le ((centre de la mol�ecule)) par l'ensemble des aretes dont la centralit�e

est au plus �egale �a une valeur donn�ee. Cette valeur sera d'autant plus petite que l'on

cherche �a d�e�nir le centre du graphe mol�eculaire de fa�con ponctuelle.

La d�etermination de la centralit�e des aretes repose avant tout sur le calcul de la

distance entre toute paire de sommets du graphe. Pour d�eterminer cet ensemble de

valeurs, il su�t de r�ealiser un parcours en largeur d'abord �a partir de chaque sommet,

ce qui donne une complexit�e globale en O(nm). Quant au calcul de l'�ecartement des

sommets, il peut etre ex�ecut�e en O(n2). La d�etermination de la centralit�e des aretes

�etant alors r�ealis�ee en O(m), on obtient �nalement un algorithme dont la complexit�e

globale est en O(nm).

Page 140: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.5. Fonctionnalit�e 133

4 0 2

242

40

6

6

5 4

4

4

5 63

11

9

97

7

7911

1112

0centralité

d’une arête3

écartement

d’un sommet7

écartement

d’une arête

5

0

Fig. 4.11 { D�etermination de la centralit�e des aretes �a partir de l'�ecartement des

sommets.

4.5 Fonctionnalit�e

La fonctionnalit�e d'une mol�ecule d�ecrit l'ensemble des groupements fonction-

nels qui apparaissent dans cette mol�ecule : ((On appelle groupement fonctionnel

l'atome ou le groupe d'atomes qui caract�erisent une classe de compos�es organiques et

qui en d�etermine les propri�et�es)) [Allinger et al., 1975]. Cette d�e�nition se traduit en

terme de graphes en disant qu'un groupement fonctionnel est un sous-graphe partiel

connexe du graphe mol�eculaire (cf. �gure 4.12).

La perception des groupements fonctionnels revet une place fondamentale au

cours de l'�elaboration d'un plan de synth�ese. Leur importance est telle que l'on peut

dire que sans les groupements fonctionnels la synth�ese de mol�ecules serait impossible.

Il est donc primordial pour un syst�eme d'aide �a la synth�ese de pouvoir reconna�tre

les groupements fonctionnels qui apparaissent dans la mol�ecule �etudi�ee.

La reconnaissance des groupements les plus simples, se limitant par exemple �a

une cha�ne de 2 �a 3 aretes, peut etre r�ealis�ee �a l'aide de m�ethodes ad hoc e�ectuant

de simples parcours du graphe mol�eculaire. Pour les groupements plus �elabor�es cor-

respondant �a des motifs structuraux de grande taille, il faut recourir �a une d�emarche

plus g�en�erale li�ee au probl�eme de l'isomorphisme de sous-graphe partiel. Mais la

Page 141: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

134 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

O

Cou

Cétone

O

O

C C

C

C

H

C

O

Oléfine

C

C

O

C

C

C

O

C

C

C

C

C

O

C

C

C

C

O

C C

Anhydride

ou

H

Enone

H

Carbonyle

ou

Ester

CC

C

O

C C

Enone

Ester

C O C

O

Fig. 4.12 { Un exemple de hi�erarchie de groupements fonctionnels.

principale di�cult�e provient du fait qu'un graphe d�e�nissant un groupement fonc-

tionnel peut etre inclus dans un autre graphe caract�erisant un groupement di��erent.

Il para�t ainsi n�ecessaire d'organiser de fa�con hi�erarchique l'ensemble des graphes d�e-

�nissant un groupement fonctionnel (cf. �gure 4.12). La recherche des groupements

fonctionnels s'apparente alors �a un processus de classi�cation dans cette hi�erarchie.

Nous reviendrons plus en d�etail sur cette d�emarche dans le chapitre 6 et notamment

dans le paragraphe 6.5.2.

Page 142: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.6. Sym�etrie et st�er�eochimie 135

4.6 Sym�etrie et st�er�eochimie

La sym�etrie occupe une part importante de l'analyse structurale d'un graphe.

Dans le cadre de la synth�ese, il est primordial de pouvoir d�eterminer les parties

sym�etriques d'une mol�ecule pour �eviter d'envisager des solutions parfaitement �equi-

valentes du fait de leur sym�etrie. En constatant qu'une mol�ecule est compos�ee de

deux parties sym�etriques, on peut �egalement rechercher une strat�egie de r�etrosyn-

th�ese permettant de scinder la mol�ecule en deux pr�ecurseurs identiques. On retrouve

en�n la notion de sym�etrie dans la d�e�nition de la st�er�eochimie laquelle fait r�ef�erence

�a la chimie en trois dimensions. Nous reviendrons sur la d�e�nition de la st�er�eochimie

dans le paragraphe 4.6.2 o�u nous pr�esenterons �egalement les r�egles CIP [Cahn et al.,

1966] permettant de d�esigner les divers types de st�er�eocentres.

Qu'il s'agisse de rechercher les appariements sym�etriques d'un motif structural

dans un graphe mol�eculaire, ou encore de d�eterminer la st�er�eochimie d'une mol�ecule,

nous devons etre en mesure de reconna�tre les parties sym�etriques d'un graphe. D'un

point de vue formel, ce probl�eme se ram�ene �a l'�etude des automorphismes du graphe

et, plus g�en�eralement, �a la recherche d'isomorphismes entre graphes.

�Etant donn�e deux graphes G = (X;E) et G0 = (X 0; E0) munis de fonctions de

valuations sur les sommets et les aretes (not�ees respectivement fX : X ! V et

fE : E ! E pour G et fX 0 : X 0 ! V et fE0 : E0 ! E pour G0), tout morphisme

� : X ! X 0 est un isomorphisme de G dans G0 si et seulement si :

� � est bijectif;

� � pr�eserve l'adjacence : 8x; y 2 X; fx; yg 2 E , f�(x); �(y)g 2 E0;

� � pr�eserve les fonctions de valuation : 8x 2 X; fX(x) = fX 0(�(x)) et

8fx; yg 2 E; fE(fx; yg) = fE0(f�(x); �(y)g).

Les probl�emes d'isomorphisme et d'automorphisme sont relativement �equivalents.

Un automorphisme du graphe G est un isomorphisme de G dans lui-meme. �A l'in-

verse, rechercher un isomorphisme entre deux graphes G et G0 se ram�ene �a un pro-

bl�eme d'automorphisme. Il su�t de choisir un sommet r de G et un sommet r0 de

G0 puis de construire un nouveau graphe (not�e G00) contenant G et G0 ainsi qu'une

arete suppl�ementaire entre les sommets r et r0. La �gure 4.13 donne un exemple de

cette construction. On v�eri�era ais�ement que l'existence d'un isomorphisme de G

dans G0, transformant r en r0, est �equivalente �a l'existence d'un automorphisme de

Page 143: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

136 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

...

G’’

G

G’

r

G’

G

G’’

r

r’

r’

Fig. 4.13 { Transformation d'un probl�eme d'isomorphisme entre deux graphes G et

G0 en un probl�eme d'automorphisme.

G00 r�ealisant la meme transformation. En faisant varier le sommet r0 choisi dans X 0 {

et en construisant autant de graphes G00 { on peut d�eterminer tous les isomorphismes

de G dans G0.

L'op�eration de composition des morphismes conf�ere �a l'ensembleA(G) des auto-

morphismes d'un graphe G une structure de groupe commutatif. Le cardinal de cet

ensemble peut etre tr�es �elev�e pour peu que le graphe poss�ede de nombreuses sym�e-

tries. C'est pourquoi, on �evitera g�en�eralement l'�enum�eration syst�ematique de tous les

automorphismes en privil�egiant la recherche d'un automorphisme sp�eci�que trans-

formant tel sommet donn�e en tel autre. Il faut cependant pr�eciser que la recherche

d'un automorphisme est un probl�eme di�cile bien que non class�e 1.

Pour d�eterminer un automorphisme d'un graphe G, il faut essayer d'apparier

chaque sommet de G avec un autre sommet de fa�con �a ce que les contraintes de

voisinage et de valuations soient respect�ees. �A priori, un sommet donn�e peut s'appa-

rier avec n'importe quel autre sommet du graphe. Il existe cependant des contraintes

�el�ementaires (degr�e, valuations) qui permettent de restreindre le nombre de choix

possibles. Lorsqu'apr�es avoir appari�e deux sommets x et y, on ne parvient pas �a

construire un automorphisme complet, il faut remettre en cause le choix initial en

appariant le sommet x avec un autre sommet possible. Il s'agit d'un m�ecanisme

de recherche avec ((retour arri�ere)) (ou ((backtrack))). Nous montrerons dans le pa-

ragraphe 6.3, comment ce probl�eme peut etre r�esolu en utilisant le formalisme des

1. la question de savoir si l'isomorphisme de graphes appartient �a la classe des probl�emes polyno-

miaux (c'est-�a-dire que l'on peut r�esoudre en temps polynomial en fonction de la taille des donn�ees)

reste un des grands d�e�s actuels de la recherche en algorithmique.

Page 144: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.6. Sym�etrie et st�er�eochimie 137

CSP dans le cadre plus g�en�eral de la recherche d'isomorphismes de sous-graphes.

Mais quelle que soit la m�ethode utilis�ee, le temps de calcul est d'autant plus r�eduit

que le nombre de choix d'appariements possibles est limit�e. De fa�con g�en�erale, on

commence par r�ealiser une phase de pr�e-traitement visant �a r�eduire le nombre de

sommets avec lesquels un sommet donn�e peut s'apparier. Cette phase initiale s'ap-

puie sur l'utilisation ((d'invariants pour l'isomorphisme)). Il s'agit de propri�et�es qui

d�e�nissent des conditions n�ecessaires { mais pas su�santes { pour que deux sommets

puissent etre appari�es. Par exemple, deux sommets ne peuvent etre associ�es par un

automorphisme que s'ils ont le meme degr�e.

L'invariant utilis�e dans ReSyn repose sur une id�ee assez classique, pr�esent�ee

notamment dans [Saucier, 1971], mais propose une d�emarche originale adapt�ee aux

automorphismes et qui donne d'excellents r�esultats dans le cadre de graphes mol�ecu-

laires en chimie organique. Le probl�eme de l'isomorphisme de graphes a fait l'objet de

nombreuses �etudes en algorithmique et, dans une moindre mesure, en informatique

appliqu�ee �a la chimie. Par soucis de concision, nous avons choisi de ne pas exposer

tous ces travaux ici. On peut cependant citer quelques classiques [Read et Corneil,

1977; Corneil et Kirkpatrick, 1980].

Si, comme nous l'avons dit pr�ec�edemment, l'isomorphisme de graphes est un pro-

bl�eme ((non class�e)), il existe certains types de graphes pour lesquels des algorithmes

polynomiaux sont connus. En dehors des arbres, on peut citer les graphes planaires

[Hopcroft et Wong, 1974; Tarjan, 1977; Chiba et al., 1985] ou les graphes de degr�e

born�e [Luks, 1982]. Bien que de nombreux graphes mol�eculaires entrent dans ces ca-

t�egories, il faut pr�eciser que ces algorithmes ne sont pas toujours tr�es e�caces dans

le cadre de la chimie. Les graphes mol�eculaires �etudi�es sont g�en�eralement de taille

r�eduite et surtout fortement �etiquet�es, ce qui permet d'obtenir de bons r�esultats par

des m�ethodes classiques (avec ((retour arri�ere))) pour peu que l'on utilise de bons

invariants.

Page 145: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

138 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

4.6.1 Classes d'�equivalence pour la sym�etrie

Pour pouvoir �evaluer la sym�etrie d'un graphe G = (X;E), on aimerait disposer

d'un algorithme polynomial permettant de d�eterminer la relation d'�equivalenceauto�

d�e�nie comme suit :

8x; y 2 X; xauto� y () 9� 2 A(G) tel que �(x) = y (et ��1(y) = x)

Malheureusement, un tel algorithme n'est pas connu dans la mesure o�u le pro-

bl�eme de l'isomorphisme n'est pas ((class�e)). Nous allons proposer un algorithme po-

lynomial permettant de construire une partition de l'ensembleX, qui soit moins �ne

que celle d�e�nie par X=auto� , mais qui garantisse que deux sommets �equivalents pour

la relationauto� soient dans la meme partie.

On commence par partitionner l'ensemble des sommets du graphe G en fonction

de l'�etiquette associ�ee �a chaque sommet (fonction fX). On obtient une premi�ere

partition P = fPigi2I (o�u I � N). Pour tout sommet x, on notera p(x) l'indice de la

partie �a laquelle appartient x.

Dans un premier temps, nous supposerons qu'il n'existe pas de fonction de va-

luation sur les aretes. La m�ethode que nous pr�esentons peut etre facilement �etendue

aux graphes doublement valu�es comme nous le verrons �a la �n de ce paragraphe.

Consid�erons maintenant deux sommets r et x de G. Nous d�e�nissons l'environne-

ment de x par rapport �a r (not�e env(r; x)) par le quintuplet :

env(r; x) = (dist(r; x); �; �; ; p(x) )

o�u �, � et d�esignent respectivement le nombre de voisins de x qui sont plus proches,

�a �egale distance et plus �eloign�es du sommet r que x. La �gure 4.14 illustre cette

d�e�nition.

Pour un sommet r donn�e, consid�erons l'ensemble fenv(r; x)gx2X de tous les envi-

ronnements de sommets par rapport �a r. Cet ensemble peut etre d�etermin�e en O(m)

en r�ealisant un parcours en largeur �a partir de r.

Le calcul d'un tel ensemble d'environnements est relativement classique. On le

retrouve dans [Saucier, 1971] et [Corneil et Gotlieb, 1971] pour les probl�emes d'iso-

morphisme de graphe. Les m�ethodes qu'ils pr�esentent n'�etant pas adapt�ees au pro-

bl�eme qui nous int�eresse (d�etermination de la fonctionauto� ), nous allons proposer une

d�emarche originale qui a �et�e utilis�ee dans le cadre de ReSyn.

Page 146: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.6. Sym�etrie et st�er�eochimie 139

2 310 niveau

x1

x2

x3 x5

r

x4

P2 = fx2; x3; x4gP1 = fx1; x5; rg

env(r; x1) = env(r; x5) = (2; 1; 1; 1; 1)

env(r; x3) = env(r; x4) = (1; 1; 0; 1; 2)

env(r; x2) = (3; 2; 0; 0; 2)

env(r; r) = (0; 0; 0; 2; 1)

Fig. 4.14 { D�e�nition de l'environnement des sommets d'un graphe par rapport �a un

sommet donn�e r

Notons Lenv(r) la liste tri�ee dans l'ordre lexicographique des �el�ements de l'en-

semble fenv(r; x)gx2X. La liste Lenv(r) peut etre calcul�ee en O(n) en utilisant un

algorithme de tri de type RADIX 2.

�Etant donn�e une partition P des sommets du graphe, nous pouvons d�e�nir une

relation d'�equivalence sur X que nous noteronsLenv� :

8x; y 2 X; xLenv� y () Lenv(x) = Lenv(y)

Pour v�eri�er si ((xLenv� y)), il faut comparer les deux listes tri�ees Lenv(x) et Lenv(y),

ce qui est r�ealisable en O(n).

L'ensemble quotient X=Lenv� permet de d�e�nir une nouvelle partition de X (not�ee

P 0 = fP 0igi2I 0) qui est plus �ne 3 que la partition initiale P.

Pour d�eterminer P 0, il su�t d'ordonner l'ensemble fLenv(r)gr2X suivant l'ordre

lexicographique. Ce calcul est r�ealisable en O(n2 log n).

Le processus g�en�eral est ensuite r�eit�er�e, en posant P = P 0, jusqu'�a ce que la

partition engendr�ee soit stable. Dans la mesure o�u au moins une partie est r�eduite

�a chaque it�eration, on obtient une complexit�e totale en O(n3 log n). Il faut cepen-

dant pr�eciser que lors d'une �etude portant sur environ 10 000 mol�ecules, nous avons

constat�e que la partition �nale est toujours obtenue apr�es la premi�ere ou la seconde

2. Ce superbe algorithme est une variante du ((tri par base)) (cf. [Cormen et al., 1994]) et a connu

de multiples versions, dont [Davis, 1992]. L'utilisation d'un tri RADIX est possible dans la mesure

o�u chaque �el�ement de fenv(r; x)gx2X est un quintuplet de nombres compris entre 0 et n.

3. la partition P 0 est plus �ne que P ssi 8P 0 2 P 0; 9P 2 P tel que P 0 � P

Page 147: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

140 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

2

2

2

2

1

2

2

1

1

2

2

2

2

2

2

2

2

2

2

1

2

2

1

1

0x

Partition :

y0

zz

(0; 0; 0; 3; 1); (1;1;1; 1; 1); (1;1; 1; 1;1); (1; 1; 2;9;2); (2;2;1;0; 1);

(2; 2; 1; 0; 1); (2;1;2; 0; 1); :::; (2;1; 2; 0;1))

Lenv�(x) = Lenv�(y) = (

P1

dist(x; z)

P2dist(y; z)

Fig. 4.15 { Un exemple de graphe pour lequel les relationsauto

� etLenv�

� ne sont pas

�equivalentes.

it�eration. Dans le cadre de la chimie organique, on peut raisonnablement supposer

que la complexit�e totale de notre algorithme reste en O(n2 log n).

NotonsLenv�� la relation d'�equivalence obtenue �a la �n de l'algorithme.Par construc-

tion, on a n�ecessairement :

8x; y 2 X; xauto� y =) x

Lenv�� y (ou encore x

Lenv�

6� y =) xauto

6� y )

Il va sans dire que la r�eciproque de cette implication n'est pas vraie. La �gure 4.15

en pr�esente un contre-exemple. �A la �n de l'algorithme on n'obtient que deux parties

pour le graphe de cette �gure. Tous les sommets de degr�e 3 ont en e�et les memes

listes d'environnements.

Il faut pourtant pr�eciser que ce type de graphes ne peut pratiquement pas exister

en chimie organique dans la mesure o�u la valence des atomes est g�en�eralement inf�e-

rieure �a 8. On peut cependant noter une certaine analogie entre ce graphe et celui

que nous avions associ�e �a la mol�ecule du ferroc�ene (�gure 1.7, page 18). Mais comme

nous l'avons dit, ce graphe ne traduit pas correctement la structure de la mol�ecule,

notamment au niveau des �electrons d�elocalis�es.

En pratique, nous avons test�e notre algorithme sur une base de 10 000 mol�ecules

organiques connues sans trouver de graphes mol�eculaires pour lesquels les relationsauto� et

Lenv� ne soient pas �equivalentes. Bien sur, ce n'est pas une preuve. Mais on

Page 148: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.6. Sym�etrie et st�er�eochimie 141

peut raisonnablement penser que, dans le cadre de la chimie organique, la partition

de sommets associ�ee �a la relationLenv�� est g�en�eralement �egale �a celle d�e�nie par la

relationauto� .

Dans la mesure o�u, pour un graphe mol�eculaire, le nombre de sommets appar-

tenant �a la meme classe d'�equivalence de la relationLenv�� est en g�en�eral tr�es faible,

la d�etermination de la relationauto� �a partir de

Lenv�� peut etre r�ealis�ee rapidement.

La relationLenv�� appara�t donc comme une excellente heuristique pour l'�etude des

sym�etries d'un graphe mol�eculaire.

Quelques pr�ecisions �a propos de la fonction de valuation sur les aretes

Dans le paragraphe pr�ec�edent, nous avons suppos�e qu'il n'existait pas de fonction

de valuation sur les aretes du graphe. La prise en compte de cette fonction ne pr�esente

pas de r�eelle di�cult�e. Une premi�ere solution consiste �a modi�er la d�e�nition de

l'environnement d'un sommet x par rapport �a un sommet r de r�ef�erence. Rappelons

que env(r; x) = (dist(r; x); �; �; ; p(x) ).

Dans la pr�ec�edente version, �, � et d�esignaient le nombre de voisins de x suivant

les di��erents niveaux de profondeur par rapport �a r. Pour tenir compte des �etiquettes

sur les aretes, nous pouvons d�e�nir � (respectivement � et ) par la liste ordonn�ee

des �etiquettes des aretes reliant x �a chaque sommet y tel que dist(r; x) > dist(r; y)

(respectivement dist(r; x) = dist(r; y) et dist(r; x) < dist(r; y)).

Dans cette nouvelle d�e�nition, illustr�ee par la �gure 4.16, la taille de chaque

environnement env(r; x) n'est plus �egale �a 5 mais d�epend du degr�e du sommet x. La

taille de chaque liste Lenv(()x) sera donc en O(m) (et non plus O(n)), ce qui accro�t

le cout du calcul de chaque nouvelle partition qui passe deO(n2 log n) �a O(nm log n).

Une seconde solution peut etre envisag�ee lorsque l'ensemble des �etiquettes des

aretes se limite aux valeurs simple, double et triple. Dans ce cas, la m�ethode employ�ee

consiste �a rajouter des sommets �ctifs au graphe. Pour toute arete fx; yg du graphe

telle que fE(fx; yg) = double, on cr�ee deux sommets ((�ctifs)) x0 et y0 tels que fX(x0) =

fX(x) et fX(y0) = fX(y). Puis on cr�ee une arete fx; y0g et une arete fy; x0g (voir

�gure 4.17). Dans le cas o�u l'arete consid�er�ee est �etiquet�ee par la valeur triple, on

cr�ee quatre sommets �ctifs et quatre nouvelles aretes.

Page 149: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

142 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

0 1 2 3 4

r x z

env(r; x) = (1; (simple); (); (simple, double); 1) env(r; z) = (1; (simple); (); (triple); 1)

Fig. 4.16 { Une nouvelle d�e�nition de l'environnement d'un sommet pour tenir

compte de la fonction de valuation sur les aretes.

yx

yx x yy0 x0

x

y x00

x0y0

y00

Fig. 4.17 { Prise en compte de la fonction de valuation sur les aretes par ajout de

sommets �ctifs.

Lorsque cette modi�cation du graphe a �et�e op�er�ee, les �etiquettes des aretes sont

ignor�ees. On peut alors appliquer l'algorithme construisant les classes d'�equivalence

de la relationLenv�� , en prenant cependant quelques pr�ecautions. Le traitement des

sommets �ctifs ne peut pas etre identique �a celui des sommets initiaux. Dans la

�gure 4.18, le graphe incluant les sommets �ctifs (sch�ema A) pr�esente une sym�etrie

qui n'existe pas dans le graphe mol�eculaire initial 4. Si l'on se contente d'ajouter de

nouveaux sommets aux extr�emit�es de chaque arete double ou triple, on perd toute

information sur la nature du sommet qui constitue l'autre extr�emit�e de l'arete en

question. En e�et, consid�erons une arete double fx; yg et notons y0 le sommet �ctif

associ�e �a y et reli�e �a x. En consid�erant y0 comme un sommet �a part enti�ere du meme

type que y, on n'exprime pas le fait que x est ((doublement reli�e)) �a y mais plutot que

4. dans le cas pr�ecis de cet exemple, la mol�ecule associ�ee est aromatique et poss�ede donc une

sym�etrie. Cependant, un cas analogue non aromatique peut exister pour des cycles de plus grande

taille pr�esentant la meme alternance de liaisons simples et doubles.

Page 150: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.6. Sym�etrie et st�er�eochimie 143

C /B /

A /

D /

6

5

4

6

2

1

15

4

11

1

51

81

3

1

1

1

11

1

1

1

3

2

21

1

1

1

10

1

41

14

1

12

3

45

6

2

5

6

7

7

99

8 10

4

5

2

31

1

x

y

y

x’y’

x

x

y

y’ x’ x’y’

x

y

Fig. 4.18 { Traitement des sommets �ctifs lors du calcul deLenv�

x est reli�e �a deux sommets du meme type que y. C'est cette perte d'information qui

pose un probl�eme dans le cas de la �gure 4.18.

Pour obtenir un r�esultat correct, lors du calcul de la relationLenv�� d�e�nie sur

le graphe mol�eculaire, nous devons appliquer un traitement particulier aux atomes

�ctifs. Puisque l'atome y0 n'est qu'une ((image)) de l'atome y, on calcule les environ-

nements de sommets en posant : p(y0) = p(y) (o�u p(y) d�esigne l'indice de la partie

�a laquelle appartient y). Dans le cas de la �gure 4.18, on obtient la bonne partition

apr�es la deuxi�eme it�eration de l'algorithme (cf. sch�emas B �a D).

Pour terminer, il faut remarquer que la m�ethode utilisant des sommets �ctifs

peut etre grandement simpli��ee si l'on construit un graphe multiple. En rempla�cant

chaque arete fx; yg �etiquet�ee ((double)) par deux aretes reliant les sommets x et y,

on obtient un r�esultat �equivalent.

Page 151: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

144 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

4.6.2 D�etermination de la st�er�eochimie

L'objectif de ce paragraphe est d'apporter quelques pr�ecisions sur le calcul de la

st�er�eochimie dans une mol�ecule. Il s'agit d'un probl�eme tr�es complexe qui fait appel

�a de nombreuses connaissances aussi bien chimiques que physiques. C'est pourquoi,

la pr�esentation que nous en ferons sera volontairement simpli��ee, voire simpliste.

La notion de st�er�eochimie est �etroitement li�ee �a la nature tridimensionnelle des

mol�ecules. Comme nous l'avons dit au chapitre 1, le graphe mol�eculaire ne d�ecrit

que la structure topologique d'une mol�ecule, c'est-�a-dire l'ensemble des liaisons qui

existent entre les atomes. Cependant, il est souvent n�ecessaire de conna�tre certains

aspects spatiaux de la structure d'une mol�ecule. Un meme graphe mol�eculaire peut

etre associ�e �a des mol�ecules qui n'ont pas la meme ((forme)) tridimensionnelle. Ces

caract�eristiques spatiales d'une mol�ecule peuvent avoir des cons�equences tr�es impor-

tantes sur les propri�et�es chimiques, physiques et biologiques de la mol�ecule.

4.6.2.1 Quelques notions �el�ementaires

Nous commencerons par d�e�nir bri�evement les notions de con�guration et de

conformation. Cette pr�esentation est en partie inspir�ee du chapitre traitant de la

st�er�eochimie dans [Allinger et al., 1975].

Deux mol�ecules ayant le meme graphe mol�eculaire mais des dispositions spatiales

di��erentes sont appel�ees st�er�eoisom�eres. Consid�erons, par exemple, les mol�ecules

A et B de la �gure 4.19. Elles correspondent aux deux con�gurations possibles du

chloro-2 butane. Il s'agit ici d'�enantiom�eres, c'est-�a-dire de deux con�gurations qui

se pr�esentent comme un objet et son image dans un miroir plan. Lorsque la repr�esen-

tation d'une mol�ecule et son image dans un miroir sont superposables (cf. C et D),

on dit que la mol�ecule n'est pas chirale. Il ne peut pas alors exister d'�enantiom�eres

de cette mol�ecule.

Lorsque deux con�gurations, qui ne sont pas superposables, ne correspondent pas

�a un objet et son image dans un miroir plan, on parle de diast�er�eoisom�eres (cf. E et

F).

Deux con�gurations distinctes correspondent �a des produits di��erents. Il n'est pas

possible de passer d'une con�guration �a une autre sans fournir la quantit�e d'�energie

n�ecessaire pour rompre une liaison.

Page 152: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.6. Sym�etrie et st�er�eochimie 145

{ Configurations {

C

CH3

H3CH2C

ClHC

CH3

CH2CH3

Cl H

A B

�enantiom�eres

C

H

HO

CH2CH3H3CH2C`C

H

OH

H3CH2C CH2CH3

C D

Pas de chiralit�e

H

H

H

Br

H

Br

H

H

H

Br

Br

HE F

diast�er�eoisom�eres

{ Conformations {

C

CH

H

H

CH3

H3C

H

C

CH

H

H

CH3

H

CH3

C

CH

CH3

H

CH3

H

H

Fig. 4.19 { Quelques exemples de st�er�eoisom�eres

Page 153: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

146 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

b

a a

xxd

c c b

d

RS

x

d

x

d

a

bccb

a

Fig. 4.20 { D�esignation des �enantiom�eres suivant les r�egles CIP : con�gurations R

ou S

Lorsque deux st�er�eoisom�eres sont �equivalents �a une rotation pr�es autour d'une

liaison simple, on parle de conformation (cf. �gure 4.19). �A l'inverse des con�gu-

rations, les conformations d�esignent des structures relativement proches qui s'inter-

convertissent sans cesse.

4.6.2.2 Les r�egles C.I.P.

Dans la mesure o�u la notion de st�er�eochimie est de nature spatiale, la d�esignation

d'un st�er�eoisom�ere n�ecessite le recours �a une repr�esentation tridimensionnelle de la

mol�ecule. Pour caract�eriser une con�guration dans une repr�esentation planaire, on

e�ectue une factorisation en ne consid�erant que les st�er�eocentres, le plus souvent des

carbones asym�etriques, et en leur attribuant un descripteur suivant les r�egles d�e�nies

par Cahn, Ingold et Prelog [Cahn et al., 1966]. Ces r�egles, g�en�eralement d�esign�ees

sous le terme de CIP, sont beaucoup trop complexes pour que nous envisagions de

les pr�esenter ici. Nous nous limiterons �a un cas relativement simple a�n de pouvoir

exposer les probl�emes d'ordre algorithmique qui sont li�es �a la d�etermination de la

con�guration d'un atome suivant les r�egles CIP.

Consid�erons un atome de carbone poss�edant 4 voisins (c'est-�a-dire dont le sommet

correspondant dans le graphe mol�eculaire est de degr�e 4). D'un point de vue spatial,

cet atome est situ�e au centre d'un t�etra�edre dont les quatre coins sont occup�es par

ses voisins (cf. �gure 4.20). Pour que cet atome soit un st�er�eocentre, il faut que ces

quatre voisins ne soient pas �equivalents. Dans le cas contraire, il ne peut y avoir de

chiralit�e puisque la con�guration et son image miroir sont superposables.

Page 154: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.6. Sym�etrie et st�er�eochimie 147

Notons a; b; c et d les voisins de l'atome de carbone x �etudi�e. Supposons qu'il

existe un ordre total quelconque sur ces atomes et posons a > b > c > d. Consid�erons

maintenant le plan d�e�ni par les atomes a, b et c. En regardant ce plan suivant la

direction��!xd , on d�etermine le sens de rotation, autour de l'axe

��!xd , d�e�ni par

la s�equence a; b; c. Suivant l'�enantiom�ere consid�er�e, ce sens correspond �a celui des

aiguilles d'une montre (con�guration R) ou au sens inverse (con�guration S), comme

le montre la �gure 4.20.

Pour calculer la con�guration d'un atome, il faut tout d'abord savoir s'il s'agit

d'un st�er�eocentre, c'est-�a-dire s'il poss�ede quatre voisins qui sont tous di��erents.

Lorsque tel est le cas, il faut ensuite ordonner ces voisins pour pouvoir d�eterminer

la con�guration du st�er�eocentre. Ces deux d�emarches sont g�en�eralement r�ealis�ees en

utilisant les r�egles CIP. Ces r�egles permettent d'ordonner les voisins d'un atome en

tenant compte de propri�et�es topologiques (graphe mol�eculaire) mais aussi chimiques

(cf. [Prelog et Helmchen, 1982] pour une pr�esentation d�etaill�ee).

Pour d�eterminer la con�guration d'un atome x, on commence par construire,

�a partir du graphe mol�eculaire, un arbre dont la racine est x (cf. �gure 4.21). La

description de la m�ethode de construction de cet arbre est souvent obscure. Il s'agit

en fait de ((l'arbre de recherche d'un parcours en profondeur �a partir du sommet x))5

dans le graphe mol�eculaire. Si on exclu les n�uds dont le num�ero est repr�esent�e en

gras, l'arbre CIP contient tous les chemins �el�ementaires ayant x pour extr�emit�e dans

le graphe mol�eculaire.

Pour savoir si les quatre voisins du sommet x sont di��erents, on v�eri�e ensuite

que les sous-arbres ayant pour racine les voisins de x dans l'arbre CIP ne sont pas

isomorphes. On peut en e�et montrer que deux voisins de x dans le graphe mol�eculaire

occupent des positions sym�etriques par rapport �a x si et seulement si les sous-arbres

qui leur correspondent dans l'arbre CIP sont isomorphes (cf. [Custer, 1986]).

5. pour r�esumer, on peut dire qu'un arbre de recherche d�ecrit tous les �etats possibles que l'on

peut rencontrer au cours d'une recherche. Dans le cas d'un parcours en profondeur issu de x,

l'exploration commence par le sommet x qui est la racine de l'arbre CIP. �A partir de x on peut

prendre 4 directions qui correspondent aux 4 �ls de x dans l'arbre, et ainsi de suite : : : Lorsqu'apr�es

etre parvenu �a un sommet y en passant par un sommet z, on trouve une nouvelle arete permettant

de revenir sur z, cette arete est rajout�ee �a l'arbre (n�uds en gras) mais la recherche n'est pas

poursuivie dans cette voie. On r�ealise alors un ((retour arri�ere)).

Page 155: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

148 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

1

2

3

4

5

6

7

8

9

10

11 12

14

15

16

1719

2224

25

23

21

20

18

16

17

18

21

23

20

20

22

24

25

23

21

21

23

18

22

18

20

2419

22

19

17

1922

17

20

23

2414

15

1211

97

10

8

6

5

31

2

4

3

1

2

4

97

86

12

43 5

4213

19

16

16

21

25

16

21145

5

10

10

2519

16

2524

12

5

5

x

x

13

13

Fig. 4.21 { Arbre associ�e au calcul de la st�er�eochimie de x suivant les r�egles CIP

D�eterminer si deux arbres sont isomorphes n'est pas un probl�eme di�cile. Il existe

de nombreux algorithmes (dont celui propos�e dans [Tarjan, 1977]) qui permettent

de r�esoudre ce type de probl�eme en temps lin�eaire par rapport au nombre de n�uds

de l'arbre. Par contre, dans la mesure o�u l'arbre CIP �enum�ere tous les chemins

�el�ementaires issus de x dans le graphe mol�eculaire, le nombre de n�uds de cet arbre

peut s'av�erer tr�es important, voire exponentiel par rapport au nombre de sommets

du graphe mol�eculaire. Par exemple, l'arbre CIP construit �a partir du sommet x

du graphe de la �gure 4.22 contient 470 n�uds alors que le graphe mol�eculaire ne

comporte que 10 sommets.

La m�ethode CIP pour d�eterminer si les voisins d'un sommet donn�e sont sym�e-

triques n'est donc pas tr�es e�cace. On peut lui pr�ef�erer une d�emarche plus simple

bas�ee sur l'utilisation de la relationLenv� que nous avons pr�esent�ee dans le para-

graphe 4.6.1. Avant d'exposer cette m�ethode, il faut pr�eciser que le recours �a la

Page 156: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.6. Sym�etrie et st�er�eochimie 149

xy

z

yauto� z y

auto

6�x

zet

Classes d'�equivalence de la relationauto

Fig. 4.22 { Les relationsauto

� etauto

�x

ne sont pas �equivalentes.

construction d'un arbre CIP est indispensable si l'on veut d�eterminer la con�gu-

ration exacte de l'atome �etudi�e. Les r�egles CIP sont en e�et d�e�nies �a partir de

l'arbre correspondant, notamment en ce qui concerne l'ordonnancement des voisins

de l'atome consid�er�e. Mais on a tout int�eret �a limiter le recours aux r�egles CIP,

surtout lorsqu'il s'agit de savoir si les voisins d'un atome occupent des positions

sym�etriques par rapport �a ce sommet.

Soit x un sommet du graphe mol�eculaire G = (X;E). On peut formaliser le fait

que deux sommets occupent des positions sym�etriques par rapport �a x en d�e�nissant

une nouvelle relation d'�equivalence not�eeauto�x:

8y; z 2 X; yauto�xz () 9� 2 A(G) tel que �(x) = x et �(y) = z (et ��1(z) = y)

On v�eri�era ais�ement que :

8y; z 2 X; yauto�xz ) y

auto� z ou encore y

auto

6� z ) yauto

6�x

z

La r�eciproque de cette implication n'est pas vraie puisqu'il peut exister un auto-

morphisme transformant un sommet y en z sans que le sommet x soit invariant pour

cet automorphisme (cf. �gure 4.22).

En reprenant les r�esultats obtenus pour la relationLenv�� d�e�nie dans le paragraphe

pr�ec�edent, nous pouvons �enoncer la propri�et�e suivante :

Propri�et�e 2 8x; y; z 2 X; yLenv�

6� z =) yauto

6� z =) yauto

6�x

z

Pour d�eterminer si le sommet x d'un graphe mol�eculaire correspond �a un st�er�eo-

centre de la mol�ecule, on commence par regarder si ses voisins appartiennent �a des

Page 157: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

150 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

classes d'�equivalence di��erentes pour la relationLenv�

6� . Lorsque tel est le cas, on est sur

que x est un st�er�eocentre. Si l'on dispose d'informations sur la disposition spatiale

des voisins de x dans la mol�ecule, on peut utiliser les r�egles CIP pour d�eterminer la

con�guration exacte de x. Par contre, si ces informations ne sont pas disponibles, il

est inutile de construire l'arbre CIP puisqu'il ne permettra pas de pr�eciser la nature

du st�er�eocentre d�etect�e grace �a la relationLenv�

6� .

Par ailleurs, lorsque au moins deux voisins y et z de x sont dans la meme classe

d'�equivalence pour la relationLenv�� , on ne peut pas directement savoir si x est un

st�er�eocentre. En e�et, si yLenv�� z, on ne peut pas en d�eduire que y

auto�xz, et cela pour

deux raisons : d'une part parce que les relationsLenv�� et

auto� ne sont pas �equivalentes,

et d'autre part, parce le fait que yauto� z n'implique pas n�ecessairement que y

auto�xz.

Pour v�eri�er qu'un sommet x n'est pas un st�er�eocentre, il faut donc exhiber

un automorphisme qui associe deux voisins de x et pour lequel x est invariant. La

construction de cet automorphisme sera r�ealis�ee en s'appuyant sur la partition d�e�nie

par la relationLenv�� . Le recours �a un arbre CIP dans ce cas serait en e�et beaucoup

plus couteux.

D'une mani�ere g�en�erale, on peut dire que le calcul de la st�er�eochimie, tout en

s'appuyant sur les r�egles CIP, peut etre grandement optimis�e en utilisant la relationLenv�� d�e�nie dans le paragraphe 4.6.1.

4.7 Conclusion

Comme pour tout autre probl�ematique r�eelle, la reconnaissance de caract�eris-

tiques structurales d'une mol�ecule n'est pas sans poser de nombreuses di�cult�es.

Le fait que la synth�ese organique ne soit pas enti�erement formalis�ee rend d'autant

plus complexe tout travail de mod�elisation. Il importe alors non seulement de par-

faire l'ad�equation entre les mod�eles propos�es et les notions qu'ils repr�esentent mais

aussi, et surtout, de garantir la clart�e de ces mod�elisations. �A d�efaut d'etre exact,

un mod�ele doit toujours s'appuyer sur une d�e�nition pr�ecise qui garantisse sa coh�e-

rence dans le cadre de la th�eorie dans laquelle il est d�ecrit. Faute de quoi, on est

immanquablement confront�e au risque d'assimilation entre le mod�ele et la r�ealit�e.

Ce probl�eme est particuli�erement important lorsque l'on veut concevoir un syst�eme

Page 158: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

4.7. Conclusion 151

d'aide au raisonnement qui n�ecessite des interactions avec un intervenant humain.

Il ne peut y avoir de dialogue sans compr�ehension mutuelle. Dans la mesure o�u les

syst�emes informatiques ne sont toujours pas ((intelligents)), on ne peut leur deman-

der de comprendre des nuances qui leurs sont �etrang�eres. Il faut donc compter sur la

sup�eriorit�e de l'intervenant humain pour qu'il sache reconna�tre, dans une r�eponse

erron�ee, les limites du mod�ele manipul�e par le syst�eme. Sans pr�ejuger des capaci-

t�es de cet intervenant, on choisira une d�e�nition simple, bien qu'incompl�ete, plutot

qu'une mod�elisation plus pr�ecise mais trop di�cile �a appr�ehender.

Une fois que l'on a mod�elis�e diverses caract�eristiques structurales, il convient

d'�elaborer des algorithmes permettant de les percevoir. Le choix d'un mod�ele peut

d'ailleurs etre in uenc�e par l'existence de m�ethodes e�caces pour rechercher le motif

structural qui lui est associ�e. Dans la mesure o�u la d�emarche de mod�elisation s'appuie

sur la th�eorie des graphes, la recherche de m�ethodes de perception b�en�e�cie d'une

multitude de travaux en algorithmique de graphes. On peut cependant remarquer que

seuls des algorithmes sp�eci�ques permettent de r�esoudre les probl�emes rencontr�es de

fa�con e�cace. Mais la plupart des m�ethodes que nous avons �elabor�ees pour r�ealiser

l'analyse structurale d'un graphe mol�eculaire pourraient trouver leur place dans tout

autre probl�eme voisin utilisant un formalisme similaire. L'�etude de la sym�etrie d'un

graphe dans le paragraphe 4.6 en est un parfait exemple.

Les algorithmes de perception qui on �et�e �elabor�es dans le cadre de cette th�ese

nous permettent de disposer d'un indispensable langage de description structurale

des mol�ecules pour l'�elaboration de strat�egies de synth�ese. Ces algorithmes ont tous

�et�e int�egr�es au syst�eme ReSyn. Parmi les perspectives de recherche possibles, il faut

�evoquer le probl�eme de la perception incr�ementale. Lorsque l'on applique une trans-

formation sur un graphe mol�eculaire pour obtenir un ou plusieurs pr�ecurseurs, on

ne r�ealise g�en�eralement qu'un nombre limit�e de modi�cations. Il serait int�eressant

d'�etudier dans quelle mesure on peut d�eterminer les caract�eristiques des graphes

r�esultants sans devoir pour autant recommencer une analyse compl�ete. Il faut ce-

pendant pr�eciser qu'il s'agit l�a d'un probl�eme tr�es complexe dans la mesure o�u le

moindre changement dans la structure du graphe initial peut avoir des cons�equences

tr�es importantes sur ses propri�et�es structurales. Il est en�n fort probable que les r�e-

sultats du travail actuel de formalisation des strat�egies de synth�ese feront appara�tre

Page 159: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

152 Chapitre 4. Analyse structurale d'un graphe mol�eculaire

la n�ecessit�e de percevoir de nouveaux motifs structuraux, en posant par l�a meme de

jolis probl�emes d'algorithmique.

Page 160: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

153

Chapitre 5

Repr�esentations �a objets dans

ReSyn

5.1 Introduction

Depuis les d�ebuts de l'informatique, les langages de programmation n'ont cess�e

d'�evoluer. Si les premiers programmes �etaient �ecrits en utilisant directement les ins-

tructions de la machine, la n�ecessit�e de d�e�nir des langages plus �evolu�es, en s�eparant

donn�ees et proc�edures, est apparue dans les ann�ees 60. La r�ealisation de logiciels tou-

jours plus complexes, n�ecessitant le travail de plusieurs programmeurs, a encourag�e

l'�emergence de la programmation modulaire. Un programme est alors d�ecompos�e en

plusieurs modules qui constituent autant de ((bo�tes noires)). Les autres modules y

acc�edent par le biais de proc�edures dont ils connaissent les sp�eci�cations mais pas

les d�etails de programmation.

Cette id�ee de ((boite noire)) a �et�e reprise dans les langages �a objets qui proposent

une ((encapsulation)) plus �ne des donn�ees et des proc�edures. Il n'y a plus d'acc�es

direct �a la connaissance contenue dans un objet mais seulement un envoi de messages

vers les points d'entr�ee autoris�es par l'objet que l'on appelle m�ethodes ou attributs

selon qu'il s'agit de proc�edures ou de donn�ees.

Page 161: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

154 Chapitre 5. Repr�esentations �a objets dans ReSyn

Il existe aujourd'hui de nombreux langages �a objets qui ne sont pas toujours faciles

�a di��erencier dans la mesure o�u ils reposent sur des principes assez voisins. De plus,

comme dans tout autre domaine, les meilleures id�ees ont tendance �a se g�en�eraliser.

On peut cependant �enoncer un certain nombre de propri�et�es caract�eristiques :

� organisation hi�erarchique des objets : les objets sont ordonn�es suivant une rela-

tion d'ordre partiel appel�ee relation d'h�eritage. La d�e�nition d'un objet ((h�erite))

de celle d'un autre objet plus g�en�eral, aussi bien au niveau des m�ethodes que

des attributs;

� priorit�e aux m�ethodes : l'acc�es aux objets se fait par le d�eclenchement de m�e-

thodes, c'est-�a-dire de proc�edures d�e�nies au niveau de l'objet et pour lesquelles

chacun des attributs de l'objet peut etre vu comme une variable locale et r�ema-

nente 1 de la proc�edure. Cette d�emarche caract�erise principalement les ((langages

de classes));

� priorit�e aux attributs : ce sont des langages bas�es sur le principe de ((frames))

d�e�ni par [Minsky, 1975]. L'acc�es �a un objet se fait au niveau des attributs,

mais il peut entra�ner le d�eclenchement de proc�edures ((r�e exes)) associ�ees �a

l'attribut concern�e et d�ependant du type d'acc�es r�ealis�e;

� autonomie d'ex�ecution : les objets sont r�eellement autonomes, aussi bien au

niveau de leur description que de leur comportement. Les m�ethodes qui leur sont

associ�ees peuvent s'ex�ecuter en parall�ele, l'envoi de messages �etant asynchrone.

On retrouve ces caract�eristiques dans les ((langages d'acteurs)).

Le syst�eme ReSyn a �et�e �ecrit en Yafool [Ducournau, 1989], un langage int�e-

grant les notions de frames et de classes, qui a �et�e d�evelopp�e par R. Ducournau, avec

la collaboration initiale de J. Quinqueton.Yafool est �ecrit en Le Lisp [Chailloux et

al., 1986]. Il int�egre une interface graphique Yafen ainsi qu'un ((moteur d'inf�erence))

Yaflog. L'ensemble est g�en�eralement d�esign�e sous le terme d'Y3.

Pour concevoir un syst�eme tel que ReSyn, on est principalement confront�e �a un

probl�eme de mod�elisation, aussi bien au niveau des structures que des m�ethodes. Le

recours �a un langage �a objets comme Y3 s'est av�er�e bien adapt�e aux caract�eristiques

de la connaissance manipul�ee dans un syst�eme d'aide en synth�ese organique :

1. En programmation, on dit qu'une variable est r�emanente lorsque sa valeur est conserv�ee entre

deux appels de la proc�edure qui la manipule.

Page 162: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

5.1. Introduction 155

� la connaissance est parcellaire : la confrontation d'expertises multiples ne facilite

pas la construction d'une vision globale du probl�eme. Elle encourage au contraire

la d�e�nition de mod�eles d�ecrivant une aire d'expertise r�eduite. La modularit�e

propre aux langages �a objets s'av�ere ainsi bien adapt�ee �a la repr�esentation de la

connaissance. La notion de facette associ�ee aux attributs, et plus particuli�ere-

ment de r�e exe, procure un grand pouvoir d'expression des caract�eristiques des

concepts et des contraintes qui leurs sont associ�es;

� la connaissance est �evolutive. Le domaine de la synth�ese �etant partiellement

formalis�e, le travail de mod�elisation n'est jamais parfaitement termin�e. ReSyn

est un prototype qui doit permettre de tester la validit�e et la pertinence de

mod�eles de connaissance ou de m�ethodes d'analyse et de r�esolution. Le principe

d'((encapsulation)) associ�e �a la programmation par objets facilite l'�evolution de

la connaissance. Les objets �etant relativement autonomes, il est possible de mo-

di�er un mod�ele en limitant les risques d'interaction avec les autres concepts d�e-

crits dans le syst�eme. L'interaction entre objets est en e�et fortement contrainte

par la d�e�nition de points d'entr�ees obligatoires au niveau des objets (m�ethodes

ou attributs);

� la connaissance peut etre hi�erarchis�ee. Le m�ecanisme d'h�eritage autorise l'orga-

nisation des concepts suivant divers niveaux d'abstraction. Cette repr�esentation

hi�erarchique de la connaissance simpli�e la d�e�nition de nouveaux concepts. La

description de ces derniers peut s'appuyer sur des mod�eles d�ej�a existants qu'il

su�t de sp�ecialiser;

� un syst�eme d'aide �a la synth�ese doit permettre l'acc�es aux connaissances qu'il

manipule. Leur lisibilit�e est facilit�ee par la modularit�e inh�erente aux langages

�a objets. La pr�esence d'interfaces d�edi�ees �a la visualisation des connaissances

est g�en�eralement commune �a tous les langages �a objets. Dans Y3, l'existence

d'un ((browser))2 �evolu�e s'est av�er�ee tr�es utile lors de la conception de ReSyn.

Par ailleurs, dans la mesure o�u Yafen est lui-meme d�e�ni par un ensemble

d'objets, l'�elaboration de nouvelles interfaces consiste g�en�eralement �a sp�ecialiser

des objets graphiques pr�eexistants.

2. le terme de ((browser)) (de l'anglais to browse = feuilleter) d�esigne l'interface graphique qui

permet de visualiser un objet et de se d�eplacer dans la hi�erarchie d'h�eritage ou suivant les relations

qui existent entre les objets.

Page 163: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

156 Chapitre 5. Repr�esentations �a objets dans ReSyn

L'objectif de ce chapitre est de pr�esenter les principales caract�eristiques d'Y3 en

les illustrant par quelques aspects de ((l'impl�ementation)) des travaux r�ealis�es dans

le cadre de cette th�ese. Cette pr�esentation concerne principalement la d�e�nition des

motifs structuraux sous la forme d'((objets composites)) et l'utilisation de la relation

de composition lors de l'�elaboration de strat�egies de synth�ese. Pr�ecisons en�n que le

lecteur int�eress�e par un compl�ement d'informations sur les langages �a objets pourra

se r�ef�erer �a [Masini et al., 1989].

5.2 Quelques notions de base en Y3

Tout objet en Y3 est bas�e sur le concept de frame. Un frame comporte un certain

nombre d'attributs, eux-memes divis�es en facettes qui peuvent etre d�eclaratives ou

proc�edurales.

Une facette d�eclarative contient des informations d�e�nissant l'attribut. La facette

value est la plus courante car elle d�ecrit la valeur de l'attribut. Mais il existe d'autre

facettes d�eclaratives comme les facettes de typage (un ou des pour un attribut �a

valeur unique ou multiple). Par exemple, un objet ensemble-d'entiers poss�edera deux

attributs : les-�elements et cardinal ayant respectivement pour facette de typage (( des

= entiers )) et (( un = entier )).

Les facettes proc�edurales d�ecrivent des proc�edures qui sont d�eclench�ees ((par r�e-

exe)) lors d'un acc�es �a l'attribut. Il existe quatre facettes proc�edurales (ou r�e exes)

qui sont pr�e-d�e�nies dans Y3 :

� les facettes si-ajout et si-enl�eve sont activ�ees lorsque l'on modi�e la valeur de

l'attribut (ajout ou retrait du contenu de la facette value). Dans le cas de l'objet

ensemble-d'entiers, l'attribut les-�elements poss�edera deux r�e exes : (( si-ajout =

incr�ementer cardinal )) et (( si-enl�eve = d�ecr�ementer cardinal ))

� la facette si-besoin permet d'appeler une fonction calculant la valeur de l'attribut

lors d'un premier acc�es en lecture sur cet attribut;

� la facette si-possible sert �a v�eri�er si la valeur que l'on veut ajouter �a l'attribut

est compatible avec les facettes de typage qui on �et�e d�e�nies.

Page 164: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

5.2. Quelques notions de base en Y3 157

Les r�e exes si-ajout et si-enl�eve sont g�en�eralement utilis�es pour assurer la co-

h�erence entre les valeurs 3 des attributs d'un ou plusieurs objets. Quant au r�e exe

si-besoin, il permet de repousser le calcul de la valeur d'un attribut jusqu'au mo-

ment o�u l'on en a r�eellement besoin. Une fois que cette valeur est calcul�ee, elle est

plac�ee dans la facette value de l'attribut. Cela suppose que cette valeur n'est plus

susceptible d'�evoluer. �A l'inverse, pour acc�eder �a une caract�eristique de l'objet dont

la valeur peut constamment �evoluer, il faut recourir �a unem�ethode. Comme dans tous

les langages de classes, Y3 permet d'associer des m�ethodes aux objets. Une m�ethode

est en fait un attribut particulier dont le contenu est une fonction Le Lisp.

L'ensemble des objets est organis�e de fa�con hi�erarchique suivant une relation

d'ordre partiel appel�ee relation d'h�eritage. La �gure 5.1 d�ecrit le graphe d'h�eritage

des descendants de l'objet atome. La relation d'h�eritage est mat�erialis�ee au niveau

des objets par l'attribut est-un. Un objet ((h�erite)) des attributs et des m�ethodes

d�e�nis dans ses ascendants. Par exemple, l'objet azote h�erite de la valeur de l'attribut

valence d�e�ni dans l'objet VA-atome. Par contre, il red�e�nit l'attribut symbole en lui

donnant une valeur qui lui est propre. On dit alors que la valeur d�e�nie dans un

objet ((masque)) toutes celles qui pourraient l'etre dans ses ascendants.

Il faut pr�eciser que l'h�eritage d�e�ni dans Y3 est dit ((multiple)) dans la mesure o�u

un objet peut h�eriter des propri�et�es de deux objets di��erents qui sont incomparables

pour la relation d'h�eritage. Si la multiplicit�e de l'h�eritage facilite la d�e�nition des

objets, elle pose de s�erieux probl�emes de con its. Un objet peut h�eriter des valeurs

d'un attribut qui est d�e�ni dans deux ascendants di��erents. Il faut alors d�eterminer

laquelle de ces deux valeurs doit etre choisie. Pour ce faire, on peut construire une

extension lin�eaire de la relation d'h�eritage de fa�con �a obtenir un ordre total de priorit�e

sur les objets. On retrouve cette approche dans yafool [Ducournau et Habib, 1989]

ou shirka [Rechenmann, 1988]. D'autres syst�emes laissent �a l'utilisateur le soin de

r�esoudre les con its comme dans smalltalk [Goldberg et Robson, 1983]. Citons

en�n l'approche originale propos�ee dans rome [Carr�e et Geib, 1990] et bas�ee sur

la notion de ((point de vue)). Chaque ascendant d'un objet d�e�nit un point de vue

particulier sur les m�ethodes qu'il lui transmet. Les di��erentes d�e�nitions h�erit�ees ne

sont plus oppos�ees mais compl�ementaires.

3. lorsque nous parlons de la ((valeur d'un attribut)) il s'agit en fait du contenu de sa facette value.

Page 165: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

158 Chapitre 5. Repr�esentations �a objets dans ReSyn

Fig. 5.1 { Le graphe d'h�eritage des atomes dans ReSyn

Page 166: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

5.3. Objets composites et motifs structuraux 159

D'autres probl�emes de con its apparaissent lorsque l'on veut d�e�nir des excep-

tions �a la relation d'h�eritage. L'objet manchot h�erite des propri�et�es de l'objet oiseau

sauf en ce qui concerne le fait de voler. Ce probl�eme est r�esolu en Y3 au moyen d'une

facette sauf permettant de d�e�nir ce type d'exceptions [Ducournau et Habib, 1991].

�A l'instar des langages �a classes, yafool permet de distinguer les objets d�e-

�nissant des ((mod�eles)) de leurs repr�esentants physiques appel�es ((instances)). Par

exemple, le mod�ele carbone poss�edera autant d'instances que n�ecessaire pour d�ecrire

tous les atomes de carbone d'une mol�ecule donn�ee. Il faut cependant noter que la

di��erence entre mod�eles et instances n'est pas tr�es nette en yafool. Elle repose

principalement sur le fait qu'une instance ne peut pas avoir de descendants pour la

relation d'h�eritage.

5.3 Objets composites et motifs structuraux

La notion d'h�eritage ne permet pas de traduire tous les liens qui peuvent exis-

ter entre les objets. Il faut souvent recourir �a d'autres relations comme la relation

de ((composition)) qui �etablit un lien structural entre des objets. Un objet est dit

((composite)) s'il est form�e par l'agr�egation d'un ensemble d'objets qui constituent

ses ((composants)). Chaque composant d�ecrit une partie de l'objet composite 4 auquel

il est rattach�e. Un objet mol�ecule est ainsi compos�e d'un ensemble d'atomes et de

liaisons comme le montre la �gure 5.2. L'attribut atomes d'unemol�ecule d�esigne l'en-

semble des objets de type atome qui composent cette mol�ecule. �A l'inverse, l'attribut

est-contenu-par d'un atome a pour valeur le nom de la mol�ecule dont cet atome est

un composant. Les valeurs d�e�nies par ces deux attributs �etant �etroitement li�ees, il

faut mettre en place un m�ecanisme permettant de maintenir leur coh�erence.

4. le terme ((objet composite)) sera toujours employ�e dans son sens g�en�eral et non pas suivant la

d�e�nition sp�eci�que qui lui est associ�ee dans Yafool. On peut ajouter, �a l'intention d'un lecteur

((ma�tre es Y3)), que l'utilisation des objets composites de Yafool n'a pas �et�e retenue dans ReSyn

�a cause des contraintes qu'elle impose au niveau de la cr�eation et de la destruction des composants.

Page 167: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

160 Chapitre 5. Repr�esentations �a objets dans ReSyn

(defmodele molecule

(atomes (des . atome)

(lien-inverse . est-contenu-par)

(to-kill))

(liaisons (des . liaison)

(lien-inverse . est-contenue-par)

(to-kill))

(cycles-pertinents (des . cycle-pertinent)

(to-kill))

(chaines (des . chaine)

(to-kill))

(liens-cycles (des . lien-cycle)

(to-kill))

(liens-hetero (des . lien-hetero-atome)

(to-kill))

... )

(defmodele atome

(est-contenu-par (un . molecule)

(to-remove)

(lien-inverse . atomes))

(mes-liens-cycle (des . lien-cycle))

... )

(defmodele lien-cycle

(est-un (value motif-structural))

(mes-atomes (des . atome)

(to-remove)

(si-ajout (mapc (lambda(x) (:+ mes-liens-cycle x frame*))

value*))

(si-enleve (mapc (lambda(x) (:- mes-liens-cycle x frame*))

value*)))

(mes-liaisons (des . liaison) ... )

... )

Fig. 5.2 { Quelques mod�eles d'objets dans ReSyn.

Page 168: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

5.3. Objets composites et motifs structuraux 161

5.3.1 Liens inverses en Yafool

Supposons que l'on veuille ((retirer)) un atome d'une mol�ecule, c'est-�a-dire suppri-

mer son nom de la liste d'atomes d�ecrite par l'attribut atomes de la mol�ecule. Pour

maintenir la coh�erence de la base de connaissances, il faut que l'atome concern�e

soit ((averti)) du fait qu'il n'est plus un composant de la mol�ecule. Le nom de cette

derni�ere est alors enlev�e de l'attribut est-contenu-par de l'atome retir�e.

Pour faciliter la d�e�nition de ce type de relations, la notion de ((lien inverse)) a �et�e

introduite dans Yafool. Cette notion est mise en �uvre par l'introduction d'une

facette lien-inverse. Dans le cas de l'attribut atomes de l'objet mol�ecule, la facette

lien-inverse d�esigne l'attribut est-contenu-par qui lui correspond dans le mod�ele atome.

L'�etablissement d'un ((lien inverse)) correspond en fait �a la mise en place de r�e exes si-

ajout et si-enleve sur l'attribut concern�e. La �gure 5.2 pr�esente la d�e�nition 5 explicite

de ces r�e exes pour l'attribut mes-atomes de l'objet composite lien-cycle. Cet objet

d�ecrit 6 le mod�ele associ�e �a la notion de ((lien de cycle)) que nous avons pr�esent�ee dans

le paragraphe 4.2.1.4.

La d�e�nition de ((liens inverses)) entre les objets n�ecessite la mise en place d'un m�e-

canisme de maintien de la coh�erence lors de la destruction des objets. Ce m�ecanisme

se traduit par l'ajout d'une facette to-remove indiquant que les valeurs de l'attribut

concern�e doivent etre retir�ees avant que l'objet ne soit d�etruit. Ce retrait automa-

tique peut alors entra�ner le d�eclenchement des r�e exes associ�es au lien inverse. Dans

le cas d'une relation de composition, la survie des composants n'a g�en�eralement pas

de sens lorsque l'objet composite est d�etruit. Une facette to-kill, plac�ee dans l'at-

tribut d�esignant les composants de l'objet composite, permet alors de d�eclencher la

destruction automatique de ces composants.

5. les op�erateurs ((:+)) et ((:-)) qui apparaissent dans cette d�e�nition correspondent respectivement

�a l'ajout ou au retrait d'une valeur dans un attribut. Quant aux termes frame* et value* ils d�esignent

respectivement le nom de l'objet courant et la valeur qui est ajout�ee ou retir�ee de l'attribut �a partir

duquel est d�eclench�e le r�e exe.

6. la distinction entre ((noyau)) et ((p�eriph�erie)) n'est pas pr�esent�ee ici.

Page 169: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

162 Chapitre 5. Repr�esentations �a objets dans ReSyn

5.3.2 Repr�esentation des motifs structuraux

Les divers motifs structuraux que nous avons d�e�nis dans les chapitres pr�ec�e-

dents constituent des sous-graphes partiels du graphe mol�eculaire. Nous avons vu

qu'un graphe mol�eculaire est repr�esent�e dans ReSyn par un objet composite de

type mol�ecule. Les objets associ�es aux motifs structuraux sont eux aussi des objets

composites qui partagent des composants avec la mol�ecule correspondante. Chaque

atome ou liaison est donc un composant �a la fois d'une mol�ecule et d'un ou plusieurs

motifs structuraux (cycles, liens, cha�nes, : : : ). La relation de composition entre un

atome et un motif structural est d�e�nie au moyen de liens sp�eci�ques comme ceux

qui sont pr�esent�es dans la �gure 5.2 pour l'objet lien-cycle. Chaque motif structural

est un descendant du mod�ele ((motif structural)) qui poss�ede les attributs mes-atomes

et mes-liaisons d�esignant ses composants. �A l'inverse, un atome poss�edera un attri-

but ma-chaine s'il appartient �a une cha�ne carbon�ee, un attribut mes-cycles s'il fait

partie d'un cycle et ainsi de suite (cf. �gure 5.3). On peut dire que cette relation de

composition est moins ((forte)) que celle qui relie un atome �a une mol�ecule dans la

mesure o�u la destruction de l'objet associ�e �a un motif structural n'entra�ne pas celle

de ses composants.

Chaque motif structural est d�e�ni en fonction d'un point de vue particulier sur

le graphe mol�eculaire. Par exemple, l'�etude de la fonctionnalit�e permet d'isoler des

parties du graphe mol�eculaire { les groupements fonctionnels { auxquelles il associe

certaines propri�et�es chimiques. Pour pouvoir �elaborer des strat�egies de synth�ese, il

faut etre en mesure de confronter divers points de vue. La repr�esentation des motifs

structuraux par des objets composites qui partagent leurs composants permet d'uni-

�er la d�e�nition des concepts manipul�es par ces points de vue. Deux points de vue

seront susceptibles d'interagir dans l'�elaboration d'une strat�egie s'ils reconnaissent

des motifs structuraux partageant des atomes ou des liaisons. Les composants com-

muns �a plusieurs motifs structuraux peuvent etre consid�er�es comme des passerelles

entre di��erents points de vue.

5.3.3 Vers l'�elaboration de strat�egies de synth�ese

L'objectif de ReSyn, �a plus ou moins long terme, est d'aider un chimiste �a �elabo-

rer des strat�egies de synth�ese. Il est peu vraisemblable qu'un tel syst�eme parvienne

Page 170: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

5.3. Objets composites et motifs structuraux 163

C9

simplea

8

1

C

3

Chaîne.1C8 9

iC

C

C

mes-atomes =

mes-arêtes =

6

f

mes-grp-fonc =

5b

24

ma-chaîne =

C

C

C O C

O

CouH

g h i

j

71 8

9

10

Chaîne.1

C

C

Ester.1

C

C

C

C

C

c

C

C

1

e d

a

8

C

C O C

O

1

2

3

4

5

6

7 8

10

a b

c

de

f

g h i

j

9

Ester.1

Cycle-six.1

mes-grp-fonc =

mes-cycles =

Cycle-six.1

mes-arêtes =

mes-atomes = CC C C C C1 2 3 4 5 6

a b c d e f

simple, simple, simple, simple, simple, simple.

Ester.1

h i j

mes-arêtes =

mes-atomes = C C C1

g

7 8 9 10OO

simple, simple, simple, double.

Fig. 5.3 { Repr�esentation des motifs structuraux par des objets composites.

un jour �a concevoir des plans de synth�ese complets sans tomber dans les probl�emes

de combinatoire ou de trop grande simpli�cation que nous avons �evoqu�es dans le

chapitre 2. L'intervention d'un chimiste pour e�ectuer les choix de strat�egies semble

in�evitable. Mais on peut raisonnablement esp�erer concevoir un syst�eme qui sache

�enoncer des strat�egies plus ou moins pr�ecises.

Pour �echafauder une strat�egie de synth�ese, il faut g�en�eralement s'appuyer sur une

analyse de la mol�ecule suivant plusieurs points de vue. Les connaissances sur la mo-

l�ecule cible, associ�ees �a chaque point de vue, sont d�ecrites par des motifs structuraux

Page 171: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

164 Chapitre 5. Repr�esentations �a objets dans ReSyn

du graphe mol�eculaire. Nous avons choisi de repr�esenter ces motifs par des objets

composites partageant leurs composants qui sont des atomes et des liaisons. Nous

allons montrer comment ce mode de repr�esentation peut etre utilis�e pour �elaborer

une strat�egie de synth�ese.

Consid�erons la mol�ecule de la confertine repr�esent�ee dans la �gure 5.4. L'ana-

lyse structurale du graphe mol�eculaire fait appara�tre un certain nombre de cycles,

cha�nes carbon�ees, liens de cycles et groupements fonctionnels. Si l'on consid�ere cette

mol�ecule du point de vue de la constitution, le syst�eme cyclique va appara�tre comme

n�ud principal de di�cult�e. Les autres �el�ements de la constitution { les cha�nes et

les liens qui leur sont associ�es { semblent moins importants dans la mesure o�u les

cha�nes carbon�ees se limitent �a un seul atome. La premi�ere strat�egie de r�etrosynth�ese

que l'on peut �enoncer serait de d�econnecter le syst�eme cyclique.

Ce syst�eme cyclique est compos�e de trois cycles repr�esent�es par les objets com-

posites : cycle.1, cycle.2 et cycle-h�et�ero.1. Le troisi�eme cycle, contenant un h�et�eroa-

tome (un oxyg�ene), n'appartient pas �a la meme classe que les deux pr�ec�edents dans

la mesure o�u il poss�ede des propri�et�es suppl�ementaires. Les trois objets composites

partagent, deux �a deux, une liaison simple et deux atomes. On en d�eduit qu'il s'agit

d'un syst�eme cyclique ((condens�e)) qui se caract�erise, au niveau de la repr�esentation

par blocs, par une arete �etiquet�ee (2; 1) entre deux cycles (cf. x 3.8.2).

La strat�egie de r�etrosynth�ese devient alors : ((il faut commencer par casser un des

trois cycles)). Pour permettre de choisir le cycle �a casser, on �evalue l'importance de

chaque cycle du point de vue de la constitution :

� cycle.1 : il ne poss�ede pas de caract�eristiques exceptionnelles et il est susceptible

d'appara�tre dans un produit de d�epart. On aura tendance �a le pr�eserver.

� cycle.2 : c'est un type de cycle assez rare dans la mesure o�u il poss�ede 7 atomes.

Comme il y a peu de chances de le trouver dans un produit de d�epart, il faudra

le casser tot ou tard (c'est-�a-dire le construire dans le sens synth�etique). Par

ailleurs, comme il est situ�e au centre du syst�eme cyclique, sa d�econnexion doit

permettre de simpli�er la complexit�e constitutionnelle de la mol�ecule;

� cycle-h�et�ero.1 : en tant que cycle h�et�eroatomique, il est plus facile �a synth�etiser

qu'un cycle ne contenant que des carbones.

Page 172: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

5.3. Objets composites et motifs structuraux 165

OH

O

O

cycle

chaîne

cyclelien de

lien de

lien de

O

Lactone

cycle

O

O

O

O

O

ester.1

1

2

1

2

3

4

4

cycle-hétéro.1

7

6

5

3

cycle.1 cycle.2

3

7

6

5

chaîne chaîne

cycle.1cycle-hétéro.1

cycle.2

(2,1) (2,1)

Représentation par blocs

molécule

Fig. 5.4 { Interaction de motifs structuraux lors de l'�elaboration d'une strat�egie de

synth�ese pour la confertine

Page 173: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

166 Chapitre 5. Repr�esentations �a objets dans ReSyn

�A partir de ces seules informations, un chimiste aura tendance �a privil�egier la

d�econnexion du cycle repr�esent�e par l'objet cycle.2. Pourtant, si l'on a�ne l'analyse

en tenant compte du point de vue de la fonctionnalit�e, le r�esultat sera tout autre. En

e�et, l'objet cycle-h�et�ero.1 poss�ede une partie commune avec le groupement fonc-

tionnel d�e�ni par l'objet ester.1 (cf. �gure 5.4). Cette structure correspond �a une

lactone qui constitue un site tr�es sensible dans la mol�ecule. Cela signi�e que cette

partie de la mol�ecule est susceptible d'etre modi��ee par une r�eaction chimique qui

n'�etait pas cens�ee la concerner. Il faut donc retarder le plus possible la construc-

tion de la lactone dans le sens synth�etique, c'est �a dire la supprimer d�es le d�ebut

de l'analyse r�etrosynth�etique. La reconnaissance de la lactone s'av�ere indispensable

pour expliquer la d�ecision de d�econnecter le cycle cycle-h�et�ero.1 en premier.

Cette pr�esentation simpli��ee d'une strat�egie de synth�ese a pour but de mettre

en �evidence la n�ecessit�e de faire interagir divers points de vue. Toute la di�cult�e de

cette entreprise provient du fait que deux points de vue distincts font appel �a des

connaissances qui sont g�en�eralement orthogonales. Leurs points communs se limitent

au mode de repr�esentation des donn�ees �a l'aide de motifs structuraux. En d�ecrivant

un motif structural par un objet composite, on facilite la d�etection de points de vue

compl�ementaires puisque chaque objet de type atome (ou liaison) conna�t l'ensemble

des objets d�ecrivant des motifs structuraux dont il est un composant.

De fa�con g�en�erale, chaque point de vue permet de d�eterminer des parties de la

mol�ecule qu'il semble pr�ef�erable de d�econnecter ou de pr�eserver. Deux points de vue

vont interagir s'ils proposent des traitements di��erents sur la meme sous-structure

de la mol�ecule. La capacit�e de d�etection de ces interactions est primordiale dans tout

syst�eme d'aide �a la conception. Qu'il s'agisse de con its ou d'analyses convergentes,

le syst�eme doit etre en mesure de les pr�esenter �a l'utilisateur, en fournissant une

explication dans le cadre de chaque point de vue.

On peut imaginer un traitement de ce probl�eme dans un contexte ((multi-agents))

[Ferber, 1989; Gasser, 1991]. Chaque agent regroupe la connaissance relative �a un

point de vue pr�ecis. En �echangeant le r�esultat de leurs analyses sur des motifs struc-

turaux, les agents peuvent mettre en �evidence des interactions entre ces points de

vue. Cette approche laisse envisager plusieurs perspectives de recherche. Il faut pr�e-

ciser le type d'�echanges devant etre r�ealis�es entre agents pour d�etecter les con its

et les pr�esenter le plus clairement possible �a un utilisateur expert du domaine. Le

Page 174: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

5.4. Conclusion 167

r�esultat de ce dialogue doit conduire �a une mise �a jour de la connaissance des agents

qui sera r�ealis�ee de mani�ere plus ou moins automatique suivant l'importance des

modi�cations n�ecessaires. D'autre part, il faut �elaborer un mode de raisonnement de

chaque agent qui lui permette de tenir compte des informations qu'il peut recevoir

des autres agents.

Ces perspectives d'�evolution de ReSyn r�ea�rment un des objectifs de tout sys-

t�eme d'aide �a la synth�ese : faciliter l'acquisition de connaissances dans un domaine

qui, �a l'heure actuelle, n'est pas parfaitement formalis�e.

5.4 Conclusion

Ce chapitre nous a permis de pr�esenter quelques caract�eristiques du langage Ya-

fool dans lequel est �ecrit le syst�eme ReSyn. Les avantages de la programmation

orient�ee objet n'ont plus besoin d'etre d�emontr�es de nos jours. Le choix de Yafool,

parmi tous les langages �a objets existants, est �a la fois ((historique)) et justi��e par le

fait que ce langage o�re de nombreuses libert�es de programmation, dans la mesure

o�u il r�eunit avantageusement les notions de classe et de frame.

Nous n'avons pas abord�e, dans ce chapitre, les probl�emes li�es �a l'�elaboration

d'interfaces graphiques qui ont pourtant une importance capitale dans tout syst�eme

d'aide �a la synth�ese. Les nombreuses images de fenetres ReSyn qui illustrent cette

th�ese devraient cependant donner une id�ee du travail r�ealis�e, et qui reste encore gran-

dement perfectible. La construction de ces interfaces b�en�e�cie d'ailleurs des facilit�es 7

de r�eutilisation des mod�eles d'objets graphiques d�e�nis dans Yafen.

Nous avons plus particuli�erement insist�e sur la notion de r�e exe qui permet d'as-

surer un maintien de la coh�erence des valeurs des attributs de di��erents objets.

Nous nous sommes int�eress�es �a la d�e�nition d'objets composites et �a leur utilisation

pour repr�esenter les motifs structuraux. Nous avons montr�e comment un partage des

atomes et des liaisons composant les motifs structuraux pouvait faciliter la confron-

tation de divers points de vue. Cette id�ee fait actuellement l'objet d'une �etude plus

approfondie dans le cadre d'un environnement ((multi-agents)).

7. nous �eviterons cependant d'�evoquer la documentation de Yafen : : :

Page 175: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

168 Chapitre 5. Repr�esentations �a objets dans ReSyn

Les probl�emes ((�a objets)) rencontr�es au cours de l'�elaboration de ReSyn ont

�et�e multiples. Si la plupart d'entre eux ont �et�e r�esolus, il en est d'autres qui restent

toujours d'actualit�e comme le probl�eme de la gestion de grandes hi�erarchies d'objets.

Pour d�ecrire les hi�erarchies d'objectifs ou de contextes que nous avons d�e�nies dans le

chapitre 2, il faut pouvoir manipuler un grand nombre d'objets. �A un instant donn�e,

seule une partie d'entre eux est conserv�ee en m�emoire, ce qui n'est pas sans poser

quelques di�cult�es.

Page 176: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

169

Chapitre 6

Raisonnement par classi�cation

dans ReSyn

6.1 Introduction

Nous avons vu dans le chapitre 2 que chaque �etape d'un plan de synth�ese consiste

�a appliquer une transformation �a une mol�ecule cible pour engendrer un ou plusieurs

pr�ecurseurs. Une transformation modi�e un ensemble de liaisons et d'atomes de la

mol�ecule. Le graphe induit par cet ensemble constitue l'objectif de la transforma-

tion. Une transformation peut etre vue comme l'op�eration inverse d'une r�eaction chi-

mique. De ce fait, l'application d'une transformation ob�eit �a des contraintes d'ordre

chimique qui d�e�nissent les environnements favorables ou d�efavorables �a l'utilisation

de la transformation. Nous d�ecrivons ces environnements sous la forme de graphes

appel�e contextes qui �etendent l'objectif de la transformation aux liaisons et atomes

conditionnant son application.

Nous nous int�eressons dans ce chapitre au niveau tactique de l'�elaboration d'un

plan de synth�ese. On suppose que la recherche d'une strat�egie a permis de d�eterminer

un but �a atteindre s'exprimant sous la forme d'un objectif de transformation. On

cherche, par exemple, �a casser telle liaison de la mol�ecule.

Page 177: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

170 Chapitre 6. Raisonnement par classi�cation dans ReSyn

On dispose d'une base de connaissance contenant :

� un ensemble d'objectifs;

� un ensemble de transformations r�ealisant ces objectifs;

� un ensemble de contextes d�e�nissant les environnements favorables ou d�efavo-

rables �a l'application des transformations.

Dans la mesure o�u il existe des dizaines de milliers de r�eactions chimiques, on

peut facilement imaginer la taille de cette base de connaissances, meme lorsque l'on

se limite aux transformations les plus importantes. Il convient donc d'organiser ces

connaissances de fa�con �a pouvoir optimiser la recherche d'un objectif, d'une trans-

formation ou d'un contexte.

Nous d�ebuterons ce chapitre en exposant bri�evement les principes du raisonne-

ment par classi�cation que nous utilisons pour e�ectuer cette recherche. Le lecteur

int�eress�e par une �etude plus compl�ete de ce mode de raisonnement pourra se r�ef�erer au

chapitre qui lui est consacr�e dans [Haton et al., 1991]. Les m�ethodes de classi�cation

utilisent un m�ecanisme d'appariement que nous d�e�nirons dans le cadre de concepts

repr�esent�es par des graphes. Nous nous int�eresserons alors aux syst�emes de raisonne-

ment par classi�cation adapt�es aux graphes et nous pr�esenterons les m�ethodes mises

en �uvre dans ReSyn. Nous exposerons la notion d'appariements dirig�es qui carac-

t�erise ce syst�eme en pr�esentant les travaux de formalisation et de validation de cette

notion qui ont �et�e r�ealis�es dans le cadre de cette th�ese.

6.2 Le raisonnement par classi�cation

Depuis longtemps d�ej�a de nombreux esprits ont essay�e de percer le myst�ere du

raisonnement humain. Parmi les questions rest�ees sans r�eponses, il en est une qui

passionne �a la fois les psychologues et les informaticiens : comment un etre humain

parvient-il �a prendre une d�ecision face �a une situation nouvelle ? Pour essayer de

donner un �el�ement de r�eponse �a cet �epineux probl�eme, on a imagin�e le principe de

((rem�emoration)). Cette notion est issue de travaux en psychologie comme ceux de

Bartlett (1932) ou Piaget (�n des ann�ees 70).

On consid�ere que tout individu poss�ede des connaissances �el�ementaires, ou exp�e-

riences, sur les situations ant�erieures auxquelles il a �et�e confront�e. Lorsqu'un nouveau

Page 178: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.2. Le raisonnement par classi�cation 171

cas se pr�esente, il cherche �a retrouver des connaissances lui permettant d'appr�ehen-

der la nouvelle situation. Il essaie ensuite d'adapter les concepts obtenus au probl�eme

qu'il doit r�esoudre. Le succ�es ou l'�echec de ce processus d'adaptation aboutit alors

soit �a la poursuite du raisonnement, soit �a la cr�eation d'une nouvelle connaissance

m�emorisant la nouvelle exp�erience rencontr�ee.

Parmi l'�enorme quantit�e de concepts dont il dispose, un etre humain doit etre

capable de retrouver ceux qui sont en rapport avec le probl�eme qui lui est pos�e. On

peut raisonnablement supposer que l'ensemble des connaissances est organis�e de fa-

�con structur�ee, voire hi�erarchique. La recherche d'un concept d�ecrivant une situation

analogue �a celle qui est rencontr�ee s'apparente �a un processus de ((classi�cation)). Il

s'agit de d�eterminer �a quelle ((cat�egorie)) d'exp�eriences pass�ees appartient la nouvelle

situation.

6.2.1 Repr�esentation des cat�egories

Parmi les modes de repr�esentation des cat�egories les plus courants, on peut citer

trois types de d�e�nitions : en extension, en intension et sous la forme de prototypes.

La premi�ere d�emarche consiste �a d�e�nir une cat�egorie par la liste exhaustive des in-

dividus qui la composent. Par exemple, pour d�e�nir le concept de ((bovin)), il faudrait

visiter tous les pr�es de la terre a�n de recenser tous les membres de cette cat�ego-

rie. On peut raisonnablement supposer que cette attitude n'est jamais employ�ee par

un etre humain, en dehors de quelques cat�egories tr�es sp�eci�ques pour lesquelles le

nombre d'individus est extremement limit�e.

Le second mode de repr�esentation des cat�egories consiste �a d�e�nir les concepts

en intension, c'est-�a-dire en d�eterminant un ensemble de conditions n�ecessaires et

su�santes permettant de caract�eriser la cat�egorie. Un bovin sera un animal de grande

taille, qui poss�ede quatre pattes et deux cornes, qui mange de l'herbe, etc.

Diverses �etudes ont �et�e men�ees, notamment en psychologie ([Roch, 1977], [Du-

bois, 1986]), pour proposer d'autres modes de d�e�nition des cat�egories. La th�eorie

des ((prototypes)) suppose, par exemple, qu'un individu appartient �a une cat�egorie

s'il pr�esente su�samment de similitudes avec un ((individu type)) jug�e repr�esentatif

de la cat�egorie. Le concept de bovin sera ainsi d�e�ni par le souvenir d'une vache par-

ticuli�ere. L'individu prototype poss�ede toutes les propri�et�es qui sont communes aux

Page 179: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

172 Chapitre 6. Raisonnement par classi�cation dans ReSyn

membres de sa cat�egorie. Un individu pourra cependant etre ((atypique)) pour une

propri�et�e particuli�ere qui le di��erencie du prototype. Un z�ebu peut etre consid�er�e

comme un bovin meme s'il poss�ede une bosse que n'ont pas les vaches.

Sans entrer dans le d�ebat sur l'int�eret d'une d�e�nition des cat�egories �a l'aide de

prototypes, il faut noter que la notion de prototype peut permettre de repr�esenter

des connaissances implicites. Une d�e�nition en intension est le fruit d'un travail de

r�e exion visant �a expliciter les propri�et�es fondamentales qui caract�erisent une cat�e-

gorie. Ce processus de r�e exion est en fait assez proche de la d�emarche permettant

de choisir le prototype d'une cat�egorie. Mais dans le cas d'un prototype, on dispose

d'un individu type dont on conna�t aussi bien les propri�et�es fondamentales que celles

qui paraissent secondaires. Ces derni�eres traduisent les propri�et�es implicites li�ees �a la

cat�egorie du fait de leur pr�esence sur l'individu prototype. On peut citer par exemple

le cas de jeunes enfants �a qui on avait demand�e de dessiner une vache. Il s'est av�er�e

que la plupart des enfants avaient dessin�e une superbe vache mais qui �etait colori�ee

en bleu. On peut supposer que leur prototype de vache correspondait plus �a celles

qui apparaissent sur les emballages et les publicit�es d'une c�el�ebre marque de choco-

lat, qu'�a celles qui regardent passer les trains. Pourtant, il est fort probable que la

d�e�nition en intension du concept de vache que leurs a�n�es ont pu leur donner ne

mentionnait pas la couleur des vaches mais le fait qu'elles fabriquent le lait, mangent

de l'herbe, etc.

Que le concept de prototype soit proche du raisonnement humain ou pas, il reste

tr�es di�cile �a utiliser en intelligence arti�cielle. En dehors du fait qu'un individu

type ne peut etre repr�esent�e que de fa�con relativement incompl�ete, le probl�eme de

la comparaison d'un individu quelconque avec le prototype d'une cat�egorie reste en-

tier. En e�et, un individu est d'autant plus proche d'une cat�egorie qu'il ressemble

au prototype de cette cat�egorie. Bon nombre de syst�emes utilisant le raisonnement

par classi�cation n'int�egrent pas cette notion d'appartenance pond�er�ee �a une cat�e-

gorie, en dehors de la pr�esence de propri�et�es atypiques ou exceptions 1. Par ailleurs,

l'�evaluation de la distance entre une situation �a traiter et une exp�erience pass�ee est

�a la base des raisonnements par analogie et par cas [Hall, 1989; Haton et al., 1991;

Py, 1992]. Ces deux domaines de l'intelligence arti�cielle s'int�eressent aux m�ethodes

1. on peut cependant citer la ((classi�cation oue)) de [Rossazza, 1990]

Page 180: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.2. Le raisonnement par classi�cation 173

permettant de mesurer l'analogie entre des cas m�emoris�es et un probl�eme �a traiter.

Apr�es avoir d�etermin�e le cas le plus proche de la situation courante, on essaie d'adap-

ter au probl�eme �a traiter la solution employ�ee pour le cas s�electionn�e. Cette �etape

d'adaptation s'appuie sur les di��erences structurelles que l'on a mesur�ees entre les

deux situations.

Pour clore cette �etude des modes de repr�esentation des cat�egories, nous devons

citer les travaux de M. Minsky et R. Schank ([Minsky, 1975; Minsky, 1988; Schank,

1982]). Le premier d�e�nit chaque cat�egorie sous la forme de ((frame)) poss�edant des

propri�et�es pour lesquelles une valeur est d�e�nie (une vache poss�ede 4 pattes) ou ob�eit

�a certaines contraintes (une vache est de couleur blanche ou noire ou marron ou : : :

). Quant au second, il introduit la notion de ((script)) d�ecrivant des comportements

de mani�ere analogue au frames. Comme nous l'avons vu dans le chapitre 5, la notion

de frame est �a l'origine de nombreux langages de repr�esentation des connaissances

ou de programmation par objets.

Dans le cadre de la chimie, on rencontre principalement des d�e�nitions en in-

tension et en extension des cat�egories. La classi�cation des atomes de Mendele��ev

o�re un parfait exemple de d�e�nition en extension. Pour ce qui est des ((familles)) de

mol�ecules, les individus que l'on manipule sont d�ecrits de mani�ere structurelle par

leur graphe mol�eculaire. L'appartenance �a une famille donn�ee (st�ero��des, sucres, : : : )

peut etre conditionn�ee par la pr�esence de certaines fonctionnalit�es dans la mol�ecule,

ou par la possession d'un squelette mol�eculaire caract�eristique. Pour repr�esenter une

cat�egorie, il su�t de d�ecrire le graphe mol�eculaire associ�e �a la sous-structure qui

caract�erise cette cat�egorie. Il s'agit donc d'une d�e�nition en intension, puisque la

pr�esence du motif structural est une condition n�ecessaire et su�sante pour l'appar-

tenance �a la cat�egorie.

6.2.2 Subsomption et appariement

La d�e�nition de cat�egories n'a de sens que si elle s'accompagne d'une organisa-

tion de ces cat�egories de fa�con hi�erarchique. Cette mise en relation des cat�egories

permet d'optimiser la classi�cation d'un nouvel individu et aussi de repr�esenter des

propri�et�es atypiques. Le processus consistant �a construire une hi�erarchie de cat�e-

gories est g�en�eralement d�esign�e par le terme de ((cat�egorisation)). Nous n'aborde-

Page 181: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

174 Chapitre 6. Raisonnement par classi�cation dans ReSyn

rons pas ici ce th�eme mais nous pr�eciserons simplement qu'il touche �a de nombreux

domaines de recherche, comme l'analyse de donn�ees [Bouroche et Saporta, 1987],

l'apprentissage symbolique et la cat�egorisation conceptuelle [Michalski et al., 1983;

Michalski et al., 1986], ou des d�emarches �a la fois symboliques et num�eriques [Gascuel

et Gu�enoche, 1990].

Nous consid�ererons donc comme donn�ee, une hi�erarchie de cat�egories organis�ee

suivant une relation d'ordre partiel que l'on d�esigne couramment sous le nom de

((subsomption)). On dit qu'une cat�egorie A subsume une cat�egorie B si l'ensemble des

individus appartenant �a A contient celui des individus appartenant �a B (d�e�nition en

extension, cf. [Levesque et Brachman, 1987]), ou encore, si tout individu appartenant

�a B poss�ede n�ecessairement les propri�et�es sp�eci�ques �a la cat�egorie A (d�e�nition en

intension, cf. [Finin, 1986]).

Il existe de nombreux syst�emes raisonnant par classi�cation qui se distinguent,

entre autres, par le mode de repr�esentation des connaissances utilis�e. Pour ce qui

est des mod�eles �a base de frames, on retrouve des m�ethodes de classi�cation dans

[Minsky, 1975] ainsi que dans des syst�emes comme SHIRKA [Rechenmann, 1988]

ou TROPES [Mari~no Drews, 1993]. La notion de frame est �egalement �a la base

de KL-ONE [Brachman et Schmolze, 1985] qui est �a l'origine du mod�ele de logiques

terminologiques et a connu une descendance proli�que dont LOOM [McGregor, 1988],

KRIPTON [Brachman et al., 1983], BACK [Nebel, 1988] et CLASSIC [Brachman et

al., 1991] en sont quelques exemples. Citons en�n les travaux de R.A. Levinson

[Levinson, 1985; Levinson, 1992] qui propose un syst�eme de classi�cation pour g�erer

divers types de graphes dont les graphes mol�eculaires et les graphes conceptuels [Sowa,

1984], ou encore dans le meme domaine, les travaux de [Guinaldo, 1995a; Guinaldo,

1995b].

Dans le cadre de ReSyn, chaque cat�egorie A est d�ecrite �a l'aide d'un graphe non

orient�e GA = (XA; EA), d'une fonction d'�etiquetage sur les sommets fXA: XA ! TX

et d'une fonction d'�etiquetage sur les aretes fEA : EA ! TE. On suppose que les

ensembles TX et TE sont munis des relations d'ordre partiel �X et �E.

L'ensemble TX peut par exemple contenir tous les types atomiques et la relation

d'ordre �X etre d�e�nie par le graphe de la �gure 5.1 (page 158) que nous avons

pr�esent�e dans le chapitre 5.

Page 182: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.2. Le raisonnement par classi�cation 175

liaison-simple liaison-double

liaisonIVA-atome

carbonechlore

halog�ene

atome

1 7! 3

2 7! 4

' :

GB : XB = f3; 4; 5gXA = f1; 2g

UA = fag

GA :

�U

�X

BA

fUA :

halog�ene IVA-atome

liaison

a 21

liaison-simple liaison-double

carbonecarbonechlore

b c3 4 5

2 7! IVA-atome

1 7! halog�enefXA:

c 7! liaison-double

fUB :

5 7! carbone

3 7! chlore

4 7! carbone

fXB:

a 7! liaisonb 7! liaison-simple

UB = fb; cg

Fig. 6.1 { Illustration de la d�e�nition de la relation de subsomption entre deux

graphes (A � B).

La subsomption entre deux cat�egories de graphes, parfois appel�ee co-subsomption

[Napoli, 1992], se d�e�nit de la mani�ere suivante (cf. �gure 6.1) :

D�e�nition 1

A subsume B

(not�e A � B)

),

8>>>>>>>><>>>>>>>>:

il existe un morphisme injectif ' de XA dans XB tel que :

� ' pr�eserve l'adjacence du graphe GA :

8x; y 2 XA; fx; yg 2 EA ) f'(x); '(y) g 2 EB

� 8x 2 XA; fXA(x) �X fXB

('(x))

� 8fx; yg 2 EA; fEA(fx; yg) �E fEB(f'(x); '(y) g)

Cette relation de subsomption s'apparente �a une relation d'isomorphisme de sous-

graphe partiel. En e�et, si A subsume B, alors il existe un isomorphisme entre le

graphe GA repr�esentant A et un sous-graphe partiel de GB qui respecte les relations

d'ordre �X et �E. Il faut peut-etre s'attarder ici sur le sens de la relation de sub-

somption entre deux graphes : si A subsume B alors le graphe associ�e �a A est plus

Page 183: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

176 Chapitre 6. Raisonnement par classi�cation dans ReSyn

petit que celui qui d�ecrit B (on pourrait dire que GA est ((inclus)) dans GB). Par

contre, GA est plus g�en�eral que GB, puisque l'ensemble des graphes qui contiennent

GA est plus grand que celui des graphes qui contiennent GB, ce qui explique le sens

A � B de la relation de subsomption.

Le processus de classi�cation permettant de d�eterminer les cat�egories les plus

proches d'un individu repose sur un m�ecanisme d'appariement . Un individu s'apparie

avec une cat�egorie A s'il fait partie de la description en extension de A ou s'il poss�ede

toutes les propri�et�es caract�erisant A. Pour les cat�egories repr�esent�ees par des graphes,

l'appariement correspond �a l'isomorphisme de sous-graphe partiel. Nous reviendrons

sur ce probl�eme dans le paragraphe 6.3.

6.2.3 Un algorithme de classi�cation

�Etant donn�e une hi�erarchie quelconque de concepts (cat�egories, prototypes, graphes,

etc.) ordonn�ee par une relation de subsomption � et �etant donn�e un nouveau concept

c on veut d�eterminer :

� l'ensemble des Pr�ed�ecesseurs Imm�ediats de c, not�e PredI(c) 2, d�e�ni par l'en-

semble des concepts les plus sp�eci�ques parmi ceux qui subsument c :

8x 2 PredI(c); x � c et 9/ y 2 PredI(c) n fxg tel que x � y

� l'ensemble des Successeurs Imm�ediats de c, not�e SuccI(c) 3, d�e�ni par l'ensemble

des concepts les plus g�en�eraux parmi ceux qui sont subsum�es par c :

8x 2 SuccI(c); c � x et 9/ y 2 SuccI(c) n fxg tel que y � x

La �gure 6.2 donne un exemple de pr�ed�ecesseurs et de successeurs imm�ediats

pour une hi�erarchie de graphes.

6.2.3.1 D�etermination des pr�ed�ecesseurs imm�ediats

Il existe deux principales m�ethodes pour d�eterminer l'ensemble des pr�ed�ecesseurs

imm�ediats. La premi�ere repose sur un parcours en profondeur de la hi�erarchie. Elle

est issue du syst�eme KL-ONE [Lipkis, 1982]. Quant �a la seconde, elle utilise un

parcours en largeur et fut propos�ee par [Levinson, 1985]. Ces deux approches tentent

2. on le note parfois SPS(c) pour Subsumants les Plus Sp�eci�ques.

3. on le note parfois SPG(c) pour Subsum�es les Plus G�en�eraux.

Page 184: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.2. Le raisonnement par classi�cation 177

Immédiats

Immédiats

Prédécesseurs

SuccesseursO

O

O

O

O

O

Onouveau

concept

Fig. 6.2 { Un exemple de Pr�ed�ecesseurs Imm�ediats et Successeurs Imm�ediats

de limiter le nombre de concepts �etudi�es en se basant sur les propri�et�es suivantes

li�ees �a la transitivit�e de la relation de subsomption :

� si x subsume c alors tous les concepts qui subsument x subsument aussi c,

� si x ne subsume pas c alors aucun concept subsum�e par x ne peut subsumer c;

L'algorithme en profondeur de KL-ONE consiste �a appliquer la proc�edure r�ecur-

sive suivante aux objectifs les plus g�en�eraux de la hi�erarchie (c'est-�a-dire �a ceux qui

n'ont aucun pr�ed�ecesseur). A la �n des appels r�ecursifs, l'ensemble not�e S - et ini-

tialis�e avec la valeur ? - est �egal �a PredI(c). La fonction Recherche(x, c) retourne

vrai ou faux suivant que x subsume c ou non.

Fonction Recherche(x, c)

Si x ne subsume pas c Alors

Retourner( faux );

Sinon

plus-sp�eci�que vrai;

Page 185: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

178 Chapitre 6. Raisonnement par classi�cation dans ReSyn

Pour tout y 2 SuccI(x) Faire :

Si Recherche(y; c) = vrai alors plus-sp�eci�que faux;

Si plus-sp�eci�que = vrai alors S S [ fxg;

Retourner( vrai );

L'inconv�enient de cette m�ethode r�eside dans l'utilisation d'un parcours en pro-

fondeur. Si l'on ne prend pas de pr�ecautions, un meme concept peut etre explor�e

plusieurs fois. Il su�t qu'il soit subsum�e par deux concepts di��erents n'ayant aucun

ancetre commun. Pour r�esoudre ce probl�eme, on peut m�emoriser le passage dans un

concept x en conservant le r�esultat du premier appel de Recherche(x, c) de fa�con �a

retourner ce r�esultat lors des appels suivants, sans refaire le calcul. Cette technique

suppose que tous les concepts poss�edent une variable qui est initialis�ee avec la valeur

non-calcul�ee et qui peut prendre les valeurs vrai ou faux par la suite. Pour �evi-

ter de devoir syst�ematiquement r�einitialiser tous les concepts de la base entre deux

recherches, il su�t de m�emoriser les concepts qui ont �et�e explor�es.

Une autre solution pour �eviter d'�etudier plusieurs fois un meme contexte consiste

�a parcourir la hi�erarchie dans un ordre d�e�ni par une extension lin�eaire de la relation

de subsomption 4. Cette m�ethode, propos�ee par Robert Levinson, utilise un marquage

sur les concepts qui peut prendre les valeurs vrai, faux et non-marqu�e. Au d�ebut de

l'algorithme, aucun concept n'est marqu�e et l'ensemble r�esultat S est vide.

Recherche des pr�ed�ecesseurs imm�ediats de c :

S ?;

Tantque

�����il existe un concept x non marqu�e, tel que PredI(x) = ?

ou 8z 2 PredI(x); z est marqu�e avec la valeur vrai

����� Faire :

Si x subsume c Alors

marquer x avec la valeur vrai ;

S (S n PredI(x) ) [ fxg;

Sinon marquer x avec la valeur faux ;

Cet algorithme est en fait tr�es voisin de celui de KL-ONE. Pour pouvoir d�eter-

miner de fa�con e�cace s'il existe un concept v�eri�ant la propri�et�e du Tantque, on

maintient sur chaque contexte x un compteur d�esignant le nombre de pr�ed�ecesseurs

4. La relation de subsomption �etant une relation d'ordre partiel, on construit une extension

lin�eaire de cette relation a�n d'obtenir un ordre total sur les concepts.

Page 186: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.2. Le raisonnement par classi�cation 179

imm�ediats marqu�es avec la valeur vrai . Lorsque ce compteur atteint le cardinal de

PredI(x), le concept x est ajout�e �a la liste des concepts �a �etudier. La gestion de ces

compteurs et du marquage des concepts n�ecessite donc les memes �etapes d'initialisa-

tion que celles que nous avons sugg�er�ees pour l'algorithme de KL-ONE. La di��erence

entre cet algorithme et celui de Levinson se limite donc �a l'ordre d'exploration des

concepts. Dans l'algorithme de Levinson, un concept n'est jamais �etudi�e avant ceux

qui le subsument. On peut ainsi directement �eliminer un concept dont au moins un

des pr�ed�ecesseurs imm�ediats ne subsume pas le nouveau concept c. Dans l'algorithme

de KL-ONE, la recherche en profondeur ne permet pas d'utiliser cette propri�et�e.

Pour am�eliorer la classi�cation sur une hi�erarchie de graphes, Levinson sugg�ere

d'y ajouter de nouveaux graphes baptis�es ((graphes index)). Ces graphes sont de petite

taille et permettent de focaliser la recherche des pr�ed�ecesseurs sur un ensemble r�eduit

de graphes de la hi�erarchie qui sont susceptibles de subsumer le graphe c �a classer. En

e�et, si c est subsum�e par un certain nombre de graphes index, les pr�ed�ecesseurs de

c seront aussi subsum�es par ces memes graphes index. Les graphes index sont plac�es

en haut de la hi�erarchie dont ils constituent les �el�ements les plus g�en�eraux. Ils sont

reli�es aux graphes les plus g�en�eraux parmi ceux qu'ils subsument (c'est-�a-dire leurs

successeurs imm�ediats) comme le montre la �gure 6.3. Ils peuvent etre incomparables

du point de vue de la subsomption ou organis�es en hi�erarchie.

Il faut cependant noter que la d�etermination d'un ensemble optimal de graphes

index pour une hi�erarchie donn�ee reste un probl�eme di�cile �a r�esoudre. Dans le

cadre de ReSyn, les hi�erarchies manipul�ees contiennent toujours des graphes de

petite taille qui constituent en fait autant de graphes index.

6.2.3.2 D�etermination des successeurs imm�ediats

La d�etermination des successeurs imm�ediats d'un concept c s'appuie sur le calcul

des pr�ed�ecesseurs imm�ediats. En e�et, pour etre subsum�e par c, un concept x doit

n�ecessairement l'etre par les pr�ed�ecesseurs imm�ediats de c. Il faut cependant noter

que les successeurs imm�ediats de c ne sont que rarement des successeurs imm�ediats

des �el�ements de PredI(c). Comme dans l'exemple de la �gure 6.2, les successeurs

imm�ediats peuvent se trouver beaucoup plus bas dans la hi�erarchie.

Page 187: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

180 Chapitre 6. Raisonnement par classi�cation dans ReSyn

(f)(d)(e)(d)(a) (b) (b) (d) (d)(c)

(c)(a) (b)

(d) (e)

(a) (b)(a) (c)(a) (b)

(c) (d)

(d)

(e) (f)

(a) (a) (b) (c)

(e)(c)(d)

(e) (f)

(f)(e) Graphes

Index

Graphes

Concepts

(a) (b) (c) (d)

Fig. 6.3 { Graphes index dans les hi�erarchies de graphes de Levinson

L'algorithme g�en�eralement utilis�e pour calculer l'ensemble des successeurs imm�e-

diats de c peut se r�esumer ainsi. On commence par d�eterminer la sous-hi�erarchie

contenant tous les concepts qui sont subsum�es par tous les pr�ed�ecesseurs imm�e-

diats de c. Cette sous-hi�erarchie, qui n'est pas n�ecessairement connexe, correspond

�a l'intersection de toutes les sous-hi�erarchies ayant pour racine un des pr�ed�ecesseurs

imm�ediats de c. On utilise ensuite une extension lin�eaire de la relation de subsomp-

tion pour parcourir cette sous-hi�erarchie de fa�con �a toujours �etudier un concept x

avant les concepts qu'il subsume. Si x est subsum�e par c, il est plac�e dans l'ensemble

SuccI(c) et tous ses descendants sont retir�es de la sous-hi�erarchie. Le processus s'ar-

rete lorsque la sous-hi�erarchie est vide.

La mise en �uvre de cet algorithme pr�esente quelques subtilit�es qu'il para�t n�e-

cessaire d'expliciter. La premi�ere di�cult�e concerne la d�etermination de la sous-

hi�erarchie compos�ee de l'ensemble des descendants communs �a tous les pr�ed�eces-

seurs imm�ediats de c. Pour chaque concept p appartenant �a PredI(c), on r�ealise un

parcours quelconque �a partir de p de fa�con �a marquer tous ses descendants. La sous-

Page 188: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.2. Le raisonnement par classi�cation 181

hi�erarchie recherch�ee est alors compos�ee des concepts qui sont marqu�es 5 par tous les

pr�ed�ecesseurs imm�ediats de c.

�A ce stade de la recherche, on pourrait envisager de cr�eer une nouvelle hi�erar-

chie compos�ee des concepts subsum�es par tous les pr�ed�ecesseurs de c. Bien que cette

solution permette de simpli�er grandement la suite du calcul, elle n'est pas utili-

sable dans le cadre d'une application r�eelle manipulant une hi�erarchie de tr�es grande

taille. Le probl�eme se pose alors de savoir comment parcourir la sous-hi�erarchie en

respectant l'ordre d�e�ni par une extension lin�eaire de la relation de subsomption.

L'algorithme classique permettant de respecter cet ordre repose sur l'utilisation

d'une structure de ((�le))6 comme pour un parcours en largeur. Un nouveau concept

est ajout�e �a la �le lorsqu'on explore le dernier de ses pr�ed�ecesseurs (au lieu du premier

pour un parcours en largeur). Dans le cas qui nous int�eresse, on ne parcourt qu'une

partie de la hi�erarchie de concepts, en partant d'un des pr�ed�ecesseurs imm�ediats de c.

De ce fait, les concepts explor�es peuvent avoir des pr�ed�ecesseurs qui n'appartiennent

pas �a la sous-hi�erarchie parcourue. Il faut donc modi�er l'algorithme de parcours

pr�ec�edent pour qu'il ne tienne compte que des concepts qui font partie de cette sous-

hi�erarchie. On ajoute donc un concept dans la �le lorsque l'on explore le dernier de

ces pr�ed�ecesseurs appartenant �a la sous-hi�erarchie (c'est-�a-dire qui est un descendant

de l'�el�ement de PredI(c) par lequel a d�ebut�e le parcours).

La seconde di�cult�e concerne la suppression, lorsqu'un successeur imm�ediat de

c a �et�e trouv�e, de la sous-hi�erarchie ayant pour racine ce successeur. Dans la mesure

o�u l'on travaille directement sur la hi�erarchie globale, cette suppression n'est pas

possible. Dans l'algorithme �nal que nous pr�esentons ci-dessous, nous avons choisi

de maintenir un ensemble de concepts ((�a ignorer)) qui contient tous les concepts d�ej�a

atteints qui auraient du etre supprim�es.

Nous noterons Descend.(p) l'ensembledes descendants d'un concept p quelconque.

5. dans la mesure o�u on veut tester si un concept est marqu�e par tous les �el�ements de PredI(c),

on peut r�ealiser le marquage �a l'aide d'un simple compteur associ�e �a chaque concept. L'initialisation

de ces compteurs peut etre �evit�ee si l'on conserve la valeur maximale que peut prendre le compteur

de n'importe quel concept de la hi�erarchie globale.

6. une structure de �le fonctionne comme une ((�le d'attente)) : les �el�ements sont extraits de la

�le dans l'ordre suivant lequel ils y sont entr�es.

Page 189: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

182 Chapitre 6. Raisonnement par classi�cation dans ReSyn

L'algorithme propos�e construit l'ensemble S des successeurs imm�ediats de c. Il

r�ealise un parcours �a partir d'un quelconque pr�ed�ecesseur imm�ediat de c et suivant

un ordre correspondant �a une extension lin�eaire de la relation de subsomption.

Recherche des successeurs imm�ediats de c �a partir de pk 2 PredI(c) :

1. D�ej�a Explor�es ?; �A Ignorer ?; S ?;

2. Cr�eer File(File); Ajout File(File; pk);

3. Tantque File n �A Ignorer 6= ? Faire :

4. x Extraire Premier(File);

5. D�ej�a Explor�es D�ej�a Explor�es [ fxg;

6. Si x 62 �A Ignorer Alors

7. Si ( x 2Tp2PredI(c)Descend.(p) ) et ( c subsume x ) Alors

8. S S [ fxg;

9. �A Ignorer �A Ignorer [ SuccI(x);

10. Sinon �A Ignorer �A Ignorer [ SuccI(x); fsi

11. Pour tout y 2 SuccI(x) Faire :

12. Si (PredI(y) \ Descend.(pk) ) � D�ej�a Explor�es Alors Ajout File(File; y);

Lorsque le concept �etudi�e n'appartient pas �a l'ensemble des descendants com-

muns �a tous les pr�ed�ecesseurs imm�ediats de c, il est inutile de tester s'il s'agit d'un

successeur de c (cf. ligne 7). Par contre, la d�etermination de cet ensemble n�ecessite le

parcours de chacune des sous-hi�erarchies ayant pour racine un �el�ement de PredI(c).

Cette solution n'est donc int�eressante que si le cout des tests de subsomption �evi-

t�es est inf�erieur �a celui du parcours de toutes les sous-hi�erarchies ayant pour racine

un pr�ed�ecesseur imm�ediat de c. Lorsque le cout d'un test de subsomption est n�egli-

geable, il est inutile de d�eterminer l'ensemble des descendants communs aux �el�ements

de PredI(c). On se contente alors de parcourir deux fois 7 la sous-hi�erarchie associ�ee

�a un seul des pr�ed�ecesseurs imm�ediats de c.

7. une premi�ere fois pour d�eterminer l'ensemble Descend.(pk) et une seconde pour rechercher les

successeurs imm�ediats de c.

Page 190: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.2. Le raisonnement par classi�cation 183

SuccesseursImmédiats

ImmédiatsPrédécesseurs

O

O

O

O

O

O

O

Fig. 6.4 { Ajout d'un nouveau concept dans la hi�erarchie

6.2.3.3 Ajout d'un nouveau concept dans la hi�erarchie

Lorsque la recherche des pr�ed�ecesseurs imm�ediats et des successeurs imm�ediats

d'un nouveau concept c est termin�ee, on peut ajouter c �a la hi�erarchie. Pour ce faire,

il su�t d'ex�ecuter les op�erations suivantes :

� relier c �a tout pr�ed�ecesseur imm�ediat p : ajout de l'arc (p; c),

� relier c �a tout successeur imm�ediat s : ajout de l'arc (c; s),

� �eliminer les arcs de transitivit�e : tout arc de la forme (p; s) o�u p 2 PredI(c) et

s 2 SuccI(c);

La �gure 6.4 donne un exemple d'ajout d'un nouveau concept dans une hi�erarchie.

Page 191: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

184 Chapitre 6. Raisonnement par classi�cation dans ReSyn

6.2.4 Raisonnement par classi�cation sur des graphes mol�e-

culaires

Les premiers travaux li�es �a l'organisation hi�erarchique d'une base de graphes

mol�eculaires sont dus �a [Dubois et al., 1975; Dubois, 1976]. Ils proposent de d�e�nir

un graphe orient�e dont les sommets sont des structures mol�eculaires et dont les arcs

d�ecrivent des relations entre ces structures. Ces relations peuvent etre de nature

purement structurelle (relation de sous-graphe partiel) ou d�e�nir une parent�e dans

le cadre de la Chimie (chemins de synth�ese, etc.).

Quant aux travaux de Levinson que nous avons �evoqu�es dans le paragraphe 6.2.3.1,

ils ont �et�e utilis�es pour g�erer des hi�erarchies de graphes mol�eculaires ou de r�eactions

chimiques [Wilcox et Levinson, 1986].

6.3 Appariements de graphes

Nous avons vu dans les paragraphes pr�ec�edents que la relation de subsomption

entre deux graphes s'apparente �a un isomorphisme de sous-graphes partiels. On dit

qu'un graphe G1 subsume un graphe G2 s'il existe un isomorphisme de G1 dans un

sous-graphe partiel de G2 qui respecte les relations d'ordre �X et �E d�e�nies sur les

�etiquettes des sommets et des aretes.

Nous appellerons appariement de G1 = (X1; E1) dans G2 = (X2; E2) tout

isomorphismede sous-graphe partiel respectant ces relations d'ordre. Un appariement

' est donc un morphisme injectif de X1 dans X2 qui associe �a tout sommet x de X1

un sommet '(x) de X2 tel que :

� fX1(x) �X fX2('(x)),

� 8y 2 �(x); '(y) 2 �('(x)) et fE1(fx; yg) �E fE2(f'(x); '(y) g);

La recherche d'un appariement deG1 dans G2 est un probl�emeNP-complet, meme

pour les graphes mol�eculaires. Il convient donc d'utiliser des m�ethodes ra�n�ees pour

esp�erer limiter le cout de cette recherche.

L'algorithme utilis�e dans ReSyn a �et�e d�evelopp�e au LIRMM par Jean-Charles

R�egin [R�egin, 1995] et repose sur une mod�elisation �a l'aide d'un r�eseau de contraintes.

Les premiers travaux sur le probl�eme de satisfaction de contraintes, g�en�eralement

Page 192: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.3. Appariements de graphes 185

d�esign�e par le sigle CSP 8, on �et�e r�ealis�es par Montanari en 1974. On pourra trouver

dans [Tsang, 1993] une �etude assez compl�ete sur les nombreuses recherches qui ont

�et�e men�ees sur ce th�eme au cours des vingt derni�eres ann�ees.

Un r�eseau de contraintes est d�e�ni par un ensemble de variables - chacune �etant

associ�ee �a un domaine de valeurs - et un ensemble de contraintes mettant en relation

ces variables en d�e�nissant les combinaisons de valeurs qui v�eri�ent la contrainte.

Rechercher un appariement de G1 dans G2 revient �a rechercher une solution dans

le r�eseau des contraintes suivant :

� l'ensemble des variables x est constitu�e par l'ensemble des sommets de G1,

� le domaine de chaque variable x contient tous les sommets y de G2 dont le degr�e

est sup�erieur ou �egal �a celui de x et dont l'�etiquette est compatible avec celle

de x (i.e. d(x) � d(y) et fX1(x) �X fX2(y)),

� le r�eseau contient autant de contraintes binaires qu'il y a d'aretes dans G1 et

poss�ede en plus une contrainte n-aire.

Pour chaque arete fx1; x2g de G1, on d�e�nit une contrainte binaire entre les

variables x1 et x2 (c.f. �gure 6.5). Cette contrainte contient tous les couples de

valeurs (y1; y2) o�u y1 et y2 sont des sommets de G2 tels que l'arete fy1; y2g appartient

�a G2 et son �etiquette est compatible avec celle de fx1; x2g (i.e. fE1(fx1; x2g) �E

fE2(fy1; y2g)). La contrainte entre les variables x1 et x2 contient donc tous les couples

de sommets de G2 que l'on peut apparier avec les sommets x1 et x2 en respectant la

pr�esence de l'arete fx1; x2g.

Quant �a la contrainte n-aire, elle exprime le fait que toutes les variables du r�eseau

doivent avoir des valeurs di��erentes, c'est �a dire que tous les sommets de G1 doivent

etre appari�es avec des sommets di��erents de G2. Pour repr�esenter cette contrainte

n-aire, on ne peut pas utiliser l'ensemble de n-uplets possibles dans la mesure o�u

le nombre de n-uplets est de l'ordre de n!. La solution employ�ee dans [McGregor,

1979] consiste �a repr�esenter cette contrainte sous la forme de n2 contraintes binaires

d�e�nissant chacune les O(n(n�1)) couples de valeurs di��erentes entre deux variables

xi et xj. Si cette m�ethode garantit la validit�e des solutions du r�eseau, elle ne permet

pas d'optimiser la recherche d'une solution.

8. Constraint Satisfaction Problem

Page 193: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

186 Chapitre 6. Raisonnement par classi�cation dans ReSyn

x1

x2

x3

liaison

simple

G1

G2

y2, y4

y1, y2, y3, y4, y5

variables domaines

X2X1x1

x2

x3

y1

y2

y3

y4

y5

à la contrainte de différence

(en gras : un couplage couvrant X1)

Graphe biparti associé

y1 y2 y3

y4

y5

{ x2 , x3 }

( y2 , y4 )

( y2 , y3 )

( y4 , y2 )

( y1 , y2 )

( y4 , y2 )

{ x1 , x2 }

carbone

soufrecarboneliaison

double

liaison

simpleoygène

liaison

x1 x2 x3

atomeatomecarbone

liaison

double

Contraintes

binaires

liaisonsimple

carbone

( y5 , y4 )

y1, y4, y5

Fig. 6.5 { D�e�nition d'un CSP pour chercher les appariements de G1 dans G2

La d�emarche propos�ee par J.C R�egin, pour repr�esenter la contrainte n-aire de

di��erence, repose sur la construction d'un graphe biparti entre les ensembles X1 et

X2. Un sommet x de X1 est reli�e �a un sommet y de X2 si y appartient au domaine

de valeurs de la variable x (voir �gure 6.5). Toute solution du r�eseau de contraintes

- ou CSP - correspond �a un couplage 9 couvrant l'ensemble X1 des variables dans ce

graphe biparti.

Pour r�esoudre un CSP, on commence par appliquer un algorithme de ((relaxation))

pour essayer de d�etecter des inconsistances dans les domaines des variables �a partir

des contraintes qui sont d�e�nies. On applique ensuite une proc�edure avec ((retour

arri�ere))10 qui instancie successivement chaque variable, en revenant �eventuellement

9. un couplage dans un graphe biparti est un sous-ensemble d'aretes tel que tout sommet ap-

partienne au plus �a une arete. Le couplage couvre l'ensemble X1 si tous les �el�ements de X1 appar-

tiennent �a une (et une seule) arete du couplage.

10. pour ne pas dire ((backtrack)) ...

Page 194: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.4. Les r�eseaux d'objectifs et de contextes dans ReSyn 187

en arri�ere lorsque les choix ant�erieurs ont conduit �a �eliminer toutes les valeurs du

domaine d'une variable non instanci�ee. L'e�cacit�e de la r�esolution d'un CSP d�epend

ainsi en grande partie de l'algorithme de relaxation. Le cout du ((retour arri�ere))

sera d'autant moins important que les domaines des variables auront �et�e r�eduits.

Tout l'art de la r�esolution d'un CSP r�eside donc dans la recherche d'un �equilibre

subtil entre le temps consacr�e �a la relaxation et celui qui est employ�e pour le ((retour

arri�ere)).

L'algorithme de relaxation mis en �uvre dans le cadre deReSyn utilise la consis-

tance d'arcs pour les contraintes binaires [Bessi�ere, 1994; Bessi�ere et al., 1995] et la

consistance d'arcs g�en�eralis�ee pour la contrainte de di��erence [R�egin, 1994].

6.4 Les r�eseaux d'objectifs et de contextes dans

ReSyn

6.4.1 Objectifs

La recherche d'une strat�egie permet de d�eterminer non seulement un objectif

sur lequel on veut appliquer une transformation, mais surtout �a quel endroit de la

mol�ecule se situe cet objectif. On dispose donc d'un objectif GO et de son appariement

'O dans le graphe mol�eculaire Gmol �etudi�e.

La base de connaissance utilis�ee contient un ensemble O d'objectifs. Pour op-

timiser la construction du plan de synth�ese, on cherche les objectifs de O qui sont

plus sp�eci�ques que l'objectifGO initial. Les transformations associ�ees �a ces objectifs

permettent de r�ealiser plus d'op�erations que ne le font celles qui sont li�ees �a GO (((qui

peut le plus, peut le moins))).

L'ensemble O est organis�e de fa�con hi�erarchique suivant la relation de subsomp-

tion � de la d�e�nition 1 (page 175). Dans toute la suite de ce chapitre, nous repr�e-

senterons les objectifs par des graphes utilisant les memes types d'�etiquettes que le

graphe mol�eculaire. Nous avons vu, dans le chapitre 2, qu'il est pr�ef�erable de sp�ecia-

liser les �etiquettes des aretes d'un objectif en tenant compte de l'op�eration e�ectu�ee

sur ces aretes par la transformation associ�ee �a l'objectif. On distingue ainsi une

((liaison simple �a casser )) d'une ((liaison simple �a doubler )). Cette d�emarche permet

Page 195: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

188 Chapitre 6. Raisonnement par classi�cation dans ReSyn

GO

'ON

N

OiOj'0i

'j'i

Gmol

Fig. 6.6 { Appariements d'objectifs dans un graphe mol�eculaire

de d�e�nir une meilleure relation de subsomption sur les objectifs. On ne peut pas dire

en e�et qu'un objectif qui casse une liaison soit comparable avec un objectif qui la

rend double. Mais en ce qui concerne l'appariement d'un objectif dans le graphe mo-

l�eculaire, cette sp�ecialisation du type des aretes ne doit plus etre prise en compte. Il

faut qu'une ((liaison simple �a casser )) de l'objectif puisse s'apparier avec une ((liaison

simple)) de la mol�ecule. Nous ne ferons donc pas appara�tre ces types particuliers

de liaisons dans les �gures, meme entre les divers objectifs. Les m�ethodes que nous

allons d�ecrire supposent simplement l'existence d'un ordre partiel �E sur les valeurs

des �etiquettes des aretes.

On cherche donc �a d�e�nir l'ensemble des objectifs qui sont �a la fois plus sp�eci�ques

que l'objectif initial GO et plus g�en�eraux que le graphe mol�eculaire Gmol. Parmi ces

objectifs, on ne s'int�eresse qu'�a ceux qui peuvent ((int�egrer)) l'appariement 'O, c'est

�a dire tous les objectifs Oi de O tels que :

� Oi est subsum�e par GO,

� et il existe un appariement 'i de Oi dans Gmol tel que 'i ((contienne)) 'O, ou

plus formellement, que l'image de GO dans Gmol par 'O, not�ee 'O(GO), soit un

sous-graphe partiel de 'i(Oi);

La �gure 6.6 donne un exemple d'objectif Oi v�eri�ant ces conditions. Cette �gure

illustre �egalement deux remarques importantes qu'il convient d'�enoncer :

� un meme graphe Oi peut s'apparier plusieurs fois dans le graphe mol�eculaire.

Mais seuls certains des ces appariements contiennent 'O (cf. 'i) alors que

d'autres ne l'int�egrent pas (cf. '0i),

� un graphe Oj peut tr�es bien etre �a la fois subsum�e par GO et plus g�en�eral que

Gmol sans pour autant admettre d'appariement int�egrant 'O;

Page 196: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.4. Les r�eseaux d'objectifs et de contextes dans ReSyn 189

Nous pouvons en d�eduire que la relation de subsomption � n'est pas su�sante

pour d�eterminer les objectifs Oi qui peuvent s'apparier dans Gmol en int�egrant 'O.

Il para�t donc n�ecessaire d'introduire une nouvelle relation �app qui soit d�e�nie non

pas sur l'ensemble des objectifs mais plutot sur celui de leurs appariements dans le

graphe mol�eculaire.

D�e�nition 2 On dit que l'appariement 'i du graphe Oi dans Gmol subsume l'ap-

pariement 'j de Oj dans Gmol, not�e 'i �app 'j , si et seulement si 'i(Oi) est

un sous-graphe partiel de 'j(Oj) (not�e 'i(Oi) v 'j(Oj)).

Cette nouvelle relation de subsomption est �etroitement li�ee �a la relation v : ((est

sous-graphe partiel de)). Elle en h�erite les propri�et�es de r�e exivit�e et de transitivit�e.

Pour ce qui est de l'antisym�etrie, la propri�et�e n'est pas toujours v�eri��ee pour deux

appariements d'un meme graphe. Il su�t qu'un graphe soit sym�etrique (ou auto-

morphe) pour qu'il admette deux appariements di��erents qui correspondent au meme

sous-graphe partiel de Gmol. La relation �app constitue donc un pr�eordre partiel sur

l'ensemble des appariements d'objectifs possibles. Pour pouvoir d�e�nir une relation

d'ordre partiel, il faut se restreindre �a un ensemble d'appariements qui ne contienne

pas deux appariements sym�etriques pour un meme objectif. La construction de ce

sous-ensemble d'appariements repose sur la d�e�nition d'une relation d'�equivalence

entre deux appariements d'un graphe Oi li�es par un automorphisme de Oi. Nous

reviendrons sur ce point dans le paragraphe 6.5.1.

Les solutions recherch�ees pour l'appariement 'O correspondent aux appariements

qui sont subsum�es par 'O relativement �a la relation�app. Pr�ecisons que l'on recherche

bien tous les appariements subsum�es par 'O et pas seulement les plus sp�eci�ques.

On veut obtenir toutes les transformations qui r�ealisent les modi�cations sp�eci��ees

par l'objectif GO; aussi bien celles qui se limitent �a cet objectif que celles qui op�erent

sur un objectif plus sp�eci�que.

Si la nouvelle relation de subsomption peut para�tre satisfaisante d'un point de

vue formel, elle l'est beaucoup moins en pratique. Elle est en e�et d�e�nie sur un

ensemble d'appariements qui n'ont de sens que pour un graphe mol�eculaire donn�e.

Il n'est donc pas possible d'utiliser la hi�erarchie induite par la relation �app pour

rechercher e�cacement les appariements plus sp�eci�ques que 'O. Cette hi�erarchie

Page 197: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

190 Chapitre 6. Raisonnement par classi�cation dans ReSyn

ne pourrait etre construite qu'apr�es avoir calcul�e tous les appariements, ce qui n'a

aucun sens.

Nous utiliserons donc la hi�erarchie d�e�nie sur les objectifs, par la relation �, pour

d�eterminer tous les appariements qui sont subsum�es par 'O relativement �a �app. On

peut s'appuyer sur la propri�et�e suivante :

Propri�et�e 3 Si 'i et 'j sont des appariements respectifs de Oi dans Gmol et de

Oj dans Gmol, alors 'i �app 'j =) Oi � Oj .

Pour trouver tous les appariements qui int�egrent 'O, on d�etermine parmi les des-

cendants de GO, dans la hi�erarchie d�e�nie par �, ceux qui subsument Gmol (relative-

ment �a �). Pour chaque objectif Oi ainsi trouv�e, on ne retient que les appariements

'i tels que 'O �app 'i.

Nous pr�esenterons dans le paragraphe 6.5, une m�ethode originale permettant

d'am�eliorer cette recherche en limitant le nombre d'objectifs �etudi�es et en facilitant

la d�etermination des appariements subsum�es par 'O. Cette m�ethode est bas�ee sur la

d�e�nition d'appariements dirig�es entre les objectifs de la hi�erarchie.

6.4.2 Contextes

Une fois que l'on a d�etermin�e tous les appariements d'objectifs qui sont compa-

tibles avec 'O, il faut d�eterminer, pour chacun de ces appariements, si on peut lui

appliquer une transformation. Pour savoir si une transformation est applicable, nous

avons introduit la notion de contexte dans le chapitre 2. �Etant donn�e un objectif

Oi, un contexte Cj associ�e �a Oi est un graphe tel que Oi � Cj. Le contexte Cj

contient le graphe Oi auquel il ajoute un certain nombre d'atomes qui d�e�nissent un

environnement favorable ou d�efavorable �a l'application d'une transformation sur Oi.

Soit T1 une telle transformation. L'objectifOi peut s'apparier de di��erentes fa�cons

dans le contexte Cj (cf. �gure 6.7) :

� pour certains appariements, le contexte Cj d�e�nit un environnement favorable

�a l'application de T1 (cf. 1),

� pour d'autres appariements, Cj d�e�nit un environnement d�efavorable �a l'appli-

cation de T1 (cf. 2),

Page 198: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.4. Les r�eseaux d'objectifs et de contextes dans ReSyn 191

favorable

?

ObjectifN

N

Ndéfavorable

3

2

1

Oi

Contexte Cj

Fig. 6.7 { appariements d'un objectif dans un contexte.

� et pour les appariements restants, le contexte Cj n'apporte aucune information

sur l'application de T1 (cf. 3);

Revenons maintenant aux appariements dans le graphe mol�eculaire. Soit 'i un

appariement de l'objectif Oi dans le graphe mol�eculaire et 'j un appariement du

contexte Cj dans Gmol tel que 'i �app 'j.

D�e�nition 3 L'appariement 'j du contexte Cj autorise (respectivement inter-

dit) l'application de la transformation T1 pour l'appariement 'i de l'objectif Oi

s'il existe un appariement k de Oi dans Cj qui soit favorable (resp. d�efavorable)

pour l'application de T1 et tel que 'i = 'j � k.

Cette d�e�nition est illustr�ee par la �gure 6.8 qui donne un exemple d'appariement

'j , d'un contexte Cj dans Gmol, qui est favorable pour un appariement 'i (subsumant

un appariement initial 'O) et d�efavorable pour un appariement '0i (subsumant '0o).

Pour savoir si la transformation T1 peut etre appliqu�ee pour l'appariement 'i, il

faut donc chercher des appariements de contextes qui autorisent ou interdisent cette

application. Consid�erons deux appariements 'j1 et 'j2 des contextesCj1 et Cj2 dans le

graphe mol�eculaire tels que Cj1 � Cj2 . Supposons que l'on ait : 'i �app 'j1 �app 'j2.

On peut alors distinguer trois cas (cf. �gure 6.9) :

� si 'j1 et 'j2 interdisent (ou autorisent) tous les deux l'application de T1 pour

'i, alors il faut retenir uniquement 'j2 qui donne une explication plus pr�ecise

que 'j1 (cf. A ),

� si 'j1 interdit (resp. autorise) l'application de T1 et 'j2 l'autorise (resp. l'inter-

dit), on ne retient �egalement que 'j2 puisque, �etant plus sp�eci�que que 'j1 , il

en masque les propri�et�es (cf. B ),

Page 199: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

192 Chapitre 6. Raisonnement par classi�cation dans ReSyn

N

NN

N

N

N

N

N

N

défavorable

?

Objectifs

favorable

Contexte

G O

'j

2

3�

1

'0O'j

'0i'i

'j autorise 'i = 'j � 1 'j interdit '0i = 'j � 2

Gmol

'O

pour T1 / Oi

pour T1 / OiOi Cj

Fig. 6.8 { Appariement d'un contexte dans Gmol interdisant ou autorisant l'appli-

cation d'une transformation pour l'appariement d'un objectif.

� si 'j1 interdit (ou autorise) l'application de T1 et 'j2 n'apporte aucune infor-

mation sur cette application, alors on retient simplement 'j1 (cf. C );

Ce m�ecanisme de ((masquage)) des appariements est �a rapprocher de la notion

d'h�eritage dans les langages �a objets [Ducournau et Habib, 1989]. Comme dans le cas

de l'h�eritage multiple, l'existence de contextes favorables ou d�efavorables �a l'appli-

cation d'une transformation peut engendrer l'apparition de con its. Il su�t en e�et

qu'il existe deux contextes Cj1 et Cj2 dont les appariements dans Gmol soient respecti-

vement favorables et d�efavorables �a l'application de T1 pour 'O. Si ces appariements

sont incomparables par rapport �a la relation �app{ bien qu'ils soient subsum�es par

'O { c'est que les graphes Cj1 et Cj2 sont incomparables pour la relation �. De ce

fait, aucun appariement de l'un de ces contextes ne peut masquer les appariements

de l'autre.

Pour r�esoudre ces probl�emes de con its, on peut mettre en �uvre des m�ethodes

g�en�erales comme celles qui sont employ�ees dans le cadre des langages �a objets [Du-

Page 200: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.4. Les r�eseaux d'objectifs et de contextes dans ReSyn 193

N

N

N

N

C

B

A

N

N

NN

N

N

NN

N

Contextes

favorable

?

favorable

défavorable

Objectif

'j2 : Pas d'informations pour 'i

�app

'j2 : Interdit 'i

�app

�app

'j1 : Autorise 'i

'j2 : Autorise 'i

'j1 : Autorise 'i

'j1 : Autorise 'i

'j1

'i

'i

'i

'j1

'j2

'j1

'j2

'j2

Cj1

Cj2

pour T1 / Oi

pour T1 / Oi

pour T1 / Oi

Oi

Gmol

Gmol

Fig. 6.9 { Appariement de plusieurs contextes interdisant ou autorisant l'application

d'une transformation pour un meme appariement d'objectif.

Page 201: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

194 Chapitre 6. Raisonnement par classi�cation dans ReSyn

cournau et Habib, 1991]. Une seconde d�emarche consiste �a maintenir la coh�erence

de la hi�erarchie de contextes en garantissant l'impossibilit�e de rencontrer de tels

con its. Pour ce faire, il faut d�eterminer si deux contextes Cj1 et Cj2, concernant une

transformation T1, poss�edent une sous-structure commune contenant l'appariement

de objectif associ�e �a T1. Si tel est le cas, il conviendra d'ajouter un nouveau contexte

subsum�e par Cj1 et Cj2 (relation �) a�n qu'il r�esolve les con its �eventuels pour la

transformation T1. La cr�eation de ce nouveau contexte peut d'ailleurs etre retar-

d�ee jusqu'�a l'apparition d'un con it lors de l'�etude d'un graphe mol�eculaire. Cette

derni�ere solution permet non seulement d'�eviter la recherche syst�ematique de sous-

structures communes entre tous les contextes, mais aussi de b�en�e�cier des connais-

sances expertes que l'on pourra recueillir aupr�es d'un chimiste en lui pr�esentant le

con it dans le cadre d'une situation r�eelle.

Cette question des con its �etant �ecart�ee, revenons sur la recherche des appa-

riements de contextes les plus sp�eci�ques, parmi ceux qui autorisent ou interdisent

l'application d'une transformation T1 pour un appariement 'i de Oi. Cette recherche

repose sur un m�ecanisme de classi�cation analogue �a celui de la recherche des pr�e-

d�ecesseurs imm�ediats du paragraphe 6.2.3.1. L'ensemble des contextes est structur�e

de fa�con hi�erarchique relativement �a la relation de subsomption �. On suppose qu'il

existe un contexte dont le graphe est isomorphe �a celui de l'objectif Oi. L'algo-

rithme que nous proposons consiste �a appliquer une fonction r�ecursive Recherche2 �a ce

contexte. Cette fonction permet de descendre dans la hi�erarchie jusqu'aux contextes

les plus sp�eci�ques parmi ceux qui subsument le graphe mol�eculaire. On ne retient

un appariement 'j1 d'un contexte que s'il autorise ou interdit l'application de T1, et

s'il ne subsume aucun autre appariement plus sp�eci�que 'j2 qui apporte une infor-

mation sur T1. Pour tester si 'j1 �app 'j2 (c'est �a dire 'j1(Cj1) v 'j2(Cj2)), il su�t

de v�eri�er si toutes les aretes du sous-graphe partiel 'j1(Cj1) font partie de 'j2(Cj2).

Fonction Recherche2(Cj, 'i)

Si Cj ne subsume pas le graphe mol�eculaire Alors

Retourner( ? );

Sinon

R �ensemble des appariements 'j de Cj dans Gmol tels que 'j �app 'iet 'j autorise ou interdit l'application de T1 pour 'i

F ?;

Page 202: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.4. Les r�eseaux d'objectifs et de contextes dans ReSyn 195

Pour tout x 2 SuccI(Cj) Faire :

F F [ Recherche2(x; 'i);

Supprimer les �el�ements de R qui subsument des �el�ements de F (relation �app);

Retourner( R [ F );

Jusqu'�a pr�esent, nous avons consid�er�e une unique transformation T1 applicable �a

l'objectifOi. Il peut cependant exister d'autres transformations associ�ees �a cet objec-

tif. On pourrait alors envisager de d�e�nir une hi�erarchie de contextes pour chacune

des transformations associ�ees �a cet objectif. Cette solution ne semble pas optimale

pour deux raisons ; d'une part, il est fort probable que ces di��erentes hi�erarchies in-

t�egrent beaucoup de contextes identiques qui seraient dupliqu�es; d'autre part, dans

la mesure o�u l'on cherche toutes les transformations associ�ees �a l'objectif, on de-

vra syst�ematiquement parcourir ces di��erentes hi�erarchies. S�eparer les contextes en

fonction des transformations ne permet pas d'optimiser la recherche par rapport �a

l'utilisation d'une hi�erarchie unique pour un objectif donn�e.

Pour chaque contexte Cj et pour chaque appariement k de l'objectif Oi dans Cj,

nous d�e�nissons la liste des transformations pour lesquelles k est favorable et la liste

de celles pour lesquelles il est d�efavorable. Il su�t alors de modi�er l�eg�erement la

proc�edure Recherche2 pour qu'elle traite s�epar�ement les informations recueillies sur

chacune des transformations. Un appariement 'j2 du contexte Cj2 pourra masquer

un appariement 'j1 de Cj1 (o�u 'j1 �app 'j2) pour une transformation Ta, mais ne

pas masquer 'j1 pour une autre transformation.

Pour terminer, il nous faut pr�eciser le lien qui existe entre les hi�erarchies de

contextes et celle des objectifs. Dans la version actuelle de ReSyn, il n'existe que

deux hi�erarchies : la premi�ere contient les objectifs et la seconde inclut tous les

contextes. Comme nous l'avons d�ej�a dit, ces deux hi�erarchies sont organis�ees sui-

vant la relation de subsomption �. Pour chaque objectif Oi, il existe un lien vers un

contexte Ci d�e�ni par le meme graphe que Oi. On dit alors que Cj est le ((contexte

�equivalent �a Oi)) (cf. �gure 6.10.A). Chaque contexte contient les informations d�e-

terminant, le cas �ech�eant, quels appariements de quels objectifs sont favorables ou

d�efavorables pour telles transformations li�ees �a ces objectifs.

Cette repr�esentation compacte des objectifs ne nous para�t pas optimale. D'une

part, elle complique �enorm�ement la description des connaissances puisqu'il faut dis-

Page 203: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

196 Chapitre 6. Raisonnement par classi�cation dans ReSyn

- T4 / O4

+ T1

+ T2- T2

+ T1

- T5

+ T5+ T5

+ T3

- T3+ T3

- T4

+ T1 / O1

+ T5 / O2

- T2 / O1

+ T1 / O1

+ T4 / O4

O1

O3

- T3 / O3

+ T3 / O3

O4

O2

O4

O3

O1

O2

+ T3 / O3

+ T4

+ T2 / O1

- T5 / O2

+ T5 / O2

Fig. 6.10 { Relations entre les hi�erarchies de contextes et d'objectifs

Page 204: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 197

tinguer, au sein d'un meme contexte, des informations relatives �a des objectifs di��e-

rents qui ne sont pas n�ecessairement comparables du point de vue de la subsomption.

D'autre part, elle ralentit le processus de classi�cation associ�e �a la recherche de trans-

formations applicables pour un objectif donn�e. En e�et, lorsque l'on �etudie les divers

contextes pr�esents dans la hi�erarchie actuelle de ReSyn (environ 200 �el�ements), on

constate qu'une tr�es faible partie d'entre eux (moins de 5%) concernent des objectifs

di��erents. Si cette tendance se con�rme pour une base de connaissances plus �eto��ee,

le gain de place li�ee �a une unique hi�erarchie de contexte semble relativement limit�e.

D'autant plus que l'on est oblig�e de pr�eciser �a quel objectif se rapporte un apparie-

ment favorable ou d�efavorable, ce qui augmente la taille des descriptions sur tous les

contextes. De plus, la perte d'e�cacit�e lors du parcours de la hi�erarchie peut s'av�erer

importante. Lorsque l'on s'int�eresse �a un objectif donn�e, il est inutile, voire aberrant,

d'�etudier des contextes qui concernent uniquement d'autres objectifs.

Nous proposons donc de modi�er la hi�erarchie actuelle de ReSyn en s�eparant les

contextes en autant de hi�erarchies qu'il y a d'objectifs (cf. �gure 6.10.B). Notons que

si un contexte appara�t dans deux hi�erarchies di��erentes, il n'est pas pour autant

dupliqu�e. Seules les informations associ�ees aux n�uds de la hi�erarchie (pr�ed�ecesseurs

et successeurs imm�ediats, appariements favorables ou d�efavorables, etc.) di��erent

entre deux occurrences du meme contexte.

6.5 Appariements dirig�es

Nous allons pr�esenter dans ce paragraphe une m�ethode originale pour am�eliorer

les �etapes d'appariements lors d'un processus de classi�cation dans une hi�erarchie de

graphes (objectifs, contextes, groupements fonctionnels, etc.). Cette m�ethode permet

d'utiliser les solutions d�etermin�ees pour un graphe Gi lors de l'�etude d'un graphe Gk

tel que Gi � Gk.

6.5.1 Quelques d�e�nitions

Pour tout graphe �etiquet�e Gi, notons A(Gi) le groupe des automorphismes de Gi

qui pr�eservent les �etiquettes des sommets et des aretes.

Page 205: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

198 Chapitre 6. Raisonnement par classi�cation dans ReSyn

N321

4

b c

d

a

1

4 N Nb c

e

a

1

4

c

e

d

b

1

4

N

b c

d

a1

4

N Nb c

e

a

1

4

b c

e

d1

4

N

Gi

Gk

Na b c

e

d

1 2 3 4

b cd a

b c ed

b c e

b

b c

e c a

d

a b c d

e

aA

BC

C

B

A

�i!k

Fig. 6.11 { Appariements sym�etriques

�Etant donn�e deux graphes �etiquet�es Gi = (Xi; Ei) et Gk = (Xk; Ek) tels que

Gi � Gk, on s'int�eresse aux morphismes injectifs de Gi dans Gk.

Nous noterons11 �i!k l'ensemble des appariements de Gi dans Gk qui pr�eservent

l'adjacence et les relations �X et �E sur les �etiquettes des sommets et des aretes.

L'�enum�eration de tous les �el�ements de �i!k ne pr�esente qu'un int�eret limit�e

lorsque le graphe Gi est automorphe (c'est-�a-dire, si A(Gi) ne se limite pas �a l'iden-

tit�e). Il est g�en�eralement inutile de d�ecrire tous les appariements possibles de Gi

dans Gk qui sont �equivalents �a un automorphisme de Gi pr�es. Dans la �gure 6.11,

le graphe Gi �etant automorphe, tout appariement de Gi dans Gk admet un apparie-

ment sym�etrique relativement �a Gi. Parmi les six morphismes appartenant �a �i!k,

on ne retiendra g�en�eralement que trois d'entre eux, a�n de distinguer les cas A, B et

C. Mais il est souvent inutile, voire super u, d'�enum�erer les trois autres morphismes,

surtout lors d'une interaction avec un agent humain.

11. La notation �Gi!Gkserait plus juste mais �egalement plus lourde.

Page 206: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 199

Nous allons donc d�e�nir une relation i� sur l'ensemble �i!k par :

8';'0 2 �i!k; ' i� '0 , 9 � 2 A(Gi) tel que ' = '0 � �

On v�eri�era ais�ement que i� 12 est une relation d'�equivalence. L'ensemble �i!k est

donc partitionn�e en un ensemble de classes d'�equivalence d�e�ni par �i!k =i�.

Tout �el�ement d'une classe d'�equivalence peut etre utilis�e pour la repr�esenter.

�Etant donn�e une relation d'�equivalence � d�e�nie sur un ensemble E, on appelle sys-

t�eme complet de repr�esentants tout sous-ensemble de E contenant un repr�esentant {

et un seul { de chacune des classes d'�equivalence. Nous noterons R(E =�) l'ensemble

de tous les syst�emes complets de repr�esentants pour la relation d'�equivalence � d�e�nie

sur E.

Tout ensemble � appartenant �a R(�i!k =i�) v�eri�e donc la propri�et�e suivante :

8' 2 �i!k; 9 '0 2 � tel que ' i� '0 et 8'; '0 2 �; si ' 6= '0; alors ' 6 i� '0

La �gure 6.12 donne un exemple de calcul d'un ensemble � 2 R(�i!k =i�) pour

deux graphes Gi et Gk tels que Gi � Gk.

Notons '(Gi) le sous-graphe partiel de Gk qui est l'image de Gi par le morphisme

' appartenant �a �i!k. On peut d�eterminer un syst�eme complet de repr�esentants pour

la relation i� en utilisant la propri�et�e suivante :

Propri�et�e 4 8';'0 2 �i!k; ' i� '0, '(Gi) = '0(Gi)

Cette propri�et�e signi�e simplement que chaque classe d'�equivalence de la relationi� est parfaitement d�e�nie par le sous-graphe partiel de Gk qui est l'image de Gi par

tout morphisme de cette classe. Pour ne conserver qu'un seul �el�ement par classe,

on associe chaque morphisme ' de �i!k au sous-graphe de Gk d�e�ni par '(Gi).

Tout sous-graphe peut etre d�ecrit de fa�con bi-univoque par l'ensemble des aretes de

Gk qu'il contient, ou encore par la liste de ces aretes, ordonn�ees suivant un ordre

total d�e�ni sur toutes les aretes de Gk. On repr�esente donc chaque appariement ' de

�i!k par une liste ordonn�ee d'aretes de Gk. Puis on trie l'ensemble des listes ainsi

obtenues suivant un ordre lexicographique a�n d'�eliminer les occurrences multiples.

On en d�eduit alors un syst�eme complet de repr�esentants de �i!k =i�.

12. Nous choisirons de noter ((i

�)) cette relation par souci de simpli�cation. Elle est en fait d�e�nie

sur l'ensemble �i!k �a partir de l'ensemble A(Gi) des automorphismes de Gi, ce qui explique la

notation choisie.

Page 207: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

200 Chapitre 6. Raisonnement par classi�cation dans ReSyn

Na b c

e

d

1 2

1 2

4 2

3

3

3

4

4

1

N321

4

1 2 3 4

id.

1 2 3 4

a b c e

b

b

c

cd e

d a

b cd a

b c ed

a b c e

b

b c

e c a

d

a b c d

e

Gi

Gk

A(Gi)

�i!k

Fig. 6.12 { D�etermination d'un syst�eme complet de repr�esentants � 2 R(�i!k =i�).

6.5.2 Probl�eme 1

On cherche �a r�esoudre le probl�eme suivant :

Donn�ees : Un graphe Gmol, un ensemble de graphes G = fG1; :::; Gzg, la hi�erar-

chie H� = fG; URg d�e�nie par le graphe de Hasse de la relation de subsomption �

d�e�nie sur G.

Question : Pour tout graphe Gi de G, v�eri�er si Gi � Gmol et construire, le cas

�ech�eant, un ensemble � d'appariements de Gi dans Gmol tel que � 2 R(�i!mol =i�).

On peut rencontrer ce probl�eme lors de la recherche de tous les groupements

fonctionnels pr�esents dans le graphe mol�eculaire (cf. paragraphe 4.5). Chaque grou-

pement fonctionnel est d�e�ni par un graphe et cet ensemble de graphes est organis�e

en hi�erarchie suivant la relation �. On cherche �a d�eterminer tous les appariements de

groupements fonctionnels dans la mol�ecule. Si un groupement fonctionnel, d�ecrit par

le graphe Gi, pr�esente des automorphismes, on �eliminera les solutions �equivalentes �a

un automorphisme de Gi pr�es.

Page 208: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 201

Comme nous l'avons vu pr�ec�edemment, une des premi�eres fa�cons d'optimiser la

r�esolution de ce probl�eme consiste �a utiliser le r�eseau H� pour parcourir G. L'explo-

ration de G est r�ealis�ee �a travers H�, en partant des graphes maximaux relativement

�a � (c'est-�a-dire les graphes les plus petits) et en n'�etudiant les descendants d'un

graphe Gi que s'il existe au moins une solution pour ce dernier.

Cette am�elioration de l'algorithme brutal parcourant syst�ematiquement tout l'en-

semble G, peut etre �egalement optimis�ee. Les �etapes les plus couteuses de cette m�e-

thode correspondent �a la construction, pour un graphe Gi donn�e, d'un ensemble

� 2 R(�i!mol =i�).

Pour d�eterminer ces ensembles, nous devons recourir �a un algorithme d'isomor-

phisme de sous-graphes partiels. Nous n'allons pas revenir ici sur le fait que ce pro-

bl�eme est NP-Complet (cf. [Garey et Johnson, 1979]). Rappelons simplement que

construire un morphisme injectif ' 2 �i!mol revient �a associer successivement chaque

sommet de Gi �a un sommet de Gmol en pr�eservant le voisinage des sommets de Gi.

Pour que cette recherche soit la plus rapide possible, il faut �eviter de devoir remettre

en cause l'a�ectation d'un sommet de Gi �a un sommet deGmol lorsque celle-ci conduit

�a une impasse, c'est-�a-dire limiter les ((retours arri�eres)).

On peut alors se demander comment utiliser le travail r�ealis�e pour un graphe Gi

lors de l'�etude d'un graphe Gk tel que Gi � Gk.

Si Gk est un descendant de Gi dans H� c'est qu'il existe un ensemble �i!k

d'appariements de Gi dans Gk.

On peut alors �enoncer la propri�et�e suivante :

Propri�et�e 5 Soient �i 2 R(�i!mol =i�) et �k 2 R(�k!mol =

k�) deux ensembles de

morphismes associ�es aux graphes Gi et Gk tels que Gi � Gk:

8'0 2 �k il existe 2 �i!k et ' 2 �i tels que ' = '0 �

Cette propri�et�e n'est qu'une cons�equence directe du fait que Gi subsume Gk. Elle

exprime de fa�con formelle l'id�ee selon laquelle tout appariement de Gk dans Gmol

doit n�ecessairement ((contenir)) un appariement de Gi dans Gmol puisque Gi � Gk.

Quant aux morphismes de �i!k, ils expriment simplement comment un appariement

de Gi se ((positionne)) �a l'int�erieur de l'appariement de Gk qui le ((contient)).

Consid�erons par exemple les graphes de la �gure 6.13. L'ensemble �i est �egal �a

f'1; '2; '3g, �i!k = f 1; 2g et �k = f'01; '02; '

03g.

Page 209: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

202 Chapitre 6. Raisonnement par classi�cation dans ReSyn

N321

4

Gk

N1 2 3Gi

Na b c

e

d

1 2 3

a b c

b c

b c

d

e

'2

'1

'3

1 2 3

1 2 3

4 2 3

1

2

�i!k

1 2 3 4

a b c e

b cd a

b cd

'01

'02

'03

e

Gmol

�i 2 R(�i!mol =i�)

�k 2 R(�k!mol =k�)

Fig. 6.13 { Lien entre �i 2 R(�i!mol =i�) et �k 2 R(�k!mol =

k�).

On peut alors v�eri�er que : '1 = '01 � 1 = '02 � 2, '2 = '02 � 1 = '03 � 1

et '3 = '03 � 2 = '01 � 2.

La propri�et�e 5 permet d'optimiser la construction de �k. Chaque �el�ement de �i

peut etre consid�er�e comme un appariement incomplet de �k. Pour limiter les ((retours

arri�eres)) lors de la recherche des morphismes de �k, on peut essayer d'�etendre �a Gk

les morphismes de �i. Cette d�emarche permet de d�eterminer les parties de Gmol

qui sont susceptibles de ((contenir)) Gk dans la mesure o�u elles contiennent d�ej�a Gi.

Il est en e�et inutile d'essayer d'apparier les sommets de Gk avec un ensemble de

sommets de Gmol qui ne sont l'image d'aucun sommet de Gi par un morphisme de �i.

Page 210: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 203

1 2 3 4

a b c

b c e

b ce

b c a

?

?

?

?

'1 � �1

1

'2 � �11

'1 � �12

; '01

; '02

; '01

; '02

'2 � �1

2

1 32

4

N

N

1 2 3

4 2 3

ii iii

i ii iii

1

2

a b c

b ce

i ii iii

1 2 3 4

a b c e

b c ae

'1

'2

'02

'01

�i

�i!k

Nb ca

d

ef

Gk

iGi

�k!mol

Gmol

1 2 3 4

a b c e'01

�k

Fig. 6.14 { Construction de �k 2 R(�k!mol =k�) �a partir de �i 2 R(�i!mol =

i�).

Consid�erons deux graphes Gi = (Xi; Ei) et Gk = (Xk; Ek) tels que Gi � Gk.

Quels que soient le morphisme ' de �i 2 R(�i!mol =i�) et le morphisme de �i!k,

nous allons construire tous les morphismes '0 de �k!mol tels que :

8xk 2 (Xi); '0(xk) = ' � �1(xk)

Consid�erons, par exemple, les graphes Gi et Gk de la �gure 6.14.

Nous avons : �i = f'1; '2g et �i!k = f 1; 2g.

En composant '1 et �11 on obtient la restriction �a l'ensemble 1(Xi) = f1; 2; 3g

du morphisme '01 de �k tel que '01(1) = a, '01(2) = b et '01(3) = c. La seule extension

de cette restriction correspond bien au morphisme '01 qui associe le sommet 4 de Gk

au sommet e de Ge.

Page 211: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

204 Chapitre 6. Raisonnement par classi�cation dans ReSyn

En poursuivant ce processus, on constate que le morphisme '01 est �egalement

obtenu �a partir de la restriction associ�ee �a '2 � �12 .

Cette duplication des r�esultats n'est �evidemment pas satisfaisante dans la mesure

o�u nous cherchons �a optimiser la construction d'un ensemble �k 2 R(�k!mol =k�).

En �etudiant la �gure 6.14, on peut remarquer que les morphismes 1 et 2 de

�i!k ne sont pas ind�ependants. Ils d�ecrivent des projections de Gi dans Gk qui sont

�equivalentes �a un automorphisme de Gk pr�es.

C'est cette sym�etrie qui est responsable de la duplication du morphisme '01. En

e�et, puisque Gi ((appara�t)) dans Gk en deux positions sym�etriques, toute projection

'01 de Gk dans Gmol doit n�ecessairement int�egrer les deux restrictions sym�etriques de

'01 au graphe Gi, �a savoir : '1 = '01 � 1 et '2 = '01 � 2.

Il semble donc pr�ef�erable d'�eliminer dans �i!k les morphismes de Gi dans Gk qui

sont �equivalents �a un automorphisme de Gk pr�es. Nous allons d�e�nir une nouvelle

relation d'�equivalence, not�ee �k, sur l'ensemble �i!k :

8 ; 0 2 �i!k; �k 0 , 9 � 2 A(Gk) tel que = � � 0

Deux morphismes d'un ensemble �i!k seront li�es par la relation �ks'ils sont �equi-

valents �a un automorphisme de Gk pr�es. On notera l'analogie avec la relation i�

qui, d�e�nie comme pr�ec�edemment sur le meme ensemble �i!k, correspond �a une

�equivalence de morphismes suivant les automorphismes de Gi.

En respectant les notations pr�ec�edentes, nous d�esignerons par R(�i!k =�k) l'en-

semble des syst�emes complets de repr�esentants de �i!k = �k.

Nous allons montrer que l'on peut toujours construire un ensemble

�k 2 R(�k!mol =k�) �a partir de deux ensembles�i 2 R(�i!mol =

i�) et �i;k 2 R(�i!k =�k).

Pour ce faire, nous allons utiliser l'algorithme g�en�eral suivant, que nous emploie-

rons dans un premier temps en prenant Fi = �i et Fi;k = �i;k :

Fonction Construire Appariements (Fi; Fi;k) :

Donn�ees : un ensemble Fi � �i!mol et un ensemble Fi;k � �i!k

R�esultat : un ensemble �k 2 R(� =k�) o�u

� = f '0 2 �k!mol; tel que 9' 2 Fi et 9 2 Fi;k avec ' = '0 � g

Page 212: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 205

1. � ? ? � est un sous-ensemble de �k!mol ?

2. Pour tout ' 2 Fi faire :

3. Pour tout 2 Fi;k faire :

4. d�e�nir sur (Xi) � Xk un morphisme '0 = ' � �1

5. Ajouter dans � toutes les extensions valides de '0 aux autres sommets de Xk

6. fpour

7. �k un �el�ement de R(� =k�)

La r�ep�etitive Pour de la ligne 3 commence par construire un morphisme '0 de

�k!mol en utilisant ' et . �A la �n de cette �etape, seuls sont ((instanci�es)) les sommets

de Gk appartenant �a (Xi). On cherche ensuite �a �etendre cette solution partielle

(ligne 5) et on ajoute tous les morphismes valides ainsi obtenus �a l'ensemble �.

La �gure 6.15 donne un exemple de construction de �k.

Nous allons maintenant montrer que si on applique cet algorithme en prenant

Fi 2 R(�i!mol =i�) et Fi;k 2 R(�i!k =�

k), on construit un ensemble�k 2 R(�k!mol =

k�).

Nous commencerons par montrer que l'algorithme v�eri�e le lemme suivant :

Lemme 1 Quel que soit '0 2 �k!mol tel qu'il existe ' 2 �i!mol et 2 �i!k

v�eri�ant : ' = '0 � .

S'il existe '2 2 Fi tel que '2i� ' et 2 2 Fi;k tel que 2 �

k ,

et si par ailleurs, l'ensemble Fi;k v�eri�e :

8 2 Fi;k et 8�i 2 A(Gi), il existe 0 2 Fi;k tel que 0 �

k( � �i).

Alors, l'algorithme construit un appariement '02 2 �k!mol tel que '02k� '0.

D�emonstration

Puisque '2i� ', c'est qu'il existe �i 2 A(Gi) tel que '2 = ' � �i.

De la meme fa�con, 2 �k entra�ne l'existence d'un automorphisme

�k 2 A(Gk) tel que 2 = �k � .

D'apr�es l'hypoth�ese faite sur Fi;k , si 2 2 Fi;k alors il doit exister 3 2 Fi;k

tel que 3 �k 2 � �i, c-�a-d 9�0k 2 A(Gk) avec 3 = �0k � 2 � �i

Puisque (' � �i) 2 Fi et (�0k � 2 � �i) 2 Fi;k , l'algorithme doit construire

tous les appariements '02 2 �k!mol tels que (' � �i) = '02 � (�0k � 2 � �i)

ce qui donne �nalement : ' = ('02 � �0k � �k) �

Page 213: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

206 Chapitre 6. Raisonnement par classi�cation dans ReSyn

1 32

4

N

1 2

4

N

3 56

7

Gi

Fi

Gk

1

a

2 3 4

b c

b c

c

5 6 7

a

g h

h g

g d c h

g d h

a

d

d

e

e

b

aeb

e

1 2 3 4

a b c e

cg d h

1 2 3 4

1 2 3 4

1

a

2 3 4

b c

5 6 7

e d g h

'1

'2

Fi;k

'1

'2

Nb ca

ef

dg

h

Gmol

�k 2 R(� =k�)

Fig. 6.15 { Construction de �k

Parmi tous les '02 respectant cette �egalit�e, on construira n�ecessairement

celui qui v�eri�e : '02 = '0 � ��1k � �0�1k . D'o�u �nalement '02

k� '0 2

Consid�erons deux graphes Gi et Gk tels que Gi � Gk, et un ensemble �k quelconque

appartenant �a R(�k!mol =k�).

Soit �k l'�el�ement de R(� =k�) obtenu �a la ligne 7 de l'algorithme appliqu�e �a deux

ensembles Fi et Fi;k tels que Fi = �i 2 R(�i!mol =i�) et Fi;k = �i;k 2 R(�i!k =�

k).

Proposition 4 8'01 2 �k; 9'02 2 �k tel que '

01

k� '02

Page 214: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 207

D�emonstration

Soit un �el�ement quelconque de �i!k. Notons ' = '01 � .

' �etant un �el�ement de �i!mol, il doit n�ecessairement exister '2 2 Fi tel

que '2i� '.

Par ailleurs, puisque l'ensemble Fi;k appartient �a R(�i!k =�k), il existe

2 2 Fi;k tel que 2 �k . De plus, 8 0 2 Fi;k et 8�i 2 A(Gi); ( 0 � �i) 2

�i!k. Donc il existe 00 2 Fi;k tel que 00 �k( 0 � �i).

On en d�eduit, d'apr�es le lemme 1, la pr�esence dans �k, �a la �n de l'algo-

rithme, d'un appariement '02 tel que '01

k� '02 2

�Etant donn�e deux graphes Gi et Gk de G, tels que Gi � Gk, l'ensemble �i;k ,

utilis�e par l'algorithme, est ind�ependant du graphe mol�eculaire Gmol pour lequel on

cherche �a construire les ensembles �i et �k. On peut donc d�eterminer �i;k une fois

pour toutes et l'employer quel que soit le graphe Gmol �etudi�e.

Nous avons choisi de stocker cette information au niveau des arcs du r�eseau

H� = fG; URg (�egal au graphe de Hasse de la relation � sur G). �A tout arc (Gi; Gk)

de H�, on associe un ensemble �i;k correspondant.

Pour r�esoudre le probl�eme 1, on parcourt la hi�erarchieH� en partant des graphes

les plus g�en�eraux vers les graphes les plus sp�eci�ques. �Etant donn�e un graphe Gk,

deux cas peuvent se pr�esenter :

� s'il existe au moins un graphe Gi, parmi ceux qui subsument Gk, pour lequel

�i!mol = ?, alors on en d�eduit directement �k!mol = ?,

� sinon, on choisit un graphe Gi parmi les subsumants de Gk, puis on utilise

l'ensemble �i � �i!mol obtenu pour Gi a�n de construire un ensemble �k pour

le graphe Gk;

Le choix d'un graphe Gi parmi les subsumants de Gk est actuellement arbitraire.

Il serait int�eressant de d�eterminer des heuristiques permettant de choisir le meilleur

graphe de fa�con �a optimiser la recherche des appariements de Gk. On peut envisager

de choisir le graphe Gi qui maximise le ((taux de recouvrement)) de Gk par Gi, ou

encore celui qui poss�ede le plus petit nombre d'appariements dans Gmol.

Page 215: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

208 Chapitre 6. Raisonnement par classi�cation dans ReSyn

N321

4

1 2

1 2

a b

Gk

1 2 3 4

a b c e

b

b

c

cd e

1 2 3 4

a b c e

b c

d a

d a

�k

GO

Gm'o

�'ok

Nc

e

d

a b

'o

Fig. 6.16 { D�etermination d'un ensemble �'Ok

6.5.3 Probl�eme 2

Le probl�eme 2 int�egre la notion de subsomption entre appariements :

Donn�ees : Un graphe Gmol, un ensemble de graphes G = fG1; :::; Gzg, le r�eseau

H� = fG; URg �egal au graphe de Hasse de la relation � sur G et un graphe GO tel

qu'il existe un morphisme 'O 2 �O!mol.

Question : Pour tout graphe Gk de G, construire l'ensemble �'Ok des apparie-

ments de Gk dans Gmol qui sont subsum�es par 'O (relation �app) et qui ne sont pas

�equivalents �a un automorphisme de Gk pr�es (relation k�).

�Etant donn�e un ensemble d'appariements �k 2 R(�k!mol =k�), l'ensemble �'Ok se

d�e�nit formellement par : �'Ok = f 'k 2 �k tel que 'O �app 'k g.

La �gure 6.16, donne un exemple d'ensemble �'Ok d�etermin�e �a partir de �k et

d'un morphisme 'O.

Le probl�eme 2 correspond, par exemple, �a la recherche d'objectifs plus sp�eci�ques

qu'un objectif GO d'appariement 'O, ou �a la d�etermination des appariements de

contextes qui autorisent ou interdisent l'application d'une transformation pour 'O.

Pour le probl�eme pr�ec�edent, nous avons montr�e comment le r�eseau H� peut

faciliter l'exploration de G. On utilise le fait que pour deux graphes Gi et Gk de G

Page 216: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 209

N

N

N

N

N1 2 3 4

a b c e

1 2 3

1 2

3

1 2

b c

a d

e

1 2

e b c

a b c

4

b c

iii iii

Gi

Gj

Gk

i ii iii

'O

�'Ok

GO�'Oj

�'Oi = ?

'k

'O

Gmol

Fig. 6.17 { Un graphe Gk peut admettre un appariement dans Gmol subsum�e par

'O, alors que le graphe Gi � Gk n'en admet pas.

tels que Gi � Gk, si Gi n'admet aucun appariement dans Gmol alors Gk n'en admet

pas non plus.

Malheureusement, cette propri�et�e n'est plus v�eri��ee lorsqu'il s'agit de r�esoudre le

probl�eme 2. Comme le montre la �gure 6.17, le fait qu'il n'existe pas d'appariement

de Gi dans Gmol int�egrant 'O, ne permet pas de conclure qu'il n'en existe pas pour

Gk.

Une premi�ere solution pour r�esoudre ce probl�eme consisterait �a rechercher tous

les appariements des graphes de G dans Gmol, sans se soucier de 'O. On �eliminerait

ensuite les appariements qui ne seraient pas subsum�es par 'O. Cette solution n'est

pas satisfaisante dans la mesure o�u elle ne permet pas de limiter la recherche des

appariements autour du sous-graphe partiel de Gmol d�e�ni par 'O(GO). Nous propo-

Page 217: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

210 Chapitre 6. Raisonnement par classi�cation dans ReSyn

N

N

N

N

2

1 2 3

1 2 4

3 1

4

e

1 2 3

a b c

e b c

a b c

1

4

2 3

1 2 4

1 2

3

1 2 3

a d

e

b c

i ii iii

�0

�'Ok

'k

i ii iii�'Oj

'0j

'j

iii iii

Gk

Gj

�j;i i ii iii

1 2 3

Gi

�i;k

�j;k

'O

�00

Gmol

Fig. 6.18 {

sons donc d'�etendre au probl�eme 2 les m�ethodes utilis�ees pour r�esoudre le probl�eme 1

en d�eterminant, par avance, les appariements entre certains graphes de la hi�erarchie.

Consid�erons, par exemple, les graphes Gj , Gi et Gk de la �gure 6.18 v�eri�ant

Gj � Gi � Gk. Comme dans la �gure 6.17, la r�esolution du probl�eme 2 pour ces

graphes donne : �'Oj = f'j; '0jg, �'Oi = ? et �'Ok = f'kg. Puisque l'ensemble �'Oi

est vide, on ne peut pas l'utiliser pour construire �'Ok .

Si l'on d�etermine un ensemble d'appariements �j;k appartenant �a R(�j!k =�k), on

constate que cet ensemble poss�ede trois morphismes �, �0 et �00 tels que � subsume

l'appariement de �i;k 2 R(�i!k =�k) alors que �0 et �00 ne le subsument pas.

On peut donc dire que l'appariement de �i;k ((transmet)) l'appariement � mais

ne transmet pas �0 ni �00. Or c'est justement l'appariement �0 qui pourrait permettre

de construire le morphisme 'k de �'Ok �a partir du morphisme 'j de �'Oj dans la

mesure o�u 'j = 'k � �0.

Page 218: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 211

Cet exemple nous montre que pour calculer un ensemble �'Ok , on ne peut pas se

contenter ((d'�etendre)) les appariements obtenus pour les pr�ed�ecesseurs imm�ediats de

Gk. Il est parfois n�ecessaire de s'appuyer sur les appariements de pr�ed�ecesseurs non

imm�ediats. Toute la di�cult�e provient du fait que l'on dispose uniquement d'une

hi�erarchie de graphes H� qui est ordonn�ee suivant la relation �. Or le probl�eme 2 se

pose avant tout en termes de subsomption d'appariements suivant le relation �app.

Dans la hi�erarchie H�, l'arc reliant le graphe Gj �a Gk ne sera pas pr�esent s'il

existe un graphe Gi tel que Gj � Gi � Gk. Il constituerait alors un arc de transiti-

vit�e. Pourtant, si l'on consid�ere les arcs (Gj ; Gi) d'une part et (Gi; Gk) d'autre part,

on ne peut pas dire que cette succession d'arcs remplisse pleinement son ((role de tran-

sitivit�e)). Le morphisme �0 de �j;k n'est pris en compte par aucune des compositions

possibles entre les �el�ements de �j!i et ceux de �i!k.

Cette lacune n'a aucune importance pour le probl�eme 1 dans la mesure o�u l'on

s'int�eresse �a tous les appariements dans le graphe mol�eculaire. Par contre, quand on

se limite �a ceux qui sont subsum�es par 'O, on ne peut se permettre de perdre des

appariements du fait de la suppression d'un arc de transitivit�e. Nous proposons donc

d'ajouter un arc, entre les graphes Gj et Gk, qui soit �etiquet�e par le seul morphisme

�0 de �j;k qui ne subsume pas d'appariements de �i!k.

�Etant donn�e un graphe Gj tel que Gj � Gk et un ensemble �j;k 2 R(�j!k =�k),

on d�e�nit l'ensemble des appariements dirig�es de Gj dans Gk par l'ensemble des

appariements de �j;k qui ne subsume aucun appariement d'un graphe Gi dans Gk

tel que Gj � Gi � Gk. De fa�con plus formelle, l'ensemble des appariements dirig�es,

not�e AppDir j!k, se d�e�nit par :

AppDir j!k =n� 2 �j;k tel que 9/ 2 �i!k v�eri�ant � �app et Gj � Gi � Gk

oSi le graphe Gj est un pr�ed�ecesseur imm�ediat de Gk, alors l'ensemble AppDir j!k

est �egal �a �j;k .

�Etant donn�e deux graphes Gj et Gk de G, on ajoute l'arc (Gj ; Gk) dans la hi�e-

rarchie H� si l'ensemble AppDir j!k n'est pas vide.

La �gure 6.19 donne quelques exemples d'appariements dirig�es.

Les ensembles d'appariements dirig�es v�eri�ent la propri�et�e suivante :

Propri�et�e 6 8' 2 AppDir j!k et 8�j 2 A(Gj), il existe '0 2 AppDir j!k tel que

'0 k� (' � �j)

Page 219: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

212 Chapitre 6. Raisonnement par classi�cation dans ReSyn

N

3

O N

N

2

3

1

1

321

N

N

321

2

N

1 2

3

1

4

2 3

56 7

1 2

1 2

3

3 4

49

3

8

8 9

3

1 2

2

3

3 1

1 2 3 10 56

7

8 9

4

iii iii

Gb

Ga

Gc

i iiiii

i iiiii

i iiiii

AppDir a!dAppDir c!d

AppDir b!dAppDir b!c

AppDira!b

AppDira!c

Gd

Fig. 6.19 { Appariements dirig�es dans une hi�erarchie de graphes.

D�emonstration (par l'absurde)

S'il n'existe pas de '0 tel que '0 k� (' � �j), c'est qu'il existe un graphe

Gi, avec Gj � Gi � Gk, pour lequel 9 2 �i!k tel que (' � �i) �app .

Il s'en suit (' � �j)(Gj) v (Gi) =) '(Gj) v (Gi). D'o�u ' �app , ce

qui est contraire �a l'hypoth�ese de d�epart : ' 2 AppDir j!k 2

Page 220: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 213

L'algorithme permettant de r�esoudre le probl�eme 2 est alors similaire �a celui du

probl�eme 1. Il utilise simplement plus d'arcs dans la hi�erarchie H�.

Pour construire l'ensemble �'Ok , on essaie ((d'�etendre)) tous les appariements des

ensembles �'Oi obtenus pour des graphes Gi plus g�en�eraux que Gk et reli�es �a ce

graphe par un arc de la hi�erarchie. On applique la fonction Construire Appariements

de la page 204 en prenant Fi;k = AppDir i!k.

Construction de �'Ok :

A ?;

Pour tout Gi 2 G tel que AppDir i!k 6= ? et �'Oi 6= ? faire :

A A [ Construire Appariements(�'Oi ;AppDir i!k);

�'Ok un �el�ement de R(A=k�);

Proposition 5 En appliquant l'algorithme pr�ec�edant aux graphes de G, dans un

ordre correspondant �a une extension lin�eaire de la relation �, on construit pour

chaque graphe Gk 2 G, o�u GO � Gk, un ensemble �'Ok tel que :

�'Ok 2 R(�'O

k!mol =k�) o�u �'O

k!mol = f'k 2 �k!mol; 'O �app 'kg

D�emonstration

Quel que soit le graphe Gk �etudi�e, pour que l'ensemble �'Ok ne soit pas

vide, il faut qu'il y ait au moins un appariement 'k de Gk dans Gmol qui

soit subsum�e par 'O. Dans ce cas, 'O(GO) est un sous-graphe partiel de

'k(Gk). Il existe donc un morphisme O 2 �O!k tel que 'O = 'k � O.

Pour d�emontrer la propri�et�e, nous allons utiliser un raisonnement par in-

duction sur l'ordre de traitement des graphes appartenant �a G (extension

lin�eaire de la relation �).

Le premier graphe �etudi�e est un successeur imm�ediat de GO. Il s'en

suit AppDirO!k 2 R(�O!k =�k). Il existe donc 0O 2 AppDirO!k v�e-

ri�ant 0O �k O, c'est-�a-dire 9�k 2 A(Gk) tel que 0O = �k � O. La

fonction Construire Appariements, appliqu�ee aux ensembles Fi = f'Og et

Fi;k = AppDirO!k, doit construire, d'apr�es le lemme 1 (page 205), tous

les morphismes '0k 2 �k!mol tels que 'O = '0k � 0O = '0k ��k � O. Parmi

eux, l'appariement '0k = 'k � ��1k sera n�ecessairement construit et v�eri�e

'0kk� 'k.

Page 221: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

214 Chapitre 6. Raisonnement par classi�cation dans ReSyn

Supposons maintenant que la propri�et�e soit vraie pour tout graphe Gi

trait�e avant le graphe Gk. Deux cas peuvent alors se produire :

� s'il existe 0O 2 AppDirO!k v�eri�ant 0O �k O, alors on se ram�ene

au cas pr�ec�edant.

� sinon, il doit exister un graphe Gi tel que GO � Gi � Gk et

pour lequel l'ensemble AppDir i!k contient un morphisme i tel que

O �app i. La restriction 'i du morphisme 'k au graphe Gi rela-

tivement �a i (i.e. 'i = 'k � i), v�eri�e n�ecessairement 'O �app 'i

(puisque 'O(GO) v 'i(Gi) v 'k(Gk)).

Puisque Gi � Gk et par hypoth�ese d'induction, l'algorithme appli-

qu�e au graphe Gi doit avoir construit un ensemble �'Oi valide. Cet

ensemble contient donc un morphisme '0i tel que '0i

i� 'i. D'apr�es le

lemme 1 et la propri�et�e 6, la fonction Construire Appariements, appli-

qu�ee aux ensembles Fi = �'Oi et Fi;k = AppDir i!k, doit construire

un morphisme '0k tel que '0k

k� 'k.

Il nous reste maintenant �a exposer la m�ethode permettant de d�eterminer les

ensembles d'appariements dirig�es.

On consid�ere une hi�erarchie H� = (G; UH) telle que UH est l'ensemble des arcs

reliant un graphe Gj au graphe Gi tel que AppDir j!i 6= ?.

Soit Gk le graphe que l'on d�esire ajouter �a cette hi�erarchie.

On commence par d�eterminer les pr�ed�ecesseurs imm�ediats de Gk. L'algorithme

que nous allons pr�esenter repose sur un parcours en largeur de la hi�erarchie en par-

tant des graphes les plus g�en�eraux, comme dans l'algorithme de Levinson (cf. para-

graphe 6.2.3.1). Lors de ce parcours, on d�etermine les appariements dirig�es vers Gk

pour tout graphe Gj tel que Gj � Gk. L'ensemble AppDir j!k est initialis�e en d�eter-

minant un ensemble �j;k �a partir de �j!k. Lorsque l'on �etudie un nouveau graphe

Gi tel que Gj � Gi � Gk, on �elimine les �el�ements de AppDir j!k qui subsument des

�el�ements de �i!k.

�A la �n du calcul des pr�ed�ecesseurs imm�ediats, on relie un graphe Gi �a Gk si

l'ensemble AppDir i!k �nal n'est pas vide (cf. �gure 6.20).

D'o�u l'algorithme calculant les pr�ed�ecesseurs imm�ediats de Gk :

Page 222: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 215

N

1

3

21

N

3

3

N

2

21

21

3

N

4

32

4

O

N

N

1

321

32

4

1

O

N

321

N

56 7

9

3

8

8 9

3

1 2

2

3

3 1

1

4

2 3 8 56

7

1 2

1 2

3

3 4

4

6 7

6 7

8

10

5

5

1

4

2 3 56

7

8 9

10

Gb

AppDir c!k

AppDir a!b

ii iiii

Gaiiii ii

AppDir c!d

AppDir b!k

i iiiii

AppDir a!d

AppDir b!c

i iiiii

AppDir a!c

AppDir b!dGc

Gk

AppDirk!d

Gd

Fig. 6.20 { Ajout du graphe Gk dans la hi�erarchie.

Page 223: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

216 Chapitre 6. Raisonnement par classi�cation dans ReSyn

�Etude des pr�ed�ecesseurs de Gk :

S ?; �A tester ?;

Tantque

�����il existe un graphe Gi non marqu�e, tel que PredI(Gi) = ?

ou 8Gj 2 PredI(Gi); Gj est marqu�e avec la valeur vrai

����� Faire :

Si Gi subsume Gk Alors

marquer Gi avec la valeur vrai ;

S (S n PredI(Gi) ) [ fGig;

d�eterminer �i!k;

AppDir i!k un �el�ement de R(�i!k =�k);

Pour tout Gj 2 �A tester \ Pr�ed�ecesseurs(Gi) Faire :

AppDir j!k f j 2 AppDir j!k t. q. 8 i 2 �i!k; j 6�app i g;

Si AppDir j!k = ? alors �A tester �A tester n fGjg Fsi;

�A tester �A tester [ fGig;

Sinon marquer Gi avec la valeur faux ;

Pour tout Gi 2 �A tester Faire :

Ajouter l'arc (Gi; Gk) dans UH avec l'�etiquette AppDir i!k;

On d�etermine ensuite l'ensemble des successeurs imm�ediats de Gk, suivant la re-

lation � dans la hi�erarchie de graphes. Pour ce faire, on utilise une m�ethode similaire

�a celle qui est pr�esent�ee dans le paragraphe 6.2.3.2.

Pour chaque graphe Gs appartenant �a l'ensemble SuccI(Gk), on calcule un en-

semble AppDir k!s = �k;s o�u �k;s est un �el�ement de R(�k!s =�s). On ajoute ensuite

l'arc (Gk; Gs) dans la hi�erarchie avec l'�etiquette AppDirk!s.

Le fait d'ajouter un nouvel �el�ement Gk dans la hi�erarchie peut remettre en cause

les appariements dirig�es reliant un pr�ed�ecesseur Gi du graphe Gk avec un succes-

seur imm�ediat Gs de Gk. Il convient donc d'�eliminer les appariements de l'ensemble

AppDir i!s qui subsument des �el�ements de �k!s. Notons que le graphe Gi n'est pas

n�ecessairement un pr�ed�ecesseur imm�ediat de Gk.

Comme le montre la �gure 6.20, l'ajout du graphe Gk dans la hi�erarchie peut en-

tra�ner la suppression de certains appariements dirig�es (cf. AppDir b!d et AppDir c!d)

mais ne pas remettre en cause la pr�esence d'autres appariements dirig�es entre des

pr�ed�ecesseurs et des successeurs de Gk (cf. AppDira!d).

Page 224: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 217

La fonction Controler appariements dirig�es pr�esent�ee ci-dessous permet de r�ealiser

ces mises �a jour �eventuelles concernant un successeur Gs de Gk.

Controler appariements dirig�es(Gk, Gs, �k!s) :

Pour tout Gi 6= Gk tel que AppDir i!s 6= ? Faire :

AppDir i!s f i 2 AppDir i!s tel que 8 k 2 �k!s; i 6�app k g;

Si AppDir i!s = ? alors supprimer l'arc (Gi; Gs) de l'ensemble UH;

Pour terminer la mise �a jour de la hi�erarchie, il faut encore d�eterminer les appa-

riements dirig�es concernant les successeurs non imm�ediats de Gk.

Notons SuccNonI(Gk) l'ensemble des successeurs non imm�ediats de Gk.

La premi�ere �etape consiste �a construire un �eventuel ensemble AppDirk!s entre le

graphe Gk et un �el�ement Gs de SuccNonI(Gk). Cet ensemble AppDirk!s contient

tous les appariements d'un ensemble �k;s 2 R(�k!s =�s) qui ne subsument pas l'ap-

pariement d'un successeur de Gk dans le graphe Gs. Parmi tous les appariements

possibles de successeurs de Gk, il su�t de d�eterminer les plus sp�eci�ques par rapport

�a la relation �app. Cet ensemble d'appariements correspond en fait �a l'union des

ensembles AppDir i!s pour tous les graphes Gi tels que Gk � Gi � Gs.

La seconde �etape concerne la suppression des appariements dirig�es reliant un

pr�ed�ecesseur de Gk �a un �el�ement Gs de SuccNonI(Gk). Comme dans le cas des suc-

cesseurs imm�ediats, il faut �eliminer les appariements qui subsument un appariement

de Gk dans Gs.

L'algorithme suivant pr�esente la fonction d'exploration d'un successeur non im-

m�ediat de Gk. Cette fonction est appel�ee pour chacun des �el�ements de SuccNonI(Gk)

qui est �etudi�e suivant un parcours en largeur de la hi�erarchie, de fa�con �a n'examiner

un graphe Gs que lorsque tous ces pr�ed�ecesseurs l'ont �et�e.

�A la �n de cette derni�ere phase, le graphe Gk fait partie de la hi�erarchie de graphes

qui est �a nouveau bien form�ee.

Exploration de Gs :

d�eterminer �k!s;

R �k!s; App ?; AppDirk!s ?;

Pour tout Gi 2 successeurs(Gk) tel que AppDir i!s 6= ? Faire :

App App [ AppDir i!s;

Page 225: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

218 Chapitre 6. Raisonnement par classi�cation dans ReSyn

Tantque R 6= ? Faire :

k un �el�ement de R;

R R n f 0k 2 R tel que 0k �s kg;

Si 8 i 2 App; i 6�app k Alors

AppDirk!s AppDirk!s [ f kg;

Si AppDirk!s 6= ? Alors Ajouter l'arc (Gk; Gs);

Controler appariements dirig�es(Gk, Gs, �k!s);

Si la d�etermination des appariements dirig�es peut para�tre complexe, il faut si-

gnaler que dans le cadre de ReSyn, l'ajout d'un nouveau graphe dans une hi�erarchie

est relativement rare. On peut donc autoriser une certain cout pour l'ajout d'un

nouveau graphe dans la mesure o�u les appariements dirig�es permettent d'am�eliorer

la construction des ensembles �'Ok . On �evite en e�et de rechercher des appariements

de Gk sur des parties du graphe mol�eculaire o�u tout appariement est impossible,

du fait de l'absence d'appariements de graphes Gi tels que Gi � Gk. Or c'est cette

op�eration qui est de tr�es loin la plus utilis�ee dans le syst�eme ReSyn.

En autre int�eret de la d�e�nition des appariements dirig�es concerne la suppression

des appariements inutiles. Consid�erons, par exemple, la hi�erarchie de contextes asso-

ci�ee �a un objectif (cf. �gure 6.21). Comme nous l'avons vu dans le paragraphe 6.4.2,

on ne dispose pas toujours d'une information sur tous les appariements de l'objectif

dans un contexte. On ignore si certains appariements sont favorables ou d�efavorables

pour l'application d'une transformation. Les appariements dirig�es peuvent alors per-

mettre d'�eviter la transmission d'appariements qui ne m�enent �a aucune information

sur des transformations. On ne conserve que les appariements indispensables pour

d�eterminer des appariements de l'objectif qui sont favorables ou d�efavorables �a l'ap-

plication d'une transformation.

Pour mettre en �uvre cette optimisation, il su�t de modi�er l�eg�erement les

m�ethodes de construction des appariements dirig�es. Lorsque l'on ajoute un nouveau

contexte de graphe Gk, on ne consid�ere pas tous les appariements d'un graphe Gi

de la hi�erarchie dans Gk. On se limite aux appariements de �i!k qui subsument un

appariement de l'objectif GO dans Gk pour lequel on conna�t une transformation

favorable ou d�efavorable. Les autres appariements de �i!k n'ont pas besoin d'etre

((transmis)) puisqu'ils conduisent �a des impasses (cf. �gure 6.21).

Page 226: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.5. Appariements dirig�es 219

5431 2

96

5

10

43

8

1

7

N

2

défavorableN

N

N

1

2

3

5

4favorable

10

9

8

7 6

?

1 2 3

1 2 3

3 1245

123

pour T1pour T1

favorable pour T3

AppDir o!c

AppDir c!d

Contexte Gc

Contexte Gd

Objectif GO

Fig. 6.21 { Les appariements dirig�es permettent de ne pas transmettre les apparie-

ments pour lesquels on ne dispose d'aucune information.

Cette simpli�cation des ensembles d'appariements dirig�es permet d'optimiser la

recherche des appariements de contextes dans la mol�ecule en int�egrant des connais-

sances chimiques. Lorsqu'un expert recherche dans une mol�ecule le motif structural

associ�e �a un contexte, il ne consid�ere pas tous les appariements possibles mais simple-

ment ceux qui ont un ((sens chimique)). Suivant le type de transformations recherch�e

ou la nature de la mol�ecule �etudi�ee, un expert peut directement rejeter des appa-

riements qu'il sait ne pouvoir aboutir �a aucune transformation. On retrouve cette

capacit�e dans bon nombre de raisonnements humains d�es que le domaine de d�e�ni-

tion des solutions est trop vaste pour etre explor�e de fa�con exhaustive. Un bon joueur

d'�echecs n'envisage pas tous les coups possibles pour d�eterminer sa strat�egie. Il est

capable de se limiter aux coups susceptibles d'aboutir �a une r�eussite.

Page 227: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

220 Chapitre 6. Raisonnement par classi�cation dans ReSyn

La mod�elisation et la simulation de ce type de raisonnement est un des domaines

de recherche privil�egi�es de l'Intelligence Arti�cielle. En l'absence de m�ethodes e�-

caces pour r�esoudre un probl�eme donn�e, il faut th�eoriquement explorer tout l'espace

de recherche pour trouver la meilleure solution. La dimension de cet espace est sou-

vent trop importante pour permettre une �etude exhaustive. La meilleure fa�con de

limiter cette exploration consiste �a d�eterminer des conditions �ables permettant d'�eli-

miner des parties de l'espace de recherche qui ne m�enent �a aucune solution. Cette

d�emarche permet d'((�elaguer des branches de l'arbre de recherche)) a�n de r�eduire le

temps de calcul. On trouvera dans [Lauri�ere, 1986] une bonne pr�esentation de divers

algorithmes permettant de r�ealiser cet ((�elagage)), en d�eterminant par exemple la voie

de recherche qui semble se rapprocher le plus de la solution (algorithme A* ) ou en

supprimant un branche de l'arbre de recherche lorsqu'elle ne permet pas d'am�eliorer

les solutions sous-optimales d�ej�a obtenues (algorithme Alpha-Beta, ...). En dehors

de ces m�ethodes g�en�erales d'optimisation, on peut utiliser des d�emarches sp�eci�ques

au domaine �etudi�e. La suppression des morphismes inutiles dans les appariements

dirig�es, appara�t ainsi comme une mod�elisation du savoir de l'expert qui peut �elimi-

ner une voie de recherche lorsque son exp�erience lui garantit qu'elle conduira �a une

impasse.

6.6 Conclusion

Nous avons pr�esent�e, dans ce chapitre, les principes du ((raisonnement par clas-

si�cation)). Nous nous sommes plus particuli�erement int�eress�es �a la repr�esentation

hi�erarchique de bases de connaissances compos�ees de graphes. Nous avons pr�esent�e

une notion originale d'((appariements dirig�es)) qui permet d'am�eliorer la recherche

d'appariements des graphes de la base dans un graphe mol�eculaire. Cette notion sug-

g�ere la d�etermination a priori et le stockage d'appariements entre certains graphes

de la base. Connaissant les appariements d'un graphe Gi dans le graphe mol�eculaire

�etudi�e, on peut utiliser les appariements dirig�es pour construire les solutions d'un

graphe Gk plus sp�eci�que que Gi. Cette m�ethode permet de restreindre la recherche

des appariements de Gk en se limitant aux parties du graphe mol�eculaire qui sont

susceptibles de contenir Gk dans la mesure o�u elles contiennent d�ej�a Gi.

Page 228: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

6.6. Conclusion 221

Les appariements dirig�es permettent aussi de repr�esenter des connaissances ex-

pertes d�ecrivant les liens qui existent entre les divers graphes de la base. Lorsqu'un

graphe Gi est plus g�en�eral qu'un graphe Gk, on peut d�e�nir quels sont les apparie-

ments de Gi dans Gk qui ont un sens chimique et ceux qui n'en ont pas.

Quel que soit le type des donn�ees manipul�ees, l'organisation d'une base de connais-

sance est �etroitement li�ee aux op�erations qui sont r�ealis�ees sur cette base. C'est pour-

quoi, on peut envisager d'appliquer la notion d'appariement dirig�es �a tout domaine

n�ecessitant le meme type de recherches sur des graphes que celles r�ealis�ees dans le

cadre deReSyn. Il s'agit principalement de d�eterminer les appariements des graphes

de la base dans un graphe Gm, qui subsument (i.e. ((contiennent))) un appariement

particulier d'un graphe GO donn�e. Pour ce type de recherche, les appariements diri-

g�es permettent de tenir compte de la s�emantique associ�ee aux graphes, en �eliminant

a priori les appariements entre graphes de la base qui ne sont pas valides pour la

th�eorie du domaine. Cette repr�esentation quasi extensionnelle des appariements entre

graphes est souvent la seule qui peut etre utilis�ee pour des domaines r�eels d'appli-

cation. Il est en e�et g�en�eralement impossible de mod�eliser en termes de propri�et�es

de graphe les connaissances qui permettent �a un expert d'optimiser la recherche

d'appariements.

Les appariements dirig�es ne constituent pas pour autant l'unique moyen d'optimi-

ser ces recherches. Comme toujours en informatique, seule une solution combin�ee de

plusieurs d�emarches peut conduire �a un algorithme e�cace, �a d�efaut d'etre optimal.

On peut ainsi utiliser des m�ethodes d'indexation sur les graphes pour restreindre le

nombre de graphes �etudi�es. Ces m�ethodes peuvent employer, par exemple, les r�esul-

tats de l'analyse structurale d'un graphe que nous avons pr�esent�e dans les chapitres 3

et 4 (nombre de cycles pertinents, appartenance �a une cha�ne, etc.). Quoi qu'il en

soit, la gestion d'une base de graphes reste un probl�eme �eminemment complexe de

par la di�cult�e que l'on rencontre �a comparer deux graphes. Il est peu probable

que l'on puisse un jour �elaborer une solution universelle, mais on entrevoit d�ej�a des

solutions sp�eci�ques relativement e�caces, qu'il conviendra toujours d'am�eliorer.

Page 229: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

222 Chapitre 6. Raisonnement par classi�cation dans ReSyn

Page 230: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

Conclusion 223

Conclusion

Dans ce travail, nous nous sommes int�eress�es �a l'analyse structurale d'objets com-

plexes repr�esentables par des graphes. Nous avons choisi pour domaine d'application

le cadre de la synth�ese de mol�ecules en chimie organique. Les �etudes th�eoriques que

nous avons r�ealis�ees ont �et�e mises en �uvre dans ReSyn, un syst�eme d'aide �a la

conception de plans de synth�ese qui o�re une approche tout �a fait originale en syn-

th�ese assist�ee par ordinateur.

Dans un premier temps, nous avons pr�esent�e divers algorithmes permettant de

reconna�tre les �el�ements structuraux d'un graphe mol�eculaire :

� Une part importante de cette th�ese est consacr�ee �a l'�etude des parties cycliques

d'un graphe. Nous avons propos�e une d�e�nition de l'ensemble CP des cycles

pertinents d'une mol�ecule par l'union des bases de cycles de taille minimale.

Nous avons montr�e comment cet ensemble peut etre repr�esent�e par un nombre

polynomial de ((familles)) de cycles qui constituent une partition de CP. Nous

avons propos�e un algorithme polynomial d�eterminant un cycle prototype pour

chaque famille de cycles. �A partir de ces prototypes, on peut �enum�erer tous les

cycles pertinents en O(n jCP j). Nous avons �egalement pr�esent�e un algorithme

polynomial d�eterminant le cardinal de CP ainsi que le nombre de cycles perti-

nents contenant un sommet donn�e, sans n�ecessiter l'�enum�eration de CP . Nous

avons d�e�ni un graphe de cycles pertinents d�ecrivant un syst�eme cyclique en

�etablissant les relations de contigu��t�e entre les cycles.

Page 231: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

224 Conclusion

� Nous avons compl�et�e l'analyse structurale d'un graphe mol�eculaire par la d�eter-

mination d'autres �el�ements structuraux comme les liens de cycles, les cha�nes

carbon�ees et les liens h�et�eroatomiques. Nous avons d�e�ni une repr�esentation abs-

traite d'un graphe de fa�con �a d�ecrire les relations structurelles qui existent entre

les divers motifs per�cus.

� Nous nous sommes �egalement int�eress�es �a l'�etude de la sym�etrie dans un graphe.

Nous avons propos�e un algorithme polynomial construisant une relation d'�equi-

valence entre les sommets potentiellement sym�etriques. Bien que cette relation

ne d�e�nisse qu'une condition n�ecessaire �a l'existence d'un automorphisme asso-

ciant deux sommets, elle n'a jamais �et�e mise en d�efaut sur des bases de donn�ees

de graphes mol�eculaires.

La suite de notre �etude concerne la repr�esentation et l'organisation des �el�ements

structuraux qui ont �et�e reconnus :

� Nous avons montr�e l'int�eret d'utiliser un langage �a objet pour repr�esenter les

�el�ements structuraux �a l'aide d'objets composites partageant leurs composants;

� Nous avons propos�e l'utilisation de hi�erarchies de graphes pour organiser les

connaissances de la synth�ese en chimie organique qui sont repr�esentables par des

motifs structuraux. Nous nous sommes int�eress�es au raisonnement par classi�-

cation sur des hi�erarchies de graphes. Nous avons d�e�ni une relation originale de

subsomption entre appariements de graphes. Cette relation nous a permis d'in-

troduire la notion originale d'appariements dirig�es qui facilite le calcul d'appa-

riements de graphes lors d'un processus de classi�cation. La d�emarche propos�ee

consiste �a exploiter les solutions obtenues lors de la recherche des appariements

d'un graphe G1 dans un graphe cible G, a�n de construire les appariements

d'un graphe G2 dans G, lorsque G2 est plus sp�eci�que que G1 (c'est-�a-dire, G2

((contient))G1). La notion d'appariements dirig�es permet �egalement de repr�esen-

ter des connaissances expertes d�ecrivant les liens de subsomption valides parmi

ceux qui relient deux graphes de la hi�erarchie;

Les perspectives de recherches qui apparaissent �a la �n de ce travail sont multiples.

Nous envisageons d'utiliser les r�esultats de l'analyse structurale dans des do-

maines aussi vari�es que l'organisation de bases de donn�ees chimiques ou le dessin

d'une mol�ecule �a partir de son graphe mol�eculaire.

Page 232: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

Conclusion 225

Le travail de repr�esentation et d'�elaboration de strat�egies de synth�ese, qui a �et�e

�ebauch�e dans le cadre de cette th�ese, doit etre poursuivi. Le recours �a un paradigme

((multi agents)) peut etre envisag�e pour g�erer des points de vue strat�egiques compl�e-

mentaires ou contradictoires. La prise en compte d'expertises multiples et la facult�e

de dialogue et d'explication font �egalement partie des axes de recherche qui sont

toujours d'actualit�e pour les syst�emes de synth�ese assist�ee par ordinateur.

Il serait �egalement int�eressant de compl�eter l'�etude du raisonnement par clas-

si�cation sur des hi�erarchies de graphes en associant le principe des appariements

dirig�es �a d'autres techniques d'optimisation, comme l'utilisation d'index.

Page 233: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

226 Conclusion

Page 234: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

227

Annexe A

Bases de cycles de taille minimale

dans un graphe valu�e

Nous avons �etudi�e, dans le chapitre 3, deux algorithmes relatifs aux bases de

cycles de taille minimale dans un graphe non-orient�e 2-connexe : une variante de

l'algorithme de Horton permettant de calculer une base minimale et un algorithme

construisant l'union des bases de cycles de taille minimale (i.e. l'ensemble des cycles

pertinents).

Cette annexe pr�esente une version de ces algorithmes adapt�ee aux graphes munis

d'une valuation strictement positive. En termes de complexit�e, nous verrons que le

passage �a un graphe valu�e ne modi�e pas leur complexit�e globale. Elle augmente tout

au plus le cout de la construction des ensembles ((initiaux)) de cycles construits par

ces deux algorithmes.

Soit w : E ! R�+ une valuation des aretes du graphe G = (X;E). Si fx; yg est

une arete de G, on appelle ((poids)) de fx; yg la valeur w( fx; yg ).

Pour toute cha�ne � = [x0; x1; :::; xk] de G, nous d�e�nirons le poids de � par :

w(�) =Pk

i=1w( fxi�1; xig )

Si B est un ensemble de cycles, on d�e�nira la ((taille)) (ou le ((poids))) de B par la

somme des poids des cycles qui le composent.

Page 235: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

228 Annexe A. Bases de cycles de taille minimale dans un graphe valu�e

A.1 Cha�nes minimales dans un graphe valu�e

Lorsque le graphe consid�er�e n'est pas valu�e, la recherche d'une cha�ne minimale

entre tout couple de sommets est r�ealis�ee au moyen d'un parcours en largeur �a partir

de chaque sommet. La complexit�e de ce calcul est alors O(nm).

Si le graphe est valu�e, il faut utiliser une m�ethode plus �elabor�ee. De nombreux

travaux traitent de ce sujet. Le lecteur int�eress�e par ce probl�eme pourra trouver dans

[Cormen et al., 1994] une pr�esentation d�etaill�ee des principales m�ethodes de r�esolu-

tion. On peut citer par exemple les algorithmes de [Dijkstra, 1959] et [Floyd, 1962]

qui d�eterminentO(n3) une cha�ne de poids minimal entre deux sommets quelconques.

Nous choisirons de pr�esenter ici l'algorithme de Dijkstra qui est relativement

simple mais reste limit�e aux graphes �a valuation positive.

Cet algorithme d�etermine, �a partir d'un sommet r de d�epart, une cha�ne minimale

P (r; x) pour tout sommet x du graphe. Il utilise une d�emarche ((gloutonne)) mainte-

nant un ensemble S de sommets pour lesquels une cha�ne minimale a �et�e trouv�ee et

rajoutant �a chaque �etape un nouveau sommet �a cet ensemble.

Pour tout sommet x du graphe on d�e�nit la ((distance de r �a x relativement �a S))

par le poids (not�ee distS(r; x)) de la plus courte cha�ne reliant r �a x dans le sous-

graphe de G induit par le sous-ensemble S. Si une telle cha�ne n'existe pas, on pose :

distS(r; x) = +1.

L'algorithme de Dijkstra repose sur l'invariant suivant :

Si x appartient �a S alors

(distS(r; x) = dist(r; x) et

8y 2 X n S; distS(r; y) � dist(r; y) � dist(r; x)

�A chaque �etape, on choisit le sommet z de X nS qui est le plus proche de r, puis

on l'ajoute �a l'ensemble S et on modi�e �eventuellement les distances distS(r; y), pour

tout sommet y de X n S, en consid�erant les chemins minimaux passant par z.

L'ensemble X n S est repr�esent�e par une �le de priorit�e F ordonn�ee suivant

les valeurs distS(r; x). On applique �a F les op�erations suivantes : Initialiser �le(F),

Ajout �le(F, x), Modi�er Priorit�e(F, x, priorit�e) et Extraire Minimum �le(F).

Pour m�emoriser les cha�nes minimales P (r; x), on d�e�nit une fonction �r sur X

telle que : 8x 2 X; �r(x) d�esigne le pr�ed�ecesseur de x dans une cha�ne minimale de

r �a x.

Page 236: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

A.1. Cha�nes minimales dans un graphe valu�e 229

[Algorithme 1]

Initialiser �le(F ); distS(r; r) 0;

Pour tout x 2 X n frg faire :

Si x 2 �(r) Alors

distS(r; x) w( fr; xg ); �r(x) r;

Sinon distS(r; x) +1 FinSi;

Ajout �le(F; x);

Tant que F 6= ? faire :

x Extraire Minimum �le(F );

Pour tout v 2 �(x) Faire :

Si distS(r; v) > distS(r; x) + w( fx; vg ) Alors :

distS(r; v) distS(r; x) + w( fx; vg );

�r(v) x;

Modi�er Priorit�e(F; v; distS(r; v));

L'�etude du voisinage de chaque sommet x est r�ealis�ee en O(m), sans tenir compte

du traitement de la �le de priorit�e. Si F est repr�esent�ee par un tableau [1::n] d'en-

tiers, la recherche du sommet de priorit�e minimale est r�ealis�ee en O(n). Quant �a la

modi�cation de la priorit�e d'un sommet, elle est ex�ecut�ee en O(1). Ce qui donne au

total O(n2) pour l'exploration gloutonne �a partir d'un sommet r. Lorsque la �le de

priorit�e utilise un tas binaire, la complexit�e de toutes les op�erations sur F est en

O(log n). D'o�u, au total O((m+ n) log n).

Le calcul d'une cha�ne minimale entre tout couple de sommet est donc r�ealis�e en

O(n3) ou O(n (m + n) log n). Cette complexit�e peut etre r�eduite �a O(n logn + m)

en repr�esentant la �le par un tas de Fibonacci (cf. [Fredman et Tarjan, 1987]). Ce

r�esultat reste cependant th�eorique dans la mesure o�u les algorithmes utilis�es sont

di�ciles �a mettre en �uvre et leur complexit�e soumise �a un facteur multiplicateur

�elev�e.

Page 237: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

230 Annexe A. Bases de cycles de taille minimale dans un graphe valu�e

A.2 Base de cycles de taille minimale

Dans la section 3.4.3.1, nous avons �etudi�e l'algorithme de [Horton, 1987] permet-

tant de d�eterminer une base de cycles de taille minimale en temps polynomial. Cet

algorithme peut se r�esumer ainsi :

1) 8a; b 2 X construire une cha�ne P (a; b) de poids minimal reliant a �a b.

2) CI ?

3) Pour tout v 2 X faire :

Pour tout fx; yg 2 E faire :

Si P (v; x) \ P (v; y) = fvg

Alors ajouter �a CI le cycle C = P (v; x) + P (v; y) + [x; y]

4) Trier l'ensemble de cycles CI par ordre de poids croissants

5) Extraire de CI une base de poids minimal.

La mise en �uvre des �etapes 4 et 5 est ind�ependante de l'existence ou non d'une

valuation sur les aretes du graphe. Nous ne d�etaillerons donc que les premi�eres �etapes

construisant l'ensemble de cycle CI .

Dans toute la suite de cette annexe, nous reprendrons les d�e�nitions suivantes,

introduites dans le paragraphe 3.4.3.1 :

� Xr = fx 2 X t:q: �(x) � �(r)g o�u � est un ordre d�e�ni sur X

� ancetr(x) =

(a 2 �(r) t:q:

�����il existe une cha�ne minimale dans G, passant par a

et ne traversant que des sommets appartenant �a Xr

)

Soit C un cycle de CI et le sommet de C tel que : �(r) = maxx2C �(x).

Si C contient un sommet x tel que dist(r; x) = w(C)2 , on dit que C est ((pair ))

(w(C) = 2dist(r; x)). Sinon, C est ((impair )) (voir �gure A.1).

Notons p et q les deux sommets de C tels que C est compos�e de deux cha�nes

minimales [r; ap; :::; p] et [r; aq; :::; q], reli�ees par l'arete fp; qg lorsque C est impair ou

par la cha�ne minimale [p; x; q] si C est pair (voir �gure A.1).

Les sommets p et q v�eri�ent : dist(r; p) < w(C)2

et dist(r; q) < w(C)2.

Le lemme relatif aux ancetres s'�ecrit alors :

Lemme 2 Si ancetr(p) \ ancetr(q) 6= ? Alors C n'appartient �a aucune base

minimale.

Page 238: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

A.2. Base de cycles de taille minimale 231

p p

q q

p p

q q

w(C)

2r

p

qy

ya

a

r

q

pya

a a z

y

z

a

x

Cycle Pair Cycle ImpairFig. A.1 {

La d�emonstration de ce lemme ne pr�esente pas de grand int�eret dans la mesure

o�u elle est tr�es similaire �a celle pr�esent�ee page 64 pour un graphe non valu�e.

Notre algorithme construisant CI s'appuie sur celui de Dijkstra que nous avons

�etudi�e dans le paragraphe pr�ec�edent. Les principales modi�cations concernent le

calcul des ensembles d'ancetres et la g�en�eration des cycles.

Les cha�nes minimales sont toujours d�ecrites par une fonction �r d�e�nie sur X.

Cependant, a�n d'�eviter la duplication des cycles cr�e�es, nous ne retiendrons que les

cha�nes minimales traversant exclusivement des sommets de Xr. Si pour un sommet

x donn�e, il n'existe pas de cha�ne minimale P (r; x) v�eri�ant cette condition, nous

poserons : �r(x) = ".

�A chaque �etape de l'algorithme glouton, un nouveau sommet est explor�e. En

�etudiant son voisinage, on peut atteindre trois types de sommets comme le montre

la �gure A.2 :

{ si dist(r; v) � dist(r; x) + w(fx; vg) alors v n'est pas encore explor�e. Puisque

[r; :::; �r(x); x; v] est une cha�ne minimale, l'ensemble ancetr(v) est compl�et�e par

les ancetres de x.

{ si dist(r; x) = dist(r; v) + w(fx; vg) et v 6= �r(x) alors fx; vg est une arete de

fermeture de cycle, relativement �a l'arbre recouvrant d�e�ni par �r. Un cycle

pair C = P (r; x) + P (r; v) + fx; vg est alors cr�e�e si les cha�nes ne contiennent

que des sommets de Xr et si ancetr(v) \ ancetr(�r(x)) = ?.

{ si dist(r; x) < dist(r; v)+w(fx; vg) un cycle impair peut alors etre cr�e�e suivant

les memes conditions (i.e. ancetr(v) \ ancetr(x) = ?).

Page 239: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

232 Annexe A. Bases de cycles de taille minimale dans un graphe valu�e

sommets

explorésdéjà

(x)

x v1r

v3

v2

Cycle Pair

Cycle Impair rρ

Fig. A.2 { Exploration du sommet x lors d'un parcours glouton �a partir de r.

[Algorithme 2]

Pour tout r 2 X faire :

Initialiser �le(F); distS(r; r) 0; �r(r) r; ancetr(r) ?;

Pour tout v 2 X n (frg [ �(r)) Faire :

distS(r; v) = +1; �r(v) "; Ajout File(F; v; +1);

Pour tout v 2 �(r) Faire :

ancetr(v) fvg; distS(r; v) w(fr; vg); Ajout File(F; v; distS(r; v));

Si v 2 Xr Alors �r(v) r Sinon �r(v) " FinSi;

Tantque F \ Xr 6= ? Faire :

x Extraire Minimum File(F );

Pour tout v 2 �(x) Faire :

Si distS(r; v) � distS(r; x) + w(fx; vg) Alors :

Si distS(r; v) 6= distS(r; x) + w(fx; vg) Alors :

distS(r; v) distS(r; x) + w(fx; vg); �r(v) ";

Modi�er Priorit�e(F; v; distS(r; v)); ancetr(v) ?;

ancetr(v) ancetr(v) [ ancetr(x);

Si �r(x) 6= " et v 2 Xr Alors �r(v) x FinSi;

Sinon Si �r(x) 6= " et v 6= �r(x) et �r(v) 6= " Alors :

f v est d�ej�a explor�e et fx; vg est une arete de fermeture de cycle g

Si0BBBB@

( distS(r; v) + w(fx; vg) = distS(r; x) et

ancetr(v) \ ancetr(�r(x)) = ? ) fCycle Pairg

ou ( distS(r; v) + w(fx; vg) > distS(r; x) et

ancetr(v) \ ancetr(x) = ? ) fCycle Impairg

1CCCCA

Alors : Ajouter �a CI le cycle C = P (r; x) + P (r; v) + fx; vg;

Page 240: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

A.3. Union des bases de cycles de taille minimale 233

Cet algorithme r�ealise simultan�ement trois calculs :

1. d�etermination d'une cha�ne minimale pour tout couple de sommets,

2. d�etermination des ensembles ((ancetr(x))),

3. cr�eation des cycles de CI .

Comme nous l'avons vu pr�ec�edemment, la premi�ere partie peut etre r�ealis�ee,

comme dans l'algorithme de Horton, en O(n3).

La seconde partie n�ecessiteO(P

r2Xmd(r) ) = O(m2) = O(nm �d(G)) op�erations,

o�u �d(G) d�esigne le degr�e moyen de G. Dans la troisi�eme partie, les cycles ne sont pas

�enum�er�es mais stock�es sous la forme d'un triplet r; x; v en supposant que la fonction

�r est conserv�ee pour tout sommet r du graphe. La complexit�e de cette �etape vaut

donc elle aussi O(P

r2X md(r) ).

La complexit�e du calcul de l'ensemble CI par notre variante est donc en O(m2 +

n3). Elle di��ere l�eg�erement de la complexit�e en O(m2) obtenue dans le chapitre 3

pour un graphe non valu�e. La di��erence entre ces deux r�esultats ne concerne que la

recherche des cha�nes minimales qui varie de O(n3) �a O(nm) suivant que le graphe

est valu�e ou non.

Nous ne reviendrons pas sur la comparaison entre notre m�ethode en O(nm �d(G))

et celle de Horton qui est en O(nm�(G)) pour la cr�eation de cycles �el�ementaires (cf.

page 65). Notre variante reste plus e�cace pour des graphes dont le degr�e moyen est

born�e. Quant �a la r�eduction du cardinal de CI par le biais des ((ancetres)), elle permet

le meme type d'am�eliorations que le graphe soit valu�e ou non.

A.3 Union des bases de cycles de taille minimale

Nous avons d�e�ni, dans le paragraphe 3.7.2, l'ensemble des cycles pertinents (not�e

CP) par l'union des bases de cycles de taille minimale.

L'ensemble CP est partitionn�e en un nombre polynomial (O(m2) ) de ((familles

de cycle)). Chaque famille F(Crp;q) est d�e�nie �a partir d'un cycle prototype Cr

p;q.

En reprenant les notations pr�ec�edentes, on suppose que ce cycle est compos�e de

deux cha�nes minimales [r; ::; p] et [r; ::; q] telles que dist(r; p) � dist(r; q) < 12w(Cr

p;q).

Ces cha�nes sont reli�ees par l'arete fp; qg lorsque Crp;q est impair ou par la cha�ne

minimale [p; x; q] si le cycle est pair (avec dist(r; x) = 12w(C

rp;q) ).

Page 241: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

234 Annexe A. Bases de cycles de taille minimale dans un graphe valu�e

On d�esigne toujours par r le sommet de Crp;q tel que �(r) = minx2Cr

p;q�(x).

La famille F(Crp;q) est alors d�e�nie par :

F(Crp;q) =

8>><>>:C

0 2 CP

��������C 0 peut etre obtenu �a partir de Cr

p;q en rempla�cant

[r; :::; p] et [r; :::; q] par des cha�nes minimales �equivalentes

ne traversant que des sommets appartenant �a Vr

9>>=>>;

p,q

21

C’

rC

p

qr

q

p

rx

w( C21 r

p,q ) w( C )p,qr

Cycle Impair Cycle Pair

Tous les cycles de F(Crp;q) ne di��erent que par les cha�nes minimales P (r; p) et

P (r; q) qu'ils contiennent. Par ailleurs, on peut ais�ement v�eri�er le lemme suivant :

Lemme 3 �Etant donn�e un ordre � sur les sommets, il existe une unique partition

de CP en famille de cycles et tout cycle pertinent C appartient �a une et une

seule famille F(Crp;q).

Comme dans le cas d'un graphe non valu�e, on d�esigne par H(r; p) le sous-graphe

partiel de G engendr�e par l'union des cha�nes minimales de r �a p qui ne traversent

que des sommets de Vr.

Chaque famille F(Crp;q) est alors repr�esent�ee par le triplet (C

rp;q; H(r; p); H(r; q)).

Pour construire CP , nous devons trouver un prototype de chaque famille. Cet

ensemble de prototypes est extrait d'un ensemble initial C0

I construit de mani�ere

analogue �a l'ensemble CI du paragraphe pr�ec�edent.

Si l'ensemble C0

I contient un et un seul prototype de chaque famille, l'ensemble

des prototypes d�e�nissant toutes les familles de CP est alors �egal �a CP \ C0

I .

Cette propri�et�e n'est pas v�eri��ee pour l'ensemble CI . Consid�erons en e�et un

cycle pertinent Crp;q. Ce cycle doit etre construit lors de la recherche gloutonne issue

de r de l'algorithme 2. On peut alors distinguer trois cas :

� Si fp; qg existe (voir 1 ) alors elle constitue une arete de fermeture de cycle par

rapport �a l'arbre recouvrant induit par la fonction �r. Un prototype de F(Crp;q)

sera cr�e�e lors de l'exploration du dernier sommet explor�e parmi p et q.

Page 242: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

A.3. Union des bases de cycles de taille minimale 235

� Si l'arete fp; qg n'existe pas, le cycle Crp;q est pair et contient un sommet x tel

que dist(r; x) = 12w(Cr

p;q) :� si toutes les cha�nes minimales de r �a x (incluses dans H(r; x)) traversent p

ou q, alors ou bien p = �r(x) ou bien q = �r(x). Donc un cycle de F(Crp;q)

doit etre cr�e�e puisque fq; xg, ou bien fp; xg, est une arete de fermeture de

cycle (cf. 2 ).

� sinon, il existe une cha�ne minimale (r; :::; p0; x), incluse dans H(r; x) tel

que p0 6= p et p0 6= q. Supposons que �r(x) soit �egal �a p0. Lors de l'explo-

ration de x, on cr�eera les deux cycles obtenus en associant l'arete fp0; xg

avec d'une part l'arete fq; xg et d'autre part l'arete fp; xg. Par contre,

puisque fq; xg et fp; xg sont toutes les deux des aretes de fermeture de

cycle, aucun cycle de la famille F(Crp;q) ne sera cr�e�e (voir 3 ).

21 3

p

q

r r

p

q

x p’

q

p

xr

Il faut donc modi�er l'algorithme 2 pour que C0

I int�egre un cycle de chaque famille.

Comme dans le chapitre 3, on d�e�nit l'ensemble des ((p�eres)) d'un sommet x par :

p�eresr(x) =

(z 2 �(x) \ Xr tels que

�����il existe au moins une cha�ne minimale

[r; :::; z; x] incluse dans H(r; x)

)

Un cycle est alors construit pour toute paire de sommets P , q appartenant �a p�eresr(x)

et tels que ancetr(p) \ ancetr(q) = ? et fp; qg 62 E.

Dans le section 3.7.5, nous avons pr�esent�e quelques m�ethodes permettant de d�e-

terminer le nombre de cycles pertinents �a partir de l'ensemble des cycles prototypes et

sans devoir �enum�erer tout CP. Ces m�ethodes restant valables dans le cas des graphes

valu�es, nous devons d�eterminer la fonction r sur laquelle elles s'appuient.

Rappelons que pour tout sommet x, r(x) d�esigne le nombre de cha�nes minimales

reliant r �a x en ne passant que par des sommets de Xr. La fonction r v�eri�e la

propri�et�e suivante :

8x 2 Xr; r(x) =X

z2 p�eresr(x)

r(z)

Page 243: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

236 Annexe A. Bases de cycles de taille minimale dans un graphe valu�e

Nous pouvons maintenant pr�esenter l'algorithme construisant C0

I . Les principales

di��erences par rapport �a l'algorithme 2 concernent la g�en�eration des cycles et la

d�etermination des ensembles p�eresr et des fonctions �r.

[Algorithme 3]

Pour tout r 2 X Faire :

Initialiser �le(F); distS(r; r) 0; �r(r) r; ancetr(v) ?;

p�eresr(r) ?; r(r) 1;

Pour tout v 2 X n (frg [ �(r)) Faire :

distS(r; v) = +1; Ajout File(F; v; +1); p�eresr(v) ?

Pour tout v 2 �(r) Faire :

ancetr(v) fvg; distS(r; v) w(r; v); Ajout File(F; v; distS(r; v));

Si v 2 Xr Alors p�eresr(v) frg Sinon p�eresr(v) ? FinSi;

Tantque F \ Xr 6= ? Faire :

x Extraire Minimum File(F );

Si p�eresr(x) = ? Alors �r(x) " Sinon �r(x) un sommet de p�eresr(x);

r(x) P

z2p�eresr(x) r(z) ;

Pour tout v 2 �(x) Faire :

Si distS(r; v) � distS(r; x) + w(fx; vg) Alors :

Si distS(r; v) 6= distS(r; x) + w(fx; vg) Alors :

distS(r; v) distS(r; x) + w(fx; vg); Modi�er Priorit�e(F; v; distS(r; v));

p�eresr(v) ?; ancetr(v) ?;

ancetr(v) ancetr(v) [ ancetr(x);

Si �r(x) 6= " et v 2 Xr Alors p�eresr(v) p�eresr(v) [ fxg FinSi;

Sinon

Si

distS(r; v) + w(fx; vg) > distS(r; x) et �r(x) 6= "

et �r(v) 6= " et ancetr(v) \ ancetr(x) = ?)

!

Alors : Ajouter �a CI le cycle impair C = P (r; x) + P (r; v) + (x; v);

Pour toute paire de sommets p; q de p�eresr(x) tels que

( �r(p) 6= " et �r(q) 6= " et ancetr(p) \ ancetr(q) = ? )

Faire : Ajouter �a CI le cycle pair C = P (r; p) + P (r; q) + (p; x; q);

Page 244: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

A.3. Union des bases de cycles de taille minimale 237

Comme pour un graphe non valu�e, le nombre de cycles impairs cr�e�es est inf�erieur

�a � n et le nombre de cycles pairs est major�e par la valeurP

r2XP

x2Xrd(x)2 qui est

inf�erieure �a m2 si l'ordre � v�eri�e : 8x; y 2 X; �(x) � �(y)) d(x) � d(y).

La complexit�e de l'algorithme 3 se d�eduit en partie de celle de l'algorithme 2 qui

est en O(m2 + n3). La principale augmentation concerne la g�en�eration des cycles

pairs. Un cycle pair est cr�e�e pour toute paire de sommets p; q 2 p�eresr(x) o�u x

est un sommet explor�e durant la recherche gloutonne issue de r. La complexit�e de

cette �etape se d�eduit du nombre de cycles cr�e�es (i.e. O(m2)) et du temps de calcul

n�ecessaire pour le test ancetr(p) \ ancetr(q) = ?, soit O(d(r)) � dmax. Si la fonction

�r est conserv�ee, les cycles peuvent etre m�emoris�es sous la forme d'un quadruplet

(r; p; q; x) sans qu'il soit n�ecessaire de les �enum�erer. On peut donc construire C0

I en

O(dmaxm2) op�erations.

Lemme 4 C0

I contient un et un seul prototype de chaque famille de cycles.

La d�emonstration de ce lemme est comparable �a celle pr�esent�ee dans le chapitre 3.

Elle repose sur le fait qu'une famille de cycles F(Crp;q) est parfaitement d�ecrite par

les trois sommets r, p et q si le cycle est impair ou par quatre sommets r, p, q et x

si Crp;q est pair. Or l'algorithme garantit la cr�eation d'un et un seul cycle pour une

telle combinaison de sommets, que le cycle correspondant soit pertinent ou non.

En ce qui concerne la recherche des cycles prototypes, elle consiste, comme dans le

cas de graphes non valu�es, �a d�eterminer l'ensembleC 2 CP \ C0

I . Ce calcul, consistant

�a parcourir C0

I par ordre croissant du poids des cycles, peut etre r�ealis�e en O(�m3)

(cf. page 92).

Quant �a l'�enum�eration de CP , �a partir de CP \ C0

I , elle est r�ealis�ee comme dans

le chapitre 3 en O(n jCP j).

Page 245: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

238 Annexe A. Bases de cycles de taille minimale dans un graphe valu�e

Page 246: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

R�EF�ERENCES BIBLIOGRAPHIQUES 239

R�ef�erences bibliographiques

[Allinger et al., 1975] N.L Allinger, M.P. Cava, D.C. De Jongh, C.R. Johnson, N.A. Lebel

et C.L. Stevens. Chimie Organique. Ediscience / McGraw-Hill, 1975.

[Bador et al., 1992] P. Bador, M.N. Surrel et J.P. Lardy. Les syst�emes informatiques de

recherche d'information sur les r�eactions chimiques et les syst�emes de synth�ese assist�ee

par ordinateur. New J. Chem., 16:413{423, 1992.

[Balducci et Pearlman, 1994] R. Balducci and R. S. Pearlman. E�cient exact solution of

the ring perception problem. J. Chem. Inf. Comput. Sci., 34(4):822{831, 1994.

[Baumer et al., 1991] L. Baumer, G. Sala and G. Sello. Ring perception in organic struc-

tures: A new algorithm for �nding SSSR. Computers Chem., 15(4):293{299, 1991.

[Berge, 1973] C. Berge. Graphes et Hypergraphes. Dunod, Paris, 1973.

[Bessi�ere et al., 1995] C. Bessi�ere, E.C. Freuder and J.-C. R�egin. Using inference to re-

duce arc consistency computation. In: IJCAI'95, Proceedings 14th International Joint

Conference on Arti�cial Intelligence, pp. 592{598, Montr�eal, 1995.

[Bessi�ere, 1994] C. Bessi�ere. Arc-consistency and arc-consistency again. Arti�cial Intelli-

gence, 65(1):179{190, 1994.

[Bouroche et Saporta, 1987] J.M. Bouroche et G. Saporta. L'analyse de donn�ees. PUF,

Paris, 1987.

[Brachman et al., 1983] R. J. Brachman, R. E. Fikes and H. J. Levesque. KRIPTON: a

functional approach to knowledge representation. Computer, 16:67{73, 1983.

[Brachman et al., 1991] R. J. Brachman, D. L. McGuiness, P. F. Patel-Schneider, L. A.

Resnick and A. Borgida. Living with CLASSIC: when and how to use KL-ONE-like

languages. In: Principles of semantic networks: explorations in the representation of

Page 247: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

240 R�EF�ERENCES BIBLIOGRAPHIQUES

knowledge, J. Sowa, ed., chapter 14, pp. 401{456. Morgan Kaufmann, San Mateo, Ca-

lifornie, 1991.

[Brachman et Schmolze, 1985] R. J. Brachman and J. G. Schmolze. An overview of the

KL-ONE knowledge representation system. Cognitive Science, 9:171{216, 1985.

[Cahn et al., 1966] R.S. Cahn, C.K. Ingold and V. Prelog. Speci�cation of molecular

chirality. Angew. Chem. Int. Ed. Engl., 5:385{415, 1966.

[Carr�e et Geib, 1990] B. Carr�e et J-M Geib. The point of view notion for multiple inhe-

ritance. In: Proceedings of OOPSLA-ECOOP'90, pp. 312{321, Ottawa, Canada, 1990.

ACM SIGPLAN Notices.

[Cauchy, 1813] A. L. Cauchy. Recherche sur les poly�edres. J. Ecole Polytechnique,

9(16):68{86, 1813.

[Cayley, 1874] A. Cayley. On the mathematical theory of isomers. Philosophical Magazine,

47:444{447, 1874.

[Chailloux et al., 1986] J. Chailloux, M. Devin, F. Dupont, J-M. Hullot, B. Serpette et

J. Vuillemin. LE LISP, Manuel de r�ef�erence. INRIA, 1986.

[Chiba et al., 1985] N. Chiba, T. Nishizeki, S. Abe and T. Ozawa. A linear algorithm for

embedding planar graphs using PQ-trees. Journal of computer and system sciences,

30:54{76, 1985.

[Chiba et Nishizeki, 1985] N. Chiba and T. Nishizeki. Arboricity and subgraph listing

algorithms. SIAM J. Comput., 14:210{223, 1985.

[Corey et al., 1985] E. J. Corey, K. A. Long et S. D. Rubenstein. Computer-assisted

analysis in organic synthesis. Science, 228:408{418, 1985.

[Corey et Cheng, 1989] E. J. Corey and X.-M. Cheng. The logic of chemical synthesis.

Wiley-InterScience, New York, 1989.

[Corey et Petersson, 1972] E. J. Corey and G. A. Petersson. An algorithm for machine

perception of synthetically signi�ant rings in complex organic structures. J. Am. Chem.

Soc., 92(2):460{465, 1972.

[Corey et Wipke, 1969] E. J. Corey and W. T. Wipke. Computer-assisted analysis of

complex organic syntheses. Science, 166:178{192, 1969.

Page 248: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

R�EF�ERENCES BIBLIOGRAPHIQUES 241

[Corey, 1967] E. J. Corey. General methods for the construction of complex molecules.

Pure & Appl. Chem., 14:19{37, 1967.

[Cormen et al., 1994] T. Cormen, C. Leiserson et R. Rivest. Introduction �a l'algorith-

mique. Dunod, Paris, 1994.

[Corneil et Gotlieb, 1971] D. G. Corneil and C. C. Gotlieb. An e�cient algorithm for

graph isomorphism. J. ACM, 17(1), 1971.

[Corneil et Kirkpatrick, 1980] D. G. Corneil and D. G. Kirkpatrick. A theoretical analysis

of various heuristics for the graph isomorphism problem. SIAM J. Comput., 9(2):281{

297, May 1980.

[Cribb et al., 1981] D.W. Cribb, R.D. Ringeisen and D.R. Shier. On cycle bases of a

graph. Congr. Numer., 32:221{229, 1981.

[Custer, 1986] R.H. Custer. Mathematical statements about the revised CIP-system.

match, 21:3{31, 1986.

[Davis, 1992] I.J. Davis. A fast radix sort. The Computer Journal, 35(6):636{642, 1992.

[Deo et al., 1982] N. Deo, G. M. Prabhu and M. S. Krishnamoorthy. Algorithms for

generating fundamental cycles in a graph. ACM Trans. Math. Software, 8:26{42, 1982.

[Dietz, 1995] A. Dietz. Yet another representation of molecular structure. J. Chem. Inf.

Comput. Sci., 35(5):787{802, 1995.

[Dijkstra, 1959] E. W. Dijkstra. A note on two problems in connection with graphs.

Numerische Mathematik, 1:269{271, 1959.

[Dixon et Goodman, 1976] E. T. Dixon and S. E. Goodman. An algorithm for the longest

cycle problem. Networks, 6:139{149, 1976.

[Dogane et al., 1992] I. Dogane, T. Takabatake et M. Bersohn. Computer-executed syn-

thesis planning, a progress report. Recl. Trav. Chim., Pays-Bas, 111:291{296, 1992.

[Downs et al., 1989a] G. M. Downs, V. J. Gillet, J. D. Holliday and M. F. Lynch. Re-

view of ring perception algorithms for chemical graphs. J. Chem. Inf. Comput. Sci.,

29(3):172{187, 1989.

Page 249: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

242 R�EF�ERENCES BIBLIOGRAPHIQUES

[Downs et al., 1989b] G. M. Downs, V. J. Gillet, J. D. Holliday and M. F. Lynch. Theore-

tical aspects of ring perception and development of the Extended Set of Smallest Rings

concept. J. Chem. Inf. Comput. Sci., 29(3):187{206, 1989.

[Downs et al., 1989c] G. M. Downs, V. J. Gillet, J. D. Holliday and M. F. Lynch. Com-

puter storage and retrieval of generic chemical structures in patents. 9. An algorithm

to �nd the extended set of smallest rings in structurally explicit generics. J. Chem. Inf.

Comput. Sci., 29(3):207{214, 1989.

[Dubois et al., 1975] J.E. Dubois, D. Laurent, A. Panaye et Y. Sobel. Syst�eme Darc :

concept d'hyperstructure formelle. C. R. Acad. Sc. Paris, S�erie C - 851, 1975.

[Dubois, 1976] J.E. Dubois. Ordered chromatic graph and limited environment concept.

In: Chemical applications of graph theory, A.T. Balaban, ed., chapter 11, pp. 333{370.

Academic Press, 1976.

[Dubois, 1986] D. Dubois. La compr�ehension de phrases : Repr�esentations s�emantiques et

processus. Th�ese de doctorat d'�Etat, Universit�e Paris VIII, 1986.

[Ducournau et Habib, 1989] R. Ducournau et M. Habib. La multiplicit�e de l'h�eritage dans

les langages �a objets. Techniques et Sciences Informatiques, 8(1):41{62, 1989.

[Ducournau et Habib, 1991] R. Ducournau and M. Habib. Masking and con icts, or to

inheritis is not to own! In: Inheritance hierarchies in knowledge representation and

programming languages, M. Lenzerini, D. Nardi and M. Simi, ed. John Wiley & Sons

Ltd, Chichester, West Sussex, 1991.

[Ducournau, 1989] R. Ducournau. Y3. Langage �a objets, Manuel de r�ef�erence. Sema

Group, Montrouge, 1989.

[Elk, 1984] S. B. Elk. Derivation of the principle of smallest set of smallest rings from

Euler's polyhedron equation and a simpli�ed technique for �nding this set. J. Chem.

Inf. Comput. Sci., 24(4):203{206, 1984.

[Elk, 1985] S. B. Elk. Topologically di�erent models to be used as the basis for ring

compound taxonomy. J. Chem. Inf. Comput. Sci., 25(1):17{22, 1985.

[Euler, 1752] L. Euler. Elementa doctrinae solidorum. Novi. Comm. Acad. Sci. Imp.

Petropol., 4:109{140, 1752.

Page 250: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

R�EF�ERENCES BIBLIOGRAPHIQUES 243

[Fan et al., 1993] B. T. Fan, A. Panaye, J-P. Doucet and A. Barbu. Ring perception. a

new algorithm for directly �nding the Smallest Set of Smallest Rings from a connection

table. J. Chem. Inf. Comput. Sci., 33(5):657{662, 1993.

[Ferber, 1989] J. Ferber. Objets et agents : une �etude des structures de repr�esentation et

de communications en Intelligence Arti�cielle. Th�ese de doctorat d'�Etat, Universit�e de

Paris 6, Juin 1989.

[Finin, 1986] T. W. Finin. Interactive classi�cation: a technique for acquiring and main-

taining knowledge bases. Proc. IEEE, 74:1414{1421, 1986.

[Fleischner et Woeginger, 1992] H. Fleischner and GJ Woeginger. Detecting cycles

through three �xed vertices in a graph. Inf. Process. Lett., 42(1):29{33, 1992.

[Floyd, 1962] R.W. Floyd. Algorithm 97 : shortest path. Comm. ACM, 5(6):345, 1962.

[Fredman et Tarjan, 1987] M. L. Fredman and R. E. Tarjan. Fibonacci heaps and their

uses in improved network optimization algorithms. J. ACM, 34(3):596{615, 1987.

[Fr�erejacque, 1939] M. Fr�erejacque. Condensation d'une mol�ecule organique. Bull. Soc.

Chim. Fr., (6):1008{1011, 1939.

[Fujita, 1987] S. Fujita. A new algorithm for selection of synthetically important rings :

the Essential Set of Essential Rings for organic structures. J. Chem. Inf. Comput. Sci.,

28(2):78{82, 1987.

[Garey et Johnson, 1979] M. R. Garey and D. S. Johnson. Computers and Intractability:

A guide to the theory of NP-completness. W. H. Freeman, San Francisco, 1979.

[Gascuel et Gu�enoche, 1990] O. Gascuel et A. Gu�enoche. Aspects de l'interface entre

symbolique et num�erique. In: Actes des 3�emes journ�ees du GRECO-PRC IA, pp. 91{

112, Paris, 1990. Herm�es.

[Gasser, 1991] L. Gasser. Social conceptions of knowledge and action: DAI foundations

and open systems semantics. Arti�cial Intelligence, 47:107{138, 1991.

[Gasteiger et al., 1992] J. Gasteiger, W.D. Ihlenfeldt et P. R�ose. A collection of computer

methods for synthesis design and reaction prediction. Recl. Trav. Chim., Pays-Bas,

111:270{290, 1992.

Page 251: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

244 R�EF�ERENCES BIBLIOGRAPHIQUES

[Gasteiger et Jochum, 1979] J. Gasteiger and C. Jochum. An algorithm for the perception

of synthetically important rings. J. Chem. Inf. Comput. Sci., 19(1):43{48, 1979.

[Gelernter et al., 1973] H. Gelernter, N. S. Shridharan, A. J. Hart et S. C. Yen. The

discovery of organic synthesis routes by computer. Top. Curr. Chem., 41:113{150,

1973.

[Gelernter et al., 1990] H. Gelernter, J. R. Rose and C. Chen. Bulding and re�ning a

knowledge base for synthetic organic chemistry via the methodology of inductive and

deductive machine learning. J. Chem. Inf. Comput. Sci., 30(4):492{504, 1990.

[Gibbs, 1969] N. Gibbs. A cycle generation algorithm for �nite undirected linear graphs.

J. ACM, 16:564{568, 1969.

[Goldberg et Robson, 1983] A. Goldberg and D. Robson. Smalltalk-80, the language and

its implementation. Addison Wesley, Massachusetts, 1983.

[Guinaldo, 1995a] O. Guinaldo. Filtering and hashing techniques for the search for iso-

morphic conceptual graphs. In: Proc. 4th Workshop on Peirce and tools for Conceptual

Graphs, pp. 58{69, Santa Cruz, CA, USA, 1995.

[Guinaldo, 1995b] O. Guinaldo. Techniques d'indexation pour aider �a la classi�cation

dans le mod�ele des graphes conceptuels. In: Actes LMO'95, pp. 53{66, Nancy, 1995.

[Hall, 1989] R. P. Hall. Computational approaches to analogical reasoning: a comparative

analysis. Arti�cial Intelligence, 39:39{120, 1989.

[Hart et al., 1968] P. Hart, N.J. Nilsson et B. Raphael. A formal basis for the heuristic

determination of minimum cost paths. IEEE Trans. Systems Man Cybernet, 4:100{107,

1968.

[Hartvigsen et Mardon, 1991] D. Hartvigsen and R. Mardon. Cycle basis from orderings

and coverings. Discrete Mathematics, 94(2):81{94, 1991.

[Hartvigsen et Zemel, 1989] D. Hartvigsen and E. Zemel. Is every cycle basis fundamen-

tal? Journal of Graph Theory, 13(1):117{137, 1989.

[Haton et al., 1991] J.P. Haton, N. Bouzid, F. Charpillet, M.C. Haton, B. Laasri,

H. Laasri, P. Marquis, T. Mondot et A. Napoli. Le raisonnement en Intelligence Arti-

�cielle. InterEditions, Paris, 1991.

Page 252: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

R�EF�ERENCES BIBLIOGRAPHIQUES 245

[Hendrickson et al., 1984] J. B. Hendrickson, D. L. Grier and A. G. Toczko. Condensed

structure identi�cation and ring perception. J. Chem. Inf. Comput. Sci., 24(4):195{203,

1984.

[Hendrickson et Parks, 1992] J. B. Hendrickson et C. A. Parks. A program for the forward

generation of synthetic routes. J. Chem. Inf. Comput. Sci., 32:209{215, 1992.

[Hendrickson, 1986] J. B. Hendrickson. Approaching the logic of synthesis design. Acc.

Chem. Res., 19:274{281, 1986.

[Hendrickson, 1990] J. B. Hendrickson. Organic synthesis in the age of computers. Angew.

Chem. Int. Ed. Engl.., 29:1286{1295, 1990.

[Holton et al., 1994] R.A Holton, C. Somoza, H.B. Kim, F. Liang, R.J. Biediger, P.D.

Boatman, M. Shindo, C.C. Smith, S. Kim, N. Nadizadeh, Y. Suzuki, C. Tao, P. Vu,

S. Tang, P. Zhang, K.K. Murthi, L.N. Gentile and J.H. Liu. First total synthesis of

taxol. J. Am. Chem. Soc., 116:1597{1600, 1994.

[Hopcroft et Wong, 1974] J. E. Hopcroft and J. K. Wong. Linear time algorithm for

isomorphism of planar graphs (preliminary report). In: Proc. 6th Ann. ACM Symp.

on Theory of Computing, pp. 172{184, New York, 1974. Association for Computing

Machinery.

[Horton, 1987] J. D. Horton. A polynomial-time algorithm to �nd the shortest cycle basis

of a graph. SIAM J. Comput., 16(2):358{366, 1987.

[Ireland, 1969] R. E. Ireland. Organic Synthesis. Prentice-Hall, Inc., N. J., 1969.

[Kirchho�, 1847] G. Kirchho�. �Uber die Au �osung der Gleichungen, auf welche man bei

der Untersuchung der linearen Verteilung galvanischer Str�ome gef�uhrt wird. Poggendorf

Ann. Physik, 72:497{508, 1847. English translation in Trans. Inst. Radio Engrs., CT-

5:4{7, 1958.

[Konstantinova et Skorobogatov, 1995] E. V. Konstantinova et V. A. Skorobogatov. Mo-

lecular hypergraphs: The new representation of nonclassical molecular structures with

polycentric delocalized bonds. J. Chem. Inf. Comput. Sci., 35:472{478, 1995.

[Lauren�co et al., 1990] C. Lauren�co, M. Py, A. Napoli, J. Quinqueton et B. Castro. Re-

pr�esentation de connaissance en synth�ese organique �a l'aide d'un langage �a objets. New

J. Chem., 14(12):921{931, 1990.

Page 253: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

246 R�EF�ERENCES BIBLIOGRAPHIQUES

[Lauren�co, 1985] C. Lauren�co. Synth�ese Organique Assist�ee par Ordinateur. Th�ese de

doctorat d'�Etat, Universit�e Louis Pasteur (Strasbourg I), Septembre 1985.

[Lauri�ere, 1986] J-L. Lauri�ere. Intelligence Arti�cielle : r�esolution de probl�emes par

l'Homme et la machine. Eyrolles, Paris, 1986.

[Leach et al., 1990] A. R. Leach, D. P. Dolata and K. Prout. Automated conformational

analysis and structure generation: Algorithms for molecular perception. J. Chem. Inf.

Comput. Sci., 30(3):316{324, 1990.

[Levesque et Brachman, 1987] H. J. Levesque and R. J. Brachman. Expressiveness and

tractability in knowledge representation and reasoning. Computational Intelligence,

3:78{93, 1987.

[Levinson, 1985] R. A. Levinson. A self-organizing retrievial system for graphs. PhD

thesis, University of Texas, Austin, 1985.

[Levinson, 1992] R. A. Levinson. Pattern associativity and retrievial of semantic networks.

Computers Math. Applic., 23(6-9):573{600, 1992.

[Lipkis, 1982] T. A. Lipkis. A KL-ONE classi�er. In: Proc. of the 1981 KL-ONE workshop,

pp. 128{145, 1982.

[Luks, 1982] E. Luks. Isomorphism of graphs of bounded valence can be tested in poly-

nomial time. Journal of Computer and System Science, 25:42{65, 1982.

[Mari~no Drews, 1993] O. Mari~no Drews. Raisonnement classi�catoire dans une repr�esen-

tation �a objets multi-points de vue. Th�ese de doctorat, Universit�e Grenoble I, 1993.

[Masini et al., 1989] G. Masini, A. Napoli, D. Colnet, D. L�eonard et K. Tombre. Les

langages �a objets. InterEditions, Paris, 1989.

[Mateti et Deo, 1975] P. Mateti and N. Deo. On algorithms for enumerating all circuits

of a graph. SIAM J. Comput., 5:90{101, 1975.

[McGregor, 1979] J.J. McGregor. Relational consistency algorithms and their application

in �nding subgraph and graph isomorphisms. Information Science, 19:229{250, 1979.

[McGregor, 1988] R. McGregor. A deductive pattern matcher. In: Proc. 7th AAAI'88,

pp. 403{408, St. Paul, Minnesota, 1988.

Page 254: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

R�EF�ERENCES BIBLIOGRAPHIQUES 247

[Michalski et al., 1983] R. S. Michalski, J. G. Carbonell and T. M. Mitchell, ed. Machine

learning: an Arti�cial Intelligence approach. Tioga Publ. Comp., Palo Alto, Californie,

1983.

[Michalski et al., 1986] R. S. Michalski, J. G. Carbonell and T. M. Mitchell, ed. Machine

learning: an Arti�cial Intelligence approach (volume II). Morgan Kaufmann, Los Altos,

Californie, 1986.

[Minsky, 1975] M. Minsky. A framework for representing knowledge. In: The psychology

of computer vision, P. Winston, ed., pp. 211{281. MacGraw-Hill, New York, 1975.

[Minsky, 1988] M. Minsky. La soci�et�e de l'esprit. InterEditions, Paris, 1988.

[Napoli, 1992] A. Napoli. Repr�esentations �a objets et raisonnement par classi�cation en

intelligence arti�cielle. Th�ese de doctorat d'�Etat, Universit�e Nancy I, janvier 1992.

[Nebel, 1988] B. Nebel. Computational complexity of terminological reasoning in BACK.

Arti�cial intelligence, 34:371{383, 1988.

[Ott et Noordik, 1992] M.A. Ott et J.H. Noordik. Computer tools for reaction retrieval

and synthesis planning in organic chemistry. A brief review of their history, methods,

and programs. Recl. Trav. Chim., Pays-Bas, 111:239{246, 1992.

[Paoloni, 1985] L. Paoloni. La repr�esentation des mol�ecules en chimie : une image de la

r�ealit�e ou la r�ealit�e d'une image? L'Actualit�e Chimique, 47{52, 1985.

[Paton, 1969] K. Paton. An algorithm for �nding a fundamental set of cycles of a graph.

Comm. ACM, 12:514{518, 1969.

[Plotkin, 1971] M. Plotkin. Mathematical basis of ring-�nding algorithms in CIDS. J.

Chem. Doc., 11:60{63, 1971.

[Prelog et Helmchen, 1982] V. Prelog et G. Helmchen. Basic principles of the CIP-system

and proposal for a revision. Angew. Chem. Int. Ed. Engl., 21:567{583, 1982.

[Py, 1992] M. Py. Un agent rationnel pour raisonner par analogie. Th�ese de doctorat,

Universit�e Montpellier II, novembre 1992.

[Read et Corneil, 1977] R. C. Read and D. G. Corneil. The graph isomorphism disease.

Journal of Graph Theory, 1:339{363, 1977.

Page 255: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

248 R�EF�ERENCES BIBLIOGRAPHIQUES

[Read et Tarjan, 1975] R. C. Read and R. E. Tarjan. Bounds on backtrack algorithms for

listing cycles, paths and spanning trees. Networks, 5:237{252, 1975.

[Rechenmann, 1988] F. Rechenmann. SHIRKA : syst�eme de gestion de bases de connais-

sances centr�ees-objet, manuel de r�ef�erence. INRIA / ARTEMIS, Grenoble, 1988.

[R�egin, 1994] J.-C. R�egin. a �ltering algorithm for constraints of di�erence in CSPs. In:

Proc. 12th AAAI'94, pp. 362{367, Seattle, Washington, 1994.

[R�egin, 1995] J.-C. R�egin. D�eveloppement d'outils algorithmiques pour l'Intelligence Arti-

�cielle et application �a la chimie organique. Th�ese de doctorat, Universit�e Montpellier

II, D�ecembre 1995.

[Richards, 1986] D. Richards. Finding short cycles in planar graphs using separators.

Journal of Algorithms, 7:382{394, 1986.

[Roch, 1977] E. Roch. Human categorization. In: Studies in Cross-Cultural Psychology,

Warren, ed., volume 1. Academic Press, New York, 1977.

[Roos-Kozel et Jorgensen, 1981] B. L. Roos-Kozel and W. L. Jorgensen. Computer-

assisted mechanistic evaluation of organic reactions. 2. perception of rings, aromaticity

and tautomers. J. Chem. Inf. Comput. Sci., 21:101{111, 1981.

[Rossazza, 1990] J.P. Rossazza. Utilisation de hi�erarchies de classes oues pour la repr�e-

sentation de connaissances impr�ecises et sujettes �a exceptions ; le syst�eme SORCIER.

Th�ese de doctorat, Universite Paul Sabatier, Toulouse, 1990.

[Saucier, 1971] G. Saucier. Un algorithme e�cace recherchant l'isomorphisme de 2

graphes. R.I.R.O., R-3:39{51, 1971.

[Schank, 1982] R. Schank. Dynamic memory : A theory of reminding and learning in

Computers an People. Cambridge University Press, Cambridge, 1982.

[Shelley, 1983] C. Shelley. Heuristic approach for displaying chemical structures. J. Chem.

Inf. Comput. Sci., 23:61{65, 1983.

[Sorkau, 1985] E. Sorkau. Ringerkennung in chemischen Strukturen mit dem Computer.

Wiss. Z. Tech. Hochsch. Leuna-Meuseburg, 27:765{770, 1985.

[Sowa, 1984] J. F. Sowa. Conceptual structures information processing in mind and ma-

chine. Addison-Wesley, Massachusetts, 1984.

Page 256: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

R�EF�ERENCES BIBLIOGRAPHIQUES 249

[Syslo, 1979] A. A. Syslo. On cycle bases of a graph. Networks, 9:123{132, 1979.

[Syslo, 1981] A. A. Syslo. An e�cient cycle vector space algorithm for listing all cycles of

a planar graph. SIAM Journal on Computing, 10:797{808, 1981.

[Takahashi, 1994] Y. Takahashi. Automatic extraction of ring substructures from a che-

mical structure. J. Chem. Inf. Comput. Sci., 34(1):167{170, 1994.

[Tarjan, 1972] R. E. Tarjan. Depth-�rst search and linear graph algorithms. SIAM J.

Comput., 1:146{160, 1972.

[Tarjan, 1977] R. E. Tarjan. Graph algorithms in chemical computation. In: Algorithms

for Chemical Computations, R.E. Christo�erson, ed., volume 46, pp. 1{20. Am. Chem.

Soc. Symposium Series, 1977.

[Tierman, 1970] J. Tierman. An e�cient search algorithm to �nd the elementary circuits

of a graph. Comm. ACM, 13:722{726, 1970.

[Tsang, 1993] E. Tsang. Foundations of Constraint Satisfaction. Academic Press, 1993.

[Tutte, 1960] W. T. Tutte. An algorithm for determining whether a given binary matroid

is graphic. Proc. Amer. Math. Soc., 11:905{917, 1960.

[Ugi et al., 1994] I. Ugi, J. Bauer, C. Blomberger, J. Brandt, A. Dietz, E. Fontain, B. Gru-

ber, A. Von Scholley-Pfab, A. Sen� et N. Stein. Models, concepts, theories and formal

languages in chemistry and their use as a basis for computer assistance in chemistry. J.

Chem. Inf. Comput. Sci., 34:3{16, 1994.

[Welch, 1966] J. Welch. A mechanical analysis of the cyclic structure of undirected linear

graphs. J. ACM, 13:205{210, 1966.

[Whitney, 1935] H. Whitney. On the abstract properties of linear dependence. Am. J.

Math., 57:509{533, 1935.

[Wilcox et Levinson, 1986] C. S. Wilcox and R. A. Levinson. A self-organized knowledge

base for recall, desing, and discovery in organic chemistry. In: Arti�cial Intelligence

Applications in Chemistry, T. H. Pearce and B. A. Holme, ed., pp. 209{230. American

Chemical Society, 1986.

Page 257: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

250 R�EF�ERENCES BIBLIOGRAPHIQUES

[Wipke et al., 1977] W. T. Wipke, H. Braun, G. Smith, F. Choplin and W. Sieber. SECS-

similation and evaluation of chemical synthesis: Strategy and planning. In: Computer-

Assisted Organic Synthesis, W.T. Wipke and W.J. Howe, ed., 61, pp. 97{127. ACS

Symposium, 1977.

[Wipke et Dyott, 1975] W. T. Wipke and T. M. Dyott. Use of ring assemblies in a ring

perception algorithm. J. Chem. Inf. Comput. Sci., 15(3):140{147, 1975.

[Wipke, 1974] W. T. Wipke. Computer-assisted three-dimentional synthetic analysis. In:

Computer Representation and Manipulation of Chemical Information, W. T. Wipke, S.

R. Heller, R. J. Feldmann and E. Hyde, ed., pp. 147{174. Wiley, New York, 1974.

[Zamora, 1976] A. Zamora. An algorithm for �nding the smallest set of smallest rings. J.

Chem. Inf. Comput. Sci., 16:40{43, 1976.

[Zas, 1990] E. Zas. A user's view of chemical reaction information sources. J. Chem. Inf.

Comput. Sci., 30:360{372, 1990.

Page 258: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

251

Index des d�e�nitions

�(x), 7

dist(x; y), 8

�, 45

d(x), 7

dmax, 7

CP , 85

appariements, 184

dirig�es, 211

arbre, 9

base de cycles

fondamentale, 48, 50, 51

minimale, 51, 52

taille, 51

centralit�e

d'une arete, 132

cha�ne, 8

�el�ementaire, 8

carbon�ee, 117

simple, 8

chemin, 8

circuit, 9

composante

2-aretes-connexe, 10

2-connexe, 10

connexe, 9

contexte d'une transformation, 34, 190

corde, 9

cycles, 8

�el�ementaires, 9

base, 48, 51, 52, 76

condens�es, 101

corde, 9

espace vectoriel associ�e, 44

fondamentaux, 48

isol�es, 101

pertinents, 82

pont�es, 101

spiraniques, 101

SSSR, 52

espace vectoriel associ�e aux cycles, 44

dimension, 45

graphe, 7

2-aretes-connexe, 10

connexe, 9

degr�e maximal, 7

des cycles pertinents, 105

diam�etre, 8

k-connexe, 9

mol�eculaire, 16

partiel, 8

planaire, 10

Page 259: Num ero d'iden ti cation : 95 - MON 2 - 2 5 3vismara/papers/vismara_these.pdfNum ero d'iden ti cation : 95 - MON 2 - 2 5 3 A cad emie de Montpellier U niver s i t e M ont p ellier

252 INDEX DES D�EFINITIONS

sous-graphe, 8

h�et�eroatome, 114

isthme, 10

lien

de cycle, 119

h�et�eroatomique, 117

nombre cyclomatique, 45

objectif d'une transformation, 33, 187

point d'articulation, 9

pr�ed�ecesseurs imm�ediats, 176

r�etrosynth�ese, 25

sommet

degr�e, 7

pendant, 116

successeurs, 7

voisins, 7

subsomption, 174

entre appariements, 189

graphes, 175, 184

successeurs imm�ediats, 176

transformation, 26, 33