etude des algorithmes génétiques et application aux

179
HAL Id: tel-00268927 https://tel.archives-ouvertes.fr/tel-00268927 Submitted on 1 Apr 2008 HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés. Etude des Algorithmes génétiques et application aux données de protéomique Christelle Reynès To cite this version: Christelle Reynès. Etude des Algorithmes génétiques et application aux données de protéomique. Sciences du Vivant [q-bio]. Université Montpellier I, 2007. Français. tel-00268927

Upload: others

Post on 24-Jun-2022

11 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Etude des Algorithmes génétiques et application aux

HAL Id: tel-00268927https://tel.archives-ouvertes.fr/tel-00268927

Submitted on 1 Apr 2008

HAL is a multi-disciplinary open accessarchive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come fromteaching and research institutions in France orabroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, estdestinée au dépôt et à la diffusion de documentsscientifiques de niveau recherche, publiés ou non,émanant des établissements d’enseignement et derecherche français ou étrangers, des laboratoirespublics ou privés.

Etude des Algorithmes génétiques et application auxdonnées de protéomique

Christelle Reynès

To cite this version:Christelle Reynès. Etude des Algorithmes génétiques et application aux données de protéomique.Sciences du Vivant [q-bio]. Université Montpellier I, 2007. Français. tel-00268927

Page 2: Etude des Algorithmes génétiques et application aux

A C A D E M I E D E M O N T P E L L I E R

UNIVERSITE MONTPELLIER I

— UFR DES SCIENCES PHARMACEUTIQUES —

Etude des Algorithmes Genetiques etApplication aux Donnees de Proteomique

These presentee pour l’obtention du grade de

DOCTEUR DE L’UNIVERSITE MONTPELLIER I

ECOLE DOCTORALE : Information, Structure et SystemesFORMATION DOCTORALE : BiostatistiqueN de DISCIPLINE : 42 N CNU : 26SPECIALITE : Statistique

par

Christelle REYNES

soutenue publiquement le20 juin 2007

devant le jury

M. Gilles DUCHARME Professeur, Universite Montpellier IIM. Jean-Pierre DURBEC Professeur, Universite de LuminyM. Yann GUEDON Chercheur, CIRADM. Nicolas MOLINARI Maıtre de Conferences, Universite Montpellier I Co-directeur de theseM. Bernard PRUM Professeur, Universite d’Evry RapporteurM. Robert SABATIER Professeur, Universite Montpellier I Directeur de theseM. Bernard YCART Professeur, Universite Grenoble I Rapporteur

Page 3: Etude des Algorithmes génétiques et application aux
Page 4: Etude des Algorithmes génétiques et application aux

ResumeLes algorithmes genetiques sont des methodes d’optimisation destinees a des problemes com-plexes. Ils peuvent jouer un role interessant dans le cadre de la proteomique. Cette disciplineest assez recente, elle etudie le patrimoine en proteines des individus. Elle produit des donneesde grande dimension.La premiere partie aborde l’histoire, le fonctionnement des algorithmes genetiques et certainsresultats theoriques. La partie suivante detaille la mise au point d’un tel algorithme pour laselection de biomarqueurs en spectrometrie de masse et l’alignement de gels d’electrophorese2D. Cette partie met en evidence la difficulte de construction du critere a optimiser. Laderniere partie aborde des resultats theoriques. La convergence des algorithmes genetiquesavec elitisme est demontree dans le cas non homogene et de mutations dirigees. Nous avonsensuite construit un critere de convergence alliant fondements theoriques et applicabilite,base sur les occurrences de la solution localement optimale. Enfin, l’efficacite de l’intro-duction d’evenements catastrophiques dans la resolution pratique de certains problemes deconvergence est montree.

Mots cles : Algorithme genetique, proteomique, convergence, SELDI, electrophorese 2D.

AbstractGenetic Algorithms are optimization methods aiming at solving complex problems. Theyare likely to play an interesting role in proteomics. This discipline is a quite new one whichstudies the proteins in individuals. It provides high dimension data.The first part deals with history, working of genetic algorithms and introduces some theoreti-cal results. In the next part the building of a genetic algorithm is presented to solve biomarkerselection in mass spectrometry and 2D electrophoresis gels alignment. This part focuses onthe difficulty to choose an appropriate criterion to optimize. The last part deals with theoreti-cal results. Convergence of elitist genetic algorithms is proved for non homogeneous case andorientated mutations. Then we built a convergence criterion mixing theoretical basementsand appliability, which is based on occurrences of the locally optimal solution. Finally, theefficiency of introducing catastrophic events to avoid some convergence problems is shown.

Keywords : Genetic algorithms, proteomics, convergence, SELDI, 2D electrophoresis.

Page 5: Etude des Algorithmes génétiques et application aux
Page 6: Etude des Algorithmes génétiques et application aux

Remerciements

La premiere personne que je voudrais remercier est celui sans lequel ce travail n’aurait ja-mais existe, mon directeur de these, Robert Sabatier. Meme si plusieurs personnes ont œuvrepour me pousser dans cette direction, c’est lui qui a su trouver les arguments qui ont faitpencher la balance, definitivement. Par la suite, il a fallu qu’il assume et qu’il me supporte,tache difficile dont il s’est acquitte avec brio. Il a ete un directeur de these present, attentif,extremement implique et fourmillant d’idees. Malheureusement, il n’ecoute que de la mu-sique classique !. . . Pour tout, merci.

Lors de mon DEA une autre personne, Nicolas Molinari, s’est beaucoup demenee pourme pousser a me lancer dans cette entreprise qu’est la these. Cela l’a naturellement conduita etre mon co-directeur de these. Je le remercie pour son soutien meme si notre eloignementgeographique a empeche une etroite collaboration. Il m’a accompagnee dans tous les congres,a subi de nombreuses relectures de mes ecrits fleuris et a su m’apporter de nombreux contactsdans le monde des biologistes.

Je tiens a exprimer ma gratitude au Professeur Bernard Prum qui a accepte tres rapide-ment d’etre rapporteur de ma these et qui, dans un temps record, m’a fourni une correctionTRES detaillee de mon manuscrit. Ses remarques concernant le fond ont ete tres precieuseset sa maıtrise de la langue francaise a force mon admiration (ce qui n’est pas si courant chezles matheux, n’est-ce pas Thomas ?).

Je remercie profondement le Professeur Bernard Ycart qui a egalement tenu le role diffi-cile de rapporteur. Ses remarques ont ete d’une grande precision et surtout d’un tres grandinteret pour l’amelioration de mon travail mais aussi pour la perspective de travaux futurs.

Pour ce qui est de la composition de mon jury, j’ai egalement tenu a la presence de YannGuedon dont les cours en DEA m’avaient reellement interessee et m’ont reconduit natu-rellement vers lui quand j’ai commence a me frotter aux chaınes de Markov. Malgre mesnombreuses sollicitations, son accueil a toujours ete chaleureux et attentif et ses reponses etorientations tout a fait judicieuses.

Le professeur Gilles Ducharme a donne le premier coup de pouce a ma these. Il a eneffet pris la peine de me telephoner pour me convaincre de modifier mon choix de stage deDEA. Je sais maintenant combien il avait raison. . . C’est pourquoi je suis particulierementheureuse de le compter parmi les membres de mon jury.

Enfin, le Professeur Durbec a spontanement accepte de faire partie de ce jury, montrantune fois de plus sa grande ouverture d’esprit pour des problemes statistiques lui permettantde renouer avec ses precedents centres d’interet. Je l’en remercie enormement.

Evidemment, et comme ce sera detaille dans les pages a venir (pour ceux qui ne s’arreterontpas aux remerciements !), ce travail est le fruit d’une etroite collaboration avec les equipesde biologistes et surtout celle du Professeur Sylvain Lehmann qui, aide de Stephane Roche

Page 7: Etude des Algorithmes génétiques et application aux

et Laurent Tiers, m’a initiee aux techniques de la proteomique.

Je n’oublie pas Ludovic Menneteau vers qui je me suis tournee dans un moment de grandmanque d’inspiration et qui m’a aiguillee vers Pierre Pudlo que je remercie beaucoup poursa disponibilite et les tres precieux conseils qu’il m’a donnes dans le domaine des chaınes deMarkov.

Ma gratitude va egalement a l’ensemble de l’equipe du Professeur Luc Maury, qui m’aaccueillie pendant trois ans et demi et fourni les conditions de travail qui m’ont permisd’avancer. Je pense particulierement a Laurent Vachoud car d’une part nous avons partagede bonnes parties de rigolade (notamment grace aux TDs) et d’autre part il a beaucoupcontribue a l’ambiance chaleureuse du labo (notamment grace a B.F.). Un grand merciegalement a Michele Delalonde qui des son arrivee s’est interessee a mon travail et m’a sou-tenue dans les moments difficiles.

Je n’oublie evidemment pas mes collegues thesards avec lesquels j’ai beaucoup echange etpartage pendant ces quatre dernieres annees : Thomas Verron avec lequel j’ai passe d’excel-lents moments et qui sait par quoi je suis passee puisque nous avons subi le meme directeurde these ( !. . .), Christel Castelli qui m’a supportee pendant les congres et bien plus, quia compati a mes soucis et partage de grands moments, Yohann Foucher qui m’a sortie debien des guepiers informatiques et qui s’est souvent sacrifie pour faire equipe avec moi auxflechettes, Vanessa Rousseau qui est arrivee a point nomme pour me prendre de temps entemps ma derniere place a ce jeu et enfin Myrtille Vivien, meme si elle n’est plus thesardedepuis longtemps, qui m’avait chauffe la place au labo (et nous savons toutes les deux quec’est necessaire. . .) et avec laquelle j’ai partage de tres bons moments pour l’organisation ducongres Agrostat 2006.

Evidemment, je pense a ma famille qui m’a soutenue dans tous mes choix, meme les plusdifficiles, et qui a su me soutenir dans les pires moments.

Page 8: Etude des Algorithmes génétiques et application aux

Beaucoup d’esprits distingues paraissent ne pas pouvoir accepter nimeme comprendre que d’une source de bruit la selection ait pu, a elleseule, tirer toutes les musiques de la biosphere.

Jacques Monod (1970)

Page 9: Etude des Algorithmes génétiques et application aux
Page 10: Etude des Algorithmes génétiques et application aux

Table des matieres

Notations v

Acronymes vii

Introduction generale 1

I Presentation des algorithmes genetiques 9

1 De l’evolution des especes a l’optimisation mathematique : etapes de l’al-gorithme genetique 111.1 Le codage : du probleme biologique a l’optimisation mathematique . . . . . . 121.2 L’initialisation : une etape dependante du probleme . . . . . . . . . . . . . . 131.3 L’operateur de mutation : l’explorateur de l’espace des solutions . . . . . . . 161.4 L’operateur de croisement : le catalyseur . . . . . . . . . . . . . . . . . . . . 171.5 L’operateur de selection : la seule etape intelligente . . . . . . . . . . . . . . 21

1.5.1 Construction de la fitness . . . . . . . . . . . . . . . . . . . . . . . . 211.5.2 Application de l’operateur de selection . . . . . . . . . . . . . . . . . 221.5.3 Pression et intensite de selection . . . . . . . . . . . . . . . . . . . . . 241.5.4 Generation de la nouvelle population . . . . . . . . . . . . . . . . . . 251.5.5 Illustration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

1.6 Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2 Le chemin vers la modelisation et la convergence 312.1 Des difficultes et des Chaınes de Markov . . . . . . . . . . . . . . . . . . . . 31

2.1.1 Espace d’etats d’un AG. . . . . . . . . . . . . . . . . . . . . . . . . . 342.1.2 Matrice de transition d’un AG. . . . . . . . . . . . . . . . . . . . . . 34

2.2 Divers resultats sur la convergence des AG utilisant des chaınes de Markov. . 362.2.1 Utilisation de la theorie de Freidlin-Wentzell . . . . . . . . . . . . . . 362.2.2 Simplification de l’espace d’etat de la chaıne de Markov . . . . . . . . 37

3 Les metaheuristiques : une grande famille 393.1 Scatter Search (SS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 403.2 Tabu Search (TS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413.3 Variable Neighbourhood Search (VNS) . . . . . . . . . . . . . . . . . . . . . 433.4 Guided Local Search (GLS) . . . . . . . . . . . . . . . . . . . . . . . . . . . 443.5 Greedy Randomized Adaptive Search procedures (GRASP) . . . . . . . . . . 453.6 Ant Colony Optimization (ACO) . . . . . . . . . . . . . . . . . . . . . . . . 46

i

Page 11: Etude des Algorithmes génétiques et application aux

3.7 Simulated Annealing (SA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463.8 Comparaison des algorithmes . . . . . . . . . . . . . . . . . . . . . . . . . . 48

II Application a des problemes d’optimisation complexes : dif-ficulte de la construction de la fitness 51

1 Les AG appliques a la discrimination en spectrometrie 531.1 Un probleme biologique important : la recherche de biomarqueurs en SELDI-

TOF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 531.2 Pretraitement des spectres . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

1.2.1 Soustraction de la ligne de base . . . . . . . . . . . . . . . . . . . . . 561.2.2 Normalisation des spectres . . . . . . . . . . . . . . . . . . . . . . . . 561.2.3 Detection des pics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 571.2.4 Alignement des pics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

1.3 Construction d’une methode de discrimination adaptee : la foret de branches 601.4 Generalisation a plus de deux groupes : utilisation du pairwise coupling . . . 62

1.4.1 Calcul des probabilites d’affectation par couple de groupes . . . . . . 621.4.2 Calcul des probabilites d’affectation globales . . . . . . . . . . . . . . 62

1.5 Insertion dans l’AG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 641.5.1 Codage des solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . 641.5.2 Initialisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661.5.3 L’operateur de mutation . . . . . . . . . . . . . . . . . . . . . . . . . 661.5.4 L’operateur de croisement . . . . . . . . . . . . . . . . . . . . . . . . 681.5.5 Definition de la fitness et operateur de selection . . . . . . . . . . . . 691.5.6 Generalisation a plus de deux groupes . . . . . . . . . . . . . . . . . 71

1.6 Une premiere approche de la convergence : l’observation . . . . . . . . . . . 721.6.1 Donnees publiques de cancer de l’ovaire . . . . . . . . . . . . . . . . . 72

1.6.1.1 Pretraitement . . . . . . . . . . . . . . . . . . . . . . . . . . 721.6.1.2 Resultats de l’AG et discrimination . . . . . . . . . . . . . . 73

1.6.2 Donnees neurologiques . . . . . . . . . . . . . . . . . . . . . . . . . . 751.6.2.1 Description de la population . . . . . . . . . . . . . . . . . . 751.6.2.2 Les donnees . . . . . . . . . . . . . . . . . . . . . . . . . . . 761.6.2.3 Pretraitement . . . . . . . . . . . . . . . . . . . . . . . . . . 761.6.2.4 Resultats de l’AG et discrimination . . . . . . . . . . . . . . 76

1.6.3 Bilan sur l’utilisation des AG pour la recherche de biomarqueurs enSELDI-TOF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

1.7 Autre application : la recherche d’intervalles discriminants en NIRS . . . . . 791.7.1 Les etapes de AG-AFD . . . . . . . . . . . . . . . . . . . . . . . . . . 791.7.2 Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 811.7.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

2 L’alignement de gels d’electrophorese en deux dimensions 852.1 Un probleme simple. . . en apparence . . . . . . . . . . . . . . . . . . . . . . 852.2 Cas de deux gels : adaptation de Procuste . . . . . . . . . . . . . . . . . . . 87

2.2.1 La methode Procuste . . . . . . . . . . . . . . . . . . . . . . . . . . . 872.2.2 Application a l’alignement de deux gels et insertion dans l’AG . . . . 89

Page 12: Etude des Algorithmes génétiques et application aux

2.2.2.1 Recherche d’une transformation globale . . . . . . . . . . . 902.2.2.1.1 Recherche d’un critere . . . . . . . . . . . . . . . . 902.2.2.1.2 Appariement pour (Tg, tg) fixes . . . . . . . . . . . 912.2.2.1.3 Insertion dans l’AG . . . . . . . . . . . . . . . . . . 91

2.2.2.2 Definition de zones homogenes dans les gels . . . . . . . . . 932.2.2.2.1 Decoupage du gel . . . . . . . . . . . . . . . . . . . 932.2.2.2.2 Rassemblement des cellules . . . . . . . . . . . . . 932.2.2.2.3 Optimisation des transformations locales . . . . . . 95

2.3 Extension a plus de deux gels : generalisation de Procuste generalise . . . . . 952.3.1 Analyse procrusteenne generalisee . . . . . . . . . . . . . . . . . . . . 952.3.2 Application aux gels d’electrophorese 2D et insertion dans l’AG . . . 97

2.4 Une premiere approche de la convergence : l’observation . . . . . . . . . . . 982.4.1 Les donnees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 992.4.2 Resultats de l’alignement global . . . . . . . . . . . . . . . . . . . . . 101

2.4.2.1 Cas de deux gels . . . . . . . . . . . . . . . . . . . . . . . . 1012.4.2.2 Cas de trois gels . . . . . . . . . . . . . . . . . . . . . . . . 102

2.4.2.2.1 Resultats de l’alignement global . . . . . . . . . . . 1022.4.2.2.2 Recherche de zones homogenes . . . . . . . . . . . 1032.4.2.2.3 Resultats des alignements locaux . . . . . . . . . . 103

2.4.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

III Convergence des AG : de la theorie a la mise en application109

1 Demonstration de la convergence theorique : generalisation au cas nonhomogene et aux mutations dirigees 1111.1 Codage des solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1111.2 Denombrement des solutions possibles . . . . . . . . . . . . . . . . . . . . . 1121.3 Modelisation de l’AG comme une chaıne de Markov . . . . . . . . . . . . . . 115

1.3.1 Rappel sur les Chaınes de Markov . . . . . . . . . . . . . . . . . . . . 1151.3.2 Definition de la chaıne de Markov dans le cas de l’AG . . . . . . . . . 1151.3.3 Convergence de l’AG . . . . . . . . . . . . . . . . . . . . . . . . . . . 1171.3.4 Generalisation au cas non homogene . . . . . . . . . . . . . . . . . . 1191.3.5 Influence de l’operateur de croisement sur la vitesse de convergence . 122

2 Construction d’un critere de pseudo-convergence 1252.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1252.2 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

2.2.1 Construction des AG . . . . . . . . . . . . . . . . . . . . . . . . . . . 1262.2.1.1 Premiere approche . . . . . . . . . . . . . . . . . . . . . . . 1262.2.1.2 Seconde approche . . . . . . . . . . . . . . . . . . . . . . . . 126

2.2.2 Construction d’un jeu de donnees simule . . . . . . . . . . . . . . . . 1272.3 Construction du critere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

2.3.1 Construction de Zn . . . . . . . . . . . . . . . . . . . . . . . . . . . 1282.3.1.1 Conditionnement 1 . . . . . . . . . . . . . . . . . . . . . . . 1302.3.1.2 Conditionnement 2 . . . . . . . . . . . . . . . . . . . . . . . 1312.3.1.3 Bilan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

Page 13: Etude des Algorithmes génétiques et application aux

2.3.2 Construction de Sw . . . . . . . . . . . . . . . . . . . . . . . . . . . 1332.4 Etude du critere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135

2.4.1 Influence des parametres . . . . . . . . . . . . . . . . . . . . . . . . . 1352.4.2 Fixation d’un seuil par une experience . . . . . . . . . . . . . . . . . 1372.4.3 Application a d’autres AG . . . . . . . . . . . . . . . . . . . . . . . . 1392.4.4 Limites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

2.4.4.1 Cas 1 : peu de possibilites ou beaucoup de solutions equivalentes1392.4.4.2 Cas 2 : initialisation non aleatoire . . . . . . . . . . . . . . . 140

2.4.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

3 De l’acceleration de la convergence 1433.1 Presentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1433.2 Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

Bibliographie 151

Page 14: Etude des Algorithmes génétiques et application aux

Notations

X, Y, Π, . . . : les lettres majuscules en caracteres gras designent des matrices.xij : si X est une matrice, xij est l’element de X se trouvant a l’intersection de la ieme ligneet de la j eme colonne.a, c, . . . : les lettres minuscules en caracteres gras designent des vecteurs.xi : si x est un vecteur, xi designe son ieme element.n, π, N, . . . : les lettres minuscules et majuscules en caracteres non gras designent des reels,sauf indication contraire.Ik : matrice identite de dimension k × k.0k : vecteur colonne de longueur k ne comportant que des zeros.1k : vecteur colonne de longueur k ne comportant que des uns.X′ : matrice transposee de la matrice X.tr[X] : trace de la matrice X.A, X , . . . : les majuscules calligraphiques designent des ensembles sauf N qui designe unnombre de solutions et V qui designe un voisinage.x1, x2, . . . : elements de l’ensemble X .x(1), x(2), . . . , x(n) : la permutation de x1, x2, . . . , xn telle que ses elements sont ordonnes ausens d’un critere a preciser.X \ A : complementaire de la partie A de l’ensemble X .x : E(x) : ensemble des elements x satisfaisant a la condition E(x).Pr[E] : probabilite de l’evenement E.Pr[E|F ] : probabilite conditionnelle de l’evenement E relative a l’evenement F (probabilitepour que E soit realise sachant que F l’est).E[X] : esperance de la variable aleatoire X.(

n

k

)

: cardinal de l’ensemble des combinaisons de k elements d’un ensemble a n elements((

n

k

)

= n!k!(n−k)!

).

IE : fonction indicatrice qui vaut 1 si l’evenement E est realise et 0 sinon (sauf p.50 ou lanotation est legerement differente pour s’adapter au contexte).f : fonction dite de fitness d’un ensemble X dans R.∂f(x,y)

∂xderivee partielle de la fonction f par rapport a x.

⊗ designe la multiplication de vecteurs element par element.⊕ designe l’addition de vecteurs element par element.

v

Page 15: Etude des Algorithmes génétiques et application aux
Page 16: Etude des Algorithmes génétiques et application aux

Acronymes

ACO : Ant Colony OptimizationACP : Analyse en Composantes PrincipalesADN : Acide DesoxyriboNucleiqueAG : Algorithme GenetiqueAG-AFD : Algorithme Genetique - Analyse Factorielle DiscriminanteARNm : Acide RiboNucleique MessagerCJD : Creutzfeld-Jacob DiseaseGA-SCA : Genetic Algorithm - Simple Component AnalysisGLS : Guided Local SearchGRASP : Greedy Randomized Adaptive Search ProceduresHR : Hypothese de Recurrencek-FCV : k-Fold Cross Validationk-ppv : k plus proches voisinsNA : Not AvailableNIRS : Near InfraRed Spectrometry (SPIR en francais)PLS : Partial Least SquaresRCL : Restrictive Candidate ListSA : Simulated AnnealingSCA : Simple Component AnalysisSELDI-TOF : Surface Enhanced Laser Desorption Ionisation - Time Of Flight (note in-differemment SELDI).SPIR : Spectrometrie Proche Infra Rouge (NIRS en anglais)SS : Scatter SearchSVM : Support Vecteur MachineTS : Tabu SearchVIP : Variable Importance in PredictionVNS : Variable Neighbourhood Search2D-PAGE : 2-Dimensional - PolyAcrylamide Gel Electrophoresis

vii

Page 17: Etude des Algorithmes génétiques et application aux
Page 18: Etude des Algorithmes génétiques et application aux

Introduction : les Algorithmesgenetiques, un outil efficace entrebiologie et mathematiques

La proteomique, une discipline ideale pour une collabo-

ration biologie/statistique

Une fois n’est pas coutume, nous allons commencer cette etude statistique par une petiteintroduction biologique qui permettra de comprendre l’interet de ce travail. Pour rassu-rer tout le monde, nous allons commencer par une petite illustration en couleur (Fig. 1)qui nous permettra de mettre en place les differents concepts simples necessaires a cettecomprehension.Nous l’aurons bien compris grace a cette figure, la biologie moderne est la biologie des -omiques. Ce sont toutes trois (genomique, transcriptomique et proteomique) des disciplinesrecentes et specialement pour celle qui nous interesse, la proteomique, dont le nom est ap-paru pour la premiere fois dans un article scientifique en 1997 (James, 1997). D’apres legraphique, on pourrait croire que, les molecules provenant les unes des autres, l’etude del’une est equivalente a l’etude de l’autre. Ce n’est pas le cas. En effet, dans le cadre de lagenomique, on etudie le patrimoine en genes (en ADN) des individus. Cette discipline adonne lieu a de nombreuses etudes statistiques (Muri-Majoube & Prum, 2002). Cependant,si le patrimoine genetique est variable d’un individu a l’autre, il est le meme dans toutes lescellules d’un individu, quelles que soient les conditions. Une telle information est interessante,notamment pour trouver un eventuel gene qui predispose a telle ou telle pathologie.Toutefois, il est plus interessant de travailler sur les produits de la transcription de l’ADN,les ARNm (pour messager). En effet, tous les genes d’une cellule ne sont pas transcrits danstoutes les cellules, chaque cellule, en fonction de sa specialisation (cellule du muscle car-diaque, cellule de l’œil,. . .), exprime un certain nombre de genes qui peut varier en fonctiondes conditions. L’information produite par les ARNm est donc beaucoup plus specifique, ellepermet egalement de constater des evolutions en cas de changement de conditions (stresshydrique pour les cellules d’Arabidopsis Thaliana, developpement d’une tumeur dans uneglande mammaire humaine, maturation de la viande de porc apres l’abattage,. . .). L’etudeest donc beaucoup plus dynamique et les applications sont plus variees. Mais on peut faireencore mieux : la proteomique ! Les proteines resultent de la traduction de l’ARNm. Cesont elles les molecules fonctionnelles, celles qui vont intervenir dans les reactions chimiques,celles qui vont propager les informations,. . . bref celles qui font fonctionner les organismes.On passera ici sur le debat de qui de la poule ou de l’œuf dans le cas des proteines et des

1

Page 19: Etude des Algorithmes génétiques et application aux

Fig. 1 De l’ADN aux proteines : trois molecules, trois etapes, trois disciplines.

acides nucleiques (ADN/ARN), sachant que dans les organismes actuels (et ce depuis desmillions d’annees), les proteines sont indispensables a la synthese de l’ADN et que l’ADNpossede l’information qui permet de synthetiser les proteines. . .

En plus d’etre fonctionnelles, les proteines ont l’avantage sur les ARN d’etre plus variees.En effet, meme si les ARN subissent des modifications apres transcription, elles ne sontrien par rapport aux transformations qui touchent les proteines apres leur synthese. Cesmodifications, tres diverses, peuvent etre minimes d’un point de vue chimique mais changerradicalement la fonction de la proteine affectee. L’etude de ces proteines est donc, d’un pointde vue chimique, la photographie la mieux resolue de l’etat d’un tissu, dans un organisme,pour des conditions donnees. Evidemment, ce seront surtout des changements de conditionsqui nous interesseront, avec de possibles apparitions/disparitions de proteines ou modifica-tions de leur quantite dans les cellules.Apres ce petit resume simpliste, une question viendra sans doute au lecteur curieux : maispourquoi donc, alors que la genomique semble etre la moins interessante des trois, entend-ontoujours parler de cette discipline et peu de la proteomique qui semble superieure ? On peutdonner deux raisons principales a cela :

– l’etude du patrimoine genetique des individus est certes limitee en termes d’applicationmais son analyse est assez simple, etant donne que l’on peut l’etudier n’importe quandet n’importe ou dans l’organisme, on aura toujours les memes donnees, alors que dansle cas de la proteomique, le choix du tissu a etudier et du temps de prelevement serontcritiques pour les resultats,

– les techniques d’etude des acides nucleiques sont bien plus simples, plus calibrees, plusreproductibles que celles qui permettent d’etudier les proteines.

Ce dernier point est critique et nous concerne particulierement. En effet, etant donnee laspecificite des resultats concernant les proteines, on comprend rapidement que, pour com-parer deux echantillons, pour deux conditions interessantes, il va falloir, dans la mesure du

Page 20: Etude des Algorithmes génétiques et application aux

possible, se debarrasser de toute la variabilite qui ne nous interesse pas, meme pour un seultissu d’un seul individu. On aura donc tendance a vouloir realiser des repetitions. De plus,nous avons evoque le fait qu’une modification mineure d’une proteine peut avoir de tresimportantes repercussions, les biologistes vont donc naturellement chercher a avoir les ana-lyses les plus completes et precises possibles, ce qui conduit a de tres gros jeux de donnees.Rajoutons egalement que les techniques de quantification des proteines sont beaucoup moinsprecises que celles qui concernent les acides nucleiques et on comprend rapidement l’interetde l’intrusion des statisticiens dans le monde des biologistes qui s’attaquent a la proteomique.Avant de passer aux developpements plus statistiques, profitons de cette occasion pour souli-gner, dans ce type d’etude, l’importance primordiale d’une reelle communication entre biolo-gistes et statisticiens. Nous l’avons vu, les donnees de proteomique sont tres complexes, ellesne peuvent donc pas se contenter d’un traitement par les methodes classiques generalementbien maıtrisees par les biologistes. Ces donnees necessitent le plus souvent la mise en placede methodes specifiques qui, la, echappent aux competences de la plupart des biologistes :chacun son boulot ! Cependant, il ne faudrait pas prendre ici, le raccourci qui est a l’originede la mefiance de nombre de biologistes envers les statisticiens et qui consisterait a penserque les biologistes ne font que produire des donnees et que les statisticiens detiennent, eux,les clefs de l’analyse de ces donnees et donc les resultats. C’est totalement faux et hautementprejudiciable a une bonne qualite de l’analyse des donnees.En effet, lors de la mise au point d’une nouvelle methode, l’expertise du biologiste est absolu-ment indispensable pour que les donnees soient prises en compte dans toute leur complexite.Le statisticien doit donc faire l’effort de comprendre au mieux les donnees et surtout ne pashesiter a faire des allers-retours permanents avec les biologistes pour verifier ses choix. Enoutre, cette collaboration ne s’arrete pas la. Une fois que le statisticien a mis au point samethode, qu’il l’a appliquee a un jeu de donnees reelles, il est bien incapable d’interpreter lesresultats en termes biologiques. En dernier lieu, c’est donc le biologiste qui pourra valider,ou non, les resultats.Une derniere remarque concernant l’interaction biologiste/statisticien. Il est absolument pri-mordial qui chacun n’oublie pas sa place. Il pourrait etre facile, pour un statisticien convaincupar son biologiste prefere, de rechercher, a tout prix, une methode qui pourrait faire sortirce que le biologiste attend. Or, on sait bien qu’avec ce type de donnees, quand on sait ceque l’on veut trouver, on peut (presque) toujours arriver a le faire apparaıtre. Il est doncdu devoir du statisticien de mettre en garde le biologiste et de lui dire que malgre le tempset l’argent qu’il a investi dans ces donnees, il ne peut lui garantir que ces donnees pourrontdonner des resultats interessants.Toutes ces considerations me semblent etre un prealable que l’on doit avoir en tete avant d’ini-tier une collaboration avec une equipe de biologistes. Nous esperons que ces developpementsn’auront pas ennuye nos lecteurs, mais il nous semble difficile, pour un statisticien qui sou-haite traiter des donnees reelles, de ne pas s’arreter pour reflechir un instant a la difficultemais surtout a la richesse d’une interaction entre les disciplines si differentes, si passionnanteset si complementaires que sont la biologie et les statistiques.En ce qui nous concerne nos principaux partenaires ont ete :

– l’equipe CHU-CNRS du Pr Sylvain Lehmann a Montpellier,– l’equipe Qualite des Produits Animaux, Institut National de la Recherche Agrono-

mique, Centre de Theix a Clermont-Ferrand– le centre de recherche de la societe Altadis.

Page 21: Etude des Algorithmes génétiques et application aux

Les algorithmes genetiques : de la biologie. . . a la biologie

Malgre les apparences, nous venons bien de rentrer dans le domaine des statistiques.Les algorithmes genetiques (notes AG dans la suite) peuvent etre classes dans la grandefamille d’algorithmes d’optimisation que sont les metaheuristiques et que nous etudieronsplus precisement dans la suite. Mais voyons tout de suite l’histoire de ces methodes.Dans les annees 1960, les avancees dans le domaine de la genetique permettaient de donnernaissance au neodarwinisme ou Theorie synthetique de l’evolution. La structure de l’ADNavait ete publiee en 1953 par Watson & Crick (1953) et avait permis de donner un cadre rigou-reux a la theorie de Darwin (Darwin, 1859). La communaute scientifique a mis un certaintemps a accepter toutes les implications de telles decouvertes. En effet, le neodarwinismea permis de montrer que l’evolution des especes au cours de l’histoire de la Terre resulteprincipalement de la combinaison d’une generation totalement aleatoire de diversite et d’uneselection. Cette diversite provient des mutations de l’ADN et des mecanismes de la reproduc-tion sexuee. Le contraste entre la relative simplicite des mecanismes de base et la complexitedes etres vivants actuels ont demontre l’incroyable efficacite de l’evolution.Cette efficacite n’a evidemment pas echappe aux scientifiques d’autres domaines. En Alle-magne, Rechenberg (1973) et Schwefel (1977) developperent le concept d’evolution strategytandis qu’aux Etats-Unis, Lawrence Fogel (Fogel, 1963; Fogel et al., 1966) et quelques autresintroduisaient le genetic programming. Toutes ces contributions avaient en commun l’utilisa-tion conjointe des concepts de mutation et de selection. Ces deux concepts etaient considerespar Darwin comme preponderants dans l’evolution naturelle. Cependant, des 1962, Bremer-mann et Fraser avaient inclus le concept de croisement dont les scientifiques contemporainsavaient mesure l’importance (bien que Darwin l’ait plutot neglige). Une bonne partie de cetravail preliminaire a ete rassemble par le fils d’un de ces precurseurs dans Fogel (1998).Mais, c’est finalement Holland (1975) qui, le premier, a introduit le terme d’Algorithmegenetique (AG). Dans son travail, la notion de croisement etait primordiale. Cependant, ilest assez etonnant d’observer que son ouvrage n’etait absolument pas centre sur les problemesd’optimisation. C’est son etudiant qui, dans sa these (De Jong, 1975), a focalise son travailsur l’utilisation des AG dans la resolution des problemes d’optimisation (De Jong, 1992).Depuis, les AG ont beaucoup evolue et l’immense majorite des applications concernent desproblemes d’optimisation. Ce developpement est essentiellement lie a l’augmentation rapidedes capacites de calcul des ordinateurs. En effet, comme nous le verrons par la suite, cesalgorithmes sont tres gourmands en calculs et a l’epoque de leur invention, cela limitaitbeaucoup leurs possibilites d’application. Mais aujourd’hui, les AG se revelent etre des ou-tils d’optimisation tres puissants, meme pour des problemes complexes. Or, nous verrons queles problemes d’optimisation lies aux donnees de proteomique rentrent tout a fait dans cettecategorie.Cependant, nous voyons un autre interet a l’utilisation des AG pour les donnees de proteomique,et si cet interet est moins technique que le precedent, il n’en est pas moins important pour lesucces et l’utilisation des methodes qui pourraient etre mises au point. En effet, nous l’avonsvu plus tot, un traitement efficace des donnees de proteomique ne pourrait se faire sans uneetroite collaboration entre biologistes et statisticiens. Or, il y a peu de chances pour qu’unbiologiste soit vraiment enclin a utiliser une methode statistique s’il la considere commeune boıte noire dont il ne maıtrise ni le fonctionnement, ni les parametres. C’est pourquoil’usage des AG dans ce contexte est particulierement favorable. Le langage necessaire a lapresentation de ces methodes est tout de suite compris par les biologistes qui integrent bien

Page 22: Etude des Algorithmes génétiques et application aux

plus facilement les concepts parfois un peu ardus lies a ces methodes. Chaque etape, chaqueparametre de l’algorithme peut faire l’objet d’une analogie biologique. Cette methode a doncbeaucoup de chance d’etre rapidement adoptee par une equipe de biologistes meme s’ils nemaıtrisent pas tous les developpements theoriques que l’on peut faire autour des AG.

Les algorithmes genetiques : un outil puissant aux fon-

dements mathematiques solides

Nous venons de voir l’avantage des AG pour leur adoption par la communaute des bio-logistes. Mais, ce qui fait cette force devient plutot un handicap quand on se transpose dansl’univers des statisticiens. En effet, tout comme leur pendant biologique, les AG ont suscite lescepticisme dans la communaute scientifique. Aujourd’hui encore, beaucoup de statisticiensconsiderent les AG comme une boıte noire aux pouvoirs magiques dont on est incapable detheoriser le fonctionnement et a laquelle il serait donc illusoire, voire dangereux, de se fier.Certes, les articles montrant le succes de l’application des AG a des problemes d’optimisationde plus en plus complexes se sont multiplies. Mais il etait clair que, tant que ces methodesn’auraient pas donne la clef de leur fonctionnement, les statisticiens serieux se refuseraient ales utiliser. Bien que parfois limitant, un tel raisonnement a eu l’immense avantage de pous-ser les scientifiques a chercher a comprendre ce qui se passe reellement dans un algorithmegenetique du point de vue theorique.Cette recherche a ete difficile mais aujourd’hui, elle a rencontre un reel succes. Nous verronsdans la suite de ce travail que bien que les AG soient issus d’une transposition intuitive d’unconcept a l’efficacite demontree, ils s’appuient maintenant, en outre, sur une modelisationqui les rend beaucoup moins mysterieux. Cependant, ces resultats ne sont pas encore suf-fisamment connus et les prejuges sur les AG ont la vie dure. Nous esperons que ce travailparticipera a la diffusion de ces resultats et ainsi qu’a leur extension.

Deroulement de ce travail

La premiere partie de ce travail sera consacree a un travail de presentation des AG.Elle repose essentiellement sur des recherches bibliographiques mais nous avons tenu a enfaire une synthese qui constitue une introduction relativement complete aux AG. Dans cettepartie, nous detaillerons tout d’abord les differentes etapes de la mise en place d’un AG. Ilexiste de nombreuses variantes dans l’application de ces etapes, nous avons repertorie lesplus courantes et donne, quand cela etait possible, les avantages et inconvenients de chacuned’elles. Le paragraphe suivant est consacre a la revue de ce qui existe deja comme grandstypes de resultats pour la modelisation des AG et l’etude de leur convergence. Enfin, lesprincipaux membres de la famille des metaheuristiques seront presentes en parallele. Lesnotations ont ete volontairement homogeneisees pour l’ensemble de ces methodes afin depouvoir en realiser une comparaison. Pour cela, nous avons essaye de mettre en place unenomenclature commune qui nous permettra de faire ressortir les principales caracteristiquesdes differentes methodes, leurs originalites, leurs points communs et ainsi de voir si l’on peutfaire certains choix.

Page 23: Etude des Algorithmes génétiques et application aux

La partie suivante constitue le cœur des resultats sur l’application des AG aux donneesde proteomique. Ce developpement permettra de montrer que, meme si les AG sont desmethodes bien codifiees, leur mise en application ne doit jamais etre directe et necessitebeaucoup de reflexions sur le probleme d’optimisation dans son contexte. Notamment, laconstruction de la fonction a optimiser requiert beaucoup d’attention.Nous etudierons tout d’abord la recherche de biomarqueurs en spectrometrie de masseSELDI. Cette technique est utilisee pour reperer les differentes proteines d’un echantillonqui seront separees en fonction de leur poids et de leur charge electrique. Pour realisercette application, nous avons du developper une methode de traitement du signal : de l’ex-traction des pics a leur alignement entre differents spectres. Dans ce contexte, nous avonssurtout developpe une methode de discrimination originale qui prend en compte l’ensembledes caracteristiques des spectres de masse SELDI, la foret de branches, ce qui n’est tresgeneralement pas le cas dans les methodes appliquees par les biologistes a ce type de donnees.En effet, la methode prend en compte : la grande variabilite des donnees (jusqu’a 50 % pourl’ordonnee des spectres obtenus), la necessite d’utiliser l’information provenant de plusieurspics dans les spectres, la taille generalement faible des echantillons. La methode retenueutilise une serie d’arbres de decision a un seul nœud utilises en parallele. Les parametres(pics utilises, seuil choisi) sont optimises par l’AG. Cette methode sera appliquee a un jeude donnees classique de la litterature ainsi qu’a un jeu de donnees original. L’utilisation desAG en spectrometrie est egalement illustree sur des donnees differentes issues de la spec-trometrie proche infra rouge. Les methodes developpees dans cette partie ont donne lieu a lapublication de trois articles. L’autre grande technique d’analyse des donnees de proteomiqueest l’utilisation des gels d’electrophorese en deux dimensions. Un des principaux problemesde cette technique est sa difficulte de reproductibilite. Pour deux gels obtenus dans desconditions similaires, on observe toujours des distorsions qui empechent la superposition di-recte et donc la comparaison des resultats. Nous avons mis au point une nouvelle methoded’alignement des gels. Cette methode a pour but de realiser une serie de transformationslocales (aucune transformation globale ne serait assez precise). Le choix des zones utilise unpartitionnement de Voronoı qui repose sur le choix d’un certain nombre de points de reperes(facilement determines). Contrairement a la grande majorite des methodes d’alignement uti-lisees, notre methode n’utilise pas un gel de reference auquel seraient alignes tous les autresgels. Ce type de methodes est tres limitant. Pour depasser ce probleme, nous sommes partisde la methode Procuste generalisee que nous avons etendue pour l’appliquer a des tableauxde donnees pour lesquels on ne connaıt pas les appariements. La methode a ete testee surun jeu de donnees precedemment aligne a la main par un biologiste. Cette application seraegalement l’occasion d’aborder un premier aspect de la convergence des AG : l’observationde l’evolution des parametres au cours des generations et dans la population finale.

Enfin, la derniere partie de ce travail portera sur la caracteristique des AG la plusinteressante du point de vue theorique mais aussi pratique : la convergence. La premierepartie aura montre les resultats existants et dans cette partie nous nous concentrerons surce que nous avons tente d’apporter a ce domaine.Dans un premier paragraphe, nous utiliserons la modelisation par chaıne de Markov des po-pulations successives de l’AG avec elitisme ainsi qu’une reduction de l’espace d’etats proposeepar Bhandari et al. (1996) pour l’etendre au cas non homogene et a un type de mutationdifferent de ce que l’on considere generalement.Les demonstrations theoriques ont generalement l’inconvenient de ne pas donner de veritable

Page 24: Etude des Algorithmes génétiques et application aux

idee de la vitesse de convergence. Donc, meme si ces resultats sont rassurants, ils sont inutili-sables en pratique. Par ailleurs, d’un point de vue pratique, les criteres de convergence utilisespour arreter les AG sont tres insatisfaisants : nombre de generations maximum atteint, tempsde calcul maximum atteint, plus d’evolution significative de la fonction optimisee,. . . Danstous les cas, de nombreux reglages sont necessaires et les criteres doivent etre adaptes pourchaque nouvelle application. En outre, ces criteres sont purement empiriques et ne reposentsur aucun fondement theorique. Le critere que nous avons construit a pour but de realiserun compromis entre les developpements theoriques inapplicables en pratique et les criteresa vue de nez generalement employes. Pour cela, nous avons construit une nouvelle chaınede Markov qui compte, dans les dernieres populations, le nombre d’occurrences de la solu-tion localement optimale. L’observation a l’origine de ce critere est le fait qu’une solutionreellement optimale va pouvoir envahir la population. Nous verrons que ce critere ne peutgarantir d’obtenir l’optimum global (c’est le prix a payer pour avoir un critere applicable enpratique !) mais il repose sur une modelisation reelle du fonctionnement de l’AG qui pourraitdonner des resultats interessants. Ce critere a ete teste sur differents AG que nous avons misau point par ailleurs. Les conditions d’applicabilite de ce critere sont egalement etudiees.Le dernier paragraphe repose sur une derniere observation qui nous a montre l’influencede l’envahissement de la population par un sous-optimum qui peut empecher une bonneemergence d’un meilleur optimum et donc empecher d’utiliser correctement le critere deconvergence dont nous venons de parler. Pour resoudre ce probleme, nous sommes retournesa la biologie et nous avons construit un AG qui mime le phenomene de catastrophe naturelleet d’episodes de grandes extinctions qui ont parseme l’histoire de l’evolution des especes.Cette methode sera appliquee a un probleme de classification non supervisee.

Page 25: Etude des Algorithmes génétiques et application aux
Page 26: Etude des Algorithmes génétiques et application aux

Premiere partie

Presentation des algorithmesgenetiques

9

Page 27: Etude des Algorithmes génétiques et application aux
Page 28: Etude des Algorithmes génétiques et application aux

Chapitre 1

De l’evolution des especes al’optimisation mathematique : etapesde l’algorithme genetique

Comme nous l’avons developpe dans l’introduction, les origines des AG sont assez intui-tives. Mais nous allons voir qu’ils impliquent des aspects assez techniques. En effet, danscette partie, nous allons tout d’abord detailler les differentes etapes de la mise en place d’unalgorithme genetique : nous etudierons le codage, l’initialisation et les operateurs de muta-tion, de croisement et de selection. Nous presenterons ensuite les resultats existants sur lamodelisation des AG. Finalement, nous considererons quelques representants majeurs de lafamille dont font partie les AG : les metaheuristiques.

Bien qu’elle n’etait pas l’objectif premier des AG, l’optimisation represente aujourd’huil’ecrasante majorite des applications des AG. C’est cet usage que nous allons considerer.Dans cette partie, nous allons considerer comme probleme d’optimisation, la maximisationd’une fonction objectif f (l’espace X sera defini en detail dans les paragraphes suivants) :

f : X → R.

Il va de soi que les adaptations permettant la minimisation d’une telle fonction est immediat.

IllustrationAfin de mieux comprendre la mise en place des differentes etapes de l’AG, nous allons utiliserune application simple. Cette application concerne l’Analyse en Composantes Principales diteSimple (Vines, 2000; Rousson & Gasser, 2004) notee SCA (Simple Component Analysis).Cette methode consiste a rechercher des combinaisons lineaires des variables de depart sousforme d’entiers de sorte a optimiser le critere classique de l’ACP (maximisation de l’inertiede chaque axe). On nomme axes le vecteurs contenant les coefficients et composantes lesvecteurs obtenus en appliquant ces coefficients aux variables de depart : si on note X lamatrice des donnees de depart, ci = Xai, ou ai est le ieme axe et ci la ieme composante.L’objectif est d’obtenir des composantes dont l’interpretation vis-a-vis des variables de departest simple. Nous allons montrer dans les paragraphes suivants que cette problematique esttout a fait adaptee a une resolution par AG, ce qui conduit a une methode que nous avonsappelee GA-SCA.

11

Page 29: Etude des Algorithmes génétiques et application aux

12 Etapes de l’algorithme genetique

1.1 Le codage : du probleme biologique a l’optimisa-

tion mathematique

Une des grandes avancees du neodarwinisme a ete le decryptage du code genetique. Cettedecouverte a revele une chose extremement surprenante : toute la complexite du monde vi-vant etait codee par un alphabet de quatre lettres (A, C, T et G) utilise pour construiredes mots de trois lettres seulement (chaque mot code pour un acide amine, constituantelementaire des proteines). Notons que ce code, qui est le plus simple, est loin d’etre le seuldans le monde vivant. La premiere difficulte d’un AG est egalement de realiser un codagedes solutions, c’est-a-dire de passer d’une solution dans le domaine d’application (la biologiedans notre cas) a une solution dans le domaine des AG.Afin de pouvoir appliquer les operateurs, chaque solution doit etre completement definie parun vecteur numerique. Un premier travail doit donc etre realise, en collaboration avec lesexperts du domaine, pour extraire des solutions du domaine d’application ce qui doit etreutilise pour caracteriser les solutions dans l’espace des solutions des AG.Pour construire l’espace des solutions des AG, on a besoin de se munir d’un alphabet A.Chaque solution pourra alors etre representee par un vecteur x ∈ Al ou l est la longueurnecessaire au codage. Cette longueur depend de card(A) et de l’espace d’application. Eneffet, plus les solutions dans l’espace d’application sont complexes (beaucoup d’informationa prendre en compte), plus la longueur necessaire au codage sera importante. De meme, pourune meme complexite des solutions, moins l’alphabet comportera d’elements, plus l devraetre grand pour coder la meme information.En outre, l’espace d’application peut impliquer des contraintes qui font que tous les vecteursde Al ne representent pas des solutions valables. On note alors X ⊆ Al l’espace des solutionsde l’AG restreint aux solutions valables.

Historiquement, le codage choisi etait le codage binaire. Tout d’abord, l’analogie avecla structure de l’ADN et le codage en quatre bases est immediate. De plus, l’applicationdes operateurs est tres simple car un 1 ne peut devenir qu’un 0 et inversement. Hollandconsiderait en fait que le codage binaire etait optimal. Il a enonce cela sous la forme duPrincipe de l’Alphabet Minimum qui indique globalement que l’on a plus de possibilitesd’encodage avec un alphabet de cardinalite minimale, c’est-a-dire de cardinalite deux, doncun codage binaire. La demonstration de ce principe repose sur la theorie des schemas (Hol-land, 1975). Cependant, aujourd’hui cet argument a ete invalide, notamment par Antonisse(1989) qui a montre que la notion de schema a ete specialement pensee par Holland pour lecodage binaire et que sa signification pour un autre codage doit etre revue. Ceci rend abusivetoute conclusion decoulant de la theorie des schemas de Holland pour un codage autre quebinaire.On peut considerer que l’usage des AG sous forme binaire est plus simple, notamment ence qui concerne la modelisation. Pendant longtemps en effet, les seuls resultats theoriquesdisponibles sur les AG ne concernaient que le codage binaire (Cerf, 1994). De plus, pour cequi est de l’estimation d’une taille de population minimale, une des conditions possibles estque chaque point de l’espace des solutions doit pouvoir etre atteint uniquement par croise-ment des individus de la population initiale. Pour cela, il faut qu’a chacune des l positions(appelees loci dans Holland (1975)), toutes les valeurs possibles soient presentes dans la po-pulation initiale. Si on a un codage binaire, il n’y a que deux valeurs possibles par locus ce

Page 30: Etude des Algorithmes génétiques et application aux

1.2 L’initialisation : une etape dependante du probleme 13

qui reduit considerablement la taille de la population necessaire pour satisfaire ce principe.Il y a donc un certain nombre d’arguments en faveur du codage binaire.Cependant, il existe maintenant des resultats theoriques qui s’appliquent quel que soitcard(A) (Bhandari et al., 1996). De plus, le codage par valeurs reelles ou entieres, parexemple, permet une longueur de codage l bien plus reduite et le temps de calcul peutalors diminuer significativement. En outre, le codage binaire impose, pour la plupart desproblemes, une sorte de deuxieme couche de codage. En effet, il faut tout d’abord tra-duire un probleme dans le domaine d’application en un vecteur numerique mais ce vecteurnumerique est rarement directement binaire. Il faut donc, la plupart du temps, recoder lesvariables obtenues sous forme binaire. Si on a beaucoup de variables a coder et que l’on veutune certaine precision, on obtient rapidement des longueurs de codage l tres importantes.Toutefois, le choix du codage reste un probleme ouvert. Certains articles ont montre unesuprematie empirique du codage binaire (Rees & Koehler, 1999) alors que d’autres (Janikow& Michalewicz, 1991) ont montre le contraire. Il semble que la pertinence du choix du codagedepend fortement du probleme, specialement de la complexite des solutions a coder et de laprecision desiree.Dans les applications qui suivront, nous avons choisi d’utiliser un codage direct, sans passerpar le codage binaire.

IllustrationPour ce qui concerne GA-SCA, une solution dans l’espace d’application est representee parp entiers qui correspondent aux coefficients appliques aux p variables de depart pour obtenirles composantes. Le codage est donc tres simple dans ce cas, une solution consistera en unvecteur de p entiers. On a donc ici, A = Z. Avec ce codage, on aura l = p alors que si onavait fait un codage binaire, cette longueur aurait ete bien superieure.

1.2 L’initialisation : une etape dependante du probleme

L’objectif de l’etape d’initialisation est de choisir un ensemble de solutions potentielles auprobleme d’optimisation pose. En fait, chaque solution potentielle va representer un individu(dit aussi chromosome dans la terminologie de Holland (1975)). Tous ces individus vont etrerassembles dans ce que l’on nommera la population initiale.Deux questions principales se posent lors de la construction de cette population initiale :

– Quel doit etre le nombre Tpop d’individus dans la population initiale ?– Comment doit-on generer les solutions initiales ?

Pour ce qui est du nombre d’individus (ou taille de la population), on peut a nouveaufaire l’analogie avec l’evolution des especes, il a ete observe qu’une petite population peutevoluer beaucoup plus vite qu’une population plus importante. En effet, si un caracterefavorable est present chez un ou plusieurs individus de la population, ce caractere pourrarapidement se propager (par la reproduction) dans une population de taille reduite alors qu’ilfaudra beaucoup de temps pour qu’il se repande dans une grande population. Cependant, unepopulation de taille importante est un reservoir de plus grande diversite genetique qui permetune possibilite d’adaptation a une plus grande diversite de situations environnementales.Dans le cas des AG, nous devons egalement realiser un compromis entre deux objectifscontradictoires : minimiser le temps de calcul et limiter le risque d’obtenir un optimumlocal. Concernant le temps de calcul, il depend evidemment du nombre d’individus dans

Page 31: Etude des Algorithmes génétiques et application aux

14 Etapes de l’algorithme genetique

la population. En effet, comme nous le verrons par la suite, chaque operateur (mutation,croisement et selection) s’applique a un individu ou a un petit groupe d’individus. Ainsi,plus on aura d’individus dans la population, plus il faudra appliquer les operateurs et doncaugmenter le temps de calcul. Quant au probleme des optima locaux, plus la population estgrande, plus on a de chances de bien explorer l’espace des solutions et moins on a de chancesd’avoir de grandes zones de cet espace inexplorees. On doit donc realiser un equilibre entreces deux objectifs.Il est assez evident que, plus la longueur d’un individu, l, sera grande plus il faudra quela taille de la population soit importante pour assurer une meme qualite d’exploration del’espace des solutions. Certains se sont interesses a une determination de la dependance entretaille optimale de la population et longueur des individus.Par la theorie des schemas, Goldberg (1985, 1989a) a conclu, globalement, que la taille dela population devait suivre une fonction exponentielle de la longueur des individus. . . cequi peut rapidement conduire a des tailles de population tres importantes. En utilisant unautre point de vue, Goldberg et al. (1992) ont finalement deduit qu’une dependance lineairesuffisait, ce qui, dans certains cas, peut deja se traduire par de grandes tailles.Nous avons vu dans la partie 1.1 que certains utilisaient un critere bien precis pour deciderde la taille minimale de la taille de la population : il faut que tous les points de l’espacedes solutions puissent etre atteints en utilisant uniquement le croisement sur les solutionsde la population initiale. Cela impose que toutes les valeurs possibles (nommees alleles parHolland (1975)), pour chaque locus, soient presentes dans la population initiale. Pour uncodage binaire, cette taille minimale peut etre determinee par (Reeves & Rowe, 2003) :

N ≈ ⌈1 + log(−l/lnP1)/log2⌉ ,

ou P1 est la probabilite souhaitee de trouver au moins une fois chaque allele pour chaquelocus. Par exemple, pour l = 50 et P1 = 0.999, on obtient N = 17.Suivant ce principe, il est evident que plus la cardinalite de l’alphabet est importante plus lataille de la population doit etre grande. Cependant, ce principe ne tient pas du tout comptede l’effet de la mutation qui, on le verra dans la suite, est primordial.

Le deuxieme probleme de la construction de la population initiale est la methode degeneration des individus. D’un point de vue general, on peut dire qu’une heterogeneitemaximale est souhaitable (analogue avec la diversite genetique des populations). En ef-fet, plus la population initiale sera heterogene, plus la proportion de l’espace des solutionsexploree sera importante et donc, moins on aura de risque de manquer l’optimum global.Cette heterogeneite peut etre generee aleatoirement ou de facon plus deterministe.Pour la methode aleatoire, cela consiste a choisir chaque allele initial dans A. Ce choix peutetre fait de maniere uniforme ou en favorisant certains alleles si l’on dispose d’une informa-tion prealable. Il convient naturellement de s’assurer de la qualite du generateur de sequencespseudo-aleatoires utilise. Plus card(A) est important plus le generateur doit etre performant.On peut egalement utiliser une methode plus systematique de generation d’heterogeneite,notamment si l’on veut se rapprocher du principe de presence de tous les alleles pour chaquelocus dans la population de depart. Par exemple, il est possible d’utiliser la generalisationde l’hypercube latin (McKay et al., 1979).Le principe d’heterogeneite de la population initiale est tout a fait recommande dans laplupart des cas, on peut meme dire qu’il est possible dans tous les cas. Cependant, quandon a des informations a priori sur les solutions a obtenir, on peut tout a fait utiliser cette

Page 32: Etude des Algorithmes génétiques et application aux

1.2 L’initialisation : une etape dependante du probleme 15

information pour accelerer la convergence de l’algorithme et donc reduire le temps de calcul.Cette technique est a double tranchant car si l’information a priori est mauvaise, on peutconverger rapidement vers un optimum local et manquer l’optimum global. Cette methodedoit donc etre utilisee avec precaution.Enfin, on peut decider de faire un melange des deux techniques en generant de facon touta fait aleatoire une partie de la population mais en introduisant aussi des solutions a prioribonnes. L’information a priori peut alors etre utilisee de differentes facons : on peut intro-duire directement les solutions identifiees ou generer des solutions dans leur voisinage (soiten fixant certains loci et en laissant les autres libres, soit en definissant un voisinage autourde chaque locus).En conclusion, la generation aleatoire peut etre utilisee dans toutes les situations et doitetre preferee quand on n’a pas d’information a priori fiable. Si toutefois une telle informa-tion est disponible, il peut etre judicieux de s’en servir afin d’accelerer la convergence de l’AG.

IllustrationRevenons au cas de GA-SCA. Nous ne disposons pas d’information a priori sur les valeursdes coefficients entiers a appliquer aux variables de depart. Cependant, notre objectif estd’obtenir des resultats interpretables. On a donc tout a fait interet a avoir des coefficientsassez petits. Par exemple, une solution qui contiendrait des zeros, des uns et des deux seraittout a fait simple a interpreter : certaines variables ne joueraient aucun role (coefficient zero)et d’autres variables (coefficient deux) auraient deux fois plus d’influence que les dernieres(coefficient un). Mais on pourrait tout aussi bien coder la meme information avec des zeros,des 1989 et des 3978. Cependant, toute l’information interpretable peut etre codee avec desentiers petits (en valeur absolue). En effet, qu’une variable ait un coefficient mille fois ou1400 fois plus grand qu’une autre ne modifie pas significativement l’interpretation. On peutdonc coder les rapports d’influence des variables en utilisant des entiers relatifs assez petits.Afin de se rapprocher de telles solutions, nous avons choisi d’initialiser les Tpop solutionsavec le meme vecteur de p uns. Certes, ce type d’initialisation ne permet pas une bonneexploration de l’espace des solutions mais il nous semble que cette methode porte un reelsens. Ainsi, au depart, chaque variable joue le meme role dans la construction des axes, c’estle cas le moins informatif, et petit a petit, on fait varier ce role. Alors, chaque changement surun des coefficients aura des consequences importantes sur la qualite de la solution obtenuealors que si on change un 1000 en 1001, les solutions obtenues seront tres proches. De plus,dans l’ensemble des exemples que nous avons traites, nous n’avons jamais obtenu de tresgros coefficients et ces coefficients sont generalement centres autour de 0. Il semble donc quepartir d’un vecteur de uns constitue une initialisation qui limite le chemin vers n’importequelle solution de ce type. Il serait evidemment possible de partir d’une initialisation plusheterogene mais dans les exemples que nous avons traites, la methode decrite ci-dessus a eteefficace.On voit bien ici, l’importance de la maıtrise du probleme de depart pour construire dessolutions initiales pertinentes et les plus a meme d’evoluer vers des solutions interessantes.

Page 33: Etude des Algorithmes génétiques et application aux

16 Etapes de l’algorithme genetique

1.3 L’operateur de mutation : l’explorateur de l’espace

des solutions

Le terme meme de mutation vient directement de la biologie. Il designe des change-ments dans la sequence de l’ADN des individus. Cette mutation peut etre due a des facteursexterieurs (radiations, produits chimiques,. . .) ou resulter d’erreurs non corrigees apparueslors de la duplication de l’ADN. Ces mutations ont des consequences plus ou moins impor-tantes suivant les organes qu’elles atteignent (une mutation affectant un gamete pourra etretransmise aux descendants de l’individu, ce qui n’est pas le cas pour une autre cellule) et lesconsequences sur les proteines issues de la traduction des sequences mutees. Certaines n’ontaucune consequence, d’autres conduisent a des proteines non fonctionnelles et enfin certainesinduisent la construction de proteines aux nouvelles fonctions. Ce sont ces dernieres qui sontles plus interessantes car elles peuvent permettre l’apparition de nouvelles adaptations chezles individus. Notons egalement l’existence de mutations portant sur des zones du genomequi regulent la transcription dont les consequences peuvent etre tout aussi importantes. Cequ’il faut bien garder a l’esprit, c’est que ces mutations sont tout a fait aleatoires et resultentde phenomenes qui tiennent de l’erreur. Il faut donc realiser de nombreuses mutations pouren obtenir une seule qui aura des consequences favorables.Dans le domaine des AG, nous allons tenter de reproduire le meme genre de mecanisme. Dansnotre cas, l’operateur de mutation permet d’introduire l’alea necessaire a une explorationefficace de l’espace des solutions. En effet, il va permettre d’introduire des valeurs pour lesalleles qui n’etaient pas forcement presentes a un locus dans la population de depart. On voitdonc qu’en utilisant la mutation, il n’est pas necessaire de construire une population initialecontenant tous les alleles a tous les loci. De plus, l’operateur de mutation va permettre, toutau long de l’algorithme de maintenir une certaine homogeneite dans la population et ainsi,d’eviter une convergence trop rapide vers un optimum local.Les mutations ne s’appliquent pas a tous les individus de la population a chaque generation.On definit un taux de mutation qui indique quelle proportion moyenne de la population doitsubir une mutation. Le taux de mutation peut s’appliquer a differents niveaux. En effet, onpeut appliquer le taux de mutation a chaque locus ou globalement, pour chaque individu.De meme, le taux de mutation peut etre constant et defini pour tout l’algorithme mais onpeut aussi decider de le faire varier. Dans le cas d’un taux de mutation non constant, onpeut le faire dependre du locus (Fogarty, 1989), de la diversite de la population (mesuree parl’ecart-type de la valeur de la fonction a optimiser dans la population) (Reeves, 1995). Onpeut aussi faire varier le taux de mutation dans le temps (Pittman, 2002) afin de controlerl’heterogeneite dans la population. En effet, au debut de l’algorithme, on a tout interet afavoriser une bonne exploration de l’espace des solutions et donc a avoir un taux de mutationeleve. Ensuite, pour permettre a l’AG de converger, on peut diminuer le taux de mutation.Enfin, pour permettre a l’algorithme de sortir d’un eventuel optimum local, on peut appli-quer un taux de mutation plus eleve vers la fin de l’algorithme. La gestion de ces parametresconcernant le taux de mutation doit etre adaptee au probleme d’optimisation.Pour ce qui est de l’application de l’operateur de mutation, elle depend du codage adopte.En effet, si le codage binaire est utilise, le un ne peut devenir qu’un zero et reciproquement.Alors que si on utilise un codage avec card(A) ≥ 3, des choix doivent etre faits. Globalement,si on a decide de le muter, on peut autoriser un locus a prendre uniformement toutes lesvaleurs possibles de A ou imposer une structure de voisinage autour de l’ancienne valeur.

Page 34: Etude des Algorithmes génétiques et application aux

1.4 L’operateur de croisement : le catalyseur 17

L’utilisation de mutations completement libres permet une meilleure exploration de l’espacedes solutions, cependant, comme pour l’initialisation de la population, si on dispose d’uneinformation a priori concernant le probleme d’optimisation, on peut restreindre les possi-bilites afin d’obtenir une convergence plus rapide. Dans ce cas, on a toujours le risque, sil’information n’est pas pertinente, de guider l’AG vers un optimum local.Il est tres important de garder a l’esprit que l’operateur de mutation agit de facon tout a faitaleatoire, tant pour le choix des individus et des loci qui subissent la mutation que pour lechoix de la nouvelle valeur. On n’a donc aucune garantie concernant la qualite de la solutionobtenue, on peut tout aussi bien avoir degrade qu’ameliore la solution initiale par rapport ala solution a optimiser.

IllustrationNous avons vu dans le paragraphe 1.1 que, pour GA-SCA, on avait A = Z. On est doncdans le cas ou l’on doit faire un choix quant a la structure de voisinage autorisee pour lamutation d’un locus (card(A)). Or, d’apres le paragraphe 1.2, nous savons que la populationde depart est initialisee avec des vecteurs composes de uns et que, dans ce cas, le moindrechangement de valeur d’un locus a d’importantes repercussions sur les solutions obtenues.Il a donc ete decide de n’autoriser que deux mutations pour un locus : si l’allele present surle locus est z alors, apres mutation, il prendra soit la valeur z + 1, soit la valeur z − 1 avecequiprobabilite. La solution obtenue remplace la solution de depart.Pour ce qui de la definition du taux de mutation, chaque locus d’une solution a le meme sensque les autres, le taux de mutation s’applique donc uniformement, sur chaque locus. Danscette application, nous avons choisi un taux de mutation constant au cours des generations.

1.4 L’operateur de croisement : le catalyseur

Lors de la presentation de l’emergence des AG, nous avons indique que l’operateur de croi-sement (cross over en anglais) etait apparu, dans les precurseurs des AG, posterieurementa l’operateur de mutation. Cela suivait tout a fait la progression de la pensee chez lesevolutionnistes. Dans Holland (1975), le croisement occupait au contraire la place centraleet, de nos jours, chez certains auteurs, l’operateur de mutation est considere comme secon-daire. Cependant, quand on raisonne en termes de modelisation et de convergence des AG,ce raisonnement semble difficile a tenir.L’objectif de l’etape de croisement est de combiner les alleles de plusieurs individus. Nousverrons dans la suite que, grace a l’operateur de selection, les solutions de la population sontcensees etre de plus en plus performantes au sens du probleme d’optimisation. On peut doncesperer, en combinant les caracteristiques de solutions performantes, obtenir des solutionsencore plus performantes.Il va de soi que, tout comme pour les mutations, les consequences de l’operateur de croisementsont aleatoires. On peut tout a fait, par l’echange d’alleles de solutions tres performantes,generer des solutions mediocres. En effet, il existe, la plupart du temps, une interaction entreles variables codees dans le calcul de la fonction a optimiser, alors, changer les associationsentre alleles peut detruire cette interaction.C’est exactement ce qui se passe dans la nature, pour toutes les especes se reproduisant defacon sexuee. Dans la reproduction sexuee, chacun des parents transmet la moitie de songenome a sa descendance. Cette moitie est choisie de facon aleatoire lors de la fabrication

Page 35: Etude des Algorithmes génétiques et application aux

18 Etapes de l’algorithme genetique

des gametes. Differents mecanismes interviennent dans ce choix (dont un appele crossover)de sorte a ce qu’il y ait un nombre extremement important de possibilites. Choisir la repro-duction sexuee, c’est prendre le risque de perdre une bonne partie d’un genome performant,puisque porte par un individu qui a ete capable de se reproduire. C’est donc un pari surl’avenir. En effet, dans le monde vivant terrestre, les especes les plus evoluees ou du moinscomplexes sont celles qui pratiquent la reproduction sexuee et qui se donnent la possibilitede faire apparaıtre de nouvelles combinaisons de genes. La reproduction sexuee est un grandgenerateur de diversite donc de possibilites d’adaptation.Dans le domaine des AG, l’application concrete de l’operateur de croisement est bien moinssimple que pour l’operateur de mutation (cette partie est inspiree de Reeves & Rowe (2003)).De nombreuses options sont possibles. Il faut tout d’abord choisir combien d’individus (lesparents) seront croises et combien d’individus (les enfants) resulteront de ce croisement.Dans ce travail, nous allons uniquement considerer le cas, tres courant dans les AG ou deuxparents engendrent deux enfants. Cette methode permet de conserver une taille de popu-lation constante, si on remplace les parents par les enfants. Ensuite, on doit decider despositions pour lesquelles on va echanger les alleles des deux parents.

Le cas le plus elementaire est le croisement a un point. Cela consiste simplement a choisirun locus parmi les l possibles comme point de croisement et a intervertir entre les parentsles alleles des loci qui se trouvent apres le point de croisement. Prenons un exemple etconsiderons les deux parents suivants, P1 et P2, pour l = 6 :

P1 = (a1, a2, a3, a4, a5, a6) × P2 = (b1, b2, b3, b4, b5, b6).

Si on choisit comme point de croisement le quatrieme locus, on obtient les enfants suivants,E1 et E2 :

E1 = (a1, a2, a3, a4, b5, b6) et E2 = (b1, b2, b3, b4, a5, a6).

Comme souligne par Eshelman et al. (1989), le probleme majeur du croisement a un point,c’est qu’il permet peu la dissociation des loci contigus. C’est ce que Eshelman et al. (1989)appellent le phenomene du biais positionnel. Les loci voisins ont tendance a rester ensemble.Or, il n’y a aucune raison pour que cela soit favorable a l’optimisation. Le croisement a unpoint ne semble donc pas etre la solution ideale.

On peut egalement envisager un croisement a points multiples : il s’agirait de genererplusieurs points de croisement et d’intervertir les fragments obtenus. Si on a suffisamment depoints de croisement, le biais positionnel sera reduit. Le croisement uniforme represente unesorte de generalisation du croisement a points multiples. Il consiste a generer un vecteur c delongueur l. A chaque position de ce vecteur, on affecte aleatoirement une valeur zero ou unpar une distribution de Bernoulli. Si la valeur du parametre de cette loi est 0.5, on a la memecontribution des deux parents mais on peut tout a fait jouer sur ce parametre pour favoriserles caracteristiques de l’un des parents (par exemple, en fonction de leur valeur relative, parrapport a la fonction a optimiser). On construit un vecteur c qui est le complement de c.On obtient alors la descendance de la maniere suivante :

E1 = c⊗ P1 ⊕ c⊗ P2 et E2 = c⊗ P1 ⊕ c⊗ P2,

ou ⊕ et ⊗ sont respectivement l’addition et la multiplication element par element.

Page 36: Etude des Algorithmes génétiques et application aux

1.4 L’operateur de croisement : le catalyseur 19

Fig. 1.1 Pseudo-code du croisement a n points generalise.

On choisit aleatoirement un entier n ∈ 1, 2, . . . , l − 1.On choisit aleatoirement n points de croisement.On obtient n + 1 fragments.On genere une permutation aleatoire σ = (σ1, σ2, . . . , σn+1) de (1, 2, . . . , n + 1).On designe un des parents.pour i = 1, . . . , n + 1 faire

On copie tous les alleles compatibles du fragment σk provenant du parent designe.On change de parent designe.

finsi l’enfant produit est incomplet alors

On insere les alleles compatibles pour les loci requis.fin.

Cependant, il existe au moins un cas ou aucune des methodes decrites ci-dessus n’est pasapplicable : le cas ou un individu represente une permutation (cas du fameux probleme duvoyageur de commerce). Par exemple, on peut rechercher a optimiser la permutation des en-tiers de 1 a 7. Dans ce cas, on pourrait avoir deux solutions qui soient P1 = (1, 6, 4, 2, 3, 5, 7)et P2 = (6, 4, 3, 2, 5, 7, 1). Si on appliquait a ces parents un croisement a un point ou le pointde croisement serait la deuxieme position, on obtiendrait les enfants, E1 = (1, 6, 3, 2, 5, 7, 1)et E2 = (6, 4, 4, 2, 3, 5, 7). Il est evident que l’on n’obtient pas des permutations. En effet, E1

comporte deux fois le un et E2, deux fois le quatre. Les permutations ne sont qu’un exempleet de nombreux autres codages se heurtent a ce type de probleme. Radcliffe & Surry (1995)ont propose un formalisme (Fig. 1.1) qui permet d’englober toutes les methodes de croise-ment. On peut appeler cela, le croisement a n points generalise.

Pour l’illustrer reprenons l’exemple des permutations avec P1 = (1, 6, 4, 2, 3, 5, 7) et P2 =(6, 4, 3, 2, 5, 7, 1) comme parents. Admettons que l’on ait choisi n = 2 avec comme points decroisement, les loci 3 et 5. Chaque parent se retrouve alors divise en n+1 = 3 fragments. Onchoisit σ = (3, 1, 2) et on designe le parent P1. Pour i = 1, on n’a pas encore insere d’allelesdonc tous sont compatibles (pas de double possible). On copie le fragment σ1 = 3 de P1,c’est-a-dire (5, 7), on obtient :

(−,−,−,−,−, 5, 7).

Pour i = 2, on travaille avec P2 et le fragment σ2 = 1, soit (6, 4, 3), aucun de ces alleles n’estdeja present dans l’enfant, tout est donc compatible, on obtient :

(6, 4, 3,−,−, 5, 7).

Enfin, pour i = 3, on travaille a nouveau avec P1 et on choisit le fragment σ3 = 2, c’est-a-dire(2, 3). L’allele 3 est deja present dans l’enfant, on ne peut donc pas l’inserer a nouveau, onn’insere que le 2 qui, lui, n’est pas encore present, on obtient :

(6, 4, 3, 2,−, 5, 7).

Enfin, on complete avec le seul allele compatible pour la derniere position, le 1. Finalement,on a :

E1 = (6, 4, 3, 2, 1, 5, 7).

Page 37: Etude des Algorithmes génétiques et application aux

20 Etapes de l’algorithme genetique

Fig. 1.2 Pseudo-code de l’application de l’operateur de croisement pour pc fixe.

On genere une permutation aleatoire σ = (σ1, σ2, . . . , σTpop) de (1, 2, . . . , Tpop).

pour i = 1, . . . , (Tpop/2) faireOn genere µ uniformement dans [0, 1].si µ ≤ pc faire

On applique le type de croisement choisi avec pour P1 le (σ2i−1)eme

individu de la population et pour P2, le (σ2i)eme .

finfin

Pour obtenir le deuxieme enfant, on peut appliquer les memes parametres mais en changeantl’ordre de designation des parents. Pour i = 1, on extrait le fragment (7, 1) de P2, on obtient :

(−,−,−,−,−, 7, 1).

Pour i = 2, on extrait le fragment (1, 6, 4) de P1, mais l’allele 1 est deja present dans l’enfant,on n’insere donc que le 6 et le 4, on obtient :

(−, 6, 4,−,−, 7, 1).

Pour i = 3, on extrait le fragment (2, 5) de P2, tous les alleles sont a nouveau compatibles,on obtient donc :

(−, 6, 4, 2, 5, 7, 1).

Il ne reste alors plus qu’a completer par l’allele manquant et finalement,

E2 = (3, 6, 4, 2, 5, 7, 1).

Cette methode a l’avantage de pouvoir s’appliquer quel que soit le cas de figure avec,eventuellement, la necessite d’ajouter de l’alea quand il est necessaire de completer l’enfantobtenu dans la derniere etape. Dans notre exemple, il ne manquait qu’un allele a la derniereetape, il n’y avait donc qu’une seule possibilite. Mais s’il manque plusieurs alleles, plusieurspositions sont possibles pour chaque allele et on peut alors les repartir aleatoirement.

Une fois que l’on a choisi le type de croisement a realiser, il faut, comme dans le cas de lamutation, decider quels individus de la population subiront le croisement. Il est necessaire dedefinir un taux de croisement pc : en moyenne, Tpop× pc individus de la population subirontle croisement. Pour appliquer l’operateur de croisement, dans le cas ou Tpop est pair, nousavons choisi la methode decrite dans la Fig. 1.2.

Notons a nouveau que le nombre d’enfants obtenus par croisement n’est pas forcementegal au nombre de parents, on peut n’en generer qu’un, ou en choisir un au hasard parmiceux generes ou encore choisir le meilleur des enfants generes selon un critere comme lavaleur du critere a optimiser, la diversite de la population,. . . on peut alors, ou non, garderun des parents.Il est aise de constater, en etudiant le mode d’action de l’operateur de croisement, que l’effetde son application sur les individus de la population est tout a fait aleatoire du point de vuedu critere a optimiser. Comme pour l’operateur de mutation, il est impossible de prevoir a

Page 38: Etude des Algorithmes génétiques et application aux

1.5 L’operateur de selection : la seule etape intelligente 21

l’avance si l’application du croisement va produire des individus plus ou moins performantsque les parents dont ils sont issus.Nous avons indique dans le titre de cette partie que nous considerons l’operateur de croise-ment comme un catalyseur. En effet, il va permettre, pour des alleles presents, d’accelererl’optimisation de leur combinaison. Cette propriete sera detaillee dans le paragraphe 1.3.5.

IllustrationLe cas de GA-SCA est particulier du point de vue des croisements car, comme nous l’avonsvu, plusieurs chromosomes peuvent designer exactement la meme solution : par exemple,(1, 0,−1, 1, 2, 1) est tout a fait equivalente a (10, 0,−10, 10, 20, 10). Or, si on croise ces deuxsolutions, on n’obtient pas du tout une solution equivalente. Pour resoudre ce probleme, onpeut, pour chaque solution, diviser chaque locus par le plus grand denominateur communde l’ensemble des loci du chromosome. Dans ce cas, on n’a plus aucun probleme pour ap-pliquer l’operateur et tous les types de croisements decrits dans les paragraphes precedentspeuvent etre utilises. Le croisement uniforme, par exemple, semble tout a fait adapte. Apresapplication du croisement, les deux enfants remplacent les parents.

1.5 L’operateur de selection : la seule etape intelli-

gente

Dans le cadre de la theorie de l’evolution, on parle de selection naturelle. Cette notionrecouvre le fait qu’un individu bien adapte a son environnement aura plus de chances de sur-vivre. et surtout de se reproduire, donc de transmettre ses genes. Mais, dans ce probleme d’op-timisation, il est assez difficile de definir l’analogue d’une fonction optimisee par l’evolution,fonction que Dawkins (1995) appelle fonction d’utilite de Dieu. Des les premieres observa-tions, on peut constater que toute idee liee a une quelconque morale doit etre definitivementecartee. En fait, il semble a Dawkins et a d’autres evolutionnistes que le but de la vie de facontres generale est certes de survivre, mais surtout d’avoir assez d’atouts pour avoir le tempsde se reproduire (ce qui peut sembler une bonne justification de la mortalite des etres vivantsqui n’ont plus d’utilite apres s’etre reproduits). On peut donc penser que, finalement, c’est lasurvie des genes qui est maximisee par la selection naturelle. Une vision assez effrayante quine ferait des etres vivants que des vecteurs temporaires au service de leurs genes. A mediter. . .

Revenons aux AG. Nous avons deja vu que, dans notre contexte, l’objectif de l’AG estl’optimisation d’une fonction d’interet. Or, jusqu’a maintenant, les operateurs que nous avonsdecrits avaient uniquement un role exploratoire sans discrimination des solutions obtenues.C’est l’operateur de selection qui va permettre d’evaluer les solutions obtenues apres ap-plication de la mutation et du croisement, en fonction de leur valeur pour le problemed’optimisation. La premiere etape pour pouvoir appliquer l’operateur de selection est doncde definir la fonction a optimiser, la fonction d’utilite de l’AG.

1.5.1 Construction de la fitness

Le fonction objectif a deux buts : optimiser la fonction d’interet et prendre en compted’eventuelles contraintes liees au probleme d’optimisation. Nous allons donc distinguer la

Page 39: Etude des Algorithmes génétiques et application aux

22 Etapes de l’algorithme genetique

fonction liee au probleme d’optimisation de depart, que nous nommerons fonction objectifet la fonction complete qui sera reellement optimisee par l’AG que l’on appelle fitness. Lafonction objectif est plus ou moins simple a determiner, cela depend du probleme pose. Danscertains cas (classification, regression,. . .), elle est evidente, mais dans d’autres cas (cf. partieII), le choix de la fonction objectif represente la plus importante partie du travail. Admettonsici que l’on ait determine cette fonction. Il est alors tres frequent de vouloir en plus, rajouterdes contraintes sur les solutions generees.Imaginons un probleme dans lequel on voudrait discretiser une variable continue dans unobjectif quelconque (arbre de classification ou autre). Il faut trouver des bornes pour lesvaleurs de la variable qui permettent de definir les differentes classes. Par exemple, si unevariable prend ses valeurs entre 0 et 100, on peut construire les classes : [0,20], ]20,65]et ]65,100]. Il est alors tout a fait probable que l’on voudra imposer un minimum pourl’amplitude et/ou l’effectif des classes. Pour appliquer ces contraintes, on a deux solutions :

– faire en sorte que l’ensemble des operateurs tienne compte des contraintes et qu’aucunesolution violant les contraintes ne puisse etre construite,

– laisser les operateurs de croisement et de mutation construire des solutions ne respec-tant pas les contraintes mais les penaliser au niveau de la fitness pour qu’elles aientmoins de chances d’etre choisies lors de l’application de l’operateur de selection.

La premiere solution a l’avantage d’eviter tout risque d’obtenir une solution ne respectant pasles contraintes. En effet, rien ne permet d’affirmer qu’une telle solution ne pourrait pas avoirune valeur competitive pour la fonction objectif. Cependant, faire en sorte que les operateursde croisement et de mutation n’engendrent pas de solutions violant les contraintes conduitgeneralement a construire des operateurs complexes qui finissent par s’eloigner du hasardqu’ils sont censes produire. Nous avons donc, en general, prefere la deuxieme solution. Celaimplique evidemment de construire des fonctions de penalisation et de realiser un equilibredans la fitness entre la fonction objectif et la (ou les) penalisation(s). A partir de tout cela,la construction de la fitness depend tres fortement du probleme d’optimisation considere.Nous verrons dans les differentes applications (cf. partie II) comment nous construisons lafitness en fonction du contexte.

1.5.2 Application de l’operateur de selection

Une fois que la fitness est definie, on peut la calculer pour l’ensemble des solutions de lapopulation courante. Nous allons maintenant utiliser ces valeurs pour realiser la selection. Eneffet, l’objectif de l’operateur de selection est de construire une nouvelle population a partirde la population obtenue apres application de la mutation et du croisement. Globalement,on souhaite calculer une probabilite de selection pour chaque individu de la population quisoit d’autant plus elevee que la valeur de sa fitness est bonne.Dans ce contexte, la methode la plus simple pour definir la probabilite de selection est de larendre directement proportionnelle a sa fitness. Soit f(i) la valeur de la fitness de l’individui (i = 1, 2, . . . , Tpop). On peut alors definir ps(i), la probabilite de selection de l’individu i,comme suit :

ps(i) =f(i)

∑Tpop

k=1 f(k).

Une fois que les probabilites de selection sont calculees pour l’ensemble des individus de lapopulation, il reste a s’en servir pour construire la population suivante. La facon la plus

Page 40: Etude des Algorithmes génétiques et application aux

1.5 L’operateur de selection : la seule etape intelligente 23

Fig. 1.3 Representation de l’operateur de selection stochastique pur pour des probabilitesde selection proportionnelles a la fitness (Tpop = 5). Les chiffres indiques sous les accoladesrepresentent les zones de selection de chacun des cinq individus.

Fig. 1.4 Representation de l’operateur de selection stochastique universelle pour des pro-babilites de selection proportionnelles a la fitness (Tpop = 5). Les chiffres indiques sous lesaccolades representent les zones de selection de chacun des cinq individus.

simple de faire la selection est d’appliquer un operateur de selection stochastique pur. Pourcela, on construit un segment de longueur 1. Ensuite, on calcule la position de chaque individude la population sur ce segment en calculant les probabilites de selection cumulees :

position(i) =i∑

k=1

ps(k).

Enfin, on genere aleatoirement un nombre dans [0, 1] et on reporte le nombre obtenu sur lesegment pour choisir l’individu a selectionner. Par exemple, si le nombre choisi appartienta l’intervalle [position(i− 1), position(i)], on selectionne l’individu i. Ce procede est illustredans la Fig. 1.3. On repete jusqu’a obtenir le nombre d’individus souhaite.

Cependant, par ce processus, le nombre de selections d’un individu effectivement obtenupeut etre assez different du nombre theorique attendu. Une facon de se rapprocher du nombretheorique attendu est d’utiliser la methode de selection stochastique universelle (Baker,1987) qui peut s’apparenter a de l’echantillonnage aleatoire systematique (Lohr, 1999). Celaconsiste a selectionner tous les individus en meme temps en utilisant un pointeur multiple,dont les branches sont regulierement espacees, que l’on porte sur le segment precedemmentdecrit (Fig. 1.4). Hancock (1994) et Hancock (1996) ont montre experimentalement la superioritede cette methode sur le stochastique pur pour se rapprocher du nombre de selection theorique.

Le fait de baser le calcul des probabilites de selection directement sur la fitness presentecependant des inconvenients. Tout d’abord, l’operateur de selection n’aura pas du tout lememe effet sur une fitness prenant ses valeurs dans [0, 10] et sur une fitness prenant ses valeursdans [0, 10000]. Une petite difference de fitness entre deux individus sera beaucoup mieuxreperee dans le premier cas. Cet inconvenient peut etre surmonte en utilisant la methode du

Page 41: Etude des Algorithmes génétiques et application aux

24 Etapes de l’algorithme genetique

scaling proposee par Goldberg (1989b). Cela consiste a fixer deux reels a et b et a transformerla fonction de fitness f en la fonction g de la maniere suivante :

g = af + b.

Pour fixer les parametres a et b, on impose que les moyennes de f et g soient egales et quela valeur maximum de f soit un multiple de sa moyenne f :

max(f) = αf,

ou α ∈ R. α est constant au cours des generations mais comme max(f) peut evoluer achaque iteration, il est necessaire de faire evoluer la fonction g. Comme cela n’est pas tressatisfaisant, d’autres methodes ont ete mises au point.La methode dite du tournoi consiste a extraire m individus de la population courante et deselectionner le meilleur parmi ces m. Cette etape est repetee autant de fois que d’individussouhaites. On peut cependant relacher la pression de selection en ne choisissant la meilleuresolution parmi les m qu’avec une probabilite π < 1.On peut egalement utiliser le rang a la place de la valeur brute de la fitness (Whitney,1989). Pour cela, on classe les individus en fonction de leur valeur pour la fitness, la meilleuresolution ayant le rang Tpop. Alors, pour calculer la probabilite de selection de l’individu ayantle rang k, on utilise la formule suivante :

ps(k) = αk + β,

ou les reels α et β sont fixes de sorte a ce que :

Tpop∑

k=1

ps(k) = 1.

Une autre condition est necessaire pour pouvoir determiner les deux parametres, cette condi-tion est choisie en fonction de la pression de selection que l’on souhaite exercer. Par exemple,on peut decider que le meilleur individu doit avoir deux fois plus de chances d’etre selectionneque l’individu de rang median :

ps(Tpop) = 2× ps(Tpop/2).

Cette methode a evidemment l’avantage d’etre tout a fait independante de l’amplitude des va-leurs de la fitness. Elle a egalement l’avantage de s’adapter automatiquement au cours de l’al-gorithme. En effet, dans les premieres generations, si la population initiale est heterogene, lesvaleurs de la fitness prendront une grande amplitude mais au fur et a mesure des generations,cette amplitude va diminuer. L’utilisation du rang permettra alors de prendre en comptecette diminution d’amplitude et ainsi, plus l’algorithme avance, plus des petites differencesde fitness seront reperees et plus facilement distinguees.

1.5.3 Pression et intensite de selection

Nous avons parle precedemment de la pression de selection que l’on impose en appliquantl’operateur de selection. Cette notion est assez instinctive : plus la pression est forte moins lesindividus les moins adaptes seront selectionnes. Mais, on peut donner une definition precisede la pression de selection, Πs :

Page 42: Etude des Algorithmes génétiques et application aux

1.5 L’operateur de selection : la seule etape intelligente 25

Definition 1.1 La pression de selection :

Πs =Pr(selectionner le meilleur individu)

Pr(selectionner l’individu moyen).

Ce parametre est aisement fixe par l’utilisateur, notamment dans le cas de l’utilisationdes rangs lorsque l’on doit donner une valeur pour le deuxieme parametre.Mulenbein & Schlierkamp-Voosen (1994) ont introduit une autre mesure de la selectionappelee intensite de selection. Ils s’appuient pour cela sur une notion de la genetique despopulations introduite dans le cadre de l’elevage. Cette mesure est la suivante :

Definition 1.2 L’intensite de selection :

Is(t) =f s(t)− f(t)

σ (f(t)),

ou f s(t) est la fitness moyenne des individus de la generation t, selectionnes pour construirela population suivante, f(t) est la fitness moyenne dans la population et σ (f(t)) est l’ecart-type de la fitness dans la population.

L’intensite de selection permet d’observer l’evolution de la fitness dans la populationmais egalement, grace a σ (f(t)), elle mesure la diversite de la population courante et doncsa capacite a explorer l’espace des solutions. On peut donc savoir si la population ne perdpas trop vite en heterogeneite grace a cet indicateur.

1.5.4 Generation de la nouvelle population

Une fois que l’on a calcule la probabilite de selection des differents individus et que l’on adecide comment selectionner n individus a partir de ces probabilites, il faut encore choisir lenombre de nouveaux individus a inclure dans la nouvelle population. Le cas le plus simple estde partir uniquement de la population de taille Tpop obtenue apres application des differentsoperateurs (qui contient une proportion inconnue d’individus de la precedente generationqui n’ont pas ete modifies) et de selectionner Tpop individus a partir de cette population.Cependant, pour certains, cette methode semble aberrante car elle ne garantit pas la surviedes bonnes caracteristiques apparues. Notons ici que c’est pourtant la strategie presente dansla nature et dont l’efficacite n’est plus a prouver. Pour se rassurer et accelerer la convergenceon peut choisir de garder la meilleure partie de la population precedente et de ne remplacerque les moins bons elements (De Jong, 1975). Le choix de la proportion a conserver varieentre un individu (c’est ce qu’on appelle l’elitisme) et toute la population moins un individu(Davis, 1991). Enfin, une derniere solution consiste a assembler les individus de la generationprecedente et les individus obtenus apres application de la mutation et du croisement et arealiser la selection de Tpop individus dans l’ensemble.

1.5.5 Illustration

Dans l’ACP, on cherche des combinaisons lineaires des variables de depart telles que lavariance V (ci), de la ieme composante ci soit maximisee et ci n’est pas correle a ck ouk ∈ 1, 2, . . . , i − 1. Les axes sont alors les vecteurs propres successifs de S, la matrice devariance empirique des donnees de depart. Il a ete demontre (Mardia et al., 1979) que cette

Page 43: Etude des Algorithmes génétiques et application aux

26 Etapes de l’algorithme genetique

solution est optimale au sens de plusieurs criteres. Dans la fitness de GA-SCA, nous allonsdonc egalement chercher a maximiser V (ci). Cependant, dans GA-SCA, la non correlationdes composantes successives n’est pas imposee, nous voulons donc egalement penaliser lafitness si la correlation entre composantes n’est pas nulle. Enfin, afin d’obtenir l’interpretationla plus simple possible, on va egalement chercher a minimiser le nombre de coefficients(entiers) utilises que l’on rajoutera comme penalisation du critere. La fitness finale devradonc prendre en compte :

– V (ci), la variance de la composante courants,– Ki, le nombre de coefficients de l’axe courant,– ρi, la somme des correlations entre la composante courante et les precedentes.

La fitness peut s’ecrire comme suit :

fitness = α1 × V (ci) + β1 + α2 ×Ki + β2 + α3 × ρi + β3,

ou les coefficients, (α1, β1, α2, β2, α3, β3) ∈ R6, sont determines de sorte a ramener chaque

terme dans l’intervalle [0, 1] pour que tous les termes aient des amplitudes comparables. Ceciest simple car on connaıt la valeur optimale pour la premiere partie du critere (celle obtenuepar l’ACP) et pour le nombre de coefficients, il est compris entre 1 et le nombre de variables.

Cependant, comme les composantes ne sont pas necessairement non correlees, pour cal-culer la vraie variance expliquee par les composantes successives, nous utilisons le critere del’equation suivante qui est aussi utilise dans Rousson & Gasser (2004) :

var(k) = tr(SP(k)(Pt(k)SP(k))

−1Pt(k)S), with k = 1, 2, . . . , rank(S), (1.1)

ou P(k) est la matrice qui contient les coefficients des k premiers axes avec la ieme colonnecomposee des coefficients du ieme axe. var(k) est alors la variabilite expliquee par les kpremieres composantes.

La construction de l’operateur de selection, quant a elle, est totalement independantedu probleme d’optimisation rencontre, il doit juste savoir s’il doit maximiser ou minimiserla fitness. Nous avons choisi, pour les raisons presentees dans les paragraphes precedents,d’utiliser la methode utilisant les rangs des individus de la population. De plus, nous avonsajoute l’etape d’elitisme, c’est-a-dire la selection systematique du meilleur individu de lapopulation precedente. Il vient remplacer le moins bon individu de la population obtenueapres application de l’operateur de selection. Nous verrons dans la partie 1 l’impact del’utilisation de l’elitisme.

1.6 Bilan

Nous avons maintenant en main tous les outils pour construire un AG. Il suffit ensuite deles assembler et de repeter iterativement les etapes de croisement, de mutation et de selectioncomme indique dans le pseudo-code de la Fig. 1.5.

Pour ce qui est du critere d’arret, le plus couramment utilise est le fait d’atteindre unnombre de generations ou un temps de calcul fixes a l’avance. On peut aussi se baser surl’evolution de la fitness moyenne dans la population. En effet, une fois que l’AG a atteint un

Page 44: Etude des Algorithmes génétiques et application aux

1.6 Bilan 27

Fig. 1.5 Pseudo-code de l’AG.

On genere la population initiale.e← arg maxpop[i], i∈1,...,Tpop

f(i)tant que critere d’arret non atteint faire

Croisement.Mutation.Selection.m← arg mini∈1,...,Tpop

f(i)pop[m]← ee← arg maxpop[i], i∈1,...,Tpop

f(i)fin

optimum, la solution correspondante, par le biais de l’operateur de selection, va peu a peucoloniser la population et la fitness moyenne de la population (aux mutations pres) va peu apeu se rapprocher de la fitness de cette solution optimum. On peut donc construire un critered’arret reposant sur une absence d’evolution de la fitness moyenne dans les populations suc-cessives. Mais cela necessite de fixer une tolerance d’evolution (a cause des mutations) et unefenetre d’observation (combien de generations on considere). Or, il est tres difficile de fixerce type de parametres sans avoir fait plusieurs essais. Cela peut donc etre utile quand onapplique plusieurs fois l’AG sur des donnees tres proches mais les parametres devront etrerevus des que l’on change de problematique.

IllustrationPour conclure avec l’exemple de GA-SCA qui nous a servi a illustrer le fonctionnement d’unAG, donnons tout de meme les resultats obtenus pour deux exemples complementaires : lesdonnees de pitprop et des donnees de reconnaissance d’ecriture de chiffres.

Les donnees pitprop ont ete introduites dans Jeffers (1967). Elles consistent en treizevariables mesurees sur 180 observations. De plus amples details sont donnees dans Jeffers(1967). Vines (2000), qui a mis au point une methode pour realiser une SCA a montre ladifficulte de detecter une structure simple dans ces donnees. Les resultats obtenus avec l’ACPclassique, la SCA de Rousson & Gasser (2004), la methode de Vines (2000) et GA-SCA sontdonnes dans la Tab. 1.1. En haut de la table (matrice des coefficients), les valeurs pour SCAet Vines proviennent des articles originaux (Rousson & Gasser, 2003; Vines, 2000), pourl’ACP, les resultats sont arrondis a deux chiffres apres la virgule.Concernant, les resultats obtenus pour SCA (Rousson & Gasser, 2003), les coefficients sonttres faciles a interpreter et ils permettent de mettre en evidence des blocs de variables maiscette methode impose d’importantes contraintes sur les solutions et par consequent, les troisderniers axes semblent etre trop simples. Notons qu’a part pour le premier axe, il n’existepas de lien evident entre les coefficients de l’ACP et les blocs de variables obtenus par SCAet GA-SCA (on ne pourrait pas les retrouver en appliquant un seuil aux coefficients del’ACP). Pour ce qui est de la variabilite, des la premiere composante, SCA est deja assezloin de l’ACP (29.9% pour SCA et 32.5% pour l’ACP). Quant aux correlations, plus dela moitie des coefficients sont en dehors de l’intervalle [−0.1, 0.1] malgre l’utilisation d’unepenalisation.

Page 45: Etude des Algorithmes génétiques et application aux

28 Etapes de l’algorithme genetique

Pour ce qui est des resultats de la methode de Vines, on peut aisement trouver des blocs devariables pour les deux premiers axes mais ensuite, l’interpretation devient de plus en plusdifficile. La variabilite est assez proche des resultats de l’ACP mais l’interet d’imposer descoefficients entiers est quelque peu perdu. Les coefficients de correlation sont en dehors del’intervalle [−0.1, 0.1] pour la moitie des coefficients mais cette methode n’impose rien surles correlations.Enfin, concernant GA-SCA, les resultats semblent realiser un bon compromis entre la simpli-cite et la variabilite. Nous voyons que quatre des six axes ne contiennent que deux coefficientsdistincts et les deux autres n’en ont que trois. L’interpretation de chaque composante estdonc tres simple. Enfin, pour les correlations, seulement deux coefficients (sur quinze) sonten dehors de l’intervalle [−0.1, 0.1].

Le deuxieme jeu de donnees est decrit dans Hastie et al. (2001). Il est constitue de 256variables mesurees sur 7291 individus. Ces variables sont les valeurs en niveaux de gris dechacun des pixels pour une image de dimension 16×16. Quant aux individus, ils sont repartisen groupes avec chaque groupe qui correspond a l’ecriture d’un chiffre. Ici, notre objectif n’estpas la discrimination, nous allons donc uniquement nous interesser aux 658 observations quirepresentent le chiffre trois.

D’apres la Tab. 1.2, on constate que les coefficients sont distribues plus ou moins symetriquementautour de zero qui est le mode de la distribution. Ainsi, beaucoup de variables (celles aux-quelles le coefficient zero est applique) ne sont pas utilisees pour construire les composantes.Pour ce qui est de la variabilite, les resultats de GA-SCA sont tres proches de ceux de l’ACPce qui s’explique bien par les fortes correlations existant entre les composantes de l’ACP etcelles trouvees par GA-SCA. La Tab. 1.3 montre que les composantes successives issues deGA-SCA sont proches de l’orthogonalite.

Pour completer la comparaison avec les resultats de l’ACP, la Fig. 1.6 montre la representationdes coefficients des axes pour les deux premieres composantes de l’ACP et de GA-SCA enniveaux de gris. Les apparences globales sont tres proches mais comme GA-SCA utilise desentiers les resultats sont moins lisses.

Enfin, il est interessant de constater que les blocs de variables obtenus avec GA-SCAn’auraient pas pu etre obtenus en realisant une classification non supervisee des coefficientsdes axes. Nous avons applique aux coefficients du premier axe, l’algorithme K-means (Hastieet al., 2001) avec sept groupes (le nombre total de coefficients obtenus pour le premier axe)et les groupes ne se correspondent pas du tout.

Page 46: Etude des Algorithmes génétiques et application aux

1.6

Bilan

29

Tab.1.1

Res

ult

ats

a6

com

pos

ante

s(5

pou

rV

ines

)pou

rle

sdon

nee

spi

tpro

pob

tenues

avec

AC

P,SC

A,la

met

hode

de

Vin

eset

GA

-SC

A.D

uhau

ten

bas

:le

sm

atri

ces

des

coeffi

cien

ts,

lam

atri

cedes

corr

elat

ions

entr

eco

mpos

ante

s,le

pou

rcen

tage

cum

ule

de

vari

abilit

eper

mis

par

chaq

ue

com

pos

ante

(cor

rige

espou

rla

corr

elat

ion,vo

irE

q.1.

1).

ACP SCA Vines GA- SCA

.40 -.22 .21 -.09 -.08 .12 .45 0 0 0 0 0 1 2 2 -133 620571 1 2 -1 -1 1 0

.41 -.19 .24 -.10 -.11 .16 .45 0 0 0 0 0 1 2 2 -133 620571 1 1 -1 -1 1 0

.12 -.54 -.14 .08 .35 -.28 0 0 .71 0 0 0 0 1 -9 603 -745121 0 2 2 1 -2 0

.17 -.46 -.35 .05 .36 -.05 0 0 .71 0 0 0 0 1 -9 601 -744591 0 1 2 -1 -2 0

.06 .17 -.48 .05 .18 .63 0 .5 0 0 0 .71 1 -2 -5 79 3491021 0 -1 2 1 1 1

.28 .01 -.48 -.06 -.32 .05 0 .5 0 0 0 0 1 0 -11 -333 -2253059 1 -1 2 1 1 0

.40 .19 -.25 -.06 -.22 .00 0 .5 0 0 0 0 1 0 -9 -273 -2268959 1 -1 2 1 1 0

.29 .19 .24 .29 .19 -.06 .45 0 0 0 0 0 1 0 8 250 -1236902 1 -1 -1 1 -2 1

.36 -.02 .21 .10 -.11 .03 .45 0 0 0 0 0 1 1 1 -68 603346 1 1 -1 1 -2 0

.38 .25 .12 -.21 .16 -.17 .45 0 0 0 0 0 1 0 8 224 -240664 1 -1 -1 -1 1 0

.01 .21 -.07 -.80 .34 -.18 0 0 0 0 1 0 0 1 0 20 11701220 0 1 -1 8 1 0

.12 .34 .09 .30 .60 .17 0 0 0 1 0 0 -1 1 -7 -308 666946 0 2 2 -1 1 0

.11 .31 -.33 .30 -.08 -.63 0 .5 0 0 0 -.71 -1 2 3 -79 -3491021 0 2 -1 -1 1 1

1 1 1 10 1 .31 1 .26 1 .001 10 0 1 .17 .11 1 -.07 -.10 1 -.04 .01 10 0 0 1 .22 .18 -.20 1 -.01 .23 -.24 1 .06 .01 .005 10 0 0 0 1 .00 .08 -.13 .03 1 -.13 .004 -.03 .08 1 -.01 -.27 -.02 -.07 10 0 0 0 0 1 -.11 -.02 .09 -.03 .07 1 .35 -.01 -.09 .03 .01 1

32.5 50.7 65.2 73.7 80.7 87.0 29.9 42.0 57.7 65.6 73.9 83.1 30.9 49.2 64.2 71.8 79.6 32.0 49.7 64.3 72.7 79.1 84.7

Page 47: Etude des Algorithmes génétiques et application aux

30 Etapes de l’algorithme genetique

Tab. 1.2 Coefficients obtenus pour les quatre premiers axes des donnees du chiffre trois.Les colonnes 2 a 10 indiquent le nombre de variables pour lesquelles chaque coefficient estapplique. cum var GA-SCA est le pourcentage de variabilite cumule permis par chaquecomposante obtenue avec GA-SCA et cum var PCA est l’analogue pour l’ACP usuelle. Laderniere colonne indique le coefficient de correlation entre les composantes de GA-SCA etcelles de l’ACP.

loadings coef cum var cum var correlationnumber -4 -3 -2 -1 0 1 2 3 4 GA-SCA PCA GA-SCA/PCA

1 . . 7 16 104 63 33 20 13 4.43% 4.46% 0.992 . . 2 30 98 53 34 19 20 7.54% 7.56% 0.993 10 11 18 38 90 41 13 19 16 10.25% 10.32% 0.954 . 19 29 30 60 60 35 23 . 12.63% 12.90% 0.90

Tab. 1.3 Matrice de correlation pour les quatre premieres composantes de GA-SCA pourles donnees du chiffre trois.

1 2 3 41 12 0.000 13 0.001 0.000 14 0.004 0.000 0.000 1

Fig. 1.6 Images 16 × 16 correspondant aux deux premiers axes de l’ACP et de GA-SCApour les donnees du chiffre trois.

PCA 1 GA−SCA 1

PCA 2 GA−SCA 2

Page 48: Etude des Algorithmes génétiques et application aux

Chapitre 2

Le chemin vers la modelisation et laconvergence

Nous venons de decrire les etapes de la construction d’un AG. Nous avons, entre autres,montre combien chaque composante etait directement descendue de la theorie de l’evolutiondes especes. Un tel algorithme a donc une origine tres intuitive qui lui permet d’etre compristres rapidement. Mais cela ne sous-tend aucun fondement theorique sur lequel on pourraits’appuyer pour modeliser les AG et eventuellement en deduire des resultats de convergence.Certains ecartent rapidement cette question en considerant que les AG sont directementcalques sur la theorie de l’evolution, que ce processus a fait ses preuves et donc, qu’il n’ya aucune raison pour que ce succes ne se reproduise par pour les AG. De fait, c’est le cas !Mais on peut (et on doit. . .) montrer de facon plus rigoureuse les bonnes proprietes que l’onobserve, ne serait-ce que pour mieux diffuser ces methodes.Deja, Holland (1975) avait reflechi a cette question : Pourquoi ca marche ? Nous allons voirquels elements de reponse il a essaye d’apporter ainsi que les idees qui ont suivi, aboutissanta une modelisation des AG par une chaıne de Markov. Ceci permet d’appliquer aux AG lesnombreux resultats disponibles sur les chaınes de Markov (Ycart, 2002) avec l’inconvenientde conduire a des calculs souvent impossibles a mener a terme, meme pour des problemestres simples, comme nous allons le voir.

2.1 Des difficultes et des Chaınes de Markov

Nous avons evoque dans le paragraphe 1.1 l’utilisation par Holland des schemas. Pour Hol-land, un schema est un sous-ensemble de chromosomes qui partagent un ensemble particulierd’alleles definis. Par exemple, si on considere le schema 0, 1, ∗, ∗, 1, ∗, il regroupe les huitchromosomes 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1, 0,0, 1, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0 et 0, 1, 1, 1, 1, 1. Un schema definit donc un sous-ensemblede chromosomes, voisins dans un sens defini. On peut les considerer comme des hyperplansde l’espace des solutions, ce n’est pas necessairement un hyperplan au sens usuel, puisqu’onpeut laisser libre plus d’une coordonnee. C’est pourquoi on donne aussi le nom de competitiondes hyperplans a l’etude de l’evolution des schemas au cours des AG. De tels sous-ensemblessont evidemment particulierement faciles a definir dans le contexte du codage binaire. Onpeut donner la definition de deux termes lies aux schemas : la longueur d’un schema est la

31

Page 49: Etude des Algorithmes génétiques et application aux

32 Le chemin vers la modelisation et la convergence

distance entre le premier et le dernier locus imposes et l’ordre correspond au nombre de lociimposes. Dans l’exemple ci-dessus, le schema a une longueur de 4 et un ordre de 3.A partir de ce concept, Holland a donne dans le Theoreme des schemas une expression del’esperance du nombre d’occurrences du schema S dans la generation (t + 1), η(S, t + 1),en fonction de η(S, t), le nombre d’occurrences du schema S dans la generation precedente.D’une facon tout a fait generale, ce theoreme peut s’exprimer de la maniere suivante :

Theoreme 2.1 Theoreme dit des SchemasSi l’on a η(S, t) occurrences d’un schema S dans la generation t, alors, a la generation (t+1),l’esperance du nombre d’occurrences de ce meme schema est donnee par :

E[η(S, t + 1)|η(S, t)] ≥ 1− δ(S, t)σ(S, t)η(S, t),

ou δ(S, t) est un terme lie a la destruction d’occurrences de S par application des operateursde mutation et de croisement et σ(S, t) reflete le role de la selection.

Cette version generique du Theoreme des Schemas, bien que peu explicite, a l’avantage demettre en evidence l’idee fondamentale de Holland qui consistait a considerer les AG commeune competition entre deux phenomenes : la destruction de solutions par les operateurs demutation et de selection et leur maintien par application de la selection.Cependant, pour donner une idee plus precise de ce theoreme, nous pouvons expliciterles fonctions δ(S, t) et σ(S, t) dans un cas simple : mutations appliquees locus par locus,operateur de croisement a un point et selection proportionnelle a la fitness. Dans ce cas,et pour un schema S de longueur m et d’ordre k, la probabilite de non-destruction parl’operateur de croisement est superieure ou egale a 1 − ( m

l−1)pc ou pc est la probabilite de

croisement et l la longueur des chromosomes. ml−1

represente donc la probabilite pour uncroisement de tomber dans la zone definissant le schema S et ( m

l−1)pc la probabilite pour une

occurrence du schema S d’etre detruite. En ce qui concerne la mutation, la probabilite denon destruction est superieure ou egale a 1− pmk ou pm est le taux de mutation. En effet, laprobabilite pour que la mutation ne detruise pas une occurrence de S est (1−pm)k ≥ 1−pmk.

Enfin, la probabilite de selection d’une occurrence de S vaut, en moyenne, f(S,t)

f(t)ou f(S, t)

est la fitness moyenne des occurrences de S au temps t et f(t) est la fitness moyenne de lapopulation au temps t. En combinant ces resultats on obtient le cas particulier du Theoremedes Schemas suivant :

Theoreme 2.2 Cas particulier du Theoreme des SchemasSi l’on a η(S, t) occurrences d’un schema S dans la generation t, alors, a la generation (t+1),l’esperance du nombre d’occurrences de ce meme schema est donnee par :

E[η(S, t + 1)|η(S, t)] ≥ 1− pc

m

l − 1− pmk

f(S, t)

f(t)η(S, t).

Des conclusions hasardeuses ont ete tirees de ce theoreme. Notamment, il est frequemmentavance que ce theoreme permet de montrer que le nombre d’occurrences d’un bon schemaaugmente exponentiellement au fur et a mesure des generations. Cependant, il convient dese rappeler que, dans ce theoreme, on ne raisonne qu’en terme d’esperance et pour une seuletransition. En occultant l’aspect stochastique et la limite temporelle de la dependance dece theoreme, des erreurs ont ete commises alors qu’il apparaıt assez evident que, dans unepopulation de taille finie, le nombre d’occurrences d’un schema ne peut augmenter de facon

Page 50: Etude des Algorithmes génétiques et application aux

2.1 Des difficultes et des Chaınes de Markov 33

exponentielle pendant de nombreuses generations. . . Dans Holland (1975), il avait meme eteavance que les AG etaient une approximation d’une strategie optimale. On a alors cru queles AG etaient la meilleure strategie de recherche parmi les methodes connues alors, quipermettaient de realiser l’optimisation de plusieurs hyperplans en meme temps. La notionde schema a donc ete longtemps reprise et approfondie, notamment par Goldberg (1989b)et Michalewicz (1992).Cependant, cette theorie a, depuis, ete souvent critiquee. Notamment dans Vose (1988) qui acritique l’approche de Holland et propose une generalisation. De plus, Wolpert & Macready(1997) ont definitivement mis fin au mythe d’optimalite en demontrant leur No Free LunchTheorem qui, globalement, indique qu’en moyenne, aucune methode d’optimisation (coloniede fourmis, AG, recuit simule, tabu search,. . .) n’est meilleure que la recherche aleatoireet que les succes que l’on obtient proviennent d’une adaptation manuelle des methodes achaque probleme rencontre.Toutefois, meme si l’on est a present convaincus que les AG ne sont pas une sorte de pa-nacee pour les problemes d’optimisation, il n’en reste pas moins qu’ils permettent d’obtenirdes resultats tout a fait convaincants et qu’il est donc tres interessant de chercher a mieuxcomprendre leur fonctionnement. Pour cela, il convient d’en donner une modelisation satisfai-sante, qui permette de tirer des conclusions, notamment sur leur convergence. Les methodesde modelisation proposees par Holland, se sont revelees etre peu pertinentes et n’ont paspermis d’obtenir des resultats interessants.

Actuellement, plusieurs pistes sont proposees (voir par exemple, Shapiro et al. (1994);Reeves (1994); Peck & Dhawan (1995); Stadler & Wagner (1998) et Reeves (2000)). Nousallons specialement nous interesser a la modelisation des AG par le biais des chaınes deMarkov. Ceci a ete introduit independamment par Nix & Vose (1992) et Davis & Principe(1993). L’interet du recours a cet outil est le grand nombre de resultats existants que l’onva pouvoir appliquer aux AG. L’inconvenient est, comme nous allons le detailler, la lourdeurdes calculs impliques. Voyons pourquoi et comment utiliser les chaınes de Markov dans lecontexte des AG.

L’ensemble des operateurs que nous avons decrits (mutation, croisement et selection)comportent des elements stochastiques, c’est particulierement vrai pour les operateurs demutation et de croisement mais aussi pour la selection, puisque l’on definit des probabilitesde selection. On peut donc classer les AG dans la famille des processus stochastiques. Deplus, les etats successifs de l’AG (les populations des differentes generations) ne sont pasindependants les uns des autres. Ce que l’on trouve dans la generation t depend directementde ce que l’on avait dans les generations precedentes.Plus precisement, l’etat de la generation t ne depend que de l’etat de la generation (t− 1).En effet, etant donnee la definition des operateurs (mutation, croisement et selection), onconstate bien que, quel que soit le passe anterieur de l’algorithme, le contenu de la generationt depend entierement (de facon stochastique) du contenu de la generation (t − 1). Or, unechaıne de Markov est un processus stochastique qui verifie la propriete markovienne qui estla suivante : si on note Xtt∈N les evenements successifs d’un processus stochastique alors,

Pr[Xt+h = xt+h|Xs = xs, s ≤ t] = Pr[Xt+h = xt+h|Xt = xt].

On peut donc bien decrire un AG comme une chaıne de Markov.Ensuite, pour caracteriser une chaıne de Markov, il faut connaıtre son espace d’etats, c’est-

Page 51: Etude des Algorithmes génétiques et application aux

34 Le chemin vers la modelisation et la convergence

Tab. 2.1 Nombre de populations possibles (N ) pour un espace des solutions de taille n etune population de taille Tpop.

Tpop n N10 210(≈ 103) 1023

20 210(≈ 103) 1041

20 220(≈ 106) 10102

50 250(≈ 1015) 10688

a-dire l’ensemble des valeurs que peut prendre Xt. Ensuite, il faut connaıtre l’etat initial duprocessus (qui dependra de l’initialisation de l’AG) et enfin les probabilites de transition d’unetat a l’autre. Nous allons voir que chacun de ces elements est assez complexe a determinerdans le cas des AG.

2.1.1 Espace d’etats d’un AG.

Avant de connaıtre l’espace d’etats d’un AG, il faut definir ce que l’on considerera commeun etat. Dans le cas des AG, on etudie les generations successives, il vient donc naturellementqu’un etat est une population donnee : a chaque generation, l’etat de l’AG est l’ensemble dessolutions courantes, c’est-a-dire la population. L’espace d’etats, X , est donc l’ensemble despopulations que l’on peut construire (sachant que la redondance a l’interieur de la populationest autorisee). On saisit alors immediatement qu’un AG sera une chaıne de Markov trescomplexe, au moins en ce qui concerne l’espace d’etats. Pour s’en convaincre, voyons quelest le nombre de populations possibles (soit la taille de l’espace d’etats). Soit n la taillede l’espace des solutions (le nombre de chromosomes possibles) et Tpop ∈ N, la taille de lapopulation. Alors, card(X ) = N , le nombre d’etats possibles, est le nombre de combinaisonsavec repetition soit :

N =

(

n + Tpop − 1

Tpop

)

,

ce qui peut rapidement prendre des valeurs tres grandes. Reeves & Rowe (2003) ont donnequelques valeurs qui sont reportees dans la Tab. 2.1. Les chiffres parlent d’eux-memes !

2.1.2 Matrice de transition d’un AG.

Pour une chaıne de Markov, la matrice de transition, Π, est la matrice qui rassembleles probabilites de passage d’un etat a l’autre entre deux temps successifs. On definit, πij,l’element de la ieme ligne et de la j eme colonne de Π comme :

πij = Pr[Xt = i|Xt−1 = j],

ou (i, j) ∈ X 2. Il vient immediatement que

k∈X

πkj = 1.

Les elements de Π sont tous positifs ou nuls et les colonnes somment a un, on dit alors quela matrice Π est stochastique. De plus, Π sera dite reguliere s’il existe un t ∈ N tel que Πt

Page 52: Etude des Algorithmes génétiques et application aux

2.1 Des difficultes et des Chaınes de Markov 35

ne contient que des reels strictement positifs. Par exemple, si c’est le cas pour t = 1, celasignifie que d’une etape a l’autre, tous les etats sont accessibles quel que soit l’etat de depart.Il faut donc que tous les etats soient accessibles entre eux, en un nombre de generations finiet independant de ces etats pour que la matrice soit reguliere.La encore, non seulement les πij sont tres nombreux (N×N ) mais en plus, on comprend toutde suite que leur calcul ne sera pas simple. En effet, le passage d’une generation a la suivantedoit tenir compte de l’application des mutations, des croisements et de la selection. Cesoperateurs ainsi que leurs effets doivent donc etre modelises afin de pouvoir determiner Π.Etant donnee la dimension de Π, la calculer entierement n’est pas envisageable dans la grandemajorite des cas d’AG. Cependant, la matrice Π possede des proprietes qui permettent dededuire certains resultats.Posons pt, le vecteur contenant les probabilites pour chaque etat d’apparaıtre au temps t, lekeme element de pt est la probabilite pour que l’etat k apparaisse. Alors, on a

pt = Πpt−1.

Ainsi, si l’on part d’une distribution initiale p0 alors, par recurrence, on obtient,

pt = Πtp0.

Pour savoir ce qu’il se passe au bout d’un temps long (apres de nombreuses generations), ilfaut s’interesser a limt→∞ pt. On aura ainsi une idee de la distribution de la population aubout d’un temps long. Une application du theoreme de Perron-Frobenius (Reeves & Rowe,2003) nous apporte des eclairages sur la question :

Theoreme 2.3 Application de Perron-FrobeniusSoit Π une matrice stochastique reguliere, alors

1. Π∞ = limt→∞ Πt existe.2. Les colonnes de Π∞ sont identiques.3. Chaque colonne est identique a l’unique vecteur de probabilite q qui satisfait

Πq = q. q est donc un vecteur propre de Π associe a la valeur propre 1.4. q = limt→∞ Πtp0, independamment du choix de p0.5. Chaque element de q est strictement positif.

Π devant etre reguliere, ce theoreme ne s’applique pas dans le cas ou il y a un ou plusieursetats absorbants. En effet, un etat k est dit absorbant si πkk = 1 (donc πik = 0, ∀i 6= k),c’est-a-dire qu’une fois que l’on a atteint l’etat k, on ne peut en ressortir. Donc, aucun desautres etats n’est accessible a partir de l’un de ces etats absorbants. La matrice de transition,dans ce cas, n’est donc pas reguliere. Ainsi, le comportement a long terme peut etre deduitd’un autre theoreme (Reeves & Rowe, 2003) enonce ci-dessous :

Theoreme 2.4 On suppose que les etats d’une chaıne de Markov puissent etre reordonnesde sorte que la matrice de transition ait la forme suivante :

Π =

[

I R0 S

]

(2.1)

Alors, la matrice Π est dite reductible et on a :

limt→∞ Πt =

[

I (I− S′)−1R′

0 0

]

(2.2)

Page 53: Etude des Algorithmes génétiques et application aux

36 Le chemin vers la modelisation et la convergence

Dans cette nouvelle ecriture de Π, la matrice identite I est de dimension k, le nombred’etats absorbants. Pour la construire, il suffit donc de placer les etats absorbants dans lespremieres lignes (et donc dans les premieres colonnes) et les etats non absorbants dans leslignes suivantes. On obtient alors les probabilites pour la population d’etre dans tel ou teletat apres un tres grand nombre de generations. On peut egalement considerer le cas desous-ensembles absorbants ou la chaıne est piegee dans un sous-ensemble d’etats, auquel casil suffit de remplacer la matrice identite I par une matrice stochastique de dimension k. Maisdans le contexte de reduction de l’espace d’etat qui sera le notre dans la suite, la notiond’etat absorbant sera suffisante.Il reste cependant a calculer les elements de Π, c’est-a-dire l’ensemble des probabilites detransition d’un etat a un autre. Ces elements sont evidemment extremement nombreuxet doivent prendre en compte l’influence de tous les operateurs permettant de passer d’unegeneration a l’autre (mutation, croisement et selection). Nous considererons ce type de calculdans la partie 3 pour une chaıne de Markov differente. On peut egalement trouver une ecriturede ces probabilites pour des operateurs specifies dans Reeves & Rowe (2003) (p.118-122), oul’espace d’etat est identifie au vecteur des entiers representant le nombre d’occurrences dechaque chromosome possible dans la population courante.Considerons maintenant deux types de resultats obtenus pour la convergence des AG enutilisant les chaınes de Markov. Nous allons ainsi voir la grande diversite des utilisationspossibles de ces outils.

2.2 Divers resultats sur la convergence des AG utili-

sant des chaınes de Markov.

2.2.1 Utilisation de la theorie de Freidlin-Wentzell

Parmi les premiers resultats reellement fondes sur la convergence des AG, on trouve lestravaux de Raphael Cerf (Cerf, 1994, 1996a,b). Ces resultats se fondent sur la theorie deFreidlin-Wentzell qui etudie les perturbations aleatoires de systemes dynamiques. R. Cerfa modelise les AG comme des processus perturbes. En fait, le processus est constitue del’operateur de selection et ce sont les operateurs de croisement et de mutation qui apportentles perturbations aleatoires. Ces perturbations evoluent au cours du temps en s’amenuisant.Des resultats de convergence vers le ou les optima locaux sont etablis sous condition d’avoirune taille de population suffisante. Dans ce contexte, l’operateur de croisement n’est pasforcement necessaire.Dans le cas de populations de tres grande taille, R. Cerf s’est aussi interesse aux cheminspris par la population au cours des generations. Il montre que, quand certains individusatteignent des optima locaux, toute la population a tendance a les suivre, ce qui tend aconstruire des populations uniformes puis l’application de l’operateur de mutation permetde faire apparaıtre de nouveaux optima locaux qui entraınent a nouveau la population. Cephenomene se repete jusqu’a obtention de l’optimal global.Ces resultats sont tres importants car ils ont permis de modeliser le fonctionnement des AGdans toute leur complexite. Ils sont cependant difficiles a utiliser d’un point de vue pra-tique. Par exemple, si on s’interesse a la borne definie pour la taille de la population, on ageneralement trop peu d’informations sur la fonction optimisee pour etre capables de donnerles valeurs de tous les parametres necessaires. De meme, il faut avoir formule les operateurs

Page 54: Etude des Algorithmes génétiques et application aux

2.2 Divers resultats sur la convergence des AG utilisant des chaınes de Markov.37

de mutation et de croisement dans un cadre theorique complexe. Ce n’est jamais le cas enpratique, ou l’operateur de mutation est defini en fonction du contexte, de facon simple.Pourtant, meme si leur utilisation pratique est tres difficile, de tels resultats sont indispen-sables pour comprendre ce qui se passe derriere ce que certains considerent comme une boıtenoire et pour donner le cadre theorique necessaire a une meilleure diffusion de ces methodes.Notons egalement que Raphael Cerf a obtenu d’autres resultats sur les chaınes de Markovqui lui ont notamment permis des rapprochements avec le recuit simule et qui ont abouti ala construction d’un algorithme genetique qui maintient la diversite dans la population (quine converge donc plus vers les populations uniformes) (Cerf, 1996b).

2.2.2 Simplification de l’espace d’etat de la chaıne de Markov

Nous avons vu que le probleme principal des chaınes de Markov reside dans la complexitedes calculs et notamment dans la taille de l’espace d’etats. Pour pouvoir tout de meme obtenirdes resultats sur la matrice de transition, on peut realiser une agregation des etats (Stewart,1995). Dans cet objectif, nous allons presenter brievement le raisonnement de Bhandari et al.(1996) qui a permis de demontrer la convergence des AG pour deux conditions necessaireset suffisantes.Leur astuce consiste a realiser une classification des chromosomes possibles en fonction deleur fitness. On obtient alors autant de classes que de valeurs possibles pour la fitness. Cesclasses sont ordonnees, toujours en fonction de la fitness. Grace a cette classification, onva pouvoir realiser une partition de l’espace d’etats de la chaıne de Markov, c’est-a-direde l’ensemble des populations possibles. Pour cela, on regroupe toutes les populations pourlesquelles le meilleur individu qu’elles contiennent a la meme fitness. Cela revient a definircomme fitness de la population entiere, la fitness du meilleur individu de la population et aregrouper les populations en fonction de cette fitness. Dans ce cas, la dimension de l’espaced’etats se trouve reduite au nombre de valeurs possibles pour la fitness. Notons que, si lafitness prend des valeurs continues, on peut la discretiser en definissant une precision endessous de laquelle on considere que les solutions sont equivalentes.A partir de cette nouvelle definition de l’espace d’etats, Bhandari et al. (1996) ont construitun raisonnement par recurrence qui leur permet d’assurer qu’un individu de fitness maximumse trouvera dans la population quand t→∞. Pour cela, la conjonction des deux conditionssuivantes est necessaire et suffisante :

– insertion d’une etape d’elitisme (le meilleur individu de la population courante estsystematiquement retenu dans la population suivante),

– l’operateur de mutation doit etre construit de sorte a ce que l’on puisse passer den’importe quelle solution a toute autre en un nombre donne d’etapes.

On trouvera une modification de la demonstration de cette propriete dans la partie III,ou nous etendrons les resultats au cas non homogene (evolution du taux de mutation aucours du temps) et pour un operateur de mutation dit dirige.

Page 55: Etude des Algorithmes génétiques et application aux
Page 56: Etude des Algorithmes génétiques et application aux

Chapitre 3

Les metaheuristiques : une grandefamille

Les algorithmes genetiques entrent dans la categorie des metaheuristiques. Originalement,les metaheuristiques englobaient les methodes qui combinent des procedures d’optimisationlocale et des strategies a un niveau plus large, permettant de s’echapper des optima locaux.Puis la definition s’est generalisee a toutes les methodes qui comportent des elements destinesa sortir des optima locaux, par exemple, en definissant plusieurs structures de voisinage.Cette famille de methodes offre une grande diversite. Dans cette partie, les representantsles plus courants de cette famille vont etre presentes. Ils seront ensuite mis en perspectiveles uns par rapport aux autres par l’utilisation d’une sorte de nomenclature generale quirassemble differentes caracteristiques des metaheuristiques.Apres leur creation, et surtout depuis le developpement des capacites de calcul des ordina-teurs, chacune de ces methodes a connu des developpements, modifications, extensions,. . .Leur nombre est tres important et evolue constamment. C’est pourquoi nous nous limite-rons, ici, pour chaque methode, a l’analyse de la version actuellement consideree commesocle commun a toutes les variantes.Par definition des heuristiques, ce ne sont pas des methodes dont on attend a priori la conver-gence garantie vers l’optimum global. Cependant, pour un certain nombre de methodes (etgeneralement pour des variantes precises de ces methodes), il existe des resultats de conver-gence theoriques qui seront cites le cas echeant.En outre, l’objectif de cette partie n’est absolument pas de donner un classement des per-formances des algorithmes decrits. En effet, pour de telles methodes, il est impossible dedefinir une performance absolue. Elle depend grandement du probleme. Certaines methodessont assez simples et ne seront pas adaptees a des problemes pour lesquels la structure dela fitness dans l’espace des solutions est complexe (beaucoup d’optima locaux par exemple).Mais ces methodes simples auront l’avantage d’etre moins couteuses en temps de calcul, ellesseront donc tout a fait adaptees a la resolution de problemes simples. La nomenclature com-mune que nous avons choisie permettra en tous cas, de comparer la philosophie de chaquealgorithme afin d’avoir des elements de comparaison.Pour toutes les methodes, nous presenterons un pseudo-code dans lequel on considerera quel’on cherche a minimiser la fonction f a valeurs dans R.

Les metaheuristiques que nous allons etudier ici sont :

– scatter search,– tabu search,

39

Page 57: Etude des Algorithmes génétiques et application aux

40 Les metaheuristiques : une grande famille

– variable neighborhood search,– guided local search,– greedy randomized adaptive search procedures,– ant colony optimization,– simulated annealing.

3.1 Scatter Search (SS)

L’algorithme de Scatter Search (Glover et al., 2003; Glover, 1998) (litteralement, re-cherche par dispersion) repose sur l’evolution d’une population de solutions (comme lesAG). Il procede par combinaison des solutions existantes et retenues. La procedure basiqueest decrite dans le paragraphe suivant.On commence par generer un ensemble de b solutions (typiquement, b ≤ 20), dit ensemble dereference. Ces solutions potentielles sont construites de sorte a respecter un certain nombrede criteres (valeur de fitness, diversite,. . .). On cree a partir de cet ensemble une liste desous-ensembles (qui ne realise pas forcement une partition de l’ensemble de reference). Parexemple, on peut choisir comme sous-ensembles, toutes les paires possibles de solutions del’ensemble de reference. On combine alors les elements de chaque sous-ensemble. Cette com-binaison se presente generalement comme une combinaison lineaire des caracteristiques dedepart assortie de l’application de contraintes sur les solutions obtenues. Suivant le type decroisement applique, on obtient une ou plusieurs solution(s). Si la (ou les) nouvelle(s) solu-tion(s) obtenue(s) est (sont) meilleure(s) (au sens du critere que l’on est en train d’optimiser)que la (ou les) pire(s) solution(s) de l’ensemble de reference, on remplace ces solutions parles nouvelles solutions obtenues.Les sous-ensembles generes lors d’une etape, sont obligatoirement tous consideres pour lecroisement. Une fois que tous les croisements et que les eventuelles mises a jour de l’en-semble de reference ont ete effectues, on genere une nouvelle liste de sous-ensembles. Onitere ainsi jusqu’a ce qu’aucune des solutions obtenues par croisement des solutions de cha-cun des sous-ensembles n’ait permis d’ameliorer la pire solution de l’ensemble de reference.On peut alors decrire l’algorithme de SS par le pseudo-code de la Fig. 3.1.

Ceci est une description de l’algorithme de base qui peut etre modifie en definissant defacon differente les cinq outils necessaires a un algorithme de SS :

– une methode de generation de diversification (pour generer l’ensemble de reference),– une methode d’amelioration qui permet eventuellement d’optimiser les solutions obte-

nues par la methode precedente et/ou apres croisement,– une methode de mise a jour de l’ensemble de reference (qui peut ne pas etre aussi

stricte que celle de l’algorithme de base),– une methode de generation des sous-ensembles,– une methode de combinaison des solutions.

On peut noter que l’algorithme de SS est souvent associe a un algorithme de path-relinking. Il s’agit d’une methode qui utilise plusieurs solutions de haute qualite (du pointde vue du critere a optimiser). Partant de l’une de ces solutions, on cree un chemin, parmodifications successives de ses composantes, qui relie cette solution aux autres que l’on aretenues. Un critere de choix doit etre defini pour decider, a chaque etape, la composantequi doit etre ajoutee. L’objectif d’une telle methode est d’eviter la myopie inevitablementassociee a tout algorithme de recherche locale, ici, on sait ou l’on va.

Page 58: Etude des Algorithmes génétiques et application aux

3.2 Tabu Search (TS) 41

Fig. 3.1 Pseudo-code de l’algorithme Scatter Search basique.

Construction de l’ensemble des b solutions de l’ensemble de referenceRefSet= x1, x2, . . . , xb.

Evaluer les solutions de RefSet et les ordonner de sorte a ce que x(1) soitla meilleure au sens de f et x(b) la pire.

iter←VRAItant que (iter=VRAI) faire

On genere S l’ensemble des sous-ensembles de RefSetS ← card(S)iter←FAUXpour i = 1, . . . , S faire

On selectionne s, le ieme sous-ensemble de S.On applique l’operateur de combinaison a s, on obtient x.si (x /∈ RefSet et f(x) < f(x(b))) faire

x(b) ← x et on reordonne RefSet.iter←VRAI

finOn supprime s de Subset.

finfin

3.2 Tabu Search (TS)

L’algorithme de Tabu Search (recherche avec utilisation de tabous) a ete introduit parGlover (1986). C’est une methode consistant en l’evolution d’une seule solution. Les etapesprincipales (Gendreau (2003)) sont tout a fait classiques :

– on explore tout le voisinage de la solution courante,– on choisit la solution de ce voisinage qui minimise le critere a optimiser.

L’originalite de cette methode est l’introduction d’une memoire par l’intermediaire del’utilisation des tabous. Cela consiste a enregistrer ce qui s’est passe dans les t ∈ N etapesprecedentes et a interdire que cela se reproduise. A chaque etape, on decale donc la memoire :on enregistre ce qui vient de ce passer et on oublie ce qu’il s’est passe il y a t + 1 etapes. Lebut est evidemment de favoriser une large exploration de l’espace des solutions et d’eviterde rester dans un optimum local ou d’y retourner trop rapidement.On peut alors faire jouer cette memoire de differentes facons. Il faut tout d’abord choisirce qu’on enregistre. On peut decider de conserver la memoire des solutions completes etinterdire de reconstruire une solution que l’on a deja obtenue. On peut aussi retenir unique-ment les mouvements qui ont ete effectues et empecher qu’ils soient inverses. Par exemple,dans le cadre d’une selection de variables, on peut memoriser l’evenement ajouter la keme

variable. Cette deuxieme solution est evidemment moins couteuse, notamment pour le tempsnecessaire a decider si la nouvelle solution doit etre autorisee ou non.Concernant la longueur de la memoire, t (c’est-a-dire le nombre d’iterations que l’on prenden compte pour decider ce que l’on interdit), elle est generalement fixee pour toute la dureede l’algorithme. Mais on peut aussi la faire varier au cours de l’algorithme de sorte a favo-riser, ou non, une large exploration de l’espace (ce qu’on peut rapprocher des changements

Page 59: Etude des Algorithmes génétiques et application aux

42 Les metaheuristiques : une grande famille

Fig. 3.2 Pseudo-code de l’algorithme basique de Tabu Search .

On genere la solution initiale x0.x← x0

f ∗ ← f(x0)x∗ ← x0

T ← ∅.tant que critere de fin non rencontre faire

x← arg minx′∈(V(x)\T )(f(x′))si f(x) < f∗ faire

f ∗ ← f(x)x∗ ← x

finOn met T a jour.

fin

de taux de mutation dans l’AG). Enfin, il est possible de generer aleatoirement la taille dela memoire a chaque etape de l’algorithme.Le pseudo-code pour l’algorithme TS est presente dans la Fig. 3.2. On note T l’ensemble desevenements enregistres (les tabous) associes a la recherche, V(x) le voisinage de la solutionx et V(x) \ T le voisinage de x prive des elements tabous.

Le critere de fin est generalement la realisation d’un nombre predefini d’iterations ou bienune absence d’amelioration significative de la fitness pendant un certain nombre d’iterations.

Cette exploration forcee de l’espace evite evidemment de rester bloque dans un opti-mum local. Cependant, afin de rendre l’algorithme plus souple, on peut envisager d’autoriserun mouvement tabou si la solution obtenue a une meilleure fitness que toutes les solu-tions precedemment retenues, c’est ce qu’on appelle un aspiration criterion. Cela impliqueevidemment de calculer la fitness associee a chacune des solutions generees avant de savoirsi elles vont etre acceptees ou non.Toutes les etapes precedemment definies sont evidemment couteuses en temps de calcul.Pour limiter ce temps, on peut eviter de realiser une exploration exhaustive du voisinage enconsiderant un echantillon aleatoire de ce voisinage.Pour ameliorer les performances de l’algorithme, le TS est souvent associe a des etapes d’in-tensification et de diversification. Cela consiste a stopper l’evolution normale de l’algorithmepour changer la facon d’explorer l’espace. Pour cela, citons quelques exemples :

– On peut enregistrer le nombre d’iterations consecutives pour lesquelles les composantesde la solution courante ont ete presentes (sans interruption). On peut alors recommen-cer la recherche a partir de la meilleure solution trouvee en fixant les composantes quisemblent les plus prometteuses.

– On peut aussi changer la structure du voisinage lors de l’etape de recherche locale afind’autoriser des mouvements plus divers.

Pour ce qui est de la diversification, elle permet de forcer l’algorithme a explorer des regionsde l’espace des solutions qu’il a peu visitees jusqu’a cette etape.Concernant la convergence theorique, il existe des resultats pour des variantes de TS. Ce sontdes algorithmes comportant des contraintes pour la structure de la memoire et du voisinage,

Page 60: Etude des Algorithmes génétiques et application aux

3.3 Variable Neighbourhood Search (VNS) 43

Fig. 3.3 Pseudo-code de l’algorithme VNS.

On genere une solution initiale x0.x← x0

k ← 1tant que k ≤ kmax faire

iter←VRAItant que iter=VRAI faire

On genere x′ aleatoirement dans Vk(x).On fait une recherche d’optimum local autour de x′.On obtient x′′.si f(x′′) < f(x) faire

x← x′′

sinon faireiter←FAUX

finfink ← k + 1

fin

notamment la contrainte de reversibilite des chemins. On peut trouver ces resultats dansFaigle & Kern (1992); Peng et al. (1997); Hanafi (2001); Glover & Hanafi (2002).

3.3 Variable Neighbourhood Search (VNS)

La recherche a voisinage variable (Variable Neighbourhood Search) a ete introduite assezrecemment (Mladenovic, 1995; Mladenovic & Hansen, 1997). Le concept de base est l’explo-ration systematique d’un ensemble de voisinages differents pendant une etape de recherchelocale. Les principes qui ont motive l’emergence d’une telle methode sont les suivants :

– un minimum local, dans un voisinage defini, n’est pas necessairement optimal si onchange de voisinage,

– un minimum global est un minimum local par rapport a l’ensemble des voisinagespossibles,

– dans beaucoup de problemes, les optima locaux par rapport a un ou plusieurs voisi-nage(s) sont assez proches les uns des autres.

Il s’agit donc de construire un ensemble predefini de structures de voisinage de taillekmax, Vk, pour k = 1, . . . , kmax. VNS combine des etapes deterministes et aleatoires. Lepseudo-code est presente dans la Fig. 3.3. L’aspect deterministe de VNS reside dans l’etaped’optimisation locale autour de x′ alors que la selection de x′ dans Vk(x) est aleatoire.L’etape de selection des solutions est egalement deterministe et extremement rigoureuse. Onne retient x′′ que s’il surpasse x en terme de fitness. Or, pour eviter les risques de convergencevers un optimum local et permettre une meilleure exploration de l’espace des solutions, ilest preferable d’autoriser l’algorithme a accepter des solutions relativement nouvelles memesi la fitness n’est pas reellement amelioree. Pour cela, au lieu de comparer directement f(x′′)a f(x), on peut remplacer f(x′′) par f(x′′)− αρ(x, x′′), ou α est un parametre reel qui gerela tolerance par rapport a f(x) et la fonction ρ mesure la distance entre x et x′′. Ainsi,

Page 61: Etude des Algorithmes génétiques et application aux

44 Les metaheuristiques : une grande famille

Fig. 3.4 Pseudo-code pour l’algorithme GLS.

On genere une solution initiale.pour i = 1 a n faire pi = 0.tant que critere de fin non rencontre faire

iter←VRAItant que iter=VRAI faire

On recherche autour de x l’optimum local x′ de la fonctionh(x′) = f(x′) + λ

∑n

i=1 Iix′pi.

si h(x′) < h(x) fairex← x′

sinon faireiter←FAUX

endfinpour i = 1 a n faire

utili(x)← Iixci

1+pi

finUm ← i : utili(x) = maxi=1,...,n(utili(x))pour (i ∈ Um) pi ← pi + 1.

end

une solution assez eloignee de x aura plus de chances d’etre selectionnee qu’une solution quiressemble beaucoup a x.

3.4 Guided Local Search (GLS)

Les algorithmes de recherche locale guidee (Guided Local Search) derivent d’une methode,issue des reseaux de neurones, appelee GENET (Davenport et al., 1994; Tsang et al., 1999).Son objectif est de diriger l’effort de recherche dans des zones favorables de l’espace dessolutions.Pour cela, il est necessaire d’associer des caracteristiques a chaque solution. A chaque ca-racteristique, sont associes un cout et une penalite. Le cout depend en general des infor-mations que l’on a a priori concernant le probleme a resoudre. Quant aux penalites, ellesrefletent les connaissances acquises au cours de l’algorithme.Etudions le pseudo-code correspondant (Fig. 3.4). Les notations sont les suivantes :

– n : nombre de caracteristiques,– pi : penalite actuellement associee a la caracteristique i,– λ : parametre permettant de regler l’influence de la penalisation,– Iix : fonction indicatrice valant 1 si la caracteristique i est presente dans la solution

x et 0 sinon,– ci : cout de la caracteristique i.

On peut interpreter utili(x) comme l’utilite de penaliser la caracteristique i pour la so-lution potentielle x. Celle-ci augmente en fonction du cout. En effet, si la presence d’une

Page 62: Etude des Algorithmes génétiques et application aux

3.5 Greedy Randomized Adaptive Search procedures (GRASP) 45

Fig. 3.5 Pseudo-code pour l’algorithme GRASP.

f ∗ ←∞pour i = 1 a N faire

pour j = 1 a M faireOn construit la liste Cand des elements pouvant etre ajoutes a la solution.s← card(Cand)On evalue le cout ck pour k = 1, 2, . . . , s associe a l’ajout de Cand(k),

le keme element de Cand.cmin ← mink=1,...,s ck

cmax ← maxk=1,...,s ck

RestCand← Cand(k : ck ∈ [cmin, cmin + α(cmax − cmin)])On choisit un element m de RestCand aleatoirement.On incorpore m dans x.

endOn effectue une recherche locale autour de x.si f(x) < f∗ faire

x∗ ← xfin

fin

caracteristique est couteuse, on va faire en sorte d’eviter de l’ajouter. De plus, l’utilite depenaliser prend en compte la penalisation actuelle : plus une caracteristique a ete penalisee,moins il est utile de la penaliser a nouveau. Ainsi, Um est l’ensemble des caracteristiques pourlesquelles l’utilite de penaliser est maximale. Ce sont finalement ces caracteristiques que l’onpenalise. Globalement, on cherche donc a explorer des regions interessantes de l’espace dessolutions (associees a des bas couts) mais la penalisation permet d’eviter de diriger tous lesefforts dans la meme direction.

3.5 Greedy Randomized Adaptive Search procedures

(GRASP)

GRASP (litteralement, Procedures de recherche adaptative par algorithme glouton ran-domise, Feo & Resende (1989, 1995)) est une methode d’optimisation alternant une phasede construction (par l’algorithme glouton) et une phase de recherche locale. La phase deconstruction permet de construire une solution respectant eventuellement des contraintesimposees par le probleme. Le voisinage de cette solution est explore dans la seconde etapepour trouver un optimum local. La methode peut etre globalement decrite par le pseudo-code presente dans la Fig. 3.5. On notera N le nombre total d’iterations et M le nombre ded’elements composant une solution.

On voit ainsi qu’a chaque etape de construction, on se restreint a la liste (appelee RCLpour Restrictive Candidate List) contenant uniquement les meilleurs candidats, c’est-a-direles elements dont l’ajout augmente le moins le cout. Cette notion de meilleurs candidats estgeree par le parametre α ∈ [0, 1]. Si α = 0, on ne considere que les meilleurs elements au

Page 63: Etude des Algorithmes génétiques et application aux

46 Les metaheuristiques : une grande famille

sens strict (l’algorithme est dit alors purement glouton) et si α = 1, on considere l’ensembleentier des elements candidats (cas purement aleatoire). Entre ces deux extremes, on peutgerer la tolerance pour les elements a incorporer dans la solution en construction.

3.6 Ant Colony Optimization (ACO)

L’optimisation par colonie de fourmis (ACO) est egalement une metaheuristique recente(Dorigo & Di Caro, 1999; Dorigo et al., 1999). Cette methode s’inspire directement ducomportement d’une colonie de fourmis qui evoluent dans un milieu et echangent des infor-mations en laissant sur leur parcours une piste de pheromones. Dans ACO, chaque fourmiest un agent qui construit une solution et la piste de pheromones represente une informationqui sera utilisee de facon probabiliste pour faire evoluer les fourmis-solutions.Dans le contexte d’ACO, on considere que les fourmis se deplacent sur un graphe value. Pourconstruire ce graphe, on definit un ensemble E = e1, e2, . . . , eK d’elements pour constituerles solutions (c’est une sorte d’alphabet de base pour la construction des solutions). Onconstruit alors un graphe qui a ces elements pour sommets. Les fourmis vont alors pouvoirconstruire les solutions en parcourant les arcs du graphe. A chaque etape, la fourmi va choisirson deplacement de facon probabiliste en se basant sur :

– l’information localement disponible (pheromone laissee par les autres fourmis et coutdes elements),

– sa propre memoire (qui stocke l’etat de la solution en construction),– les contraintes du probleme.

Ainsi, a chaque position, la fourmi a la possibilite d’effectuer autant de mouvements qu’il y ad’elements connectes a l’element courant ej. Alors, pour chacun des deplacements possibles i(i ∈ 1, . . . , kj), la fourmi aura une probabilite pi d’effectuer ce deplacement, probabilite quidependra de l’ensemble des caracteristiques precedemment citees. On peut alors essayer derepresenter la progression d’une fourmi sous la forme d’un pseudo-code (Fig. 3.6). Les fourmisprogressent de facons independantes et asynchrones. Une fois que sa solution est complete,chaque fourmi peut effectuer le trajet a rebours et mettre a jour la piste de pheromones enfonction de la qualite de la solution finale obtenue.

Pour eviter une convergence trop rapide (et donc le risque d’obtenir un optimum local),on peut prevoir une evaporation de la piste de pheromones au cours du temps. On peut aussirajouter une sorte d’observateur global qui considere l’ensemble des fourmis et agit en tenantcompte de l’ensemble des informations. Par exemple, il peut rajouter des pheromones sur lechemin de la meilleure fourmi.La convergence theorique d’ACO a ete etudiee (Gutjahr (2002)). Ces resultats portent surune variante d’ACO appelee Graph-based Ant System dans des cas ou le facteur d’evaporationou la borne inferieure de la quantite de pheromones sont dependants du temps. La demonstrationde la convergence passe par une modelisation sous forme de chaıne de Markov.

3.7 Simulated Annealing (SA)

Le Recuit Simule (Simulated Annealing) est une methode plus ancienne. (van Laarhoven& Aarts, 1987; Aarts & Korst, 1989) lui consacraient deja des livres entiers. Mais c’est une

Page 64: Etude des Algorithmes génétiques et application aux

3.7 Simulated Annealing (SA) 47

Fig. 3.6 Pseudo-code pour la progression d’une fourmi dans l’algorithme ACO.

iter ← VRAIx← ∅tant que iter=VRAI faire

On construit la liste Cand des mouvements possibles.s← card(Cand)pour i = 1, 2, . . . , s faire

On calcule ci le cout associe a l’ajout de Cand(i) a x,(ci peut dependre de l’etat actuel de x)

On enregistre la valeur ti des pheromones associees a Cand(i).On calcule vi une valeur liee a la violation des contraintes du

probleme que represente l’ajout de Cand(i) a x.On calcule pi = g(ci, ti, vi) la probabilite de se deplacer vers Cand(i).

finOn choisit le mouvement que la fourmi va effectuer (en fonction des pi).On met a jour la piste de pheromones en fonction du mouvement choisi.Si x est complete iter ← FAUX

fin

methode populaire qui continue a faire l’objet de developpements (Henderson et al., 2003).Ici, l’analogie est physique. Elle concerne les procedes utilises en metallurgie qui alternentles phases de recuit et de refroidissement plus ou moins rapides de cristaux pour obtenirdes formes plus pures. Dans SA, on imite un processus de refroidissement par l’evolutiond’un parametre de temperature T qui evolue au cours du temps. La tolerance concernantl’acceptation des solutions generees depend de ce parametre comme l’indique le pseudo-codede SA (Fig. 3.7). On note :

– N : le nombre de valeurs differentes prises par T ,– Ti : la ieme valeur prise par T ,– Mi : le nombre d’iterations pendant lesquelles T = Ti,– V(x) : le voisinage de x.Pour mettre en œuvre un tel algorithme, il est donc necessaire de decider d’un programme

de refroidissement qui doit etre adapte au probleme a optimiser. On voit en effet, que T gereau cours de l’algorithme la tolerance pour l’acceptation d’une solution non optimale.L’algorithme SA est certainement la metaheuristique pour laquelle on trouve le plus deresultats de convergence theorique. Ces resultats reposent sur deux types de modelisation :

– modelisation par une sequence de chaınes de Markov homogenes,– modelisation par une seule chaıne de Markov non homogene.

Dans le premier cas (Aarts & van Laarhoven (1985); Lundy & Mees (1986); Mitra et al.(1986)), chaque chaıne de Markov correspond au temps pendant lequel le parametre T estconstant et on doit supposer que ce temps est suffisamment long pour obtenir le regimestationnaire. Le deuxieme cas a ete examine par Gidas (1985); Mitra et al. (1986).

Page 65: Etude des Algorithmes génétiques et application aux

48 Les metaheuristiques : une grande famille

Fig. 3.7 Pseudo-code pour SA.

On genere une solution initiale x.pour i = 1 a N faire

pour j = 1 a Mi faireDans V(x), on genere x′ aleatoirement ou par recherche d’optimum.si f(x′) ≤ f(x) faire

x← x′,sinon faire

x← x′ avec probabilite exp(f(x)−f(x′)Ti

).

finfin

fin

3.8 Comparaison des algorithmes

Apres cette rapide presentation de differentes metaheuristiques courantes, on s’apercoitqu’il existe des points communs a certaines methodes ainsi que des originalites. Afin depouvoir mettre en perspective ces methodes, nous avons choisi une serie de descripteurscommuns qui sont les suivants :

– Exploration espace : indique par quels mecanismes l’espace des solutions est exploreet s’il est explore simultanement par une ou plusieurs solutions en construction,

– Voisinage explore : indique comment est definie la structure des voisinages utilisesainsi que leur intervention dans l’algorithme,

– Aleatoire : indique les etapes de l’algorithme qui incluent des mecanismes aleatoires,– Deterministe : indique les etapes de l’algorithmes qui incluent des mecanismes deterministes,– Memoire : indique la presence (ou non) d’une memoire et la methode utilisee le cas

echeant,– Cooperation : indique l’utilisation (ou non) d’une cooperation entre solutions et la

methode utilisee le cas echeant,– Maintien de l’heterogeneite : indique les etapes au cours desquelles on cherche a

maintenir une certaine heterogeneite afin de mieux explorer l’espace des solutions enprenant le risque d’engendrer une deterioration des solutions proposees.

La comparaison des metaheuristiques presentees en fonction de ces criteres se trouve dansles Tables 3.1 et 3.2. Les points d’interrogation indiquent la presence d’elements optionnelsdans l’algorithme de base. Par exemple, la definition des croisements dans le SS peut faireintervenir le hasard ou non.

Page 66: Etude des Algorithmes génétiques et application aux

3.8 Comparaison des algorithmes 49

Tab. 3.1 Comparaison des metaheuristiques etudiees.

Methode Exploration espace Voisinage Aleatoire

par plusieurs individus defini pour la recherche locale generation population initialeSS generation population initiale combinaisons entre individus generation des sous-ensembles

recherche locale croisement ( ?)

par un individu defini pour la recherche localeTS generation solution initiale modifie par les tabous generation solution initiale

recherche locale

par un individu plusieurs types de voisinages generation solution initialeVNS generation solution initiale definis prealablement generation d’une solution dans

definition des voisinages le keme voisinage

par un individuGLS generation solution initiale defini pour la recherche locale generation solution initiale

definition des voisinages

par un individuGRASP recherche exhaustive - choix dans la RCL

par plusieurs individus initialisation fourmis ( ?)ACO initialisation fourmis ( ?) deplacements autorises choix probabiliste

deplacements autorises du deplacement

par un individu exploration voisinageSA generation solution initiale defini pour la recherche locale acceptation probabiliste

recherche locale

par plusieurs individus generation population initialeAG generation population initiale defini pour les mutations mutation

mutations combinaisons entre individus croisementselection probabiliste

Page 67: Etude des Algorithmes génétiques et application aux

Tab. 3.2 Comparaison des metaheuristiques etudiees (suite).

Deterministe Memoire Cooperation Heterogeneite

recherche locale heredite croisements -

recherche locale utilisation des tabous - tabous

recherche locale - - -

recherche localedefinition penalisation penalisation - penalisation

choix de la RCLrecherche exhaustive - - choix probabiliste

dans la RCL

utilisation deplacement- piste de pheromones piste de probabiliste

pheromones evaporation pheromones

elitisme - - evolution temperature

elitisme heredite croisement selection probabiliste

Page 68: Etude des Algorithmes génétiques et application aux

Deuxieme partie

Application a des problemesd’optimisation complexes : difficulte

de la construction de la fitness

51

Page 69: Etude des Algorithmes génétiques et application aux
Page 70: Etude des Algorithmes génétiques et application aux

Chapitre 1

Les AG appliques a la discriminationen spectrometrie

Dans la partie precedente, nous avons decrit, dans le detail, le fonctionnement d’un AGet nous avons montre qu’une bonne maıtrise de la problematique de depart est indispensablea sa mise en place. L’influence du domaine d’application est sensible a toutes les etapes del’AG mais c’est surtout dans la construction de la fitness qu’il est indispensable de prendreen compte toutes les donnees du probleme. En effet, la traduction de l’enonce d’une questiond’optimisation (dans le domaine biologique dans notre cas) pour realiser son insertion dansl’AG n’est pas toujours aussi simple que dans le cas de SCA. C’est ce que nous allons etudierdans cette partie.

Actuellement, dans le domaine de la proteomique, deux techniques representent l’im-mense majorite des etudes : la spectrometrie de masse et l’electrophorese (avec parfois desinteractions entre les deux). Nous avons vu que la proteomique a pour but d’explorer le patri-moine en proteines des individus et surtout ses eventuelles modifications lors de changementsde conditions, par exemple, lors de l’apparition d’une pathologie. L’objectif final est logique-ment de trouver des proteines qui interviennent dans les mecanismes de changement et donc,sur lesquelles il pourrait etre interessant d’intervenir pour empecher ou favoriser un change-ment d’etat. Dans les deux chapitres suivants, nous allons etudier l’interet de l’applicationdes AG a ces deux techniques dans le but ultime de trouver des proteines interessantes.

1.1 Un probleme biologique important : la recherche

de biomarqueurs en SELDI-TOF

La spectrometrie de masse est une technique tres courante en proteomique. Il existe plu-sieurs technologies permettant le recours a la spectrometrie. Actuellement, la plus frequemmentrencontree est le Surface Enhanced Laser Desorption Ionisation- Time Of Flight (SELDI-TOF) que l’on peut traduire par desorption-ionisation laser activee par une surface. Laspectrometrie de masse est, de facon generale, une technique d’analyse qualitative et quan-titative. Elle permet l’identification de molecules d’interet dans un echantillon, en analysantses differents constituants apres ionisation et parfois fragmentation dans un appareil appelespectrometre de masse. Cette technique utilise les champs electriques et magnetiques afinde separer les ions obtenus en fonction de leur rapport masse/charge (note m/z) mesure en

53

Page 71: Etude des Algorithmes génétiques et application aux

54 Les AG appliques a la discrimination en spectrometrie

Fig. 1.1 Schematisation du fonctionnement d’un spectrometre de masse.

daltons (Da). En fait, on devrait plutot s’exprimer en Da divises par le nombre de chargesfixees (en nombre de protons) mais en spectrometrie SELDI, 99% des protides ne fixentqu’une charge. De plus, l’appareil est toujours etalonne en Da c’est pourquoi on exprimetoujours le m/z en Da.Decrivons brievement le fonctionnement d’un spectrometre de masse. Cet appareil a eteconcu par Joseph John Thomson (prix Nobel 1906 pour ses recherches sur la conductiondans les gaz et le premier modele de l’atome). Globalement, il comporte une cellule d’ionisa-tion suivie d’un tri (par temps de vol ou par trajectoire) et d’un detecteur. C’est au niveau dece detecteur que les ions sont comptes, ce qui permet de construire le spectre des masses desions issus de l’echantillon. L’echantillon peut etre introduit sous differentes formes (liquide,solide, en integralite ou apres separation,. . .) suivant la technologie utilisee. On peut diviserle spectrometre de masse en trois parties principales :

– la source d’ionisation : c’est la partie de l’appareil ou les molecules passent en phasegazeuse et sont ionisees selon une methode qui depend de l’application,

– l’analyseur : l’application d’un champ electrique et/ou magnetique permet de separerles ions obtenus en fonction de leur rapport m/z,

– le detecteur : recupere les ions selon leur rapport m/z et convertit le courant ioniqueen courant electrique mesurable,

– un ordinateur : meme s’il ne fait pas partie integrante du spectrometre, c’est lui quitraite les donnees et permet la construction du spectre.

Le fonctionnement d’un spectrometre de masse est schematise dans la Fig. 1.1.

La principale originalite du SELDI par rapport aux autres technologies de spectrometriede masse se situe au niveau de l’echantillon introduit. En effet, les echantillons peuvent etredeposes sur differentes surfaces qui permettent de trier les proteines en fonction de leursproprietes physico-chimiques (proteines hydrophobes, anioniques ou cationiques, proteinesliant des metaux, etc. . .). Cela permet notamment de pouvoir observer des proteines mino-ritaires qui sont habituellement masquees par des proteines tres abondantes. Pour ce quiest de la source d’ionisation, il s’agit de la desorption-ionisation laser activee par une sur-face. Quant a l’analyseur, il fonctionne sur la base du temps de vol. La Fig. 1.2 donne unexemple de spectre obtenu par SELDI-TOF. Chaque pic correspond a une detection. Onvoit immediatement que selon l’echelle a laquelle on se place, on ne repere pas du tout lesmemes pics. La premiere etape de l’analyse de spectres SELDI est donc la detection des picsque nous aborderons dans le paragraphe 1.2.3.La technologie SELDI-TOF est actuellement la technique de spectrometrie la plus utilisee enproteomique essentiellement de par son cout modere. C’est, de plus, un outil tres compactcomme le montre la Fig. 1.3.

Page 72: Etude des Algorithmes génétiques et application aux

1.1 Un probleme biologique important : la recherche de biomarqueurs enSELDI-TOF 55

Fig. 1.2 Exemple de spectre de masse obtenu par la technologie SELDI-TOF : la partie duhaut represente un agrandissement de la partie situee entre 0 et 15000 Da.

Fig. 1.3 Le spectrometre SELDI-TOF PBS IIc.

Page 73: Etude des Algorithmes génétiques et application aux

56 Les AG appliques a la discrimination en spectrometrie

L’inconvenient majeur de la technologie SELDI-TOF est son manque de precision concer-nant la quantification des proteines detectees (l’intensite, situee en ordonnee dans la Fig.1.2), on a mesure jusqu’a 50% de variabilite (Yasui et al., 2003) ! Or, l’objectif principal del’application du SELDI-TOF en proteomique est la detection de biomarqueurs, c’est-a-direde molecules caracteristiques d’un etat. Pour cela, on peut raisonner en presence/absence,une proteine peut apparaıtre ou disparaıtre entre differents etats etudies (c’est-a-dire entreplusieurs groupes de spectres). C’est l’optique abordee dans Yasui et al. (2003) mais celareduit considerablement le champ d’investigation et provoque une perte importante d’infor-mation. Il serait beaucoup plus interessant de pouvoir observer des changements de quan-tite des proteines entre les differents etats mais pour cela, nous devons nous appuyer surl’intensite mesuree. Dans la majorite des methodes publiees et utilisees, les biomarqueurssont recherches en appliquant des tests de Student ou de Fisher a chaque pic detecte. Cettemethode est evidemment univariee et elle repose entierement sur une mesure dont on connaıtla grande variabilite. Nous avons donc cherche a mettre au point une methode de discrimina-tion qui tienne compte de tous ces parametres afin de pouvoir extraire au mieux l’informationfournie par les spectres SELDI.Dans les sections suivantes, nous allons tout d’abord considerer le pretraitement appliqueaux spectres avant toute analyse. Ensuite, nous introduirons la methode de detection debiomarqueurs que nous avons mise au point et nous l’etendrons a plus de deux groupesde spectres. Une fois ces outils mis au point, nous pourrons les introduire dans un AG.Nous appliquerons ensuite la methode obtenue a des donnees reelles. Enfin, nous verronsune autre application des AG dans le contexte de la spectrometrie, la recherche d’intervallesdiscriminants en spectrometrie proche infrarouge.

1.2 Pretraitement des spectres

1.2.1 Soustraction de la ligne de base

Dans chaque spectre de masse, il existe un niveau de base d’intensite, la ligne de basequi depend de l’echantillon et varie le long du spectre. En fait, cette ligne decrit une sortede courbe exponentielle pour les petites masses puis devient une fonction lineaire du rapportm/z (Wagner et al., 2003). Nous avons decide d’utiliser la correction de ligne de base proposeepar le logiciel fourni avec les spectrometres SELDI-TOF : le logiciel Ciphergen ProteinChip(Ciphergen, 2002) qui est tres largement employe par les utilisateurs de SELDI-TOF.

1.2.2 Normalisation des spectres

La normalisation est une premiere etape pour corriger le manque de fiabilite sur l’intensitedes spectres SELDI. Il existe de nombreuses methodes de normalisation (Baggerly et al.,2003; Hilario et al., 2003; Prados et al., 2004; Sorace & Zhan, 2003; Tibshirani et al., 2004;Zhu et al., 2003). Cependant, on sait que l’on depose la meme quantite totale de proteinespour chaque spectre, on peut donc considerer que la somme des intensites entre spectresdoit etre constante, c’est ce que l’on utilise dans la methode de normalisation dite du totalion current, la plus couramment utilisee. Cela consiste a calculer l’intensite moyenne pourl’ensemble des points de chaque spectre, on obtient alors une valeur par spectre et on fait lameme chose pour l’ensemble des spectres. Le coefficient de normalisation de chaque spectreest alors obtenu en divisant la moyenne globale par la moyenne individuelle. Ce coefficient

Page 74: Etude des Algorithmes génétiques et application aux

1.2 Pretraitement des spectres 57

permet, outre la normalisation, de reperer des spectres anormaux. En effet, si le coefficientde normalisation s’eloigne trop de un (en general s’il est inferieur a 0.5 ou superieur a 1.5),un probleme est certainement survenu lors des manipulations et le spectre doit etre ecarte.

1.2.3 Detection des pics

Certaines methodes d’analyse de spectres SELDI se basent sur l’ensemble des valeursdu spectre sans extraction des pics. Or, la seule information biologique interpretable estcelle donnee par les pics. En effet, chaque pic est cense representer une proteine ou unprotide. Ainsi, meme si l’utilisation globale du spectre peut etre suffisante pour realiserla discrimination des spectres, elle ne permet pas de reperer d’eventuels biomarqueurs etdonc d’approfondir les resultats obtenus. De plus, si l’on utilise l’ensemble du spectre, pourrealiser la discrimination de nouveaux individus, il sera necessaire d’obtenir a nouveau lespectre entier alors que si l’on se base sur des pics d’interet et que l’on arrive a identifier lessubstances correspondantes, un dosage de ces substances peut s’averer suffisant. Nous avonsdonc developpe une methode d’extraction des pics.Plusieurs methodes de detection des pics ont ete developpees. Le logiciel de Ciphergen, Pro-teinChip, utilise par Lee et al. (2003), recourt au calcul des intensites et des hauteurs devallee (c’est-a-dire la difference d’intensite entre le haut et le bas du pic) et sur des seuilsdependant du rapport signal/bruit. Ces seuils sont fixes par l’utilisateur. Yasui et al. (2003)et Tibshirani et al. (2004) utilisent des methodes similaires : ils recherchent des maxima lo-caux dans un voisinage predefini et ils calculent l’intensite moyenne dans un voisinage elargicomme definition du bruit local. Les points qui ont une intensite superieure a ce bruit local etqui sont des maxima locaux sont consideres comme des pics, dont la largeur est fixee a 0.5%du rapport m/z correspondant. Enfin, Coombes et al. (2003) identifient tous les maximaet minima locaux en calculant les differences d’intensite entre points successifs des spectres,puis ils definissent le bruit comme la mediane des valeurs absolues de ces differences et, enfin,ils eliminent les maxima locaux dont la difference d’intensite avec le plus proche minimumlocal est inferieure au bruit defini. Ils rassemblent les maxima locaux separes de moins de0.05% du rapport m/z local, les minima locaux des deux cotes du pic sont alors reperes etles differences d’intensite entre ces minima et le maximum correspondant sont calculees. Siles deux valeurs sont inferieures a la moitie du bruit, le pic est elimine. L’approche que nousavons choisie est legerement differente. Nous allons montrer de quelle maniere et pourquoi.

Description de notre algorithmeTout d’abord, la premiere etape est de choisir une definition d’un pic. Nous consideronsqu’un pic est un optimum local qui est encadre par deux autres pics qui sont plus ou moinsproches de lui. Une fois cette definition posee, nous pouvons construire notre algorithme quiest decrit dans les paragraphes suivants et illustre par la Fig. 1.4.

La premiere etape consiste a diviser le spectre en plusieurs zones, nous avons choisi deprendre des zones representant 5% des donnees mais cette valeur n’a pas d’influence sur lesresultats finaux. Dans chaque zone, on identifie le maximum local. Ensuite, on lisse le spectreen utilisant le super-smoother decrit dans Friedman (1984). Ce lissage doit etre precis caril va permettre de localiser les pics voisins. Il faut considerer ici que les spectres ne sontpas homogenes le long de l’axe des abscisses (Tibshirani et al., 2004). En effet, les donneessont plus denses pour les petites masses et la forme des pics changent, ils sont plus etroitset plus hauts pour les petites masses et deviennent de plus en plus bas et larges en allant

Page 75: Etude des Algorithmes génétiques et application aux

58 Les AG appliques a la discrimination en spectrometrie

Fig. 1.4 Une etape de l’algorithme de detection des pics : les limites des zones dans lesquelleson recherche les pics sont representees en pointilles fins, les maxima locaux sont reperes pardes lignes continues et les limites des pics par des pointilles plus gros.

30000 40000 50000 60000 70000

0.0

0.5

1.0

1.5

2.0

2.5

3.0

m/z

inte

nsity

Fig. 1.5 Pseudo-code de l’algorithme de detection des pics.

Division du spectre en zones.tant que le critere d’arret n’est pas satisfait faire

On identifie le maximum local dans chaque zone.On lisse le spectre dans chaque zone.On repere les changements de signe de part et d’autre du maximum pour fixer les bornes.On utilise ces bornes comme limites des nouvelles zones.

fin

vers les grandes masses. Le lissage doit donc etre applique localement. Nous appliquons lesuper-smoother dans chaque zone et on utilise 0.1% des donnees pour effectuer le lissage.Ce parametre n’est pas choisi au hasard. En effet, il s’agit de la precision de la mesure desm/z obtenus avec l’appareil utilise (Yasui et al., 2003), c’est la seule donnee fiable dontnous disposons. Une fois le lissage realise, on calcule la derivee premiere du spectre lisse. Laderivee est utilisee pour localiser les bornes du pic : a droite du pic, la borne est fixee a laposition ou la derivee redevient positive et a gauche ou la derivee redevient negative. Oncommence alors une nouvelle iteration en utilisant les deux bornes du pic ainsi obtenues pourdefinir les limites des nouvelles zones dans lesquelles on applique les memes etapes (a partirde la recherche du maximum local). Notons que le spectre lisse n’est utilise que pour fixer lesbornes du pic, si l’on utilisait le spectre brut, la moindre irregularite dans le pic pourrait etreconsideree comme la borne, mais les maxima locaux, ainsi que toutes les intensites d’interetsont mesures sur le spectre non lisse. On peut decrire l’algorithme de recherche des pics parle pseudo-code de la Fig. 1.5.

L’algorithme est arrete quand on a atteint un nombre maximum d’iterations. Etantdonnee la taille des zones de depart et en accord avec les biologistes, nous avons decidequ’il n’etait pas pertinent d’identifier plus de trente pics par zone, donc on autorise un maxi-

Page 76: Etude des Algorithmes génétiques et application aux

1.2 Pretraitement des spectres 59

mum de trente iterations. De plus, si une zone est tres etroite, on considere qu’il n’est pluspossible d’y trouver un vrai pic et on ne l’explore plus. L’algorithme peut aussi s’arreterquand il n’y a plus de zone assez large.Enfin, il est possible par cet algorithme d’identifier du bruit comme un pic, en effet, memes’il n’y a pas de pic dans une zone, on pourra toujours identifier un maximum local. Pour sur-monter ce probleme, on utilise la notion de hauteur de vallee (Prados et al., 2004). Commeindique precedemment, il s’agit de la difference d’intensite entre le sommet et le bas dupic. Dans notre cas, le bas du pic est identifie par les bornes du pic, on obtient donc unedifference de chaque cote et on calcule la moyenne des deux. Cette valeur est determineepour chaque pic. On represente alors la distribution de cette valeur pour tous les pics detous les spectres. Dans toutes les applications que nous avons realisees, cette distributionmontrait nettement un seuil (voir paragraphe 1.6.1). On elimine tous les pics dont la hauteurde vallee est inferieure a ce seuil.

Il est a noter que notre methode ne necessite que peu de parametres influents : contraire-ment a d’autres methodes, il n’y a pas de taille fixee de voisinage pour la recherche des picset des bornes et la largeur du pic est automatiquement adaptee a la forme de chaque pic.Enfin, la definition du bruit est liee a la hauteur de vallee qui est une mesure classiquementutilisee mais dans notre cas, le seuil utilise est adapte a chaque jeu de donnees.

1.2.4 Alignement des pics

Une fois que les pics sont identifies dans chaque spectre, il est necessaire de pouvoirdeterminer quels sont les pics qui correspondent au meme peptide dans differents spectres.En effet, il est impossible de superposer les spectres directement et ce, pour deux raisons :tout d’abord, les spectres ne sont pas mesures exactement pour les memes rapports m/z etensuite, il existe une incertitude sur la mesure qui est de 0.1% comme nous l’avons precisedans le paragraphe precedent. Un alignement des pics de l’ensemble des spectres est doncnecessaire.Pour cela, nous rassemblons les positions de tous les pics issus de tous les spectres en unseul vecteur et nous appliquons une classification hierarchique ascendante avec lien moyen(Prados et al., 2004; Duda et al., 2001) sur la position des pics. On a alors besoin d’unevaleur seuil pour decider a partir de quelle distance on considere que les pics ne represententpas la meme substance. Pour cela, on utilise a nouveau la precision de la mesure permisepar l’appareil utilise : si la difference entre les positions moyennes de deux pics ou groupesde pics est superieure a deux fois cette precision, on n’autorise pas le regroupement sinon,on considere qu’ils representent le meme peptide. De cette facon, on obtient un seuil quievolue en fonction de la position sur l’axe des m/z ce qui permet de prendre en comptel’heterogeneite de cet axe. Pour ne pas risquer de confusion entre les groupes de pics (quirepresentent le meme peptide) et les groupes de spectres (qui representent la meme conditionexperimentale), nous nommerons les groupes de pics des classes.Quand cet alignement est realise, on elimine les pics qui apparaissent dans trop peu despectres : on considere qu’un pic qui apparaıt dans un nombre de spectres inferieur a lamoitie de l’effectif du plus petit groupe n’est pas susceptible d’avoir un pouvoir discriminantinteressant, il est donc elimine.Dorenavant, nous considererons une matrice X de taille (n× p) qui rassemble les intensitesdes pics dans tous les spectres. Une ligne represente un spectre et une colonne correspond a

Page 77: Etude des Algorithmes génétiques et application aux

60 Les AG appliques a la discrimination en spectrometrie

une classe de pics. Ainsi, l’element de la ieme ligne et de la j eme colonne, xij, est l’intensitedu pic representant la j eme classe de pics dans le ieme spectre. Si une classe de pics n’a pasde representant dans un spectre, la valeur correspondante est mise a zero ou au minimumde la zone concernee. On considere ici une experience concernant n spectres pour lesquels onaurait identifie p classes de pics.

1.3 Construction d’une methode de discrimination adaptee :

la foret de branches

Dans cette partie, nous allons nous focaliser sur le cas de deux groupes de spectres, parexemple, des spectres correspondant a des individus sains et d’autres a des individus ma-lades. Nous generaliserons la methode a plus de deux groupes dans le paragraphe 1.4.Nous avons vu precedemment que l’inconvenient majeur des donnees de SELDI est leurtres grande variabilite en intensite. Pour obtenir une methode efficace et fiable, il fautnecessairement en tenir compte, contrairement a ce qui est fait dans les nombreuses methodesqui utilisent les tests de Student et de Fisher ou toute autre methode qui se base sur les in-tensites brutes. Mais nous ne voulons pas perdre trop d’information, par exemple en utilisantuniquement le fait qu’un pic soit present ou pas. Pour cela, nous avons decide de discretiserles donnees mais avec un seuil unique, variable selon les pics, seuil qui sera fixe de sorte apermettre une aussi bonne discrimination que possible, comme dans un arbre de classifica-tion (Breiman et al., 1984). Rendre les donnees binaires est une facon minimale d’utiliserdes donnees peu fiables. On tire plus d’information que si l’on raisonnait simplement sur dupresent/absent, on tient compte de l’objectif (ici la discrimination) et on ne surexploite pasune information tres variable.De plus, comme il est tres peu probable d’arriver a une bonne discrimination avec un seulpic, nous avons choisi de mettre en place une methode multivariee. Nous allons donc utiliserl’information provenant de plusieurs pics. Pour ce faire et avec l’utilisation d’un seuil, l’arbrede classification semble etre tout a fait adapte. Cependant, en SELDI, on a rarement desjeux de donnees de grande taille. Or, en utilisant un arbre, on prend des decisions (a chaquenœud) a partir de sous-ensembles de spectres de plus en plus petits, qui ne sont rapidementplus representatifs de l’echantillon global et on risque de surajuster rapidement l’echantillond’apprentissage. Si l’on applique ensuite l’arbre trouve a un nouveau jeu de donnees, leresultat risque d’etre tres peu pertinent. Nous avons donc decide d’utiliser en parallele desarbres de decision a un seul niveau (Qu et al., 2002). Un tel arbre partage l’echantillon d’ap-prentissage en deux sous-echantillons en utilisant un seuil sur une variable (ici l’intensited’une classe de pics). Dans Qu et al. (2002), les differents arbres sont construits l’un apresl’autre de sorte a ce que les faiblesses des precedents soient compensees par les suivants. Dansnotre cas, nous allons les choisir simultanement, cela peut sembler moins performant maisnous allons optimiser, conjointement, les pics utilises et les seuils par AG et tenir comptede la parcimonie (donc du nombre de pics utilises). Par cette methode, on favorisera doncles petits ensembles de pics qui seront complementaires. Tout cela conduit a une methodemultivariee ou chaque decision est prise sur l’ensemble de l’echantillon d’apprentissage, cequi est tout a fait favorable quand on ne dispose que de petits echantillons.Pour appliquer a la recherche de biomarqueurs en SELDI-TOF, chaque arbre a un niveaucorrespond au vote d’un pic comme nous allons le decrire dans les paragraphes suivants.

Page 78: Etude des Algorithmes génétiques et application aux

1.3 Construction d’une methode de discrimination adaptee : la foret debranches 61

L’objectif est alors de construire ce que nous appellerons un comite, c’est-a-dire un ensemblede pics avec leur seuil de discretisation associe. Nous autoriserons a utiliser entre 1 et Nm

pics (donc arbres a un niveau) pour constituer un comite. Attendu que l’on cherche a obtenirun modele parcimonieux, on voudra avoir peu de pics et donc, fixer un nombre maximum depics dans les comites n’est pas tres contraignant et nous verrons plus loin que cela est tresutile dans l’AG. Dans un premier temps, nous allons considerer que le comite est connu etnous allons decrire precisement la methode de discrimination.

ModelisationPour determiner les regles de decision du comite, nous n’allons utiliser qu’une partie des nspectres de l’echantillon, qui contiennent n1 spectres du groupe 1 et n2 spectres du groupe2. Soit L l’ensemble de ces spectres. On considere un comite C, contenant NC pics et leursseuils. Pour chaque pic mC

i (i = 1, 2, . . . , NC) du comite, il faut determiner a quel groupeun spectre l (l ∈ L) sera affecte suivant l’intensite du pic mC

i dans ce spectre, x(l,mCi ), par

rapport au seuil associe, zmCi. Le vote du pic mC

i dans le cas ou x(l,mCi ) > zmC

isera note

V +mC

i

(V +mC

i

∈ 1, 2) et V −mC

i

si x(l,mCi ) ≤ zmC

i(V −

mCi

∈ 1, 2). Ces votes sont calcules comme

suit :

Definition 1.1 Calcul du vote des pics :Cas des spectres situes au-dessus du seuil :

V +mC

i

= arg maxg=1,2

(

1

ng

l∈L∩g

Ix(l,mCi ) > zmC

i

)

,

Cas des spectres situes au-dessous du seuil :

V −mC

i

= arg maxg=1,2

(

1

ng

l∈L∩g

Ix(l,mCi ) ≤ zmC

i

)

,

On peut alors calculer ces votes pour les NC pics. Soit T l’ensemble des spectres nonutilises. Une fois les regles de decisions determinees, on peut calculer le taux de bien classesen les appliquant aux spectres de T . Pour cela, on calcule l’affectation A(l) de chaque spectrel ∈ T (A(l) ∈ 1, 2).

Definition 1.2 Calcul de l’affectation d’un spectre a un groupe :

A(l) = arg maxg=1,2

(

NC∑

i=1

IvmCi(l) = g

)

,

ou

vmCi(l) = Ix(l,mC

i ) > zmCiV +

mCi

+ Ix(l,mCi ) ≤ zmC

iV −

mCi

.

Si, pour un spectre, on a autant de votes pour un groupe que pour l’autre, on considerequ’il est mal classe.Etudions maintenant la generalisation a plus de deux groupes.

Page 79: Etude des Algorithmes génétiques et application aux

62 Les AG appliques a la discrimination en spectrometrie

1.4 Generalisation a plus de deux groupes : utilisation

du pairwise coupling

Quand on a plus de deux groupes, on peut toujours utiliser des arbres de classificationmais nous en avons vu les inconvenients dans la partie precedente. On pourrait aussi utiliserdes methodes telles que l’analyse discriminante mais cela reviendrait a travailler sur lesintensites brutes, ce qui n’est pas souhaitable non plus. Nous voulons donc conserver notreapproche par seuils d’intensite. Pour k = 3 groupes, on pourrait envisager de fixer deuxseuils pour chaque pic et on obtiendrait trois decisions d’affectation pour chaque pic, ainsi,un pic serait capable de discriminer seul les trois groupes. Mais si k > 3, cela devient plusdifficile. C’est pourquoi nous avons choisi d’utiliser la methode dite du pairwise coupling(Wu et al., 2004) a notre problematique. Cela consiste a realiser toutes les discriminationsdeux a deux des groupes, a en deduire des probabilites d’affectation aux classes et a estimerdes probabilites d’affectation globales en combinant les probabilites issues des comparaisonsdeux a deux.

1.4.1 Calcul des probabilites d’affectation par couple de groupes

Afin de realiser les comparaisons deux a deux, il faut disposer d’un comite par couple degroupes. Il existe k(k−1)/2 couples de groupes distincts pour k groupes, il faut donc choisirk(k − 1)/2 comites. L’objectif de cette etape est de calculer, pour chaque spectre, l ∈ T :

rij(l) = Pr(l ∈ i|l ∈ i, j,X, Cij), i = 1, 2, . . . , k, i < j ≤ k, (1.1)

ou X est la matrice contenant les intensites des pics, Cij est le comite choisi pour comparerles groupes i et j, il est constitue de NCij pics et seuils. On obtient ainsi une matrice R(l) dedimension (k × k) ou rij(l), l’element de la ieme ligne et de la j eme colonne, correspondanta l’estimation de rij(l) est calcule comme suit.

Definition 1.3 Calcul des estimateurs des probabilites d’affectation des spectres pour lescomparaisons deux a deux :

rij(l) =1

NCij

NCij∑

n=1

Ivijmn

(l) = i si i < j, (1.2)

=1

NCij

NCij∑

n=1

Ivijmn

(l) = j si i > j, (1.3)

= 1 si i = j, (1.4)

ou vijmn

(l) est le vote decide par le neme pic du comite choisi pour discriminer les groupes i

et j (l’indice Cij a ete omis dans mCij

n pour alleger l’ecriture).

1.4.2 Calcul des probabilites d’affectation globales

Une fois que les probabilites d’affectation ont ete calculees pour chaque couple de groupes,il existe plusieurs methodes (Wu et al., 2004) pour calculer les probabilites d’affectationglobales pour le spectre l,

p(l) = p1(l), p2(l), . . . , pk(l).

Page 80: Etude des Algorithmes génétiques et application aux

1.4 Generalisation a plus de deux groupes : utilisation du pairwise coupling 63

Pour alleger l’ecriture nous allons remplacer p(l) par p dans la suite, en sachant qu’un vec-teur p est calcule pour chaque spectre l ∈ T . De meme, nous remplacerons rij(l) par rij.La methode choisie ici a ete introduite par Wu et al. (2004) qui ont realise plusieurs si-mulations et ont compare les performances de differents estimateurs des probabilites. Cettemethode semble etre reellement robuste, notamment pour des changements de structures deprobabilite. Cela consiste a calculer le vecteur p tel qu’il minimise :

minp

k∑

i=1

j:j 6=i

(rjipi − rijpj)2, avec

k∑

i=1

pi = 1 et pi ≥ 0, ∀i ∈ 1, . . . , k. (1.5)

Le theoreme (1.1) montre que les contraintes de positivite des pi sont redondantes.

Theoreme 1.1 Le probleme (1.5) est equivalent a

minp

k∑

i=1

j:j 6=i

(rjipi − rijpj)2, avec

k∑

i=1

pi = 1. (1.6)

DemonstrationIl suffit de montrer que toute solution optimale p de (1.6) satisfait pi ≥ 0, ∀i ∈ 1, . . . , k.Si cela n’est pas vrai, on suppose, sans perte de generalite :

p1 ≤ 0, . . . , pr ≤ 0, pr+1 > 0, . . . , pk > 0,

ou 1 ≤ r < k et il y a un 1 ≤ i ≤ r tel que pi < 0. On definit alors une autre solutionpossible de (1.5) :

p′1 = 0, . . . , p′r = 0, p′r+1 = pr+1/α, . . . , p′k = pk/α,

ou α = 1−∑r

i=1 pi > 1.Avec rij > 0 et rji > 0, on obtient

(rjipi − rijpj)2 = (rjip

′i − rijp

′j)

2 ≥ 0, si 1 ≤ i, j ≤ r,

(rjipi − rijpj)2 = (rijpj)

2 >(rijpj)

2

α2= (rjip

′i − rijp

′j)

2, si 1 ≤ i ≤ r, r + 1 ≤ j ≤ k,

(rjipi − rijpj)2 ≥

(rjipi − rijpj)2

α2= (rjip

′i − rijp

′j)

2, si r + 1 ≤ i, j ≤ k.

On en deduite que

k∑

i=1

j:j 6=i

(rjipi − rijpj)2 >

k∑

i=1

j:j 6=i

(rjip′i − rijp

′j)

2.

Cela est en contradiction avec le fait que p est une solution optimale de (1.6) puisquela solution obtenue avec les p′i est meilleure. Donc une solution contenant au moins unelement strictement negatif ne peut etre une solution optimale de (1.6). Donc la contrainte,pi ≥ 0, ∀i ∈ 1, . . . , k est inutile.

Le probleme (1.6) peut ensuite etre ecrit sous la forme :

Page 81: Etude des Algorithmes génétiques et application aux

64 Les AG appliques a la discrimination en spectrometrie

arg minp

2p′Qp, (1.7)

ou Q est la matrice symetrique de dimension (k × k) definie par :

Qij =∑

l:l 6=i

r2li, si i = j, (1.8)

= −rjirij si i 6= j, (1.9)

Alors, ∀v 6= 0k, on a v′Qv = 12

∑k

i=1

∑k

j=1(rjivi − rijvj)2 ≥ 0, donc Q est semi-definie

positive. Par consequent, p est un minimum global si et seulement si il satisfait la conditiond’optimalite suivante :

Il existe un scalaire b tel que :[

Q 1k

1′k 0k

] [

pb

]

=

[

0k

1

]

(1.10)

ou Qp est la derivee de (1.7) et b le multiplicateur de Lagrange associe a la contrainte∑k

i=1 pi = 1. Alors, la solution de (1.5) peut etre obtenue en resolvant le systeme lineaire(1.10).

1.5 Insertion dans l’AG

Dans la partie precedente, on considerait les comites comme connus, nous allons main-tenant considerer l’utilisation des AG pour optimiser ces comites. Pour cela, detaillons laconstruction des differentes etapes de l’AG qui ont ete definies dans la partie 1.6.

1.5.1 Codage des solutions

Nous venons de voir que l’objectif est maintenant de rechercher un comite constitue decouples de pics et de seuils associes qui permette d’obtenir une bonne discrimination despics. Nous avons donc transforme le probleme biologique (recherche de biomarqueurs enSELDI-TOF) en un probleme de selection de variables et de discretisation. Pour inserer ceprobleme dans l’AG, il faut tout d’abord definir et coder ce que represente une solution ace probleme d’optimisation. Dans cette application, une solution represente un comite. Pourla decrire, il est necessaire d’avoir l’identifiant associe a chaque pic du comite ainsi que lavaleur du seuil qui lui est associe.Pour cela, deux types d’alphabets sont necessaires, un pour les numeros des pics, Ap et unpour les valeurs des seuils de chacun des NC pics du comite, Ati avec i = 1, 2, . . . , p. Concer-nant les numeros des pics, si l’on dispose de p pics (nombre de colonnes de la matrice X)alors Ap = 1, 2, . . . , p. Pour les valeurs des seuils, notons xj le vecteur ordonne des valeursd’intensite prises par le pic j dans l’ensemble des spectres. Alors, les valeurs de seuils, pourle pic j, seront necessairement comprises entre min(xj) et max(xj). De plus, il n’est pasnecessaire de definir plus d’une valeur de seuil entre deux valeurs successives de xj et quelleque soit cette valeur, l’impact sur la classification sera le meme puisque l’on aura toujoursautant de spectres de part et d’autre du seuil. On choisit donc de prendre comme valeurs de

Page 82: Etude des Algorithmes génétiques et application aux

1.5 Insertion dans l’AG 65

Fig. 1.6 Exemple de codage d’un comite contenant trois pics : la premiere valeur representeun identifiant de pic et la deuxieme, le seuil associe puis on trouve deux autres identifiantschacun suivi de la valeur de son seuil. Enfin, on ajoute le nombre de NA necessaires pourobtenir une longueur de 2×Nm.

110 11.47 188 6.21 180 1.53 NA NA . . .

seuils possibles l’ensemble des valeurs moyennes entre deux valeurs successives de xj. Enfin,on rajoute la plus petite valeur de la serie. En effet, dans le cas ou on a plusieurs spectrespour lesquels le pic n’est pas present, la plus petite valeur sera zero et on pourra alors avoirzero comme seuil, ce qui permettra de faire la difference entre present et absent. On a donc,au maximum, n valeurs de seuils par pic (on rappelle que n est le nombre de spectres), c’estle cas si toutes les valeurs d’intensite observees dans les differents spectres sont differentes.On obtient Ati = ti1, ti2, . . . , tici

ou ci ≤ n.De plus, pour que les operateurs soient plus simples a appliquer, il est tout a fait souhaitableque toutes les solutions soient representees par des vecteurs de la meme longueur. Pour cela,on peut imposer un nombre maximum de pics, Nm, dans le comite. Ainsi, si on a moins deNm pics dans le comite, il suffira de completer le vecteur avec des NA (qui signifie not avai-lable dans le logiciel R c© et represente generalement les donnees manquantes) par exemple.Nous avons evoque precedemment qu’un nombre de pics restreint etait plus souhaitable :si on arrive a une bonne classification avec peu de pics, c’est que ces pics sont tout a faitrepresentatifs de la population alors qu’une tres bonne classification obtenue avec de nom-breux pics est susceptible de relever du surajustement. Donc, fixer un nombre maximal depics n’est pas genant. Il est donc necessaire de rajouter NA dans les alphabets qui deviennentalors :

Definition 1.4 Alphabets necessaires a la construction de l’AG pour la recherche de bio-marqueurs en SELDI-TOF :

Ap = 1, 2, . . . , p,NA

At1 = t11, t12, . . . , t1c1 ,NA ou c1 ≤ n

. . .

Ati = ti1, ti2, . . . , tici,NA ou ci ≤ n

. . .

Atp = tp1, tp2, . . . , tpcp,NA ou cp ≤ n

Finalement, une solution (donc un comite) sera representee par un vecteur de longueur2×Nm : Nm valeurs pour les identifiants des pics et Nm valeurs pour les seuils correspondants.Notons que si, pour une solution, on n’a que NC pics dans le comite, il y aura 2×NC valeursreelles dans le vecteur et 2(Nm − NC) NA. Un exemple est presente dans la Fig. 1.6. Onobtient donc un probleme combinatoire ayant un nombre de solutions fini (puisque tous lesalphabets sont finis) mais tres grand (voir chapitre 1.2 de la partie 3).

Page 83: Etude des Algorithmes génétiques et application aux

66 Les AG appliques a la discrimination en spectrometrie

1.5.2 Initialisation

Dans le cas du SELDI, nous n’avons aucune information a priori concernant le nombrede pics a inclure dans le comite et encore moins sur les meilleurs pics a considerer. Nousallons donc generer la population initiale de sorte a ce qu’elle soit le plus heterogene possible.Les parametres a generer sont :

– NC , le nombre de pics du comite : NC ∈ 1, 2, . . . , Nm,– u, le vecteur des identifiants des pics selectionnes : u ∈ (Ap)

NC ,– v, le vecteur des seuils correspondants aux pics selectionnes : vi ∈ Ati ,

ou vi est le ieme element de v (i = 1, 2, . . . , NC) et Ati est l’ensemble des valeurs de seuilspossibles pour le pic d’identifiant ui, le ieme element de u.Le nombre de pics est genere aleatoirement dans 1, 2, . . . , Nm avec equiprobabilite. Pourle choix des pics, les pics ayant une plus large amplitude de valeurs d’intensite ont plus dechances de presenter un interet pour la discrimination. Nous avons donc choisi de selectionner,pour la population initiale, les pics avec une probabilite proportionnelle a leur amplitude :plus l’amplitude des intensites d’un pic est importante plus la probabilite de le selectionnerdans la population initiale est grande et inversement. Cette solution a egalement l’avantagede defavoriser les tres petits pics qui pourraient etre lies a du bruit non elimine lors de l’ex-traction des pics.Concernant le choix du seuil, afin de ne pas penaliser les comites qui comportent peu depics, nous avons decide d’initialiser la population avec un seuil considere comme optimalpour chaque pic pris individuellement. Pour cela, considerons deux groupes de spectres d’ef-fectifs respectifs, n1 et n2. Alors, la proportion πmg(j) de spectres dans le groupe g pourlesquels le pic d’identifiant m a une intensite superieure a zj

m, le j eme seuil possible pour cepic est determinee de la maniere suivante :

πmg(j) =1

ng

i∈g

Ix(i,m) > zjm, (1.11)

ou x(i,m) est l’intensite du pic m dans le spectre i et i ∈ g signifie que l’on somme pourtous les spectres appartenant au groupe g.Le seuil optimal, z j

m est choisi parmi les cm valeurs possibles pour le pic m de sorte que :

j = arg maxj=1,...,cm

|πm1(j)− πm2(j)|. (1.12)

Ce seuil optimal est automatiquement applique quand un pic est utilise pour construire lapopulation initiale ou dans les generations suivantes, quand un nouveau pic est ajoute. Celaa pour but d’eviter une importante chute systematique de la valeur d’une solution quand onajoute un pic. Le seuil optimal dans un comite donne n’est evidemment pas necessairementle seuil optimal determine quand le pic est seul, il pourra evoluer au cours des generations.L’initialisation de la population peut alors etre decrite par le pseudo-code de la Fig. 1.7.

1.5.3 L’operateur de mutation

Nous avons vu dans le paragraphe 1.3 que l’operateur de mutation doit fournir le hasardnecessaire a une bonne exploration de l’espace des solutions. Il doit assurer que tous les pointsde cet espace peuvent etre atteints et ainsi eviter une convergence rapide vers un optimumlocal. Comme presente au paragraphe 1.3, nous allons utiliser un taux de mutation, pm(t)

Page 84: Etude des Algorithmes génétiques et application aux

1.5 Insertion dans l’AG 67

Fig. 1.7 Pseudo-code de l’initialisation de l’AG pour la recherche de biomarqueurs en SELDI-TOF.

On calcule les probabilites de selection de chaque pic en fonction de son amplitude.pour m = 1, 2, . . . , p faire

On determine z jm le seuil optimal du pic m.

pour i = 1, 2, . . . , Tpop faireNc ← rand(1, 2, . . . , Nm),pour j = 1, 2, . . . , Nc faire

On genere l’identifiant uj en fonction des probabilites de selection.On lui associe son seuil optimal.

finOn construit la solution generee et on l’insere dans la population.fin

qui varie au cours des generations : il est eleve au debut de l’algorithme pour permettreune large exploration puis il diminue pour autoriser une convergence et enfin il augmente anouveau pour laisser l’algorithme sortir d’un eventuel optimum local.Pour s’assurer que tout l’espace des solutions pourra etre atteint par les solutions, il fautpermettre tous les changements possibles, dans ce cas, ce sont les suivants :

– suppression d’un pic : un pic est aleatoirement choisi parmi les pics presents dans lecomite et supprime de la solution (avec son seuil),

– ajout d’un pic : un nouveau pic est aleatoirement choisi et son seuil optimal lui estassocie,

– deplacement d’un seuil : pour un des pics du comite choisi au hasard le seuil presentest remplace aleatoirement par un autre seuil possible pour ce pic.

Nous rappelons que l’utilisation du seuil optimal a pour but d’eviter une diminution systematiquetrop importante de la valeur d’une solution en cas d’ajout d’un pic.Pour appliquer l’operateur de mutation, tout d’abord, on choisit au hasard les individus dela population qui vont subir la mutation. Ce choix tient bien entendu compte du taux demutation courant. Notons ici que le taux de mutation s’applique aux individus de la popu-lation et non a leurs elements pris un par un. Cela permet de tenir compte de la solutiond’un point de vue global, essentiellement ici pour favoriser la parcimonie des solutions enprenant en consideration le nombre de pics deja presents dans la solution courante. Dans unesolution, tous les elements des vecteurs de solution n’ont pas la meme signification (identi-fiant ou seuil), on peut donc choisir le type de mutation a appliquer. Pour cela, on definitla probabilite, ps, d’eliminer un pic de la solution consideree, la probabilite, pa, d’ajouterun pic et la probabilite, pd, de deplacer un pic. Pour une solution contenant np pics, cesprobabilites sont definies comme suit (Green, 1995) :

ps(np) = λ×min(1,pois(np− 1)

pois(np)), (1.13)

ou pois(k) est la probabilite pour le nombre de pics d’etre egal a k par une distribution dePoisson de parametre Nm

2, ou Nm est toujours le nombre maximum de pics dans le comite

(DiMatteo et al., 2001). Ce parametre de la loi de Poisson est choisi de sorte a favoriser laparcimonie du modele, c’est-a-dire un petit nombre de pics (toujours pour eviter le surajus-

Page 85: Etude des Algorithmes génétiques et application aux

68 Les AG appliques a la discrimination en spectrometrie

Fig. 1.8 Pseudo-code de l’application de l’operateur de mutation pour l’AG de recherche debiomarqueurs en SELDI-TOF.

pour i = 1, 2, . . . , Tpop faireOn genere µ ∈ [0, 1].si µ ≤ pm faire

np← nombre de pics dans la solution i.On calcule les probabilites ps(np), pa(np) et pd(np).On choisit le type de mutation en fonction de ces probabilites.On applique la mutation.On remplace la solution i par la solution obtenue.

finfin

tement). Le coefficient λ est utilise pour assurer que pr ≥ 0 (voir Eq. 1.15). Ce parametredoit alors etre fixe en fonction de Nm, par exemple, pour Nm = 10, une valeur de λ = 0.4etait appropriee.De la meme facon,

pa(np) = λ×min(1,pois(np + 1)

pois(np)), (1.14)

etpd(np) = 1− (ps + pa). (1.15)

Grace a ces probabilites, un type de mutation est choisi et applique a la solution considereecomme decrit precedemment. La nouvelle solution remplace alors l’ancienne dans la popu-lation. Le deroulement global de l’application de l’operateur de mutation est decrit dans lepseudo-code de la Fig. 1.8. Rappelons qu’apres application des mutations, on n’a aucuneidee a priori sur leurs consequences en termes de fitness.

Si on considere les conditions necessaires et suffisantes de convergence definies par Bhan-dari et al. (1996) on ne retrouve pas exactement la premiere condition enoncee. En effet,par cette definition des mutations par individu qui permettent de prendre en compte la vi-sion globale de la solution pour orienter les mutations, on ne peut pas arriver de n’importequelle solution a n’importe quelle autre en n’importe quel nombre donne d’etapes. La partie1 permettra de generaliser les resultats de convergence de Bhandari et al. (1996) a notre casde mutations dirigees et on verra de plus, dans la partie 3, comment ce type de mutationpeut permettre une modelisation interessante de l’AG.

1.5.4 L’operateur de croisement

Dans cette application, la complementarite entre les pics d’un comite (donc d’un individude la population) est primordiale, l’echange de pics entre solutions est donc a meme defaire apparaıtre de nouvelles interactions entre differents pics. Ces dernieres peuvent etrepositives pour la fitness ou au contraire detruire une symbiose deja efficace. Voyons commentle croisement, qui remplit ce role, est applique dans cet exemple.La longueur des solutions est assez faible, elle est de 2×Nm et un parametre Nm grand n’est

Page 86: Etude des Algorithmes génétiques et application aux

1.5 Insertion dans l’AG 69

pas du tout souhaitable. Nous avons donc choisi d’appliquer un operateur de croisement adeux points pour lequel on intervertit, entre les parents, le fragment central (Jeffries, 2004).Pour choisir les parents, on realise une permutation aleatoire des individus de la populationcomme decrit et pour chaque couple d’individus pris successivement, on decide de les croiserou non en fonction du taux de croisement, pc. Considerons un couple que l’on a choisi decroiser et soient np1 et np2 leurs nombres de pics respectifs. On choisit avec equiprobabiliteNpc, le nombre de pics a intervertir,

Npc ∈ 1, 2, . . . , max(np1, np2).

Il ne reste plus qu’a choisir le point de debut du croisement qui doit etre choisi dans l’ensemble

1, 2, . . . , min [(Nm −Npc + 1), max(np1, np2)].

Ce point correspond au premier point echange, si on prend comme debut la premiere position,cela revient a ne faire un croisement qu’a un point de rupture.Enfin, les pics et leurs seuils associes sont echanges entre les deux parents conduisant a deuxenfants qui les remplacent dans la population. Ce processus est applique iterativement atous les couples choisis pour subir le croisement. On obtient effectivement un operateur quine tient pas compte de l’amelioration ou de la deterioration des enfants par rapport auxparents. Voyons maintenant la definition de la fitness et son utilisation pour la selection qui,seule, permet de repondre au probleme d’optimisation.

1.5.5 Definition de la fitness et operateur de selection

Rappelons ici que l’objectif de cet AG est de trouver des biomarqueurs parmi les picspresents dans les spectres. Il faut donc reperer des comites de pics permettant une discri-mination efficace des groupes de spectres. La fitness doit donc, en priorite, tenir compte dutaux de bien classes permis par chaque comite selon la methode decrite dans les paragraphes1.3 et 1.4. Par ailleurs, nous avons deja indique qu’un petit comite de bonne qualite etaitplus a meme de comporter des pics reellement discriminants pour l’ensemble de la popula-tion qu’un comite constitue de nombreux pics, qui surajuste l’echantillon d’apprentissage etlimite sa possibilite de generalisation. Nous voulons donc egalement que la fitness prenne encompte la parcimonie du modele obtenu sous forme de penalisation. Attendu que l’on a dejaintroduit un nombre maximal de pics, que l’on a defavorise les comites d’effectif importantlors de l’application de l’operateur de mutation et que l’on ne connaıt pas le nombre de picsoptimal, la penalite introduite, ρ(np), est simplement une fonction lineaire du nombre depics np :

ρ(np) = a× np + b avec (a, b) ∈ R2. (1.16)

Dans ce cas, nous allons chercher a maximiser la fitness. Les reels a et b sont donc calculesde sorte a ce que ρ(np) soit minimum pour un grand nombre de pics et maximum pour peude pics. De plus, afin de faciliter l’equilibrage des deux termes de la fitness, chacun seraramene dans l’intervalle [0, 1]. Finalement, a et b sont determines tels que

ρ(1) = 1

ρ(Nm) = 0

Page 87: Etude des Algorithmes génétiques et application aux

70 Les AG appliques a la discrimination en spectrometrie

Quant au taux de bien classes, τ , il est calcule pour chaque individu de la populationcomme indique precedemment. Il est par definition dans [0, 1] avec la valeur un representantle cas le plus favorable ou tous les individus de l’echantillon test local sont bien classes. Sicela est necessaire, on rajoute un parametre c ∈ R pour realiser l’equilibre entre les deuxtermes et on obtient une fitness de la forme :

fitness = τ + c× ρ(np) (1.17)

Apres application des operateurs de croisement et de mutation, la population est constitueed’individus n’ayant subi aucune transformation et d’individus ayant subi croisement et/oumutation. Chaque operateur etant applique de maniere probabiliste, les nombres d’individusnon transformes et transformes sont compris tous deux entre 0 et Tpop. On peut alors calculerla valeur de fitness pour chacun de ces individus pour realiser la selection. Nous avons choisid’appliquer la methode de selection qui repose sur les rangs des individus pour les raisonsindiquees au paragraphe 1.5. On a donc :

Pr[selectionner l’individu de rang k] = α× k + β,

avec α et β choisis tels que :

Tpop∑

k=1

α× k + β = 1

et

Pr[selectionner la meilleure solution] = 2×Pr[selectionner la solution de rang median].

De plus, pour satisfaire a la deuxieme condition necessaire et suffisante de convergencedefinie par Bhandari et al. (1996), on applique l’etape d’elitisme qui consiste a automatique-ment selectionner le meilleur individu de la population, de sorte a ce que la fitness du meilleurindividu de la population ne puisse pas diminuer au cours des generations. Rappelons que lepire individu de la population obtenue apres application de l’operateur de selection est rem-place par l’individu issu de l’elitisme (la taille de population est ainsi maintenue constante).Finalement, l’AG obtenu est decrit dans le pseudo-code de la Fig. 1.9. On voit que laseparation des spectres en echantillon d’apprentissage et echantillon test pour la discrimi-nation est realisee a chaque etape. En effet, si cette separation restait la meme durant toutl’AG, on n’arriverait qu’a surajuster l’echantillon test obtenu alors que, dans notre cas, siune solution realise le surajustement de l’echantillon test obtenu au cours d’une generation,comme cet echantillon change a la generation suivante, elle obtiendra une mauvaise fitness etsera defavorisee lors de la selection. Ainsi, les solutions d’une meme generation (qui sont com-parees par l’intermediaire de l’operateur de selection) sont appliquees au meme echantillontest mais cet echantillon change d’une generation a l’autre. Cette methode permet de favo-riser les comites dont les performances sont bonnes sur la majorite des echantillons tests etdonc qui ont de bonnes chances d’etre generalisables. Pour ce qui est du critere, on consideredans un premier temps qu’il s’agit d’un nombre maximal de generations atteint, ce nombreest fixe empiriquement.

Page 88: Etude des Algorithmes génétiques et application aux

1.5 Insertion dans l’AG 71

Fig. 1.9 Pseudo-code de l’AG pour la recherche de biomarqueurs en SELDI-TOF, pop[i] estle ieme individu de la population courante.

On genere la population initiale.e← arg maxpop[i], i∈1,...,Tpop f(i)tant que critere d’arret non atteint faire

Croisement.Mutation.Division de l’echantillon en echantillon d’apprentissage et echantillon test

pour la discrimination.Calcul de la fitness pour chaque individu de la population.Selection.m← arg mini∈1,...,Tpop f(i)pop[m]← ee← arg maxpop[i], i∈1,...,Tpop f(i)

fin

1.5.6 Generalisation a plus de deux groupes

Globalement, le deroulement de l’AG pour k > 2 groupes est le meme que celui decrit dansle paragraphe precedent. Cependant, comme nous utilisons le pair-wise coupling, k(k− 1)/2populations doivent etre construites, chacune d’elles permettant la discrimination d’un couplede groupes de spectres.Pour ce qui est de l’initialisation, les seuils optimaux individuels sont determines pour chaquecomparaison et chaque population est construite comme indique au paragraphe 1.5.2. Il estnecessaire que toutes les populations aient la meme taille, Tpop. Les etapes de croisement etde mutation sont appliquees independamment sur chacune des k(k−1)/2 populations commedecrit dans les paragraphes 1.5.4 et 1.5.3. En revanche, l’etape de selection prend en comptesimultanement les k(k− 1)/2 populations. En effet, ce sont les probabilites d’affectation auxgroupes globales qui nous interessent.Tout d’abord, pour chaque solution i de chaque population (i = 1, 2, . . . , Tpop), on calcule laprobabilite d’affectation pour le couple associe comme indique dans le paragraphe 1.4.1. Onobtient ainsi les probabilites rij(l) pour i = (1, 2, . . . , (k − 1)) et j = (1, 2, . . . , k) calculeessur l’echantillon test associe a la generation courante. On peut alors calculer les proba-bilites d’affectation globales, p(l) (cf. paragraphe 1.4.2). Le spectre l est alors affecte augroupe pour lequel la probabilite globale est maximale, on repete pour tous les spectres del’echantillon test et on obtient le pourcentage de bien classes associe a cette solution (qui estdonc constituee de k(k − 1)/2 sous-solutions) en comparant avec les vrais groupes qui sontconnus.Pour ce qui est de la parcimonie, on prend en compte la somme des nombres de pics utilisesdans les k(k− 1)/2 comites, les parametres du terme de penalisation doivent etre recalculesde sorte a ce que ρ(k(k− 1)/2) = 1 et ρ(Nm× k(k− 1)/2) = 0. Tous les individus de la lignei de chacune des populations auront donc la meme valeur de fitness. Finalement, l’operateurde selection est applique exactement comme decrit dans le paragraphe 1.5.5.

Page 89: Etude des Algorithmes génétiques et application aux

72 Les AG appliques a la discrimination en spectrometrie

Tab. 1.1 Parametres utilises pour appliquer l’AG de rechercher de biomarqueurs.

Taille de la population : Tpop = 200Nombre de generations : Ngene = 200Nombre maximum de pics dans le comite : Nmax = 10Taux de mutation initial : pm = 0.8Taux de croisement : pc = 0.7

1.6 Une premiere approche de la convergence : l’ob-

servation

Nous allons maintenant appliquer la methode decrite precedemment a deux jeux dedonnees. Tout d’abord, nous etudierons un jeu de donnees public a deux groupes concernantdes femmes atteintes ou non de cancer des ovaires. Ce jeu de donnees, malgre quelques in-convenients, a ete traite par de nombreuses techniques, ce qui nous permettra de mesurerl’efficacite de notre methode par comparaison. Le deuxieme jeu de donnees concerne troisgroupes de patients atteints de differents troubles neurologiques, il nous permettra d’ap-pliquer l’extension a plus de deux groupes de notre methode. Ces deux jeux de donneesnous permettront egalement de voir comment l’etude de la population finale de l’AG permetd’avoir un certain nombre d’informations sur la convergence de l’algorithme. La Tab. 1.1donne les valeurs des parametres utilises pour les deux applications.

1.6.1 Donnees publiques de cancer de l’ovaire

Nous avons utilise les donnees a basse resolution issues d’un instrument Ciphergen quiest identifie sous le nom de 8-7-02 data sur le site de la NCI-FDA (http ://home.ccr. can-cer.gov/ncifdaproteomics/ppatterns.asp). Ces donnees sont constituees de 162 echantillonsconcernant des patientes atteintes de cancer des ovaires et de 91 echantillons de controle.Chaque spectre contient 15154 points avec un rapport m/z variant entre 0 et 20000 Da. Deces 253 echantillons, 46 spectres controles et 81 spectres de cancer sont choisis au hasardpour constituer l’echantillon d’apprentissage et les spectres restant (45 controles et 81 can-cers) seront utilises pour tester la qualite du modele obtenu.Ce jeu de donnees a deja ete analyse par differentes methodes telles que les k-plus prochesvoisins (Zhu et al., 2003), statistiques non parametriques et analyse discriminante pas a pas(Sorace & Zhan, 2003), AG correspondant a l’algorithme decrit par Petricoin et al. (2002)(Jeffries, 2004), SVM (Jong et al., 2004) et analyse logique (Alexe et al., 2004). De plus, Liu etal. (2002) ont compare plusieurs methodes pour la selection de variables et la discriminationde ce jeu de donnees.

1.6.1.1 Pretraitement

Comme nous l’avons decrit dans le paragraphe 1.2, la premiere etape consiste a extraireet aligner les pics des differents spectres. Ceci est fait pour l’ensemble des spectres desechantillons d’apprentissage et de test. Apres application de l’algorithme de detection despics, environ 350 pics potentiels ont ete identifies par spectre. Les hauteurs de vallee ont alorsete calculees et leur distribution est representee dans la Fig. 1.10. On identifie aisement une

Page 90: Etude des Algorithmes génétiques et application aux

1.6 Une premiere approche de la convergence : l’observation 73

Fig. 1.10 Distribution des hauteurs de vallees des pics issus de l’algorithme de detectionpour les donnees publiques de cancer des ovaires.

rupture dans la distribution vers 0.03, c’est cette valeur que l’on choisit donc comme seuilpour la definition du bruit. Par application de ce seuil, 12500 pics sont elimines (environ 50pics par spectre).L’etape suivante est l’alignement des pics identifies entre spectres. La classification hierarchiqueascendante avec lien moyen est appliquee et conduit a identifier 1097 classes de pics. Commenous ne retenons que les classes contenant plus de 46 spectres (la moitie de l’effectif du pluspetit groupe), 670 classes sont eliminees. Finalement, la matrice X contenant les intensitesdes pics a pour dimension 253×427. Pour simplifier les descriptions, les classes de pics serontreperees par des numeros et leur position reelle (en Da) sera donnee a la fin pour les picsidentifies comme interessants.

1.6.1.2 Resultats de l’AG et discrimination

Le modele de discrimination est construit sur l’echantillon d’apprentissage et sera en-suite teste sur l’echantillon test une fois que le comite final aura ete choisi. Afin de rendreles resultats plus fiables et pour verifier leur stabilite, nous avons realise dix repartitionsdifferentes des spectres entre echantillon d’apprentissage et echantillon test.Nous avons vu que la solution finale pouvait etre consideree comme la solution la plus presentedans la population mais aussi comme la solution de la population finale ayant la meilleurefitness. Dans cette application et pour chaque repartition, ces deux criteres sont confonduscar la solution la plus presente est toujours la meilleure de la population. Nous allons etudierla convergence de l’AG en etudiant la structure des populations finales obtenues.Tout d’abord, concernant le nombre de pics dans le comite, environ 90% des solutions dechacune des dix populations finales correspondaient a des comites contenant uniquementtrois pics. Pour chaque population prise independamment, la convergence de ces comitesetait parfaite, en effet, les trois memes pics constituaient l’ensemble des comites a troispics. Mais ces pics pouvaient etre differents pour des repartitions apprentissage/test dis-

Page 91: Etude des Algorithmes génétiques et application aux

74 Les AG appliques a la discrimination en spectrometrie

Fig. 1.11 Nombre d’occurences des differents pics trouves dans les comites pour les dixrepartitions apprentissage/test.

#18 #89 #151 #156 #164 #168 #178

selected peaks

freq

uenc

y

02

46

810

tinctes. Pour les seuils d’intensite, la convergence est moins nette car la combinaison la plusfrequente representait en moyenne 40% des comites a trois pics de la population finale. Onpeut expliquer ceci notamment par la validation croisee interne qui est effectuee : en chan-geant legerement la position d’un seuil, on peut obtenir des resultats legerement differentsqui permettent de mieux predire certains echantillons tests internes. Les petites variationsconcernant la position des seuils peuvent donc s’expliquer de cette facon et n’impliquent pasde grands changements dans le modele global obtenu, ce sont surtout les pics choisis quiimportent et ils sont parfaitement stables entre les differentes solutions, ce qui montre leuradaptation a la grande majorite des echantillons tests internes donc leur aspect generalisable.Nous pouvons ensuite etudier les resultats pour la discrimination realisee en utilisant les co-mites finaux. Pour les echantillons d’apprentissage, le taux de bien classes obtenu est de100% pour toutes les repartitions test/apprentissage sauf une ou un spectre correspondant aun controle est classe comme cancer. Pour les echantillons tests, on atteint un taux de bienclasses de 98% (95% pour le groupe controle et 99% pour le groupe cancer). Nous avons dejavu que les comites permettant ces classifications ne comptaient que trois pics. Parmi les dixrepartitions effectuees, sept pics differents sont apparus (voir Fig. 1.11) : le pic d’identifiant89 etait toujours present, quelle que soit la repartition, le pic 164 est apparu dans huit desdix comites et le pic 156 a ete utilise dans la moitie des comites. Les autres pics utilisesetaient plus anecdotiques et peuvent etre attribues a des particularites de l’echantillon. Deplus, il est interessant de noter que les valeurs des seuils pour les pics selectionnes ne varientpas beaucoup d’une repartition a l’autre. Par exemple, pour le pic 89, le seuil est situe entre11.13 et 12.71 alors que l’intensite de ce pic varie entre 2 et 27. Ainsi, on peut dire que ladiscrimination est efficace et que les resultats sont reproductibles.

Etudions maintenant les pics retenus le plus frequemment, c’est-a-dire les pics d’iden-tifiants 89, 164 et 156. Leurs positions respectives sont 245 Da, 434 Da et 649 Da. Leurintensite pour les differents groupes est presentee dans la Fig. 1.12. On peut noter que le pic156 est absent pour la majorite des spectres du groupe 2 (la valeur zero est la plus souvent

Page 92: Etude des Algorithmes génétiques et application aux

1.6 Une premiere approche de la convergence : l’observation 75

Fig. 1.12 Boxplots des intensites des pics d’identifiants 89, 164 et 156 avec une boıte pargroupe.

rencontree). C’est pourquoi le boxplot n’est constitue que d’un segment et de points isolesqui ne representent qu’une faible partie de la distribution. Pour les trois pics, les valeursd’intensite sont reellement differentes entre les groupes, l’AG a donc bien trouve des picscapables de realiser une bonne discrimination des groupes. De plus, on peut constater queles pics trouves ici ont deja ete mis en evidence par d’autres etudes. Le pic 89 a ete identifiepar Alexe et al. (2004) et Sorace & Zhan (2003), le pic 164 par Alexe et al. (2004); Sorace& Zhan (2003); Zhu et al. (2003) et Jeffries (2004). Enfin le pic 156 a ete trouve par Jeffries(2004). Attendu que ces auteurs ont tous utilise des methodes differentes d’extraction despics et de selection, le fait de trouver des resultats similaires tend a montrer que les picsselectionnes ont une reelle signification. On peut donc conclure que notre methode donne debons resultats pour deux groupes et fournit de plus une combinaison originale de pics quin’avaient pas encore ete trouvee.

1.6.2 Donnees neurologiques

1.6.2.1 Description de la population

Dans le cadre du systeme francais de surveillance de la maladie de Creutzfeld-Jacob (noteeCJD), l’analyse de Western Blotting CSF 14-3 3 et la collecte d’echantillons de sang ont eterealisees pour environ 8000 patients initialement suspectes de CJD (la periode de surveillances’est etendue du 01/01/1996 au 01/04/2005). Les echantillons ont ete collectes et centrifugesselon les protocoles classiques puis congeles jusqu’a analyse. Finalement, dix patients pourlesquels le diagnostique de CJD a ete confirme, dix patients pour lesquels on a finalementdiagnostique la maladie d’Alzheimer et 17 patients souffrant de desordres psychiatriques,ont ete inclus dans cette etude. Nous sommes donc en presence de trois groupes, ce qui nousconduit a utiliser l’analyse par paires de groupes.

Page 93: Etude des Algorithmes génétiques et application aux

76 Les AG appliques a la discrimination en spectrometrie

1.6.2.2 Les donnees

Pour generer les donnees de SELDI, 5 µL de chaque echantillon de serum ont ete diluesdans 7.5 µL d’uree a 8 M, 1% de CHAPS (detergent) et agites. Ensuite, 5 µL de cet echantillondenature ont ete melanges a 195 µL d’un tampon de liaison dependant du type de surfaceutilise. Dans cette etude, quatre types de surfaces ont ete utilises : Q10 (echange d’anionsfaibles) a pH 9, CM10 (echanges de cations forts) a pH 4, H50 (chromatographie en phaseinverse) a 10% d’acetonitrile et IMAC30 charge avec du nickel. Les barrettes ont ete as-semblees dans un bioprocesseur et par deux fois, 100 µL des echantillons denatures et diluesont ete incubes pendant une heure sur un agitateur a temperature ambiante. Les barrettesont ete rincees trois fois avec le tampon de lavage approprie et un bref rincage a l’eau a eterealise. Les barrettes sont extraites du bioprocesseur et sechees a l’air. 0.8 µL d’une solutiond’acide sinapinique sature est applique deux fois sur chaque spot avant un sechage a l’air.L’analyse SELDI a ete realisee dans un lecteur PBS-II ProteinChip (Ciphergen Biosystems).Pour une meme experience comparative, l’obtention des donnees est realisee dans les memesconditions de calibration, de FOCUSING MASS, d’intensite du laser et de sensibilite dudetecteur. Chaque spectre est la moyenne d’au moins 65 tirs de lasers et est calibre de faconexterne avec le All-in-1 Protein Standard II (Ciphergen Biosystems). L’obtention des spectresest finalement realisee dans le logiciel ProteinChip version 3.2 (Ciphergen Biosystems).

1.6.2.3 Pretraitement

Les etapes de pretraitement decrites precedemment sont appliquees. Tout d’abord, lespics sont extraits dans chaque spectre, puis le seuil pour la hauteur de vallee est choisi etapplique. En moyenne, 65 pics sont extraits dans chaque spectre. Enfin, les pics sont alignesentre les spectres ce qui conduit a retenir 93 classes de pics. On obtient donc une matrice Xdes intensites de dimensions 37× 93.

1.6.2.4 Resultats de l’AG et discrimination

Comme les donnees comportent k = 3 groupes, il y a k(k − 1)/2 = 3 comparaisons deuxa deux possibles et donc trois populations evoluent parallelement dans l’AG. A la fin, onobtient donc trois populations finales donc trois comites qui nous permettent a la fois deconnaıtre les pics caracteristiques de chaque comparaison de deux groupes et d’etre capablesde calculer un taux de bien classes global. Ainsi, si un pic apparaıt dans plusieurs comites,on sait que son pouvoir de discrimination s’etend a plus de deux groupes. L’informationobtenue a la fin de l’AG est donc tres complete.Ce jeu de donnees est tres petit (seulement 37 spectres), cela ne nous permet pas de faire deseparation apprentissage/test a priori de l’echantillon de depart. Cependant, pour evaluerla reproductibilite des resultats de l’AG nous l’avons applique cinq fois de suite a l’ensembledes spectres. L’AG etant une methode stochastique, il serait tout a fait possible d’obtenirdes resultats tout a fait differents si l’algorithme tombait successivement dans differents op-tima locaux. Finalement, les pics selectionnes au cours des cinq applications sont representesdans la Fig. 1.13. Pour la premiere comparaison (Alzheimer contre CJD), les comites etaientconstitues de trois pics : les pics d’identifiants 42 et 59 ont toujours ete selectionnes et le pic46 a ete trouve dans quatre des cinq repetitions (remplace par le pic 41 dans la derniere).Concernant la deuxieme comparaison (Alzheimer contre Psychiatrique), les comites etaientcomposes de quatre pics : le pic 91 a toujours ete selectionne et les pics 4 et 38 ont ete

Page 94: Etude des Algorithmes génétiques et application aux

1.6 Une premiere approche de la convergence : l’observation 77

Fig. 1.13 Histogrammes des frequences de selection des pics.

group 1 vs group 2

Peak labels

Fre

quen

cy

0 20 40 60 80

01

23

45

group 1 vs group 3

Peak labels

Fre

quen

cy

0 20 40 60 80

01

23

45

group 2 vs group 3

Peak labels

Fre

quen

cy

0 20 40 60 80

01

23

45

trouves quatre fois sur cinq. La derniere comparaison (CJD contre Psychiatrique) a requisquatre pics : le pic d’identifiant 24 a ete selectionne les cinq fois et trois pics (83, 91 et 36)ont ete trouves trois fois.

Ainsi, les meilleurs resultats sont obtenus pour la premiere comparaison pour laquelle lescomites sont tres stables, la deuxieme comparaison donne egalement des resultats satisfai-sants mais c’est un peu moins precis pour la derniere. En effet, d’autres resultats ont montreque le premier groupe se distingue facilement des deux autres et specialement du second.Ceci peut certainement s’expliquer par le fait que le premier groupe contient plus de spectresque les autres et donc, que les resultats le concernant sont plus fiables.Nous avons deja evoque que la faible taille de l’echantillon ne nous a pas permis de realiserune vraie validation croisee externe. Ceci est d’autant plus vrai que nous avons besoin d’unetaille suffisante pour pouvoir realiser la validation croisee interne qui est tout a fait indis-pensable et qui necessite de mettre de cote 30% des echantillons a chaque generation. Il estdonc impossible, notamment pour les deux derniers groupes qui contiennent seulement dixspectres, de diviser l’echantillon de depart avant de realiser l’AG.Cependant, pour tester un peu mieux la fiabilite de nos resultats, nous avons choisi lesmeilleurs comites par AG applique a tous les spectres puis les regles de decision ont ete fixeeset testees par une validation croisee sur cinq groupes (notee 5-FCV). Ainsi, les spectres uti-lises sont differents a chacune des cinq etapes ainsi que les proportions de chacun des groupespar rapport aux seuils ce qui conduit a differentes regles de decision. Ceci est evident moinsstrict qu’une vraie validation croisee mais c’est le mieux que l’on puisse faire sur ces donnees.La 5-FCV a ete realisee pour chacune des cinq repetitions. Les resultats de discrimination ob-tenus sont donnes dans la Tab. 1.2 qui montre qu’en moyenne, on arrive a 98.4% de spectresbien classes.

Enfin, on peut remarquer que les pics trouves ici n’avaient pas ete identifies en utilisantles methodes statistiques univariees que l’on utilise classiquement sur ce type de donneeset qui sont proposees dans le logiciel ProteinChip. Ceci est essentiellement du au fait quecertains pics peuvent etre inutiles pour discriminer les groupes en eux-memes mais, combinesa d’autres pics, ils deviennent tres efficaces. Aucun des pics pris independamment n’auraitpu fournir une aussi bonne discrimination que celle obtenue ici et c’est ce qui se passe dans laplupart des jeux de donnees, d’ou l’interet de construire une methode multivariee. Rappelonsegalement que les tests univaries utilises se basent sur les intensites brutes (non discretisees),ce qui est certes plus precis, mais egalement moins robuste car si on change legerement

Page 95: Etude des Algorithmes génétiques et application aux

78 Les AG appliques a la discrimination en spectrometrie

Tab. 1.2 Nombre de mauvaises classifications par 5-FCV pour chacune des cinq repetitionsde l’AG.

repetition nombred’erreurs

1 12 03 24 05 0

l’echantillon, les resultats obtenus seront tres differents.

1.6.3 Bilan sur l’utilisation des AG pour la recherche de biomar-queurs en SELDI-TOF

La spectrometrie de masse SELDI-TOF est une technologie interessante a plus d’un titre(rapidite de l’obtention des resultats, diversite des surfaces d’echanges, couts moderes,. . .)mais elle souffre d’un manque de precision, specialement en intensite. Ceci rend son aspectquantitatif difficilement exploitable. Dans ce contexte, la discretisation des donnees d’in-tensite par l’utilisation d’un seuil semble etre un bon moyen d’utiliser tout de meme cetteinformation mais sans trop compter sur des donnees extremement variables. De plus, lesdonnees n’etant generalement pas tres nombreuses, le recours des arbres de classificationclassiques n’etaient pas adapte car ils utilisent rapidement trop peu d’information, condui-sant a du surajustement. D’ou la mise en place de la methode de foret de branches.Cependant, viennent ensuite les problemes du choix des pics a utiliser pour discriminer (lesbiomarqueurs potentiels) et du choix des seuils servant a la discretisation. Les nombres depics et de seuils potentiels etant assez importants, le nombre de possibilites devient viteimpossible a explorer de facon exhaustive. Les AG ont alors tout a fait leur place pour laresolution de ce type de problemes et l’utilisation d’un jeu de donnees classique et abondam-ment utilise a permis de mettre en evidence l’efficacite de la selection effectuee par l’AG misen place.Pour ce qui concerne les donnees a plus de deux groupes, il n’y a theoriquement pas delimite au nombre de groupes possible, la seule limite vient du temps de calcul qui augmentequand on rajoute des comparaisons. Cependant, l’etape de selection etant commune a l’en-semble des populations, le temps de calcul ne triple pas pour trois groupes par exemple, ilest legerement accru mais ne double meme pas. Par exemple, l’AG a ete programme sousMatlab c© et utilise avec un modele basique de PC et l’algorithme pour trois groupes prend8 minutes pour 500 generations et une population de 200 individus.Enfin, les resultats obtenus sont satisfaisants pour les deux jeux de donnees tant pour lapertinence des pics selectionnes que pour leur faible nombre : on realise une discriminationde bonne qualite en utilisant peu de pics, ce qui etait notre objectif.

Page 96: Etude des Algorithmes génétiques et application aux

1.7 Autre application : la recherche d’intervalles discriminants en NIRS 79

1.7 Autre application : la recherche d’intervalles dis-

criminants en NIRS

En chimiometrie, la spectrometrie proche infra-rouge (notee SPIR) est une techniquetres abondamment utilisee qui fournit des donnees tres completes (aussi bien physiques quechimiques) en un temps tres court. Cependant, une partie de l’information recueillie est duea du bruit, par exemple, au signal de la matrice qui contient l’echantillon, et n’a donc aucuninteret pour l’etude de l’echantillon lui-meme. De plus, suivant la problematique rencontree,on va s’interesser a une partie precise de l’information concernant l’echantillon. Dans cecontexte, extraire l’information d’interet a l’interieur des spectres obtenus est tout a faitutile. En particulier, Thomas (1994) a montre que la selection de variables etait une bonnemethode pour ameliorer les capacites predictives en se debarrassant de l’information inutile.En SPIR, les variables sont les differentes longueurs d’onde pour lesquelles on a mesure lespectre.Une fois de plus, nous nous sommes places dans un contexte de discrimination de spectreset plus precisement sur un jeu de donnees a priori divise en quatre groupes. Il s’agitd’echantillons de melanges de tabacs qui ont ete classes en fonction de leur compositionchimique (Figueres et al., 2004). Dans ce cas, utiliser le spectre entier sans selection de va-riables conduit a surajuster l’echantillon d’apprentissage. Nous avons donc decide de mettreau point un AG qui permettrait de selectionner les longueurs d’onde les plus a meme derealiser la discrimination des groupes. De plus, comme les variables adjacentes sont tresfortement correlees (car chimiquement liees), nous avons choisi d’extraire des intervalles delongueurs d’onde adjacentes et non des longueurs d’onde isolees comme cela est realise laplupart du temps. En effet, si une longueur d’onde est interessante pour la discrimination, leslongueurs d’onde voisines ont de fortes chances de l’etre aussi. Nous appellerons la methodeobtenue AG-AFD.

1.7.1 Les etapes de AG-AFD

Codage des solutionsDans cette application, une solution correspond a un ensemble de longueurs d’onde repartiesen intervalles, on peut donc les reperer par les bornes de chaque intervalle. De plus, pourgarder une taille de codage constante, comme pour le SELDI, on definit une taille maxi-male qui correspond a un nombre maximum d’intervalles, Nm (ici aussi la parcimonie serarecherchee et cette borne n’est donc pas un probleme). Le vecteur representant une solutioncontiendra successivement, le debut et la fin du premier intervalle, puis du deuxieme,. . . eton finit par les NA pour completer si necessaire.

Population initialeNous n’avons toujours pas d’information a priori sur les solutions, on genere donc une popu-lation initiale aussi heterogene que possible en choisissant au hasard le nombre d’intervallesentre 1 et Nm. Ensuite, on choisit les bornes des intervalles en respectant une contrainte delongueur minimale pour un intervalle et d’espace minimal entre deux intervalles successifs.

Operateur de mutationA nouveau, il faut que l’operateur de mutation autorise tous les changements possibles defacon a pouvoir passer de n’importe quelle solution a n’importe quelle autre en un nombre

Page 97: Etude des Algorithmes génétiques et application aux

80 Les AG appliques a la discrimination en spectrometrie

fini d’etapes. On envisage donc, comme precedemment, trois cas : la suppression d’un inter-valle, l’ajout d’un intervalle et le deplacement des bornes d’un intervalle deja present. Lesprobabilites de chacun des types de mutation et les modalites d’application de l’operateursont definies exactement comme pour le SELDI (cf. paragraphe 1.5.3).

Operateur de croisementLe codage etant tres proche de celui des solutions dans le cas du SELDI, l’operateur decroisement est applique strictement de la meme facon.

Operateur de selectionLa premiere etape pour pouvoir appliquer la selection est bien entendu de definir la fonctionde fitness a optimiser. Comme nous l’avons vu, l’objectif principal est la discrimination. Dansce cas, cela va etre beaucoup plus simple que pour le SELDI. En effet, les donnees issuesdu SPIR sont beaucoup plus fiables, il n’est donc pas necessaire d’introduire une methodespeciale pour prendre en compte la variabilite des donnees, nous allons donc simplementappliquer une Analyse Factorielle Discriminante au sens de Fisher (notee AFD) (Mardia etal., 1979). En general, les methodes portant sur des donnees spectrales ont plutot tendancea utiliser PLS pour realiser la discrimination car l’AFD est sensible aux problemes maldimensionnes (plus de variables que d’individus) et a l’auto-correlation des variables (Naes& Mevik, 2001). Cependant, dans notre problematique, nous realisons de la selection devariables qui, si elle est efficace, devrait conduire a un nombre de variables inferieur aunombre d’individus. De plus, de maniere generale, l’AFD est une meilleure methode pourfaire de la discrimination que PLS (Barker & Rayens, 2003) car elle prend en compte ala fois la variabilite inter et intra groupes alors que PLS n’a pas pour objet de minimiserles probabilites de mauvaises classifications. Par ailleurs, pour eviter le surajustement, nousmettrons a nouveau une partie de l’echantillon de cote afin de tester la qualite du modele.Dans la fitness, nous voulons aussi tenir compte de la parcimonie du modele choisi. Pourcela, nous allons introduire dans le critere une fonction du nombre d’intervalles choisis et unefonction du nombre de longueur d’ondes choisies. Les deux doivent etre utilises pour penaliserle cas ou un seul intervalle couvrirait la quasi totalite du spectre (ce qui pourrait arriver sion ne tenait compte que du nombre d’intervalles) et le cas ou de nombreux intervalles trescourts seraient utilises (ce qui ne serait pas penalise si on ne considerait que le nombre delongueurs d’onde). Finalement, chaque terme est ramene dans l’intervalle [0, 1] et la fitnesspeut etre defini comme suit :

fitness = α1 × τ + β1 + α2 ×

(

1−nbi

Nm

)

+ β2 + α3 ×

(

1−nblo

Nt

)

+ β3,

ou τ est le pourcentage de bien classes, nbi est le nombre d’intervalles selectionnes, nblo estle nombre de longueurs d’onde selectionnees et Nt est le nombre total de longueurs d’ondedu spectre (on rappelle que Nm est le nombre maximal d’intervalles autorise).

Une fois que la fitness est defini, on le calcule pour l’ensemble des individus de la popu-lation courante et on realise l’etape de selection exactement de la meme facon que pour leSELDI.

Page 98: Etude des Algorithmes génétiques et application aux

1.7 Autre application : la recherche d’intervalles discriminants en NIRS 81

Tab. 1.3 Distribution des spectres dans les deux echantillons et les quatre groupes chimiques.

echantillon groupe 1 groupe 2 groupe 3 groupe 4apprentissage 26 48 47 90

test 8 51 11 82

1.7.2 Application

Nous disposions d’un echantillon de 363 spectres qui avaient ete repartis en deux sous-echantillons : 211 pour l’echantillon d’apprentissage et 152 pour l’echantillon test. Le nombrede spectres appartenant a chacun des quatre groupes chimiques pour les deux echantillonsest donne dans la Tab. 1.3. GA-AFD a ete programme sous R c© et applique a l’echantillond’apprentissage.

On peut alors etudier la convergence empirique de l’algorithme. On peut tout d’abordconsiderer l’evolution des termes du critere le long des generations. Cette evolution estrepresentee dans la Fig. 1.14. La valeur representee pour chaque etape est la moyenne surl’ensemble de la population. Le graphique montre que le taux de bien classes augmente aucours des generations. Cette evolution n’est pas reguliere a cause de la validation croisee in-terne (l’echantillon test interne change a chaque generation). Pour la proportion du spectreutilisee, elle decroıt regulierement au cours du temps et finit par se stabiliser. Quant aunombre d’intervalles, il est plus long a se stabiliser mais il finit par se situer autour dequatre. On peut remarquer une irregularite a la fin de l’algorithme, ceci est simplement duau fait que l’on reaugmente le taux de mutation et donc que la population redevient plusheterogene.

Ensuite, on peut egalement observer la convergence de l’algorithme en considerant lacomposition de la population finale. La Fig. 1.15 (partie de gauche) montre que la plupartdes solutions (71%) ont quatre intervalles. Puis, pour les individus ayant le nombre d’in-tervalles le plus frequent, on observe les intervalles obtenus. Ces intervalles sont representesdans la partie droite de la Fig. 1.15 avec une ligne par solution. On s’apercoit bien que lesintervalles trouves sont tres proches. De plus, les exceptions que l’on trouve (tant pour lenombre que pour la position des intervalles) sont essentiellement dues a la reaugmentationdu taux de mutation. Mais le fait que la population soit toujours tres homogene montreune certaine stabilite de l’optimum trouve et on a donc moins de risque d’avoir obtenu unoptimum local. Finalement, on retiendra les intervalles [856,874], [2268,2294], [2332,2342] et[2478,2488] (en nm).

Afin de verifier la pertinence des intervalles trouves, nous avons realise l’AFD de ceslongueurs d’onde pour l’echantillon d’apprentissage et pour l’echantillon test. Nous avonsegalement compare les resultats avec ceux obtenus par d’autres methodes : AFD appliqueea l’ensemble du spectre, k-plus proches voisins (note k-ppv) (Hastie et al., 2001), arbres declassification (Hastie et al., 2001), PLS suivi par une selection de variables par VIP (Va-riable Importance in Prediction) puis application de l’AFD sur les variables retenues (noteePLS-DA + VIP) (Tenenhaus, 1998). Le nombre de voisins et le nombre de composantes dePLS ont ete optimises par validation croisee. Enfin, deux AG decrits dans Leardi (2000) qui

Page 99: Etude des Algorithmes génétiques et application aux

82 Les AG appliques a la discrimination en spectrometrie

Fig. 1.14 Representation de la convergence du critere durant AG-AFD ( pour le taux debien classes, + pour le nombre d’intervalles et pour le nombre de longueurs d’onde).

0 50 100 150 200

0.0

0.2

0.4

0.6

0.8

1.0

generations

crite

ria

Fig. 1.15 Representation de la convergence de la derniere population obtenue par AG-AFD : distribution du nombre d’intervalles dans la population finale (partie de gauche) etrepresentation des intervalles de ces solutions (partie de droite).

number of intervals

Fre

quen

cy

2.0 2.5 3.0 3.5 4.0 4.5 5.0

020

4060

8010

012

014

0

0 200 400 600 800 1000

020

4060

8010

012

014

0

Order numbers of the wavelengths

Last

pop

ulat

ion

solu

tions

Page 100: Etude des Algorithmes génétiques et application aux

1.7 Autre application : la recherche d’intervalles discriminants en NIRS 83

Tab. 1.4 Resultats pour differentes methodes de discrimination : proportion de spectresbien classes pour l’echantillon d’apprentissage et l’echantillon test.

Methode Nb de longueurs Echantillon Echantillond’onde utilisees d’apprentissage test

AFD 1050 100 86arbres 1050 89 64

k-ppv (k = 3) 1050 87 70PLS-DA + VIP 170 79 84

AG-PLS (1) 48 98 94AG-PLS (2) 85 98 95FDA-GA 36 97 94

combinent les AG et PLS ont ete utilises (notes AG-PLS(1) et AG-PLS(2)). Les resultatssont presentes dans la Tab. 1.4.Pour ce qui est de l’echantillon d’apprentissage, AG-AFD et AFD ont donne de tres bonsresultats. Quant a l’echantillon test, les meilleurs taux de bien classes sont obtenus par AG-PLS(1), AG-PLS(2) et AG-AFD avec des resultats tres proches. Mais on peut considererqu’AG-AFD est plus efficace car le nombre de longueurs d’onde utilisees est plus faible(seulement 3.4% du spectre contre 4.6% pour AG-PLS(1) et 8.1% pour AG-PLS(2)), il sembledonc qu’AG-AFD a extrait une information tres pertinente tout en evitant le sur-ajustement.Pour les autres methodes, les arbres et k-ppv fournissent des resultats tres moyens notam-ment par rapport a l’AFD appliquee a l’ensemble du spectre. Enfin, PLS-DA + VIP utilise16% des longueurs d’onde, les resultats sont proches de ceux de l’AFD pour l’echantillontest et sont assez mediocres pour l’echantillon d’apprentissage. Ainsi, cette methode evitele sur-ajustement mais les resultats sont moins precis que ceux de AG-AFD alors qu’elleutilise plus d’information, la selection de variables par VIP est donc moins efficace que cellede l’AG-AFD. Globalement, les trois methodes incluant PLS sont assez satisfaisantes pourla discrimination de l’echantillon test mais la selection de variables permise par AG-AFDsemble etre plus interessante.

1.7.3 Conclusion

Globalement, on constate a nouveau une efficacite de l’utilisation des AG pour la selectionde variables et surtout leur grande flexibilite. Ils permettent d’introduire facilement descontraintes, soit dans la construction des operateurs (pour imposer une certaine longueuraux intervalles par exemple), soit sous forme de penalite dans la fitness global (ici, pourfavoriser la parcimonie). Ce type de methode est donc totalement adapte a l’utilisation dela spectrometrie qui fournit des donnees en tres grand nombre, avec des informations plusou moins interessantes et des caracteristiques propres a chaque technique.

Page 101: Etude des Algorithmes génétiques et application aux
Page 102: Etude des Algorithmes génétiques et application aux

Chapitre 2

L’alignement de gels d’electrophoreseen deux dimensions

2.1 Un probleme simple. . . en apparence

L’electrophorese bidimensionnelle (ou electrophorese 2D) est une technique de separationdes proteines d’un echantillon. Elle a ete introduite par Klose (1975) et O’Farrell (1975). Ellepermet d’avoir une vision d’ensemble de l’etat proteique d’un tissu pour des conditions et aun moment donnes. La separation des proteines se fait selon deux criteres : leur poids et leurpoint iso-electrique (lie a leur charge electrique). Ces deux grandeurs sont caracteristiques desproteines qui doivent donc s’immobiliser a un point precis du gel. Afin de pouvoir repererles proteines dans le gel, on introduit un colorant et le gel obtenu, une fois la migrationterminee, est scanne.En theorie, une meme proteine, placee sur deux gels possedant les memes proprietes etmanipules selon le meme protocole, est censee se retrouver strictement a la meme place.On peut ainsi esperer, pour des conditions biologiques distinctes (evolution dans le temps,differents etats physiologiques,. . .), reperer les proteines qui apparaissent et disparaissent. Deplus, le colorant est choisi de sorte a ce qu’il soit possible de relier l’intensite de la colorationa la quantite de proteine presente sur le gel. Donc, outre les apparitions/disparitions, onpeut esperer reperer des changements de la quantite de proteines.Cependant, comme dans toute experimentation biologique, un certain nombre de facteursplus ou moins bien maıtrises varient entre deux manipulations (Salmi et al., 2002; Voss &Haberl, 2000). Les principales sources de variabilite sont les suivantes :

– la structure du milieu : les proteines evoluent dans un gel de polyacrylamide. C’estpourquoi l’electrophorese 2D est souvent appelee 2D-PAGE pour 2D Poly AcrylamideGel Electrophoresis. Ce gel n’est pas forcement tout a fait homogene et contient ungradient de pH (pour la separation en fonction des points isoelectriques) qui peutcomporter des differences, meme a l’interieur d’un lot.

– les caracteristiques de l’echantillon qui contient les proteines (notamment sa concen-tration en sels),

– la nature du champ electrique (utilise pour la separation en fonction des points isoelectriques).Il en resulte une distorsion des gels qui empeche leur superposition directe. C’est pourquoi

il est necessaire de construire une methode capable d’aligner les gels, c’est-a-dire d’etablirles correspondances entre les proteines detectees, appelees spots.Si on avait simplement un probleme de distorsion entre deux gels contenant la meme infor-

85

Page 103: Etude des Algorithmes génétiques et application aux

86 L’alignement de gels d’electrophorese en deux dimensions

mation, le probleme serait simple a resoudre. Des algorithmes existants tels que Procuste(Green, 1952; Hurley & Cattell, 1962) seraient tout a fait capables de trouver la (ou les)transformation(s) a effectuer. Mais, dans le contexte des gels 2D, le but est d’etudier desconditions biologiques differentes, et dans ce cas, on n’a aucune raison de retrouver exacte-ment les memes proteines, donc les memes spots dans les differents gels. On doit donc alignerdes listes de spots sans savoir qui est apparie avec qui ni meme si tel spot est apparie avecun quelconque spot dans un autre gel. Sachant qu’on peut avoir plus de mille spots sur ungel, le nombre de possibilites d’appariements est tout a fait colossal (d’autant plus si on ade nombreux gels).De plus, il est impossible de considerer une transformation simple qui reflete la distorsionglobale du gel. La nature des facteurs de la deformation fait qu’elle n’est pas homogene.Ainsi, meme dans le cas simple ou on connaıtrait les appariements, appliquer une methoded’alignement globale (par exemple, la methode Procuste) serait inadapte. Il va donc falloirdiviser le gel en cellules a l’interieur desquelles on peut approcher la distorsion par une trans-formation locale simple.Il existe deux grandes familles de methodes pour aligner des gels : des methodes directesqui travaillent sur l’image brute et des methodes qui utilisent des caracteristiques de l’imageprealablement extraites. Cependant, l’etape d’extraction des caracteristiques (typiquementla detection des spots) est souvent susceptible de faire des erreurs et donc de fournir a l’al-gorithme d’alignement des donnees initiales de mauvaise qualite.Par contre, l’alignement direct des images brutes est souvent tres couteux en calculs et doncen temps. Une fois encore, le developpement des capacites de calcul des ordinateurs a fina-lement permis l’emergence de telles methodes (Smilansky, 2001; Veeser et al., 2001). Notonstoutefois que ces methodes sont souvent des hybrides ou les images brutes sont utilisees pourestimer les parametres de transformation globale.Par exemple, dans Wang & Feng (2005), une decomposition par ondelettes est utilisee pourcorriger les deformations globales et estimer les parametres d’une transformation affine. En-suite, des points sont automatiquement selectionnes dans l’image pour corriger les distorsionslocales et ameliorer la precision de la solution. Les ondelettes sont egalement utilisees dansKaczmarek et al. (2004) pour debruiter l’image.Marengo et al. (2003) utilisent une technique intermediaire de logique floue qui realise unebinarisation de l’image de depart, par application d’un seuil d’intensite cense separer lebruit de fond du signal. Ensuite, les zones ou un signal a ete detecte sont divisees en celluleselementaires dans lesquelles la probabilite d’avoir un spot est modelisee. Ces probabilites pourchaque cellule et dans chaque gel deviennent les nouvelles variables auxquelles on appliqueune Analyse en Composantes Principales pour identifier des zones communes ou differentesentre gels.Cependant, l’etape d’extraction des caracteristiques comporte un interet majeur : distinguerl’information interessante du bruit au sens large alors que dans les methodes directes toutel’information est prise en compte sans distinction. En outre, les algorithmes de detectionde spots sont de plus en plus performants. Des methodes permettant de modeliser la formedes spots et ainsi de limiter les erreurs de detection ont ete mises au point (Rogers et al.,2003). On peut tout de meme noter que les biologistes continuent souvent a effectuer descorrections manuelles apres detection automatique.Pour corriger les deformations globales du gel, certains modelisent directement les phenomenesphysico-chimiques a l’origine de ces distorsions (Gustafsson et al., 2002). Pour les autresmethodes, la plupart utilise les coordonnees des spots detectes et recourt a des spots de

Page 104: Etude des Algorithmes génétiques et application aux

2.2 Cas de deux gels : adaptation de Procuste 87

repere appeles landmarks. Il s’agit de spots pour lesquels on connaıt les spots correspondantsdans les differents gels et qui servent de points d’ancrage pour realiser les transformations.On va alors decomposer l’image en cellules, des rectangles par exemple (Potra & Liu, 2006),dans lesquelles on va supposer que la transformation est plus simple, et ainsi estimer cettetransformation grace aux landmarks.Enfin, la quasi-totalite des algorithmes proposes repose sur une comparaison deux a deux desgels. La plupart du temps, si on a plus de deux gels, un gel est choisi comme gel de reference,puis les autres sont alignes sur lui. Dans un tel cas, si un spot est present dans plusieurs gelsmais pas dans le gel de reference, il sera impossible de le reperer. Le choix du gel de referenceest donc crucial et influe beaucoup sur les resultats s’il existe des differences importantesentre gels (ce que l’on cherche generalement a mettre en evidence !). Quelques alternativesont ete proposees, notamment la construction d’un gel ideal (Potra & Liu (2006)) a partirde l’information de l’ensemble des gels a aligner auquel sera ensuite aligne chaque gel.En ce qui nous concerne, nous avons decide, en accord avec les biologistes, de travailler surdes gels pour lesquels les spots avaient ete automatiquement detectes puis valides par lesexperts concernes. Pour l’alignement, la seule information que nous prendrons en comptesera donc les coordonnees des spots detectees. En effet, l’alignement pourrait aussi tenircompte des informations concernant la forme des spots mais une telle information est tresdifficile a caracteriser et a quantifier, nous la laisserons donc de cote. Quant a l’intensite,il n’y a pas de raison de l’utiliser dans l’etape d’alignement car l’objectif est d’aligner desgels obtenus dans differentes conditions biologiques et donc pour lesquels les intensites desspots representant une meme molecule sont susceptibles de changer, il ne serait donc paspertinent de s’en servir. Par contre, l’intensite a une grande importance dans la detection desspots d’interet apres alignement, c’est-a-dire des spots dont l’intensite change en fonctiondes conditions (cette etape ne sera pas traitee ici).

2.2 Cas de deux gels : adaptation de Procuste

Dans un premier temps, nous allons considerer l’alignement de deux gels d’electrophorese2D seulement. Pour cela, nous allons presenter la methode Procuste (Green, 1952; Hurley& Cattell, 1962) dans un contexte assez general puis nous verrons comment nous l’utilisonsdans notre cas particulier ou les correspondances entre spots ne sont pas connues.

2.2.1 La methode Procuste

Il existe plusieurs formulations pour les methodes procrusteennes qui, toutes, cherchenta faire correspondre deux configurations decrivant des individus identiques ou apparies enestimant une transformation. Nous allons decrire le probleme et sa solution dans le cas precisqui nous interesse (Schonemann & Carroll, 1970).On considere deux matrices X et Y de meme dimension n× p. Chaque ligne represente lescoordonnees dans l’espace des p variables de chacun des n individus. Dans le cas en deuxdimensions des gels d’electrophorese, on aura p = 2. On suppose que les lignes des matricessont appariees deux a deux, c’est-a-dire que la premiere ligne de X est appariee avec lapremiere ligne de Y, etc,. . . L’objectif est de trouver une transformation de Y qui soit leplus exactement superposable avec X. Pour cela, on cherche a minimiser les distances entreles points apparies apres transformation. La transformation sera decrite par trois parametres :

Page 105: Etude des Algorithmes génétiques et application aux

88 L’alignement de gels d’electrophorese en deux dimensions

– T, une matrice p× p de rotation/reflexion,– s, un scalaire representant le facteur de dilatation,– t, un vecteur colonne de longueur p qui represente une translation.

La matrice obtenue par transformation de Y peut alors s’ecrire :

Y = sYT + 1nt′.

On cherche donc a minimiser la somme des carres des distances entre points apparies :

L(s, t,T) = tr[(X− Y)′(X− Y)] (2.1)

= tr[(X− (sYT + 1nt′))′(X− (sYT + 1nt

′))], (2.2)

sous la contrainte T′T = Ip. Sans cette contrainte, T ne serait pas une transformationorthogonale, ce serait une transformation lineaire qui ne preserve pas forcement la forme deY, en particulier, les rapports de distances entre les points de Y.Pour trouver le vecteur t optimal, on derive L(s, t,T) par rapport a t et on egalise a zero :

∂L(s, t,T)

∂t= 2nt− 2X′1n + 2sT′Y′1n = 0,

d’ou

t =1

n(X− sYT)′1n. (2.3)

On reporte (2.3) dans (2.1) et on obtient :

L(s,T) = tr[((X− sYT)−1n1

′n

n(X− sYT))′(X− sYT)−

1n1′n

n(X− sYT))](2.4)

= tr[((In −1n1

′n

n)(X− sYT))′((In −

1n1′n

n)(X− sYT))] (2.5)

= tr[(JnX− sJnYT)′(JnX− sJnYT)], (2.6)

ou Jn est la matrice de centrage In − n−11n1′n.

De la meme maniere, on derive L(s,T) par rapport a s et on egalise a zero :

∂L(s, t,T)

∂s= 2s tr[Y′JnY]− 2 tr[X′JnYT] = 0

d’ou

s =tr[X′JnYT]

tr[Y′JnY]. (2.7)

On reporte (2.7) dans (2.6) et on obtient :

L(T) = tr

[(

JX−tr[X′JnYT]

tr[Y′JnY]JnYT

)′(

JX−tr[X′JnYT]

tr[Y′JnY]JnYT

)]

(2.8)

= tr[X′JnX] +(tr[X′JnYT])2

tr[Y′JnY]− 2

(tr[X′JnYT])2

tr[Y′JnY](2.9)

= tr[X′JnX]−(tr[X′JnYT])2

tr[Y′JnY](2.10)

Maintenant, minimiser L(T) par rapport a T sous la contrainte T′T = Ip est equivalent aminimiser −tr[X′JnYT]. Pour cela, nous allons utiliser l’inegalite de Kristof (Kristof, 1970)et sa borne inferieure.

Page 106: Etude des Algorithmes génétiques et application aux

2.2 Cas de deux gels : adaptation de Procuste 89

Theoreme 2.1 Si A est une matrice diagonale a entrees positives ou nulles et si B estorthogonale, d’apres l’inegalite de Kristof :

−tr[BA] ≥ −tr[A],

avec egalite ssi B = I.

Appliquons cette inegalite a notre probleme. On pose C = X′JnY. Soit PΦQ′ ladecomposition en valeurs singulieres de C, c’est-a-dire C = PΦQ′. Alors

−tr[X′JnYT] = −tr[CT] (2.11)

= −tr[PΦQ′T] (2.12)

= −tr[TPΦQ′] (2.13)

= −tr[Q′TPΦ]. (2.14)

Or, Φ est la matrice diagonale des valeurs propres de C donc Φ est bien une matricediagonale avec entrees positives ou nulles. De plus, d’apres la contrainte T′T = Ip, T estorthonormal donc Q′TP est orthonormal, on peut donc appliquer l’inegalite de Kristof :

−tr[Q′TPΦ] ≥ −trΦ,

avec egalite ssi Q′TP = Ip d’ouT = QP′. (2.15)

Si on resume ce qui precede, les etapes pour estimer les parametres de la transformationpermettant de passer de Y a X sont les suivantes :

1. On calcule C = X′JnY.

2. On realise la decomposition en valeurs singulieres de C de sorte que C = PΦQ′.

3. La matrice de rotation optimale est alors T = QP′.

4. Le facteur de dilatation optimal est alors s = tr[X′JnYT]tr[Y′JnY]

.

5. Le vecteur de translation optimal est alors t = 1n(X− sYT)′1n.

2.2.2 Application a l’alignement de deux gels et insertion dansl’AG

Grace a la solution de Procuste que nous venons de montrer, nous sommes maintenantcapables de trouver la transformation (T, s, t) optimale pour aligner deux listes de pointsapparies, X et Y.Pour revenir aux gels d’electrophorese 2D, on notera X et Y les deux gels. Notons quedans notre application, nous n’avons que deux coordonnees (p = 2) et que le vecteur tsera donc constitue de deux elements qui sont les parametres de translation horizontale etverticale. Dans ce cas, on ne connaıt les appariements que pour les landmarks, c’est-a-direpour une toute petite proportion des spots. De plus, on sait qu’il est impossible de trouverune transformation (T, s, t) unique pour tout le gel. Il va donc falloir trouver des zonesconsiderees comme homogenes pour la transformation et estimer une transformation pourchacune d’elles. Notre methode se presentera donc en trois etapes :

Page 107: Etude des Algorithmes génétiques et application aux

90 L’alignement de gels d’electrophorese en deux dimensions

1. Estimation d’une transformation globale.

2. Recherche de zones homogenes.

3. Estimation d’une transformation par zone.

Nous allons maintenant decrire en details chacune de ces etapes.

2.2.2.1 Recherche d’une transformation globale

Nous avons explique precedemment, qu’une transformation simple globale n’est pas sus-ceptible de permettre un alignement satisfaisant des gels. Cependant, afin de pouvoir trouverdes zones homogenes dans lesquelles une transformation simple pourra etre estimee, il nousfaut obtenir de l’information sur la structure du gel. Le raisonnement est le suivant : sup-posons qu’on ait construit une transformation globale et qu’on ait trouve les appariementscorrespondants. Il est alors possible de calculer, pour chaque appariement, la distance entreles spots apparies apres application de la transformation globale. C’est cette distance qui vanous permettre de definir des zones homogenes. En effet, une meme transformation (adapteeou non) appliquee sur une zone homogene, va generer des distances equivalentes en moyenneentre spots apparies. Donc on considerera comme homogene, une zone dans laquelle les dis-tances d’appariement apres application de la transformation globale sont comparables. Cetteetape sera detaillee dans le paragraphe 2.2.2.2.De plus, dans toutes les applications que nous avons faites nous avons toujours trouve unfacteur de dilatation compris entre 0.99 et 1. Il a donc une influence negligeable sur la trans-formation. Nous avons donc decide, afin d’alleger les calculs, de ne pas rechercher le facteurde dilatation. Nous considererons donc desormais uniquement les parametres de rotation etde translation.Maintenant que nous avons montre l’interet de realiser une transformation globale, voyonscomment on procede. Nous allons utiliser la methode Procuste presentee au paragraphe2.2.1. Cela consiste a estimer un couple de parametres globaux (Tg, tg), respectivement, lamatrice de rotation et le vecteur de translation. Mais pour pouvoir appliquer Procuste, ilfaut connaıtre les appariements entre spots. Or, nous connaissons un certain nombre de cesappariements par l’intermediaire des landmarks. On notera Xl et Yl les coordonnees deslandmarks dans les gels X et Y.

2.2.2.1.1 Recherche d’un critere Les landmarks ne representent qu’une faible propor-tion de l’ensemble des spots, or on cherche une transformation satisfaisante pour l’ensembledes spots. Comment quantifier la qualite d’une telle transformation ? Nous avons retenu deuxcriteres :

– la distance entre spots apparies apres transformation, qui correspond a une sorte d’er-reur (si la transformation etait parfaite cette distance serait nulle),

– le nombre de spots apparies, note ag.Une bonne transformation sera ainsi une transformation qui apparie le plus de spots possibleen faisant le moins d’erreur possible. En effet, il est simple d’obtenir une tres petite erreursi on n’apparie que quelques spots. On peut alors noter que la distance que l’on cherche icia minimiser est exactement egale au critere optimise dans Procuste (cf. Eq. 2.1). Notonstoutefois qu’il faut legerement modifier l’ecriture de l’Eq. (2.1). En effet, on n’aligne plus Xet Y mais X et Y qui sont les gels reduits aux individus que l’on apparie.

Page 108: Etude des Algorithmes génétiques et application aux

2.2 Cas de deux gels : adaptation de Procuste 91

Une fois que l’appariement des spots est realise (voir les paragraphes suivants) on peutcalculer un critere de qualite que l’on cherche a minimiser :

fitness = F (L(t,T), ag). (2.16)

Pour la fonction F , nous avons choisi de normaliser chaque terme et de leur appliquereventuellement un coefficient :

F (L(t,T), ag) = γ1(α1L(t,T) + β1) + γ2(α2ag + β2), (2.17)

ou (α1, α2, β1, β2) sont fixes de sorte a ce que chaque terme soit ramene entre 0 et 1 et(γ1, γ2) servent a realiser un equilibre entre les deux termes. Pour fixer (α1, α2, β1, β2) il fautdefinir des bornes pour L(t,T) et ag. Pour L(t,T), le minimum est evidemment zero (quandla transformation permet un appariement parfait). Pour le maximum, il faut le fixer, parexemple comme une proportion de la distance maximale entre deux spots sur le meme gel.Etant donne qu’on cherche a se rapprocher du minimum de L(t), la borne superieure n’apas une grande influence (tant qu’elle reste raisonnable). Pour ag, si le gel X a pour dimen-sions n1 × 2 et le gel Y, n2 × 2, alors on a au maximum, min(n1, n2) appariements. Pour leminimum, on peut fixer une limite en dessous de laquelle la penalisation est toujours maxi-male, on peut par exemple choisir d’apparier au moins la moitie des spots du plus gros gel.Mais comme pour L(t,T), cette deuxieme borne est moins importante puisqu’on va opti-miser de sorte a se trouver pres de la premiere. Quant a γ1 et γ2, ils sont fixes empiriquement.

2.2.2.1.2 Appariement pour (Tg, tg) fixes Maintenant que l’on a construit le critere,il faut realiser l’appariement pour l’ensemble des deux gels. Supposons que l’on ait fixeles valeurs pour (Tg, tg). On applique alors la transformation correspondante au gel Y.

On obtient un gel Y dans lequel les coordonnees de chaque spot ont ete transformees.Etant donne que l’on souhaite minimiser les distances entre spots apparies, il est maintenantlogique d’apparier chaque spot du gel X avec le spot le plus proche dans Y. On note VY(x)

l’ensemble des spots de Y contenus dans cette fenetre. On cherche donc, pour chaque spot,x appartenant au gel X :

arg miny∈V

Y(x)

d(x, y).

On obtient ainsi, une liste de couples de spots apparies. Cependant, a cette etape, on forcechaque spot de X a avoir un correspondant dans Y et on sait que ce n’est pas obligatoi-rement le cas. Pour eliminer les appariements les plus improbables, on calcule la moyenne,µ, et l’ecart-type, σ, des distances entre spots apparies. Soit δ la distance entre deux spotsapparies alors, si δ − µ ≥ 3σ, on elimine ce couple de la liste des appariements. La derniereetape est alors de recalculer les parametres de la transformation en appliquant la methodeProcuste aux coordonnees des spots apparies regroupees dans les matrices Y et X.

2.2.2.1.3 Insertion dans l’AG Dans ce contexte, l’AG va etre utilise pour trouver lesparametres (Tg, tg) qui optimisent le critere introduit dans l’Eq. 2.16. On va donc construireune population de taille Tpop dans laquelle chaque individu i (i = 1, . . . , Tpop) est representepar un couple de parametres (Ti

g, tig) qui lui est associe. On peut alors decrire l’AG pour

Page 109: Etude des Algorithmes génétiques et application aux

92 L’alignement de gels d’electrophorese en deux dimensions

Fig. 2.1 Pseudo-code de l’algorithme genetique permettant l’alignement global de deux gels.

Initialisation On calcule (Tlg, t

lg) = Procuste(Xl,Yl).

On initialise la population de taille Tpop avec ces parametres.pour j = 1, . . . , Ngene faire

On applique croisement puis mutation pour obtenir de nouveaux parametres (Tig, t

ig)

pour i = 1, . . . , Tpop.On apparie les spots en fonction de ces parametres pour chaque individu i.

On recalcule (Tig, t

ig) = Procuste(X, Y).

On applique l’operateur de selection a la population en utilisant commefitness, F (L(ti

g,Tig), a

ig).

fin

Ngene generations par le pseudo-code de la Fig. 2.1.

L’operateur de mutation est applique avec probabilite pm(j), qui evolue comme decritdans le paragraphe 1.3 en fonction de la generation j. Quand on a decide d’appliquer unemutation a un individu i, on choisit avec equiprobabilite de muter l’un ou l’autre des troisparametres suivants :

– l’angle de rotation,– le parametre de translation horizontale,– le parametre de translation verticale.

Ensuite, une fois qu’on a choisi quel parametre on mute, nous avons decide de definir unvoisinage autour la valeur precedente dans lequel le parametre sera autorise a muter. Pourcela, nous generons un nombre suivant une distribution normale centree autour de l’anciennevaleur du parametre et dont l’ecart-type depend evidemment du parametre que l’on mute.Il est interessant de noter que ces parametres sont bornes. En effet, d’apres les biologistes,il n’est pas raisonnable d’envisager une rotation de plus de 10 d’un cote ou de l’autre, dememe, alors que les gels couvrent environ 1500×1500 pixels, une manipulation pour laquelleon trouverait une translation horizontale et/ou verticale de plus de 200 pixels ne pourraitpas etre consideree comme valable. L’ecart-type des distributions a alors ete choisi de sortea ce qu’on puisse atteindre les 10 ou les 200 pixels en 10 iterations en moyenne. On a doncchoisi un ecart-type de 1 pour le parametre de rotation et de 20 pour les parametres detranslation.Pour l’operateur de croisement, il est applique a la population courante avec une probabilitepc, constante au cours des generations, comme decrit dans le paragraphe 1.4. Comme chaqueindividu n’est defini que par trois parametres, nous avons choisi de ne croiser qu’un seuld’entre eux, choisi avec equiprobabilite.Quant a la selection, elle suit la methode decrite au paragraphe 1.5 en utilisant comme va-leur de fitness, F (L(t,T), ag) et en se basant sur les rangs des individus de la populationen fonction des valeurs de F . Ces rangs permettent le calcul, pour chaque individu de lapopulation, d’une probabilite de selection.

A la fin de l’algorithme, on retient la meilleure solution de la population finale et on choi-sit les parametres obtenus pour les parametres de transformation globale, (Tg, tg). Voyonsmaintenant comment utiliser cette transformation globale pour definir des zones homogenes.

Page 110: Etude des Algorithmes génétiques et application aux

2.2 Cas de deux gels : adaptation de Procuste 93

2.2.2.2 Definition de zones homogenes dans les gels

Nous avons vu que la transformation globale allait etre utilisee pour observer les dis-tances entre spots apparies apres transformation. En effet, on considere que les zones pourlesquelles on trouve des distances comparables sont susceptibles de pouvoir etre apparieespar une meme transformation locale.

2.2.2.2.1 Decoupage du gel Il est alors necessaire de definir des cellules elementairesdans le gel, dans lesquelles on observera les distances et que l’on cherchera a regrouperpour definir les zones homogenes. Pour cela, nous avons choisi d’utiliser la partition de Vo-ronoı (Fortune, 1987). C’est une decomposition particuliere d’un espace metrique determineepar les distances a un ensemble discret d’objets de l’espace. Definissons cette decompositionpour un espace a deux dimensions (comme c’est le cas pour les gels).Soit S un ensemble de points de R

2. Pour adapter a notre contexte, on munira l’espace R2

de la distance euclidienne usuelle. On pose card(S) = nc. Ces nc points sont appeles centres.

Definition 2.1 On appelle Vor(ci), la cellule de Voronoı associee au point ci ∈ S, c’est-a-dire l’ensemble des points de R

2 qui sont plus proches de ci que de n’importe quel autre pointde S :

Vor(ci) = x ∈ R2 : ∀p ∈ S\ci, d(x, ci) < d(x, p),

ou d(x, ci) est la distance euclidienne entre les points x et ci.

En fait, pour construire la partition de Voronoı, il faut commencer par construire desfrontieres entre les points de S. Pour definir ces frontieres, considerons tout d’abord deuxpoints, ci et cj de S. L’ensemble des points de R

2 qui sont a la meme distance de ci et decj sont les points de la mediatrice du segment [ci, cj]. Donc, les points de R

2 qui sont plusproches de ci que de cj sont les points appartenant au demi-plan H(ci, cj) delimite par lamediatrice de [ci, cj] et contenant ci. Ainsi, pour construire la cellule de Voronoı Vor(ci) quicontient tous les points plus proches de ci que de tout autre point de S, il suffit de realiserl’intersection de tels demi-plans :

Vor(ci) =⋂

j 6=i

H(ci, cj).

Il est interessant de noter que les cellules obtenues sont des polygones convexes. On obtientdonc une partition de R

2 comme illustre par la Fig. 2.2.Il est maintenant possible de realiser une partition des gels en prenant comme ensemble

S l’ensemble des landmarks dans chacun des gels. Ce choix permet d’avoir une partitioncomparable dans les deux gels.

2.2.2.2.2 Rassemblement des cellules Une fois la partition realisee, on pourrait di-rectement realiser une transformation par cellule. Si on a assez de landmarks, on obtient depetites cellules et donc on a de fortes chances pour qu’une seule transformation par cellulesoit suffisante. Cependant, on va essayer de regrouper les cellules obtenues afin de realiser lemoins de transformations possible et donc d’avoir une transformation globale assez lisse. Eneffet, si on realise une transformation sur une trop petite zone, on peut n’avoir que quelquesspots, ce qui peut conduire a une transformation aberrante et donc en discontinuite avec les

Page 111: Etude des Algorithmes génétiques et application aux

94 L’alignement de gels d’electrophorese en deux dimensions

Fig. 2.2 Illustration de la partition de Voronoı pour un ensemble de 10 points de R2.

transformations voisines.Rappelons ici que les zones sont considerees comme homogenes si les erreurs, c’est-a-dire lesdistances entre points apparies (apres transformation globale), sont homogenes a l’interieurde la zone. Pour deux zones, nous allons donc prendre en compte la difference entre lesmoyennes de ces distances dans les deux zones. Plus cette difference est petite, plus les zonesont des chances de pouvoir etre appariees par la meme transformation. Cependant, afin d’ob-tenir une partition dans laquelle les zones sont assez compactes, nous allons utiliser les troiscriteres suivants :

– la difference des distances moyennes entre les zones,– le nombre de sommets communs entre les zones,– le nombre de cellules resultant de la fusion des deux zones.

On envisage uniquement la fusion des zones voisines (au moins deux sommets communs). Afinde realiser un critere unique, nous allons tout d’abord (comme nous l’avons vu precedemment)ramener chaque critere dans l’intervalle [0, 1].Pour deux zones i et j dont les distances moyennes sont respectivement µi et µj, le criterenormalise entre 0 et 1 est le suivant :

critd(i, j) =µi − µj

mind −maxd

−maxd

mind −maxd

,

ou mind = mink 6=l

(µk − µl) et maxd = maxk 6=l

(µk − µl).

Pour deux zones i et j dont le nombre de sommets communs est nsij, le critere normaliseest le suivant :

crits(i, j) =nsij

maxns −minns

−minns

maxns −minns

,

ou minns = mink 6=l

(nskl) et maxns = maxk 6=l

(nskl).

Page 112: Etude des Algorithmes génétiques et application aux

2.3 Extension a plus de deux gels : generalisation de Procuste generalise 95

Enfin, pour deux zones i et j dont la fusion engendrerait une zone contenant ncij cellules,le critere normalise est le suivant :

critc(i, j) =ncij

minnc −maxnc

−maxnc

minnc −maxnc

,

ou minnc = mink 6=l

(nckl) et maxnc = maxk 6=l

(nckl).

Le critere global peut alors etre exprime sous la forme suivante :

crit(i, j) = αcritd(i, j) + βcrits(i, j) + γcritc(i, j),

ou (α, β, γ) sont des reels qui realisent la ponderation entre les differents termes. On va doncchercher a trouver un critere minium, c’est-a-dire pour lequel la difference entre les distancesmoyennes est minimum, le nombre de sommets communs est maximum et le nombre de cel-lules fusionnees est minimum. Le but est d’obtenir des zones apres regroupement homogeneset compactes. On calcule ce critere pour tous les couples de zones voisines et on regroupecelles pour lesquelles crit(i, j) est minimum.Afin de garder des zones de taille raisonnable, on arrete l’algorithme quand le prochainregroupement amenerait a regrouper plus du quart des cellules de depart. En effet, les land-marks sont regulierement repartis donc rassembler plus du quart des cellules de departconduirait a chercher a trouver une transformation qui soit applicable dans plus du quart dela surface du gel. Or, d’apres les observations realisees, il semble qu’il serait impossible detrouver une transformation qui soit precise pour une zone qui representerait plus du quartdu gel.

2.2.2.2.3 Optimisation des transformations locales Les zones obtenues par l’algo-rithme de regroupement precedemment defini sont ensuite alignees independamment parl’algorithme decrit au paragraphe 2.2.2. On obtient ainsi autant de couples de parametres(Ti

g, tig) que de zones obtenues apres regroupement.

2.3 Extension a plus de deux gels : generalisation de

Procuste generalise

Nous avons vu au paragraphe 2.1 que nous voulions etre capables d’aligner plus de deuxgels mais sans avoir a definir un gel de reference auquel seraient alignes tous les autres gels.Nous allons donc generaliser la methode decrite dans la partie precedente de sorte a ce quechaque gel soit apparie, le mieux possible, avec l’ensemble de tous les autres gels. Pour cela,nous allons nous baser sur une generalisation de Procuste. Dans cette partie, on considereratoujours que le parametre de dilatation est inutile.

2.3.1 Analyse procrusteenne generalisee

On veut generaliser l’analyse procrusteenne a K tableaux (K > 2) de dimension n × p,(X1,X2, . . . ,XK). On doit donc optimiser :

– K matrices de rotation/reflexion, Ti, pour i ∈ 1, . . . , K,– K vecteurs colonne de translation, ti, pour i ∈ 1, . . . , K.

Page 113: Etude des Algorithmes génétiques et application aux

96 L’alignement de gels d’electrophorese en deux dimensions

Le critere a minimiser devient alors :

LG =K∑

k<l

tr[

(Xk − Xl)′(Xk − Xl)

]

, (2.18)

ou Xk = XkTk + 1nt

k.Malheureusement, il n’existe pas de solution analytique directe, il faut donc passer parun algorithme iteratif. Pour cela, il existe plusieurs methodes (Kristof & Wingersky, 1971;Gower, 1975; Ten Berge, 1977; Commandeur, 1991; Dijksterhuis & Gower, 1991). Nous allonsdecrire celle que nous allons utiliser et qui est plus precisement etudiee dans Commandeur(1991). Ce choix a ete fait car c’est la methode qui s’insere le plus naturellement dans l’AG.Cette methode repose sur une modification du critere de l’equation (2.18) :

LG =K∑

k<l

tr[

(Xk − Xl)′(Xk − Xl)

]

=1

2

K∑

k=1

K∑

l=1

tr[

(Xk − Xl)′(Xk − Xl)

]

=1

2

K∑

k=1

K∑

l=1

tr[X′kXk] +

1

2

K∑

k=1

K∑

l=1

tr[X′lXl]−

K∑

k=1

K∑

l=1

tr[X′kXl]

= KK∑

k=1

tr[X′kXk]−

K∑

k=1

K∑

l=1

tr[X′kXl]

= KK∑

k=1

tr[X′kXk]−K

K∑

k=1

trX′k(K

−1

K∑

l=1

trX′l)

Si on pose Z =1

K

K∑

k=1

Xk alors

LG = K

(

K∑

k=1

tr[X′kXk]−

K∑

k=1

tr[X′kZ]

)

= K

(

K∑

k=1

tr[X′kXk] +

K∑

k=1

tr[X′kZ]− 2

K∑

k=1

tr[X′kZ]

)

= K

(

K∑

k=1

tr[X′kXk] + K(K−1

K∑

k=1

tr[X′kZ])− 2

K∑

k=1

tr[X′kZ]

)

= K

(

K∑

k=1

tr[X′kXk] + Ktr[Z′Z]− 2

K∑

k=1

tr[X′kZ]

)

= K

(

K∑

k=1

tr[X′kXk] +

K∑

k=1

tr[Z′Z]− 2K∑

k=1

tr[X′kZ]

)

= KK∑

k=1

tr[

(Xk − Z)′(Xk − Z)]

.

Page 114: Etude des Algorithmes génétiques et application aux

2.3 Extension a plus de deux gels : generalisation de Procuste generalise 97

Le critere (2.18) devient donc :

LG = KK∑

k=1

tr[

(Xk − Z)′(Xk − Z)]

, (2.19)

ou Z represente le tableau moyen des Xk. D’un point de vue geometrique, les individus deZ sont les centres de gravite de tous les points apparies correspondants.Pour realiser la minimisation, a chaque etape, on optimise un des Xk en gardant les autresfixes. Les proprietes de convergence de cet algorithme ont ete demontrees dans Commandeur(1991).

2.3.2 Application aux gels d’electrophorese 2D et insertion dansl’AG

Nous allons maintenant utiliser Procuste generalisee pour apparier plus de deux gelsd’electrophorese 2D. Les Xk representeront alors les differents gels. On aura toujours p = 2.Quant au nombre d’individus (c’est-a-dire de spots), il est evidemment different entre lesgels, on notera nk le nombre de spots pour le gel Xk. Bien que l’on ait maintenant a notredisposition l’analyse Procrusteenne generalisee, il reste une grosse difficulte, la gestion desappariements. En effet, il n’y a pas le meme nombre de spots par gel, il n’y a pas le memenombre de spots apparies par gel, certains spots peuvent etre apparies dans certains gelsmais pas dans les autres, certains spots peuvent n’etre apparies a aucun autre spot, etc. . .Cela pose donc une difficulte, notamment pour la construction du gel moyen Z. Etant donneque le but de notre methode est precisement de permettre, pour tous les gels, tous les typesd’appariement possibles (appariement a aucun gel, a tous les gels, a certains gels), a chaqueetape, on doit considerer tous ces types d’appariement.Pour gerer cela, nous allons construire une matrice A qui a autant de lignes qu’il y a d’appa-riements, y compris ceux que l’on nommera appariements nuls qui correspondent a des spotsapparies a aucun autre. Pour chaque appariement, on trouve les numeros (arbitrairementattribues au debut de l’algorithme) des spots apparies pour les gels concernes et des zerospour les gels non concernes par cet appariement.Par exemple, si on a trois gels et qu’on decide d’apparier le quatrieme spot du gel 1 avec letroisieme spot du gel 3 et avec aucun spot du gel 2, la ligne correspondant a cet appariementsera (4,0,3). La premiere colonne contient les numeros des spots du premier gel, la deuxiemecolonne les numeros des spots du deuxieme gel, etc. . .Au debut de l’algorithme, il n’y a que des appariements nuls, la matrice A compte alors Kcolonnes (une par gel) et

∑K

k=1 nk lignes (une ligne par spot). On peut alors la representersous la forme decrite dans la Fig. 2.3.

Si on decide d’apparier deux spots, il suffit de fusionner les lignes correspondantes en negardant les zeros que pour les colonnes ou il y avait un zero dans les deux lignes fusionnees.Alors, le gel moyen, Z, sera construit en utilisant A et en faisant la moyenne par ligne, sanstenir compte des zeros. Si on revient a l’exemple precedent, on avait la ligne (4,0,3) ; pourcalculer les coordonnees du spot correspondant a cet appariement dans Z, on calculera lescoordonnees du centre de gravite du quatrieme spot du gel 1 et du troisieme spot du gel 2.La matrice Z aura donc autant de lignes que A et deux colonnes (une par coordonnee).On gere parallelement la matrice Zl qui contient les coordonnees des centres de gravite deslandmarks. On note Xl

k la matrice contenant les coordonnees des landmarks du gel Xk. La

Page 115: Etude des Algorithmes génétiques et application aux

98 L’alignement de gels d’electrophorese en deux dimensions

Fig. 2.3 Representation de la matrice A des appariements de K gels au debut de l’algo-rithme.

1 0 . 0 . 02 0 . 0 . 0. . . 0 . .

n1 . . 0 . 00 1 . 0 . 00 2 . 0 . 0. . . . . .0 n2 . 0 . 0. . . . . .0 0 . 1 . 00 0 . 2 . 0. . . . . .0 0 . nk . 0. . . . . .0 0 . 0 . 10 0 . 0 . 2. . . . . .0 0 . 0 . nK

matrice Zl va nous servir (comme precedemment) a initialiser l’algorithme.On peut alors decrire l’algorithme d’alignement par le pseudo-code de la Fig. 2.4.

Le critere d’arret peut etre un nombre d’iterations mais plus judicieusement, on peutarreter l’algorithme quand il n’y a plus d’evolution significative des parametres de transfor-mation.Comme pour le cas de deux gels, l’alignement se fait en deux etapes : on realise tout d’abordl’alignement global puis on utilise les erreurs obtenues pour realiser une partition des gels afind’optimiser des transformations locales. Pour ces deux etapes, on peut utiliser l’algorithmedecrit dans la Fig.2.4. Cependant, pour accelerer l’alignement, on peut se contenter, pourl’etape globale, de realiser une analyse Procuste generalisee sur les landmarks et d’utiliser lesparametres obtenus pour la transformation globale. Puisque les landmarks sont supposeesetre bien choisis, la transformation obtenue doit etre d’une qualite tout a fait suffisante pourdefinir les zones homogenes du gel. Ensuite, on applique l’algorithme complet sur chacunedes zones isolees.

2.4 Une premiere approche de la convergence : l’ob-

servation

Maintenant que les etapes de l’algorithme d’alignement de gels sont etablies, nous allonsvoir ce qui se passe concretement sur un jeu de donnees reelles. Cette etape va nous permettred’etudier l’efficacite de la methode mise en place. De plus, nous pourrons commencer a avoirun premier regard sur la convergence de tels algorithmes par l’observation de l’evolution desparametres et par l’etude de la population finale.

Page 116: Etude des Algorithmes génétiques et application aux

2.4 Une premiere approche de la convergence : l’observation 99

Fig. 2.4 Pseudo-code de l’AG permettant l’alignement de plus de deux gels.

Initialisationpour k = 1, 2, . . . , K faire

(Tk, tk)=Procuste(Xlk,Z

l)finAlignement des gelsTant que critere de fin non obtenu faire

pour k = 1, 2, . . . , K faireOn initialise la population avec les parametres (Tk, tk) courants.

On applique l’AG decrit a la Fig. 2.1 aux matrices Xk et Z.On obtient de nouveaux parametres (Tk, tk) et des listes d’appariements

entre Xk et Z.

Xk ← XkTk + 1nt

k

On met a jour Z.fin

fin

2.4.1 Les donnees

Dans cette partie, nous allons etudier un jeu de trois gels afin d’y appliquer la methodegeneralisee tout en gardant des resultats simples a suivre, notamment d’un point de vuegraphique. Les trois gels que l’on considere sont le resultat d’une etude portant sur descellules-souches adultes du tissu adipeux. Cette etude a ete menee dans l’equipe CHU-CNRSdu Professeur Sylvain Lehman dans le cadre du projet europeen GENOSTEM. Il s’agit decellules en culture que l’on realise pour trois individus differents. L’objectif est de comparerles differences entre individus sans difference particuliere de conditions.Pour cela, on preleve 20 µg de proteines (extraites des cellules totales). On les fait alorsmigrer dans une premiere dimension sur des bandelettes contenant un gradient lineaire depH allant de 3 a 10 d’apres les fabricants. En realite, le pouvoir tampon des proteines atendance a reduire le gradient (plutot entre 4 et 9) et a modifier sa linearite. Lors de cettemigration, les proteines s’immobilisent a leur point isoelectrique (c’est-a-dire a l’endroit ou lacharge electrique du milieu compense leur charge propre). Cette dimension correspond a l’axehorizontal des gels que nous allons presenter, les pH acides se trouvant du cote gauche et lespH basiques du cote droit. La deuxieme migration permet de separer les proteines en fonctionde leur poids moleculaire apparent. On parle de poids moleculaire apparent (contrairementaux spectrometres de masse ou on obtient le poids moleculaire reel) car de nombreux facteursinterviennent et influencent la migration, par exemple la phosphorylation d’une proteineprovoque une migration plus rapide. Cette migration correspond a l’axe vertical de nosrepresentations avec les hauts poids moleculaires en haut des graphiques.Une fois les deux migrations realisees, on realise une coloration au nitrate d’argent. Cettecoloration a ete choisie en raison de sa grande sensibilite. Les gels sont alors numerises surun scanner classique a transmission. La detection des spots est alors realisee grace au logicielImageMaster 2D Platinum v5.0 (Amersham Biosciences, Uppsala, Suede). Les resultats decette detection sont presentes dans la Fig. 2.5. On a, au total, 994 spots dans le premier gel,915 dans le deuxieme et 1022 dans le dernier.

Page 117: Etude des Algorithmes génétiques et application aux

100 L’alignement de gels d’electrophorese en deux dimensions

Fig. 2.5 Representation de la superposition directe des trois gels de l’experience. Chaquepoint correspond a la detection d’un spot. Le premier gel est represente en croix bleues, ledeuxieme en cercles verts et le troisieme en croix rouges. L’unite des deux axes est le pixel.

0 200 400 600 800 1000 1200 1400 1600 18000

200

400

600

800

1000

1200

1400

1600

1800

Page 118: Etude des Algorithmes génétiques et application aux

2.4 Une premiere approche de la convergence : l’observation 101

Fig. 2.6 Evolution des differents termes de la fitness pour l’alignement de deux gelsd’electrophorese 2D. Chaque point represente la moyenne des individus de la generationcourante. La courbe du haut represente l’evolution de l’erreur moyenne, la courbe du bas,celle du nombre d’appariements et la courbe intermediaire, celle du critere global. L’unitede l’axe des ordonnees est arbitraire.

2.4.2 Resultats de l’alignement global

2.4.2.1 Cas de deux gels

Nous allons, dans un premier temps, nous focaliser sur l’alignement de deux des gels.En effet, nous avons vu que pour aligner plus de deux gels, nous realisons des iterationsjusqu’a ce que la transformation n’evolue plus, l’etude des populations finales n’est doncpas interessante du point de vue des parametres de transformation. En revanche, quand onaligne deux gels, on ne realise qu’une seule transformation dont nous pouvons etudier lescomposantes finales.Voyons dans un premier temps l’evolution des differents termes du critere au cours desgenerations (voir Fig. 2.6). On constate que le nombre d’appariements est tres stable. Enfait, il est tres eleve des le debut et ne diminue que tres peu. Cela est du essentiellementau fait qu’on impose, pour chaque transformation d’apparier chaque spot d’un gel a unspot de l’autre gel avant d’eliminer seulement les appariements pour lesquels la distance estsuperieure a un seuil. En revanche, pour la distance entre spots elle est tres elevee au depart,puis elle diminue rapidement et finit par se stabiliser.

Etudions maintenant les parametres de la population finale de l’AG presentes dans laFig. 2.7. On constate que ces distributions sont tres concentrees autour de leur mode. Eneffet, pour l’angle de rotation, 90% des valeurs se situent entre 2.5 et 3 , ce qui est a peinediscernable du point de vue du resultat de la transformation. Pour la translation horizontale,88% des solutions portent la valeur -39 pixels et pour la translation verticale, la valeur 12pixels est prise par 79% des individus de la population finale. Si on considere, en outre, que

Page 119: Etude des Algorithmes génétiques et application aux

102 L’alignement de gels d’electrophorese en deux dimensions

Fig. 2.7 Distribution des parametres des transformations pour les 200 solutions de la po-pulation finale. La distribution des angles de rotation (en degres) est representee dans lagraphique de gauche et la distribution des translations (en pixels) dans le graphique dedroite (t1 pour la translation verticale et t2 pour la translation horizontale).

le taux de mutation reaugmente a la fin de l’algorithme, on constate que la population finalea bien converge autour d’une valeur pour chaque parametre de la transformation.Une telle information doit etre examinee avec precaution. En effet, la concentration desvaleurs indique clairement que la transformation obtenue correspond a un optimum mais ilest impossible de savoir avec certitude si cet optimum est global ou non. Cependant, quandon ne dispose pas d’information sur la nature de l’optimum global, une telle distributiondes parametres dans la population finale est tres interessante et justifie que l’on arretel’algorithme. Notons egalement que la solution modale de la population finale correspond ala meilleure solution dans cette population du point de vue de la fitness. Nous verrons dansle paragraphe 3 une utilisation plus precise de ce type de propriete.

2.4.2.2 Cas de trois gels

Revenons maintenant au cas de trois gels. La Fig. 2.5 montre bien la necessite d’unrealignement des gels mais aussi d’une transformation locale. En effet, meme a l’œil, on arrivea reperer des spots qui devraient etre apparies mais si on recherche de tels appariements dansdifferentes parties des gels, on constate que l’application d’une transformation commune nesaurait permettre de realiser les bons appariements dans tout le gel. De plus, en observantcette figure, on voit que certaines zones sont tres differentes entre gels. Par exemple, dansla partie inferieure, on voit que le gel 1 (en bleu) comporte beaucoup plus de spots queles autres et cela ne resulte pas uniquement d’une translation. On identifie alors facilementdes spots qui n’auront de correspondant dans aucun autre gel. Voyons donc maintenant lesresultats de l’application de notre AG a ces trois gels.

2.4.2.2.1 Resultats de l’alignement global Nous allons, dans un premier temps,etudier les sorties de l’alignement global des trois gels. Nous savons que cet alignementne saurait etre utilise seul mais il va nous servir a initialiser les alignements locaux et adefinir des zones homogenes dans les gels, comme nous l’avons explique au paragraphe 2.3.2.On peut representer les resultats de cet alignement par les deux graphiques de la Fig. 2.8.

Page 120: Etude des Algorithmes génétiques et application aux

2.4 Une premiere approche de la convergence : l’observation 103

Dans la partie superieure, nous avons relie les spots apparies, notons que nous avons representeles gels avant transformation, ce qui permet de mieux visualiser la qualite de cette trans-formation. En effet, on voit que certaines zones sont deja bien appariees mais en observantglobalement le graphique, on constate que les segments reliant les spots apparies peuventavoir des directions tres differentes, meme dans une meme zone. Ceci peut sembler etrangeetant donne que l’on applique la meme transformation a tout le gel. Cependant, rappelonsqu’une fois la transformation realisee, on apparie les spots les plus proches. Si ces spots etaienttous exactement superposes, apres transformation, on aurait alors des segments paralleleset plus les spots apparies sont encore eloignes apres la transformation plus les segments lesreliant seront desordonnes. L’observation montre donc deja que la transformation globalen’est pas optimale.De plus, si on observe la partie inferieure de la Fig. 2.8, on constate que les erreurs moyennesvarient entre 0 et 55 a l’interieur des petites zones. Notons ici qu’il n’y a pas forcement desappariements dans chacune des petites cellules. Dans ce cas, on applique la moyenne desdistances dans les cellules voisines, c’est pourquoi le graphique doit etre etudie globalementet non dans le detail. Ceci est surtout vrai vers les bords du graphique ou il y a peu de spots.En effet, si on a une forte distance dans une cellule, elle peut provoquer une impression degrande distance dans les cellules voisines. Cependant, ce graphique nous permet d’ores etdeja de reperer des zones qui semblent homogenes dans les gels, du point de vue de ces er-reurs. Mais nous avons vu que pour definir precisement ces zones homogenes, nous utilisonsune partition par cellules de Voronoı puis un regroupement en fonction de differents criteresdont le plus important est la difference entre les erreurs moyennes dans les cellules.

2.4.2.2.2 Recherche de zones homogenes La Fig. 2.9 montre la partition realisee etle regroupement des cellules homogenes. Dans cet exemple, 34 landmarks ont ete utilises.On peut noter que de tels landmarks peuvent etre facilement retrouves, comme nous l’avonsvu precedemment, puisqu’il est tout a fait possible de reperer des appariements evidentsa partir de la representation des coordonnees des spots detectes. Le regroupement des cel-lules permet de retrouver les zones qui semblaient homogenes dans la Fig. 2.8. On constateque l’algorithme permet de trouver des zones de tailles variables allant d’une seule cellulea neuf cellules. Il semble donc bien s’adapter a la structure du gel. Cependant, on pourraitregretter l’apparition de deux zones ne contenant qu’une seule cellule, d’autant plus que ceciest penalise par l’algorithme de regroupement. Nous verrons dans la suite quelle est leurinfluence.

2.4.2.2.3 Resultats des alignements locaux Une fois la definition des zones ho-mogenes realisee, il ne reste qu’a appliquer l’AG d’alignement a chacune de ces zones.Les resultats sont presentes dans la Fig. 2.10. On constate immediatement, dans la partiesuperieure, que l’aspect global de la transformation des gels est beaucoup plus regulier, ce quipourrait sembler paradoxal etant donne que l’on a un jeu de parametres de transformationdans chaque zone. Mais, comme nous l’avons indique precedemment, une telle homogeneitereflete la grande proximite des points apres transformation, donc la bonne qualite de latransformation. De plus, et c’est le plus interessant, on constate une grande continuite dela transformation d’une zone a l’autre. Il est impossible, d’apres ce graphique, de repererquelles etaient les zones de transformation, la transition se fait en douceur. Cela nous laisse

Page 121: Etude des Algorithmes génétiques et application aux

104 L’alignement de gels d’electrophorese en deux dimensions

Tab. 2.1 Pourcentage de spots restant isoles apres alignement global et local

gel global local1 23% 23%2 13% 11%3 22% 19%

penser que le decoupage et la transformation obtenus sont de bonne qualite, malgre les deuxcellules isolees. De plus, la forme ovoıde que l’on obtient pour la transformation est tout afait conforme a ce que les biologistes observent habituellement. Notons d’ailleurs que nosappariements ont ete valides par les biologistes.Si on etudie les appariements, dans l’alignement global, on avait realise 980 appariementsalors qu’il n’en reste que 956 apres alignement local. Cependant, on a plus d’appariementsdes trois gels dans l’alignement local : 51% des appariements concernent les trois gels dansle cas local alors qu’il n’y en avait que 41% pour le global. On a ainsi moins de points isoles,comme le montre la Tab. 2.1.

Pour ce qui est de la distance finale, si on observe les parties inferieures des Fig. 2.8 et2.10, on constate bien une diminution globale des erreurs. Pour ce qui est de la moyennede ces distances, elle est de 12 pixels pour l’alignement global et de 9 pixels pour l’aligne-ment local, cette difference peut sembler minime mais nous avons deja montre la grandeamelioration provoquee par l’alignement local et cette difference ne doit donc pas etre sous-estimee.

2.4.3 Conclusion

En conclusion, a supposer que cela etait necessaire, cette application montre tout d’abordl’apport d’une transformation locale par rapport a une transformation globale des gels. L’im-portance de cet apport est d’autant plus forte que le decoupage des gels est tres flexible (acondition d’avoir indique suffisamment de landmarks pour avoir une partition assez fine) ets’appuie sur un critere tres approprie, l’erreur moyenne locale. La qualite de cette transforma-tion apparaıt essentiellement quand on observe globalement le resultat des transformationslocales. Alors que l’on n’impose aucune contrainte de continuite entre les transformations dezones voisines, on observe, dans l’ensemble du gel, une transformation tout a fait regulierequi, de plus, est conforme a ce que l’on s’attend a trouver pour ce type de gels. Le decoupageet le rassemblement en zones que nous avons mis au point semblent donc tout a fait efficaces.Le deuxieme apport de notre methode est sans doute la grande souplesse concernant la struc-ture des appariements. Alors que dans la grande majorite des methodes existantes, un gel dereference doit etre designe (ou construit) pour pouvoir aligner plus de deux gels, dans notremethode, tous les gels jouent le meme role et on peut ainsi identifier des appariements entren’importe quelle combinaison de gels.Actuellement, la faiblesse de notre algorithme reside dans le temps de calcul. En effet, ilfaut environ 8h sur un PC de bureau classique pour realiser l’alignement local. On pourraitcertainement reduire notablement ce temps de calcul en programmant dans un autre langageou en utilisant un ordinateur plus performant. Ce temps est, de toutes facons, negligeable

Page 122: Etude des Algorithmes génétiques et application aux

2.4 Une premiere approche de la convergence : l’observation 105

devant le temps necessaire a un biologiste pour aligner les gels.Dans les perspectives, il pourrait etre interessant de concevoir une interface graphique quipermettrait au biologiste de visualiser rapidement les resultats de l’alignement.

Page 123: Etude des Algorithmes génétiques et application aux

106 L’alignement de gels d’electrophorese en deux dimensions

Fig. 2.8 Resultats de l’alignement global des trois gels. Le graphique superieur representeles appariements realises sur les trois gels. Les codes couleurs sont les memes que pour la Fig.2.5 et les spots apparies sont relies par des segments. Pour la partie inferieure, chaque petitecase du graphique represente une petite zone des gels et la couleur depend de la distancemoyenne (ou erreur moyenne) pour les appariements se situant dans cette zone.

0 200 400 600 800 1000 1200 1400 1600 18000

200

400

600

800

1000

1200

1400

1600

1800

200 400 600 800 1000 1200 1400

200

400

600

800

1000

1200

140010

20

30

40

50

60

Page 124: Etude des Algorithmes génétiques et application aux

2.4 Une premiere approche de la convergence : l’observation 107

Fig. 2.9 Partitionnement de la surface des gels par utilisation des cellules de Voronoı etregroupement des cellules (une couleur par groupe) par application de l’algorithme decrit auparagraphe 2.2.2.2.

Page 125: Etude des Algorithmes génétiques et application aux

108 L’alignement de gels d’electrophorese en deux dimensions

Fig. 2.10 Resultats de l’alignement local des zones homogenes pour les trois gels. Le gra-phique superieur represente les appariements realises sur les trois gels. Les codes couleurssont les memes que pour la Fig. 2.5 et les spots apparies sont relies par des segments. Pourla partie inferieure, chaque petite case du graphique represente une petite zone des gels etla couleur depend de la distance moyenne (ou erreur moyenne) pour les appariements sesituant dans cette zone.

0 200 400 600 800 1000 1200 1400 1600 18000

200

400

600

800

1000

1200

1400

1600

1800

200 400 600 800 1000 1200 1400

200

400

600

800

1000

1200

140010

20

30

40

50

60

Page 126: Etude des Algorithmes génétiques et application aux

Troisieme partie

Convergence des AG : de la theorie ala mise en application

109

Page 127: Etude des Algorithmes génétiques et application aux
Page 128: Etude des Algorithmes génétiques et application aux

Chapitre 1

Demonstration de la convergencetheorique : generalisation au cas nonhomogene et aux mutations dirigees

Comme nous l’avons annonce dans le paragraphe 2.2.2, nous allons maintenant etendreles resultats de Bhandari et al. (1996) au cas d’une chaıne de Markov non homogene (tauxde mutation variable) et aux mutations dirigees. Pour cela, nous allons nous baser sur lepremier exemple d’application presente qui concerne les donnees de SELDI.

1.1 Codage des solutions

Dans un premier temps, nous allons rappeler comment est effectue le codage des solutions.Dans cette application, un chromosome represente un comite, c’est-a-dire un ensemble depics avec leurs seuils associes. Pour pouvoir appliquer les operateurs (selection, croisement,mutation) simplement, on fait en sorte que la longueur des chromosomes soit constante. Pource faire, on doit se donner Nm, nombre maximum de pics dans le comite.Ainsi, pour chaque membre du comite, il faut donner le numero du pic et le seuil associe.On obtient donc des chromosomes ayant une longueur de 2Nm. Si, un comite contient moinsde Nm pics, on utilise la valeur NA pour remplir les elements vides du vecteur.Rappelons maintenant les alphabets dans lesquels sont ecrits chaque caractere du chromo-some, c’est-a-dire les ensembles de definition des elements du vecteur. On note p le nombretotal de pics parmi lesquels on peut choisir les membres du comite et n le nombre de spectres.On a alors besoin de p + 2 alphabets, en effet :

Ap = 1, 2, . . . , p

At1 = t11, t12, . . . , t1c1 ou c1 ≤ n

. . .

Ati = ti1, ti2, . . . , tici ou ci ≤ n

. . .

Atp = tp1, tp2, . . . , tpcp ou cp ≤ n

AN = NA

111

Page 129: Etude des Algorithmes génétiques et application aux

112 Convergence du cas non homogene et mutations dirigees

ou tij designe le j eme seuil possible pour le ieme pic et ci designe le nombre de seuils possiblespour le ieme pic.Notons S, l’ensemble des chromosomes de cette forme. Alors, un chromosome, S ∈ S, pourun comite comportant K pics (K ≤ Nm) contiendra donc 2(Nm−K) valeurs NA et s’ecrirade la maniere suivante :

S = p1, tp1j1 , p2, tp2j2 , . . . , pK , tpKjK, NA, NA, . . . , NA, NA

ou pi ∈ Ap et tpij ∈ Atpiavec (i = 1, 2, . . . , K) et (j ∈ 1, 2, . . . , cpi

).

1.2 Denombrement des solutions possibles

Afin de rendre possible ces denombrements, nous allons considerer ci = n,∀i ∈ 1, 2, . . . , p.On sait que ci ≤ n, ∀ i ∈ 1, 2, . . . , p, on obtiendra donc des majorants des nombres depossibilites.

Nombre total de chromosomes possibles avec repetition des pics autoriseePour un chromosome comportant K pics, pour le choix de chaque pic, on a p possibilites etpour le choix de chaque seuil, on a n possibilites. Puisqu’on autorise les repetitions, le choixde chaque pic (avec son seuil) est independant du choix des autres pics, on a donc (pn)K

chromosomes de K pics possibles.Le nombre total de chromosomes possibles est :

card(S) = N1 =Nm∑

K=1

(pn)K =pn(1− (pn)Nm)

1− pn.

Notons que dans la population initiale, on applique forcement le seuil optimal, donc il n’y apas de choix pour les seuils une fois que les pics sont choisis, on a donc N 0

1 =∑Nm

K=1 pK .

Nombre total de chromosomes possibles sans repetition des picsPour un chromosome comportant K pics, pour le choix des pics on a

(

p

K

)

possibilites dechoisir K pics parmi les p possibles (les pics etant utilises en parallele, leur ordre n’a pasd’importance). Pour chaque seuil, on a toujours c choix possibles, il y a donc

(

p

K

)

nK chro-mosomes possibles pour des comites de K pics.Le nombre total de chromosomes possibles est alors :

card(S) = N2 =Nm∑

K=1

(

p

K

)

nK .

Pour la population initiale, N 02 =

∑Nm

K=1

(

p

K

)

.

Nombre total de populations possiblesOn note Q, l’ensemble des populations possibles. On considere N ∈ N1, N

01 , N2, N

02 , alors

le nombre total de populations de taille M possibles est le nombre de facons de choisir Mchromosomes parmi les N possibles avec repetition. Or, on sait que le nombre de combinai-sons avec repetition de p elements de E avec card(E) = n est

(

n+p−1p

)

. Donc le nombre total

Page 130: Etude des Algorithmes génétiques et application aux

1.2 Denombrement des solutions possibles 113

Tab. 1.1 Ordres de grandeurs des nombres de chromosomes et populations possibles pourn = 37, p = 93 et Nm = 10

card(S) card(Q)avec repetition 2.1035 2.106685

sans repetition 4.1028 3.105345

de populations possibles est ici de card(Q) =(

M+N−1M

)

.Pour avoir quelques ordres de grandeur, nous pouvons calculer ces differentes quantites pourun petit exemple. On considere un petit echantillon comportant n = 37 spectres dont on aetudie une partie contenant p = 93 pics avec Nm = 10. Alors on obtient les quantites donneesdans la table 1.2. Ces chiffres nous montrent essentiellement qu’il est impossible d’envisagerde tester l’ensemble des solutions possibles.

Partitionnement des chromosomesChaque chromosome S ∈ S a une valeur de fitness fit(S). On peut alors noter

C = fit(S) : S ∈ S.

On note s = card(C) ≤ N . On peut alors ordonner les elements de C de la maniere suivante :

C = F1, F2, . . . , Fs, ou F1 > F2 > . . . > Fs.

On peut alors realiser une partition de S = Si ou

Si = S : S ∈ S et fit(S) = Fi, avec i = 1, 2, . . . , s. (1.1)

Soit ui = card(Si) alors∑s

i=1 ui = N . On a les proprietes triviales suivantes :

Propriete 1.1Si 6= ∅, ∀ i ∈ 1, 2, . . . , s,

Propriete 1.2Si ∩ Sj = ∅, pour i 6= j, i, j ∈ 1, 2, . . . , s2,

Propriete 1.3s⋃

i=1

Si = S.

D’apres les proprietes 1.1, 1.2 et 1.3, S1,S2, . . . ,Ss est bien une partition de S. De plus,d’apres la definition des Si (i = 1, . . . , s) si S1 ∈ Si et S2 ∈ Sj ((i, j) ∈ 1, 2, . . . , s2) alors

i < j ⇒ fit(S1) > fit(S2),

i = j ⇒ fit(S1) = fit(S2),

i > j ⇒ fit(S1) < fit(S2).

On a, en particulier, la propriete remarquable suivante :

Page 131: Etude des Algorithmes génétiques et application aux

114 Convergence du cas non homogene et mutations dirigees

Propriete 1.4 L’ensemble S1 contient tous les chromosomes optimaux au sens de la fitness.

Partitionnement des populationsSoit Q ∈ Q une population quelconque contenant M chromosomes de S. Notons qu’un memechromosome peut apparaıtre plusieurs fois dans une population.

Definition 1.1 : Egalite de deux populationsOn considere deux populations comme egales si elles contiennent les memes chromosomesen meme nombre de copies :

Q1 = Q2 ⇔ (Sj ∈ Q1 et σ1j = k ⇔ Sj ∈ Q2 et σ2j = k)

ou σij est le nombre d’occurrences du chromosome Sj dans la population Qi.

Definition 1.2 : Fitness d’une population

fit(Q) = maxS∈Q

fit(S).

On peut alors realiser une partition des populations, Q = Q1,Q2, . . . ,Qs definie de lameme maniere que pour les chromosomes (voir l’equation 1.1) :

Qi = Q : Q ∈ Q et fit(Q) = Fi, i = 1, 2, . . . , s.

On a, a nouveau, les proprietes suivantes :

Propriete 1.5Qi 6= ∅, ∀ i ∈ 1, 2, . . . , s,

Propriete 1.6Qi ∩Qj = ∅ pour i 6= j, i, j ∈ 1, 2, . . . , s2

Propriete 1.7s⋃

i=1

Qi = Q.

D’apres les proprietes 1.5, 1.6 et 1.7, Q1,Q2, . . . ,Qs est bien une partition de Q. De plus,on a :

Propriete 1.8

S ∈ Q et Q ∈ Qi ⇒ S ∈s⋃

j=i

Sj, ∀i ∈ 1, 2, . . . , s

c’est-a-dire qu’un chromosome d’une population de Qi ne peut avoir une fitness superieurea Fi.

On notera dans la suite, ei = card(Qi) et Qij, i ∈ 1, 2, . . . , s et j ∈ 1, 2, . . . , ei, la j eme

population de Qi (les populations sont ordonnees de facon arbitraire a l’interieur de Qi).

Page 132: Etude des Algorithmes génétiques et application aux

1.3 Modelisation de l’AG comme une chaıne de Markov 115

1.3 Modelisation de l’AG comme une chaıne de Mar-

kov

1.3.1 Rappel sur les Chaınes de Markov

Definition 1.3 : Processus stochastiqueSoit (Ω,F , P ) un espace de probabilite, T un ensemble quelconque et (G, E) un espace mesu-rable. On appelle processus stochastique defini sur Ω, avec T ensemble des temps et G espaced’etats toute famille Gtt∈T de variables aleatoires a valeurs dans G. La variable aleatoireGt est appelee etat a l’instant t.

Definition 1.4 : Chaıne de MarkovUn processus stochastique Gtt∈T defini sur un espace de probabilite (Ω,F , P ) avec G, en-semble fini ou denombrable, espace d’etats du systeme et T , ensemble des parametres dutemps (ici T = N), est appele Chaıne de Markov d’ordre r a temps ∈ T et a valeurs dans Gsi

P (Gt = gt|Gt−1 = gt−1, . . . , G0 = g0) = P (Gt = gt|Gt−1 = gt−1, . . . , Gt−r = gt−r).

En d’autres termes, l’etat a l’instant t ne depend que des r etats precedents.

La loi d’une chaıne de Markov d’ordre r est entierement determinee par sa loi de proba-bilite initiale, π0(gi) = P (G0 = gi), (gi ∈ G) et ses probabilites de transition :

P (Gt = gt|Gt−1 = gt−1, . . . , Gt−r = gt−r),

avec gi ∈ G et t ∈ T 2.

1.3.2 Definition de la chaıne de Markov dans le cas de l’AG

Dans notre contexte, on etudie l’evolution de la population au fur et a mesure desgenerations. On va donc etudier le processus Gtt∈T , ou Gt est la population obtenue aprest application(s) des operateurs (selection, croisement, mutation), soit t generations de l’AG.L’espace d’etats est donc G = Q = Qij pour i = 1, 2, . . . , s et j = 1, 2, . . . , ei, l’en-semble des populations possibles, de dimension N =

∑s

i=1 ei. G0 est la population initiale.T represente les temps d’apparition des generations successives, on etudie donc le processussur T = N.De plus, le resultat de l’application des operateurs ne depend que de la population courante,on a donc une chaıne de Markov d’ordre 1.Enfin, puisque la probabilite de mutation evolue au cours du temps, la chaıne de Markov estnon homogene.

Probabilites initialesNous avons vu (paragraphe 1.5) que l’AG est initialise avec une population ne contenantque les seuils optimaux pour chaque pic. On a donc π0(Qij) > 0 si Qij ne contient que deschromosomes n’ayant que des seuils optimaux et π0(Qij) = 0 sinon.

Page 133: Etude des Algorithmes génétiques et application aux

116 Convergence du cas non homogene et mutations dirigees

Fig. 1.1 Representation des probabilites de transitions (sans tenir compte du nombre degenerations necessaires) entre populations et groupes de populations homogenes (au sens dela fitness).

Probabilites de transitionPour toute generation, on passe d’une population Qij au temps t a une population Qkl autemps (t + 1) avec (i, k) ∈ 1, 2, . . . , s2, j ∈ 1, 2, . . . , ei, l ∈ 1, 2, . . . , ek et t ∈ N avecune probabilite pij.kl(t, t+1). On note egalement pij.k(t, t+1), la probabilite de transition deQij au temps t vers toute population de Qk au temps (t+1). Ces probabilites sont illustreesdans la Fig. 1.1. On a alors :

pij.k(t, t + 1) =

ek∑

l=1

pij.kl(t, t + 1), (1.2)

ets∑

k=1

pij.k(t, t + 1) = 1. (1.3)

De plus, pij.kl(t, t+n) designe la probabilite d’aboutir a la population Qkl au temps (t+n)a partir de Qij au temps t, c’est-a-dire en n generations a partir du temps t. On a de meme :

pij.k(t, t + n) =

ek∑

l=1

pij.kl(t, t + n).

Consequences de l’etape d’elitismeEtudions maintenant les consequences de l’etape d’elitisme sur les probabilites de transition.Grace a l’application de l’elitisme, le meilleur chromosome (au sens de la fitness) de lapopulation Gt (t ∈ N) est systematiquement introduit dans la population suivante Gt+1.D’ou

maxm=1,2,...,M

fit(Stm) ≤ max

m=1,2,...,Mfit(St+1

m ) (1.4)

ou Stm est le meme chromosome de la population Gt. Or, d’apres la definition 1.2, fit(Gt) =

maxm=1,2,...,M fit(Stm), donc l’equation 1.4 implique que fit(Gt) ≤ fit(Gt+1). La consequence

immediate est la propriete suivante :

Page 134: Etude des Algorithmes génétiques et application aux

1.3 Modelisation de l’AG comme une chaıne de Markov 117

Propriete 1.9 Consequence de l’elitisme sur les probabilites de transition :

pij.k(t, t + 1) ≥ 0 si k ≤ i, ∀ t ∈ N

pij.k(t, t + 1) = 0 si k > i, ∀ t ∈ N

Definition 1.5 Etat absorbant :Un etat Qij est dit absorbant ssi pij.ij(t, t + 1) = 1, ∀ t ∈ N

2, c’est-a-dire (d’apres l’equation1.3) pij.kl(t, t + 1) = 0 si i 6= k et j 6= l.

Or d’apres la propriete 1.9, p1j.kl(t, t + 1) = 0, ∀ k > 1, donc p1j.1(t, t + 1) = 1. L’ensembleQ1 est absorbant : si on trouve une population Gt ∈ Q1 alors Gt+k ∈ Q1, ∀ k ∈ N. On peutevidemment aboutir a plusieurs populations Q1j ou j ∈ 1, 2, . . . , e1 mais elles seront toutesoptimales au sens de la fitness et l’AG aura donc converge.

1.3.3 Convergence de l’AG

Definition 1.6 : Convergence de l’AGL’AG a converge en G generations si et seulement si :

∃m ∈ 1, 2, . . . ,M et Sm ∈ Q(G) tel que fit(Sm) = F1.

ou Q(G) est la Geme generation obtenue et Sm est le meme chromosome de la populationQ(G).

Pour commencer, nous allons demontrer la convergence de l’AG dans le cas homogene(les probabilites de transition ne dependent pas du temps). Ainsi, pour alleger les ecritures,

nous ecrirons pij.kl pour pij.kl(t, t + 1) et p(n)ij.kl pour pij.kl(t, t + n).

Nous montrerons dans un premier temps que notre AG permet de passer de toute populationa toute autre population de fitness superieure ou egale en un nombre fini de generations avecune probabilite non nulle. Nous utiliserons ensuite cette propriete pour demontrer que :

limn→∞

p(n)ij.1 = 1, ∀i ∈ 1, 2, . . . , s, ∀j ∈ 1, 2, . . . , ei. (1.5)

Montrons donc tout d’abord la propriete suivante :

Propriete 1.10

∃N ∈ N tel que p(n)ij.kl > 0, pour n ≥ N et i ≥ k.

En effet, si tel n’est pas le cas, il sera impossible de garantir que l’AG tombe au bout d’uncertain temps dans Q1 et donc converge. Or, on sait que Gt ∈ Qi si et seulement si le (oules) meilleur(s) chromosome(s) de Gt au sens de la fitness ont pour valeur de fitness Fi. Doncdemontrer la propriete 1.10 est equivalent a montrer qu’il est possible de passer de n’importequel chromosome a n’importe quel autre en un nombre fini de generations, en particulier deS1 ∈ Si a S2 ∈ Sj quand i > j.

Demonstration :On peut commencer par envisager le pire cas, c’est-a-dire qu’on veut passer du chromosomeS1 a S2 sachant qu’il n’y a aucun element commun entre les deux. Supposons egalement,

Page 135: Etude des Algorithmes génétiques et application aux

118 Convergence du cas non homogene et mutations dirigees

pour simplifier, que l’on ne dispose que de la mutation. Alors, d’apres la definition de lamutation, nous avons trois possibilites : deplacer un seuil, supprimer un pic et ajouter unpic. Ainsi, si S1 comporte K1 pics et S2, K2 pics, il faut, au pire, supprimer K1 pics, ajouterK2 pics et deplacer K2 seuils. Il faut donc au moins K1+2K2 generations. A chaque etape, laprobabilite de mutation est non nulle donc, en K1 +2K2 generations, la probabilite d’obtenirS2 a partir de S1 est non nulle. Evidemment, cette probabilite peut etre tres faible (il fautchoisir de faire une mutation et appliquer la bonne mutation) mais elle est non nulle. Onpeut egalement trouver un majorant de K1 + 2K2, en effet, K1 ≤ Nm et K2 ≤ Nm doncK1 + 2K2 ≤ 3Nm. Posons N = 3Nm.Par consequent, on a bien :

p(n)ij.k > 0 si k ≤ i et n ≥ N.

Demontrons maintenant par recurrence la propriete suivante :

Propriete 1.11

s∑

k=2

p(cN+1)ij.k ≤ δc(1−pij.1), ∀i ∈ 1, 2, . . . , s, ∀j ∈ 1, 2, . . . , ei, ouδ = max

i,j(1−p

(N)ij.1 )etc ∈ N.

Or, nous venons de voir que p(N)ij.1 > 0 donc δ < 1.

Demonstration :

s∑

k=2

p(N+1)ij.k =

s∑

k=2

s∑

i1=2

ei1∑

j1=1

pij.i1j1p(N)i1j1.k

=s∑

i1=2

ei1∑

j1=1

pij.i1j1

s∑

k=2

p(N)i1j1.k

=s∑

i1=2

ei1∑

j1=1

pij.i1j1(1− p(N)i1j1.1)

≤ δ

s∑

i1=2

ei1∑

j1=1

pij.i1j1

= δ

s∑

i1=2

pij.i1

= δ(1− pij.1)

La propriete 1.11 est donc verifiee pour c = 1. Supposons maintenant que∑s

k=2 p(cN+1)ij.k ≤

Page 136: Etude des Algorithmes génétiques et application aux

1.3 Modelisation de l’AG comme une chaıne de Markov 119

δc(1− pij.1). Alors,

s∑

k=2

p((c+1)N+1)ij.k =

s∑

k=2

s∑

i1=2

ei1∑

j1=1

p(N)ij.i1j1

p(cN+1)i1j1.k

=s∑

i1=2

ei1∑

j1=1

p(N)ij.i1j1

s∑

k=2

p(cN+1)i1j1.k

≤ δc

s∑

i1=2

ei1∑

j1=1

p(N)ij.i1j1

(1− pij.1) d’apres l’hypothese de recurrence

= δc

s∑

i1=2

p(N)ij.i1

(1− pij.1)

≤ δc+1(1− pij.1)

Ainsi, si la propriete 1.11 est verifiee pour c alors elle l’est pour (c + 1). On a donc bien

montre que∑s

k=2 p(cN+1)ij.k ≤ δc(1− pij.1), ∀c ∈ N .

Il en decoule que :

limc→∞

s∑

k=2

p(cN+1)ij.k = 0,

donc

limc→∞

p(cN+1)ij.1 = 1.

On a bien convergence de l’AG dans le cas homogene.

1.3.4 Generalisation au cas non homogene

Nous allons maintenant nous interesser au cas non homogene, c’est-a-dire le cas ou lesprobabilites de transition d’un etat a l’autre varient en fonction du temps. On considere doncreellement pij.kl(t, t + n) comme une fonction du temps. Cette evolution au cours du tempscorrespond au cas que nous avons evoque a plusieurs reprises au cours de ce travail, celui oule taux de mutation, pm(t) evolue au cours des generations. Le plus souvent cela consisteraa avoir un taux de mutation eleve en debut d’algorithme (pour permettre une meilleureexploration de l’espace des solutions) puis une diminution de ce taux (pour permettre al’algorithme de converger). Pour cela, nous allons adopter un raisonnement analogue a ce-lui presente pour le cas homogene (taux de mutation constant). Nous allons tout d’abordmontrer par recurrence une relation analogue a la propriete (1.11) :

Propriete 1.12

s∑

k=2

pij.k(t, t + cN + 1) ≤ δc(1− pij.1(t, t + 1)), ∀i ∈ 1, 2, . . . , s, ∀j ∈ 1, 2, . . . , ei,

ou δ = maxi,j,t(1− pij.1(t, t + N) et c ∈ N.

Page 137: Etude des Algorithmes génétiques et application aux

120 Convergence du cas non homogene et mutations dirigees

Par rapport au cas homogene, nous avons une difficulte supplementaire concernant le signede δ. En effet, nous avons montre precedemment que pij.1(t, t + N) > 0 mais comme nousconsiderons une serie (t → ∞), on ne peut conclure immediatement que mini,j,t pij.1(t, t +N) > 0.Dans le cas homogene, la serie des probabilites de transition est une constante, elle estdonc divergente. Alors, d’apres le lemme de Borel-Cantelli, quand la somme des probabilitesd’apparition des termes d’une suite est infinie, tous les etats sont visites avec une probabilitede 1. En particulier, on passera dans le sous-ensemble des etats absorbants. On peut donc,dans le cas homogene, etre assure de la convergence de l’algorithme.Dans le cas non homogene, on ne peut pas appliquer directement le lemme de Borel-Cantelli.Cependant, en ajoutant une hypothese peu contraignante sur la fonction pm(t), nous allonspouvoir appliquer le meme raisonnement. Cette hypothese est la suivante :

Hypotese 1.1 Contrainte sur la fonction pm(t) :La fonction pm(t) admet un minimum 0 < µ < 1.

Cette hypothese n’est pas tres forte en pratique. En effet, si l’operateur de mutationdisparaıt, on n’est plus vraiment dans le cas d’un algorithme genetique. De plus, nous avonsvu que c’est le seul operateur qui permet une vraie exploration de l’espace des solutions. Sion n’a plus de mutations, alors, seuls les alleles presents dans la population au moment ou letaux de mutation devient nul pourront intervenir dans les solutions des populations a venir.Ce n’est donc pas un cas souhaitable. Voyons maintenant les implications de cette hypothesepour notre probleme.Les probabilites de transition dependent essentiellement du taux de mutation et du tauxde croisement (du fait de l’elitisme et de la definition de nos etats, la pression de selectionn’intervient pas directement). Or, le taux de croisement est constant, donc seul le taux demutation est variable dans les probabilites de transition. On peut donc ecrire pij.1(t, t + N)comme une fonction f(pm(t)). Or, nous savons que, plus le taux de mutation est eleve, plus onexplore l’espace des solutions largement. De plus, l’elitisme empeche toutes les transitionsd’un groupe Qk a un groupe Ql si l > k. Donc, en augmentant le taux de mutation, ondiminue la probabilite de rester dans le meme groupe (sauf pour Q1) et on augmente laprobabilite d’atteindre un groupe de fitness superieure. On a donc plus de chances d’arriverdans Q1. Donc, pij.1(t, t + N) est une fonction croissante de pm(t). On en deduit que

pm ≥ µ⇒ pij.1 ≥ f(µ).

Ensuite, si on construit une serie constante : u(t) = f(µ) pour tout t ∈ N alors,

∀t ∈ N, pij.1(t, t + N) ≥ u(t).

Or, u(t) est une serie constante donc divergente, pij.1(t, t+N) est donc minoree par une seriedivergente, donc pij.1(t, t + N) est divergente. On peut donc appliquer au cas non homogeneles raisonnements du cas homogene, en particulier, dire que pij.1(t, t + N) > 0 donc δ < 1.Nous pouvons maintenant passer a la demonstration de la propriete 1.12.

Page 138: Etude des Algorithmes génétiques et application aux

1.3 Modelisation de l’AG comme une chaıne de Markov 121

Demonstration

s∑

k=2

pij.k(t, t + N + 1) =s∑

k=2

s∑

i1=2

ei1∑

j1=1

pij.i1j1(t, t + 1)pi1j1.k(t + 1, t + N + 1)

=s∑

i1=2

ei1∑

j1=1

pij.i1j1(t, t + 1)s∑

k=2

pi1j1.k(t + 1, t + N + 1)

=s∑

i1=2

ei1∑

j1=1

pij.i1j1(t, t + 1)(1− pi1j1.1(t + 1, t + N + 1))

≤ δs∑

i1=2

ei1∑

j1=1

pij.i1j1(t, t + 1)

= δs∑

i1=2

pij.i1(t, t + 1)

= δ(1− pij.1(t, t + 1))

La propriete 1.12 est donc verifiee pour c = 1. Supposons maintenant que∑s

k=2 pij.1(t, t +cN + 1) ≤ δc(1− pij.1(t, t + 1)) (hypothese de recurrence notee HR). Alors,

s∑

k=2

pij.k(t, t + ((c + 1)N + 1)

=s∑

k=2

s∑

i1=2

ei1∑

j1=1

pij.i1j1(t, t + cN + 1)pi1j1.k(t + cN + 1, t + ((c + 1)N + 1)

=s∑

i1=2

ei1∑

j1=1

pij.i1j1(t, t + cN + 1)s∑

k=2

pi1j1.k(t + cN + 1, t + ((c + 1)N + 1)

≤ δc

s∑

k=2

pi1j1.k(t + cN + 1, t + ((c + 1)N + 1) d’apres l’HR

≤ δc+1(1− pij.1(t, t + 1))

Ainsi, si la propriete 1.12 est vraie pour c alors elle l’est pour (c+1). On a donc bien montreque

∑s

k=2 pij.k(t, t + cN + 1) ≤ δc(1− pij.1(t, t + 1)), ∀(c, t) ∈ N2.

Il vient donc que

limc→∞

s∑

k=2

pij.k(t, t + cN + 1) = 0

donc

limc→∞

pij.1(t, t + cN + 1) = 1.

On a egalement convergence de l’AG dans le cas non homogene.

Page 139: Etude des Algorithmes génétiques et application aux

122 Convergence du cas non homogene et mutations dirigees

1.3.5 Influence de l’operateur de croisement sur la vitesse de conver-gence

Nous avons considere dans un premier temps, pour simplifier, qu’on ne faisait intervenirque l’operateur de mutation qui ne permet qu’un changement a la fois. A partir de cettesimplification, nous avons pu donner un nombre minimum de generations necessaires a laconvergence de l’algorithme qui etait de N = 3Nm. Cependant, l’introduction de l’operateurde croisement permet de nettement reduire l’ordre de grandeur de N . En effet, il peut per-mettre de combiner des caracteristiques interessantes apparues simultanement dans differentschromosomes de la population par mutation.Envisageons a nouveau le pire des cas. Notre objectif est d’obtenir un chromosome de S1.Choisissons donc un chromosome objectif qui soit un chromosome de S1. Supposons quedans la population initiale, il n’y ait aucun des pics constituant les chromosomes de S1 maisque tous les chromosomes aient Nm pics. Choisissons un chromosome objectif qui soit unchromosome de S1. Il est alors necessaire dans une premiere etape de supprimer Nm picsdans la population, ceci peut etre effectue en une seule generation en appliquant la mutationenlever un pic a au moins Nm chromosomes. Ensuite, dans la generation suivante, on peut,toujours par l’operateur de mutation, faire apparaıtre les Nm pics necessaires (toujours dansdes chromosomes differents). Une autre generation est necessaire pour obtenir les seuils ob-jectifs.On dispose, a ce stade, de tous les elements du chromosome objectif, il ne reste plus qu’aeffectuer autant de croisements que necessaire, sachant que l’operateur de croisement em-ploye permet de croiser entre 1 et Nm pics. Cependant, un croisement ne concerne que deuxchromosomes donc, a chaque generation, on divise au maximum par 2 le nombre de chro-mosomes contenant les bons caracteres (pics et seuils). En fait, si a une etape, les bonscaracteres sont repartis dans 2n chromosomes, alors ils seront repartis dans n chromosomesa l’etape suivante. Par contre, s’ils sont repartis dans 2n + 1 chromosomes a une etape, l’undes chromosomes ne pourra pas etre croise et les bons caracteres seront repartis dans (n+1)chromosomes.Prenons un exemple pour lequel Nm = 10. A l’etape 1, les caracteres objectifs sont repartisdans 10 chromosomes. A l’etape 2, ils sont croises deux a deux et on retrouve donc les bonscaracteres dans 5 chromosomes. A l’etape 3, 4 des chromosomes peuvent etre croises deuxpar deux pour constituer deux nouveaux chromosomes et il en reste un de cote, on a doncune repartition dans 3 chromosomes. De la meme facon, a l’etape 4, un seul croisement estpossible ce qui aboutit a une repartition en 2 chromosomes qui sont croises dans l’etape 5pour donner le chromosome objectif. Pour arriver a rassembler 10 caracteres, il faut donc 4etapes.Ainsi, si le nombre de caracteres a combiner, a, peut s’exprimer sous la forme a = 2n, ilfaudra n = log2(a) etapes de croisements. Si 2n < a ≤ 2n+1 alors il faudra n + 1 etapes decroisement. Soit C(Nm) le nombre d’etapes de croisements necessaires pour combiner Nm

caracteres, alors :

C(Nm) = [log2(Nm)] si log2(Nm) = [log2(Nm)]

= [log2(Nm)] + 1 si log2(Nm) > [log2(Nm)]

Donc, au total, en tenant compte de l’etape de croisement, il faut N = 3+C(Nm) generationspour avoir

p(n)ij.k > 0 si k ≤ i et n ≥ N.

Page 140: Etude des Algorithmes génétiques et application aux

1.3 Modelisation de l’AG comme une chaıne de Markov 123

L’ajout du croisement a donc de fortes consequences, si Nm = 10 alors N = 30 si on ne tientpas compte du croisement alors que N = 7 en en tenant compte. De facon plus generale,si on double le nombre maximum de pics, alors on double egalement N dans le cas sanscroisement alors que N n’augmente que de 1 en tenant compte des croisements.

Page 141: Etude des Algorithmes génétiques et application aux
Page 142: Etude des Algorithmes génétiques et application aux

Chapitre 2

Construction d’un critere depseudo-convergence

2.1 Introduction

Les resultats de convergence tels que celui precedemment demontre sont tres importantset tout a fait necessaires pour comprendre le fonctionnement des AG et justifier la demarcheproposee. Cependant, d’un point de vue pratique, ces resultats sont rassurants mais tres peuutiles. En effet, la convergence de l’AG est assuree mais la vitesse de convergence est incon-nue. En pratique, ce qui est necessaire, c’est un critere d’arret pour l’AG. Nous avons dejavu qu’il etait possible d’arreter l’algorithme au bout d’un certain temps de calcul ou d’uncertain nombre de generations tous deux predefinis, on peut aussi choisir un temps pendantlequel la fitness moyenne dans la population n’evolue pas beaucoup. Ce dernier cas sembleplus interessant car il prend reellement en compte la convergence observee de la population.Toutefois, en general, le taux de mutation n’est jamais nul et il y a donc toujours des indi-vidus dans la population qui mutent et sont ainsi susceptibles de devier de l’optimum. Lamoyenne de la fitness dans la population s’en trouvera necessairement modifiee. Il est doncindispensable de definir une marge de tolerance a l’interieur de laquelle on considere que lamoyenne de la population n’a pas evolue. Cette marge doit evidemment evoluer en fonctionde l’amplitude de la fitness et donc du probleme. Ce qui implique de nouveaux reglages desque l’on change de problematique.

Afin de remedier a ces inconvenients, nous avons essaye de mettre en place un nouveaucritere d’arret. Il est important de noter que ce critere n’a pas la pretention de reperer lapresence de l’optimum global. On pourrait dire qu’il s’agit d’un critere de pseudo-convergence.L’objectif d’un tel critere est de realiser un compromis entre les resultats purement theoriquesinutilisables en pratique et les criteres d’arret usuels qui n’ont aucun fondement theorique.Il est bien evident que, dans le cas d’une heuristique comme les AG, il est impossible, enpratique, de savoir si l’on a obtenu l’optimum global. Mais, on peut essayer de s’en rappro-cher au maximum. Pour construire ce critere, nous sommes partis du fait qu’une solution debonne qualite (localement ou globalement optimale) colonise petit a petit la population. Cephenomene est assez intuitif etant donne que l’elitisme et l’operateur de selection tendenta maintenir la meilleure solution et a favoriser son apparition dans la generation suivante.Une etude theorique sur ce sujet a ete menee par Cerf (1996a). L’introduction de l’elitismenous place dans un contexte different pour lequel nous allons modeliser la colonisation de la

125

Page 143: Etude des Algorithmes génétiques et application aux

126 Construction d’un critere de pseudo-convergence

population par les optima locaux successifs. Pour pouvoir realiser cette modelisation, nousallons devoir proceder a quelques simplifications. On disposera donc d’un modele qui nerefletera pas totalement la realite mais qui nous permettra de donner une idee de l’assisetheorique du critere de convergence que nous allons construire.

Avant de rentrer dans les details du critere et de sa modelisation, nous allons presenterla petite simulation qui servira d’illustration, elle permettra de verifier la pertinence denotre critere. Pour cela, nous allons construire deux AG qui permettent de realiser uneclassification non supervisee. Bien que les deux algorithmes auront le meme objectif, leursmethodes d’optimisation seront tres differentes et nous permettront de tester l’adaptabilitedu critere.

2.2 Simulation

2.2.1 Construction des AG

2.2.1.1 Premiere approche

On suppose que l’on dispose d’un tableau de donnees comportant n individus et p va-riables. La premiere methode pour realiser une classification non supervisee est la plus directecar elle portera sur les affectations des n individus. Une solution comptera autant de loci qued’individus a classer et chacun des individus se verra affecter un groupe d’appartenance. Lenombre de groupes, k, pour chaque solution est defini aleatoirement lors de la generation dela premiere population, il est genere entre 2 et Nmax qui est fixe prealablement. Ensuite, onaffecte a chacun des loci de la solution un nombre entre 1 et k. Pour la mutation, on definitun taux de mutation, pm qui est applique a chaque solution. Une mutation peut consister aajouter, supprimer un groupe ou a modifier une ou plusieurs affectations. Quant au croise-ment, nous avons applique le croisement uniforme comme decrit au paragraphe 1.4. Enfin,la selection utilise les rangs, comme dans toutes nos applications, elle porte sur la fitness quitient compte de la somme des distances intra-groupes moyennes et du nombre de groupes.

2.2.1.2 Seconde approche

La deuxieme methode que nous proposons est plus proche de l’algorithme k-means (Has-tie et al., 2001). En effet, au lieu des affectations, nous allons optimiser les positions descentres de gravite des groupes. Nous fixerons, comme precedemment, un nombre maximumde groupes, Nmax. Cela nous permettra d’avoir une longueur de codage constante. En effet,une solution contiendra les positions des centres des groupes soit une longueur de Nmax × pavec uniquement k×p loci contenant des positions si la solution courante contient k groupes.Pour l’operateur de mutation, on appliquera a nouveau un taux de pm a chaque solution enautorisant suppression, addition et deplacement des centres. Le croisement est a nouveauuniforme mais on choisit de croiser un centre complet (soit p coordonnees). Enfin, pour lafitness, on calcule les affectations (au centre le plus proche) et la fitness est definie commepour la premiere methode. Notons qu’une fois les affectations realisees, les centres sont re-calcules comme etant les centres de gravite des nouveaux groupes.

Page 144: Etude des Algorithmes génétiques et application aux

2.3 Construction du critere 127

Fig. 2.1 Representation des deux premieres variables de la simulation retenue pour les AGpermettant la classification non supervisee d’un jeu de donnees. Chaque symbole representeun groupe.

−15 −10 −5 0 5 10 15 20−10

−5

0

5

10

15

2.2.2 Construction d’un jeu de donnees simule

Pour tester les deux algorithmes precedemment decrits, nous avons simule cinq variables,dont deux qui permettent de positionner les groupes et les trois autres qui sont des variablesde bruit. Ces dernieres variables permettent d’introduire une difficulte de plus. Pour lesvariables de position des groupes, nous avons simule quatre groupes de vingt observationschacun, par des lois normales univariees dont la moyenne reflete les positions des centresdes groupes et la variance leur etendue. Finalement, pour la simulation retenue, on obtientpour ces deux variables de position la repartition de la Fig. 2.1. On remarque qu’il existeun groupe bien isole alors que les trois autres sont plus proches. Pour les variables de bruit,nous avons simule des lois uniformes univariees sur l’intervalle [−5, 5].

2.3 Construction du critere

Nous avons deja evoque que le critere d’arret allait se baser sur le nombre d’occurrencesde la meilleure solution courante au fur et a mesure des generations. Notons bien ici, qu’ils’agit de la meilleure solution courante, c’est-a-dire la meilleure dans la generation couranteet non de la meilleure solution globale. Pour nous convaincre de l’interet de ce parametre,observons son evolution au cours des generations dans la Fig. 2.2. On voit immediatementque le nombre d’occurrences de la meilleure solution courante augmente tres rapidement unefois que la meilleure solution globale est apparue. Il semble donc tout a fait approprie debaser un critere d’arret sur ce parametre. D’apres la Fig. 2.2, on pourrait penser a utiliserune methode de detection de rupture mais nous allons construire une methode qui est plusadaptee car elle va reellement prendre en compte l’ensemble des mecanismes inherents al’AG.

Page 145: Etude des Algorithmes génétiques et application aux

128 Construction d’un critere de pseudo-convergence

Fig. 2.2 Evolution du nombre d’occurrences de la meilleure solution courante au cours des400 premieres generations pour les donnees simulees. Le trait vertical indique la premiereapparition dans la population courante de la solution globalement optimale.

0 50 100 150 200 250 300 350 400 4500

5

10

15

20

25

30

générations

nb o

ccur

ence

s

2.3.1 Construction de Zn

Interessons-nous dans un premier temps au processus Zn :

Zn = Nombre d’occurrences de la meilleure solution courante dans la generation n.

Il serait tres interessant de pouvoir considerer ce processus comme une chaıne de Mar-kov et nous avons vu dans la section precedente que la population peut etre modelisee parune chaıne de Markov d’ordre 1. Malheureusement, d’une maniere generale, le nombre d’oc-currences de la meilleure solution courante ne depend pas que du nombre d’occurrences dela meilleure solution dans la generation precedente, il depend egalement de la nature desautres solutions presentes dans la population precedente. En effet, par le biais des mutationset des croisements, ces solutions peuvent evoluer pour atteindre la meme fitness ou memeune fitness superieure. Profitons-en pour noter que l’etude de ce processus necessitera laconsideration de deux cas differents :

– la meilleure solution courante est la meme que dans la generation precedente,– une nouvelle meilleure solution courante vient d’apparaıtre.

Mais dans les deux cas, la structure de la population dans son ensemble (et pas seulementle nombre d’occurrences de la meilleure solution courante) aura une influence sur le nombred’occurrences de la meilleure solution locale dans la generation suivante.Cependant, afin de pouvoir approcher d’une maniere theorique le contexte dans lequel sesitue notre critere, nous allons faire deux hypotheses qui nous permettront de considerer leprocessus Zn comme une chaıne de Markov. Pour cela, nous allons noter Tn la variablealeatoire qui vaut 0 si on a change de meilleure solution courante entre la generation n− 1et la generation n et 1 sinon.

Page 146: Etude des Algorithmes génétiques et application aux

2.3 Construction du critere 129

Hypotese 2.1 Hypothese 1 : loi de Tn

Pr[Tn = 1] = ϕ et Pr[Tn = 0] = 1− ϕ, avec ϕ ∈ [0, 1[,

Examinons le sens de cette premiere hypothese. En fixant cette loi pour Tn, on indiqueque la probabilite de changer d’optimum n’evolue pas au cours des generations. En fait, ilest evident que, en realite, cette probabilite change. Quand la population a evolue depuis uncertain nombre de generations et que des caracteristiques interessantes sont apparues dansla population, il est clair que la probabilite d’obtenir un meilleur optimum augmente. Al’oppose, lorsque l’on est a l’optimum global, on n’a plus aucune chance d’ameliorer l’opti-mum, Pr[Tn = 0] = 0. Par contre, au debut de l’algorithme, si on a realise une initialisationaleatoire, on ne sait pas a priori si elle va donner lieu a une meilleure solution ou non dansla generation suivante. Dans un tel cas, on pourrait poser Pr[Tn = 1] = Pr[Tn = 0] = 0.5.Cependant, notre critere va s’interesser aux transitions de Zn dans le cas ou la chaıne n’a pasconverge et quand le comportement de la chaıne s’eloignera trop du comportement modele,alors on considerera que l’on a converge. On veut donc modeliser les transitions de Zn sousl’hypothese de non convergence de l’algorithme et on ne considerera donc que des valeursPr[Tn = 0] > 0.

Hypotese 2.2 Hypothese 2 :

On neglige la probabilite d’apparition de nouvelles occurrences de la meilleure solution cou-rante parmi les solutions autres que celles qui sont deja localement optimales.

Par cette hypothese, on estime que c’est uniquement l’operateur de selection qui permet lacolonisation de la population par les optima successifs. On neglige le fait que les operateursde croisement et de mutation peuvent faire apparaıtre la meme solution ou une solutiondifferente mais de meme fitness. Comme nous le verrons par la suite, cette hypothese esttout a fait acceptable si on se trouve dans un probleme ou la fonction de fitness peut prendrede tres nombreuses valeurs et si l’espace des solutions est tres grand. Il est evident que sile fitness peut prendre dix valeurs ou si l’on n’optimise que deux parametres qui peuventprendre vingt valeurs chacun, cette hypothese ne pourra pas etre verifiee. Mais, dans unegrande partie des domaines d’application des AG, ce dernier cas n’apparaıt pas. En effet,on a plus tendance a utiliser les AG pour des problemes ayant un tres grand nombre desolutions possibles. Nous verrons par la suite quelques exemples de restriction.

Si l’on pose les deux hypotheses precedentes, alors on n’a plus besoin de connaıtre lastructure du reste de la population (hors solutions localement optimales), on a simplementbesoin du Zn−1 pour predire le nombre d’occurences de la meilleure solution courante pour lageneration suivante. Nous pouvons alors considerer Zn comme une chaıne de Markov d’ordre1 dont nous allons modeliser les transitions. Les consequences et les restrictions dues auxhypotheses presentees seront abordees dans la suite.

Dans l’eventualite ou la meilleure solution ne change pas, le nombre d’occurrences dansla generation n + 1 ne depend que du nombre d’occurrences dans la generation n. En effet,d’apres l’hypothese 2.2, les meilleures solutions de la generation n + 1 proviennent unique-ment de la selection des meilleures solutions qui etaient presentes dans la generation n etqui n’ont pas ete detruites par l’application des operateurs de mutation et de croisement.Pour le cas ou on change de meilleure solution, on posera Zn = 1 et ce, pour deux raisons.

Page 147: Etude des Algorithmes génétiques et application aux

130 Construction d’un critere de pseudo-convergence

A terme, nous allons observer la somme d’une suite de realisations de Zn et nous voulonsavoir des sommes importantes quand on n’a pas change de solution optimale depuis de nom-breuses generations. Quand on vient de changer de solution optimale, on veut donc donnerune valeur faible a Zn. Cette contrainte n’est, en outre, pas aberrante puisque la probabilitepour qu’une meilleure solution apparaisse plus d’une fois dans la meme population (lors desetapes de mutation et croisement) est tres faible dans la majorite des problemes.

L’espace d’etat de Zn est naturellement 1, 2, . . . , Tpop ou Tpop est toujours la taille dela population. Pour ce qui est de l’etat initial, on pose naturellement Z0 = 1. Etudionsmaintenant l’ensemble des probabilites πn(k, l) ou

πn(k, l) = Pr[Zn = k|Zn−1 = l].

Pour calculer ces probabilites, nous allons devoir considerer successivement plusieurs condi-tionnements.

2.3.1.1 Conditionnement 1

Le premier conditionnement porte sur ce qui vient d’etre evoque, a savoir le changementou non de meilleure solution courante. On peut noter ici que, grace a l’elitisme (dont nousavons vu l’importance pour la convergence), un changement de meilleure solution ne peut sefaire que dans le sens d’une amelioration. Il ne peut y avoir de deterioration de la meilleuresolution. On peut alors decomposer πn(k, l) comme suit :

πn(k, l) = Pr[Zn = k|Zn−1 = l, Tn = 0]Pr[Tn = 0) + Pr[Zn = k|Zn−1 = l, Tn = 1]Pr[Tn = 1]

Or, nous avons pose Zn = 1 si on change de meilleure solution. Considerons donc, dans unpremier temps, πn(1, l) :

πn(1, l) = Pr[Zn = 1|Zn−1 = l, Tn = 0]×Pr[Tn = 0] + Pr[Zn = 1|Zn−1 = l, Tn = 1]×Pr[Tn = 1]

= 1×Pr[Tn = 0] + Pr[Zn = 1|Zn−1 = l, Tn = 1]×Pr[Tn = 1].

Interessons-nous maintenant a πn(k, l) pour k 6= 1. On peut l’ecrire de la meme facon queπn(1, l) :

πn(k, l) = Pr[Zn = k|Zn−1 = l, Tn = 0]×Pr[Tn = 0] + Pr[Zn = k|Zn−1 = l, Tn = 1]×Pr[Tn = 1]

= 0×Pr[Tn = 0] + Pr[Zn = 1|Zn−1 = l, Tn = 1]×Pr[Tn = 1].

Ici, le terme en Tn = 0 disparaıt puisque quand Tn = 0, Zn prend necessairement la valeur1 quand on change de meilleure solution.Concernant le terme ou Tn = 1, on peut raisonner de la meme facon ∀k ∈ 1, . . . , Tpop.

Page 148: Etude des Algorithmes génétiques et application aux

2.3 Construction du critere 131

2.3.1.2 Conditionnement 2

Le nombre d’occurrences de la meilleure solution dans la generation n depend, dansun premier temps, du nombre de meilleures solutions qui restaient apres application desoperateurs de mutation et de croisement a la generation n− 1. Pour en tenir compte, nousallons introduire une nouvelle variable aleatoire, Zmc

n qui compte le nombre de meilleuressolutions restant apres application de la mutation et du croisement a la generation n. SiZn = l alors on considere que Zmc

n ∈ 0, 1, . . . , l. On oscille entre deux cas extremes, celuiou aucune solution localement optimale n’a ete detruite, et celui ou toutes ces solutions ontete detruites. On decompose alors :

Pr[Zn = k|Zn−1 = l, T = 1] =l∑

j=1

Pr[Zn = k|Zn−1 = l, T = 1, Zmcn−1 = j]Pr[Zmc

n−1 = j].

Calculons tout d’abord Pr[Zmcn−1 = j]. On considere pm et pc les probabilites respectives

de mutation et de croisement pour une solution. On considere que ces probabilites sontconstantes au cours du temps. Rappelons que, contrairement a la definition classique, notreprobabilite de mutation s’applique a la solution et non a chacun de ses loci. Alors, on definitla probabilite p pour une solution de subir au moins un changement :

p = Pr[mutation ∪ croisement]

= Pr[mutation] + Pr[croisement]−Pr[mutation ∩ croisement]

= pm + pc − pmpc

Or, nous nous interessons au nombre de solutions localement optimales qui n’ont pas etemodifiees par la mutation et/ou le croisement. Alors, la probabilite, pour une solution, dene pas subir de modification est q = 1 − p = 1 − pm − pc + pmpc. Finalement, puisqu’onavait l solutions localement optimales dans la generation n − 1 alors Zmc

n−1 = j suit une loibinomiale :

Pr[Zmcn−1 = j] =

(

l

j

)

qj(1− q)l−j.

Enfin, il nous reste a calculer Pr[Zn = k|Zn−1 = l, T = 1, Zmcn−1 = j]. Pour cela, nous

avons besoin d’introduire l’effet de l’elitisme. En effet, nous avons vu qu’au cours de l’etaped’elitisme, la meilleure solution de l’etape n−1 vient remplacer la pire solution de l’etape n.L’elitisme n’a donc pas d’influence sur Zn dans le cas ou on change de meilleure solution.Par contre, si la meilleure solution est conservee, il suffira d’avoir selectionne k−1 occurrencesde la solution localement optimale pour avoir k occurrences dans la generation n puisquel’elitisme en ajoute une. Il existe cependant un cas particulier, celui ou k = Tpop. Cela peutse produire dans deux cas distincts, soit on avait selectionne Tpop−1 occurrences et l’elitismeen a ajoute une, soit on en avait deja selectionne Tpop et l’elitisme en a remplace une.Interessons-nous donc a la probabilite de selectionner la solution localement optimale sielle est presente en j exemplaires. Nous avons vu au paragraphe 1.5 de la partie 1 que laprobabilite de selectionner un individu depend de son rang, par rapport a la valeur de safitness :

Pr[selectionner l’individu de rang r] = α× r + β.

Page 149: Etude des Algorithmes génétiques et application aux

132 Construction d’un critere de pseudo-convergence

Si plusieurs individus ont la meme valeur de fitness, le rang que l’on affecte a chacun d’euxest la moyenne des rangs qu’ils auraient s’ils avaient des valeurs legerement differentes. Dansnotre cas, si les j solutions avaient des valeurs legerement differentes, la meilleure d’entre ellesaurait le rang Tpop, la solution de valeur immediatement inferieure aurait le rang Tpop − 1,etc. . . Le rang affecte a chacune des j occurrences de la solution localement optimale estdonc :

r =Tpop + (Tpop − 1) + . . . + (Tpop − j + 1)

j

=jTpop − (1 + 2 + . . . + (j − 1))

j

= Tpop −1

j(j − 1)

2

= Tpop −j − 1

2

Donc, la probabilite de selectionner chacune des occurrences de la meilleure solution couranteest :

p∗j = α

(

Tpop −j − 1

2

)

+ β,

et la probabilite de selectionner n’importe laquelle des solutions localement optimales estj × p∗j .Alors, pour k < Tpop :

Pr[Zn = k|Zn−1 = l, T = 1, Zmcn−1 = j] =

(

Tpop

k − 1

)

(jp∗j)k−1(1− jp∗j)

Tpop−k+1,

et pour k = Tpop,

Pr[Zn = Tpop|Zn−1 = l, T = 1, Zmcn−1 = j] =

(

Tpop

Tpop − 1

)

(jp∗j)Tpop−1(1− jp∗j) +

(

Tpop

Tpop

)

(jp∗j)Tpop ,

= Tpop(jp∗j)

Tpop−1(1− jp∗j) + (jp∗j)Tpop .

2.3.1.3 Bilan

Finalement, voici le calcul de πn(k, l) pour trois cas :si k = 1,

πn(1, l) = Pr[Tn = 0] +

[

l∑

j=0

(

Tpop

0

)

(jp∗j)0(1− jp∗j)

Tpop

(

l

j

)

qj(1− q)l−j

]

Pr[Tn = 1]

= Pr[Tn = 0] +

[

l∑

j=0

(1− jp∗j)Tpop

(

l

j

)

qj(1− q)l−j

]

Pr[Tn = 1]

Page 150: Etude des Algorithmes génétiques et application aux

2.3 Construction du critere 133

si 1 < k < Tpop,

πn(k, l) =

[

l∑

j=0

(

Tpop

k − 1

)

(jp∗j)k−1(1− jp∗j)

Tpop−k+1

(

l

j

)

qj(1− q)l−j

]

Pr[Tn = 1],

et si k = Tpop,

πn(Tpop, l) =

[

l∑

j=0

(

Tpop(jp∗j)

Tpop−1(1− jp∗j) + (jp∗j)Tpop)

(

l

j

)

qj(1− q)l−j

]

Pr[Tn = 1].

A ce stade de l’etude et d’apres l’hypothese 2.2, nous pouvons remplacer Pr[Tn = 1] etPr[Tn = 0] par leur valeur, 0.5.

2.3.2 Construction de Sw

Par observation de la Fig. 2.2, nous pouvons voir que, pour constater la convergence,l’observation d’une seule realisation de Zn n’est pas suffisante. En effet, cette valeur fluctuebeaucoup en raison du caractere stochastique de l’algorithme. Pour avoir une mesure plusfiable, nous allons nous baser sur la somme de plusieurs realisations successives de Zn et

nous allons former le processus S(t)w :

S(t)w =

w∑

i=1

Zt+i,

c’est-a-dire la somme de w realisations successives de Zn. L’espace d’etat de S(t)w est donc

w,w + 1, . . . , wTpop.Pour nous debarrasser de l’indice t, nous allons faire l’hypothese suivante :

Hypotese 2.3 On suppose que S(t)w est stationnaire, c’est-a-dire que ses caracteristiques

ne changent pas au cours du temps. Dans ce cas, cela revient a dire que

Pr[S(u)w = j] = Pr[S(v)

w = j], ∀(u, v) ∈ N2,

On peut donc etudier simplement Sw =∑w

i=1 Zi.

Nous allons voir dans la suite, comment nous verifions la pertinence de cette hypothese.Une fois cette hypothese faite, nous pouvons determiner la loi de Sw par recurrence sur laloi conjointe de (Sw, Zw). Nous allons ainsi montrer la propriete suivante :

Propriete 2.1

∀w, Pr[Sw+1 = s, Zw+1 = k] =

Tpop∑

l=1

Pr[Zw+1 = k|Zw = l]Pr[Sw = s− k, Zw = l].

Page 151: Etude des Algorithmes génétiques et application aux

134 Construction d’un critere de pseudo-convergence

DemonstrationInitialisation : w = 1 :

Dans ce cas, la fenetre dans laquelle on fait la somme est seulement de 1, on neregarde qu’une seule realisation de Zn. On en deduit donc que :

Pr[S1 = s, Z1 = k] =

Pr[Z1 = k] si s = k0 si s 6= k

La loi stationnaire de Zn peut etre determinee comme indique au paragraphe 2.1par le premier vecteur propre de la matrice Π dont le calcul a ete detaille auparagraphe 2.3.1.

Recurrence : on suppose la propriete 2.1 vraie pour w, alors :

Pr[Sw+1 = s, Zw+1 = k] = Pr[Sw = s− k, Zw+1 = k]

=

Tpop∑

l=1

Pr[Sw = s− k, Zw+1 = k, Zw = l]

=

Tpop∑

l=1

Pr[Zw+1 = k|Sw = s− k, Zw = l]Pr[Sw = s− k, Zw = l]

=

Tpop∑

l=1

Pr[Xw+1 = k|Xw = l]Pr[Sw = s− k,Xw = l].

Une fois cette loi conjointe determinee, pour avoir la loi marginale, il suffit de faire lasomme sur tous les etats de Zw :

Pr[Sw = s] =

Tpop∑

k=1

Pr[Sw = s, Zw = k].

A ce stade, il est possible de verifier la pertinence de notre hypothese de stationnarite deSw. En effet, nous connaissons l’etat initial de S1 puisqu’au temps initial, Z1 = 1 (il n’ya pas d’antecedent, on ne peut pas avoir garde le meme optimum local). Donc, au debut del’algorithme, S1 = 1. Or, si on calcule la loi stationnaire de S avec les parametres que nousdetaillerons dans l’application, on trouve Pr[S1 = 1] = 0.9264. On peut donc considerer quenotre hypothese de stationnarite n’est pas aberrante.Nous avons deja evoque que la loi de Sw etait construite sous l’hypothese de non conver-gence de l’algorithme (Pr[Tn = 0] > 0), donc, quand l’AG va converger, son comportementva s’eloigner du comportement que nous avons modelise et donc, on va se retrouver dans lesqueues de distribution de Sw. En fait, on s’attend a ce que, quand l’AG converge, la valeurde Sw augmente singulierement par rapport au comportement prevu par la loi determinee.Dans un tel cas, la probabilite pour que Sw prenne la valeur observee va devenir tres faible.Il s’agit donc d’observer cette probabilite pour savoir si l’on doit s’arreter ou non. Rappelonsa nouveau qu’il s’agit d’un critere d’arret qui reflete une pseudo-convergence et qui n’a doncaucune garantie de correspondre a l’optimum global que, de toute facon, on ignorera toujours

Page 152: Etude des Algorithmes génétiques et application aux

2.4 Etude du critere 135

(sauf dans le cas des simulations). Cependant, il permettra au moins de reperer une solutionqui est de grande qualite et en faisant tourner l’AG plusieurs fois on aura une idee du degred’optimalite de cette solution.Voyons maintenant l’effet des differents parametres inherents au critere et les resultats surnotre simulation.

2.4 Etude du critere

2.4.1 Influence des parametres

Etant donnee la construction du critere, nous voyons qu’il depend d’une part des pa-rametres de l’AG (taille de la population, taux de mutation et de croisement, pression deselection) et d’autre part de parametres qui lui sont propres :

– la taille de la fenetre, w,– la probabilite Pr[Tn = 0],– la probabilite Pr[Sw = sobs] a partir de laquelle on considere que la valeur de Sw, sobs

que l’on observe est assez faible pour que l’on puisse decider que l’on est dans unesituation de pseudo-convergence et donc pour laquelle on arrete l’algorithme.

C’est donc l’influence de ces trois parametres que nous allons maintenant etudier. Notonsici, que cette etude peut se faire independamment du probleme d’optimisation sous-jacentpuisqu’il n’intervient pas dans le calcul des lois. Pour les autres parametres, caracteristiquesde l’AG, on considerera dans les paragraphes suivants que Tpop = 50, pm = 0.7, pc = 0.5 etque la pression de selection est telle que le meilleur individu a une probabilite de selectiondeux fois superieure a celle de l’individu de rang median.

Nous allons debuter avec le parametre Pr[Tn = 0]. Rappelons que ce parametre corres-pond a la probabilite pour l’AG de trouver une meilleure solution par rapport a la solutionlocalement optimale. Puisque nous nous placons dans un contexte de non-convergence (pourpouvoir reperer la convergence comme une situation exceptionnelle), il est necessaire quePr[Tn = 1] < 1. De plus, on s’attend a trouver tres rapidement, au cours des generations, dessolutions tres interessantes. On suppose donc que, tres rapidement, la probabilite d’ameliorerl’optimum local devient tres faible. Nous allons etudier cinq valeurs :

Pr[Tn = 0] ∈ 0.5, 0.25, 0.1, 0.05, 0.01

et nous verrons en meme temps l’evolution en fonction de la taille de la fenetre. Les resultatssont presentes dans la Fig. 2.3.

Le critere d’arret represente dans la figure correspond a la valeur de Sw a partir de la-quelle on considere qu’on est en situation de pseudo-convergence et on arrete l’AG. Cettevaleur est rapportee a la valeur maximale du critere, c’est-a-dire wTpop. On observe ainsi unevaleur independante de la valeur de la fenetre qui correspond grossierement a la proportionde la population qui doit etre colonisee par la meilleure solution locale pour qu’on considereque l’on a atteint une pseudo-convergence. On constate que moins on a de probabilite detrouver une meilleure solution, plus cette proportion doit etre grande, ce qui est tout a faitlogique. Cependant, entre Pr[Tn = 0] = 0.5 et Pr[Tn = 0] = 0.01, il y a un ecart maximal(pour w = 3), de 4%, soit une difference de 6 pour S3 si Tpop = 50, ce qui n’est pas tres

Page 153: Etude des Algorithmes génétiques et application aux

136 Construction d’un critere de pseudo-convergence

Fig. 2.3 Evolution du critere d’arret en fonction de la taille de la fenetre et de Pr[Tn = 0].La courbe noire correspond a Pr[Tn = 0] = 0.5, la bleue a Pr[Tn = 0] = 0.25, la jaune aPr[Tn = 0] = 0.1, la rouge a Pr[Tn = 0] = 0.05 et la courbe verte a Pr[Tn = 0] = 0.01.

0 10 20 30 40 500.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

taille fenêtre

prop

ortio

n ar

rêt

important. Cependant, afin de rendre le critere plus severe, c’est-a-dire qu’il faut que le com-portement de Sw s’ecarte vraiment du comportement modelise, on preferera des valeursde Pr[Tn = 0] plutot faibles. Pour la suite, nous avons choisi Pr[Tn = 0] = 0.01.Concernant la taille de la fenetre, on observe dans la Fig. 2.3 des valeurs entre 3 et 50. Ons’apercoit que pour des petites largeurs de fenetre, la taille de la population qui doit etrecolonisee par la solution optimale est tres importante et qu’elle diminue tres rapidement. Apartir d’une fenetre de vingt generations, la diminution ralentit, c’est pourquoi nous avonschoisi dans nos applications d’etudier le critere sur vingt generations.

Etudions enfin le dernier parametre, le seuil Pr[Sw = sobs] a partir duquel on considereque l’on est dans une situation de pseudo-convergence et qui determine la valeur de Sw pourlaquelle on s’arrete. Dans cette etude, nous gardons les memes parametres caracteristiques del’AG et nous choisissons, comme indique dans le paragraphe precedent, Pr[Tn = 0] = 0.01.Les resultats sont presentes dans la Fig. 2.4. Comme dans le cas precedent, l’ecart entre lesdifferentes courbes tend a se reduire quand la taille de la fenetre d’observation augmente. Dememe, la decroissance des courbes diminue quand la fenetre augmente et particulierement apartir d’une taille de fenetre egale a vingt, ce qui confirme le choix indique precedemment.On remarque aussi que, bien que les ecarts entre les seuils soient les memes entre courbessuccessives, l’ecart entre les courbes a tendance a se reduire quand Pr[Sw = sobs] diminue.

Page 154: Etude des Algorithmes génétiques et application aux

2.4 Etude du critere 137

Fig. 2.4 Evolution du critere d’arret en fonction de la taille de la fenetre et de la probabilitePr[Sw = sobs] pour laquelle on arrete l’AG. La courbe bleue correspond a Pr[Sw = sobs] =10−3, la verte a Pr[Sw = sobs] = 10−4, la jaune a Pr[Sw = sobs] = 10−5, la courbe rose aPr[Sw = sobs] = 10−6 et la courbe rouge a Pr[Sw = sobs] = 10−7.

0 10 20 30 40 500

0.05

0.1

0.15

0.2

0.25

0.3

0.35

taille fenêtre

prop

ortio

n ar

rêt

2.4.2 Fixation d’un seuil par une experience

Ces observations ne permettent pas reellement de se donner un seuil. Pour etudier plusprecisement ce parametre, nous allons nous baser sur la simulation decrite dans le para-graphe 2.2.2. Nous avons applique l’AG utilisant l’approche decrite au paragraphe 2.2.1.1plusieurs fois successivement au jeu de donnees simule et nous avons observe l’evolutionde S20. Les resultats obtenus sont presentes dans la Fig. 2.5. Si on arrete l’AG quandPr[Sw = sobs] ≤ 10−3 (cela correspond a sobs = 56 pour Tpop = 50), on s’arrete trop totdans la moitie des cas, dans le cas d’un arret pour Pr[Sw = sobs] ≤ 10−4 (sobs = 67), onmanque l’optimum global dans deux des six essais. A partir de Pr[Sw = sobs] ≤ 10−5, onne fait plus d’erreur pour ces six essais. Nous avons donc choisi, dans un premier temps, defaire plus d’essais pour Pr[Sw = sobs] ≤ 10−5. Nous avons donc realise 100 essais et nousavons obtenu le vrai optimum global dans 91 cas. Ceci est tres satisfaisant, d’autant quepour les cas ou l’optimum n’est pas atteint, un seul des individus est mal affecte pour huitdes neuf cas concernes. On a donc obtenu un optimum tres proche de l’optimum global. Onpourrait tout a fait, pour eviter ces erreurs, choisir un seuil plus petit mais cela impliqueraitforcement un temps de pseudo-convergence plus long pour un gain, en terme d’efficacite,assez restreint. Nous avons donc choisi de nous arreter a Pr[Sw = sobs] ≤ 10−5.

Page 155: Etude des Algorithmes génétiques et application aux

138 Construction d’un critere de pseudo-convergence

Fig. 2.5 Evolution de S20 pour six applications de l’AG du paragraphe 2.2.1.1 aux donneessimulees. Le trait vertical indique la generation pour laquelle l’optimum global est apparupour la premiere fois dans chaque essai.

0 50 100 150 2000

50

100

150

200

250

300

350

génération

S20

Essai 1

0 50 100 150 2000

20

40

60

80

100

120

140

160

180

200

générations

S20

Essai 2

0 50 100 150 2000

20

40

60

80

100

120

générations

S20

Essai 3

0 50 100 150 2000

50

100

150

générations

S20

Essai 4

0 50 100 150 2000

50

100

150

200

250

300

générations

S20

Essai 5

0 50 100 150 2000

20

40

60

80

100

120

générations

S20

Essai 6

Page 156: Etude des Algorithmes génétiques et application aux

2.4 Etude du critere 139

2.4.3 Application a d’autres AG

Une fois les differents parametres choisis, nous avons applique le critere obtenu a l’AGcorrespondant a la deuxieme approche (paragraphe 2.2.1.2). L’interet de cette deuxieme ap-proche est qu’elle utilise un mode d’optimisation tout a fait different. En fait, la convergenceest beaucoup plus rapide avec cette methode et nous allons donc voir si notre critere d’arrets’adapte a ce changement.En fait, si on repete l’algorithme cent fois comme precedemment, on retrouve la solutionoptimale dans 100% des cas. Et si on etudie le nombre de generations necessaires a laconvergence, alors qu’en moyenne, il fallait plus de mille generations dans l’approche 1, iln’en faut plus que 30, ce qui est tres proche du minimum autorise car l’algorithme ne peuts’arreter en moins de generations que la taille de la fenetre (c’est-a-dire 20 generations). Lecritere s’adapte donc a differentes vitesses de convergence.

Pour tester plus profondement l’adaptativite de notre nouveau critere, nous l’avonsegalement applique a un AG completement different, celui que nous avons presente au pa-ragraphe 1.5 qui concerne la recherche de pics discriminants en SELDI-TOF. Dans ce cas,le calcul de la fitness est completement different de l’AG precedent et son evolution dans lapopulation ne peut donc pas etre la meme. Afin de pouvoir connaıtre l’efficacite de notrecritere avec certitude, nous avons simule un jeu de donnees.Rappelons que, dans cette application, les donnees que l’on entre dans l’AG correspondent aune matrice qui contient les differents pics en colonnes et les individus (les spectres) en ligne.Nous avons choisi de simuler cent pics et 60 individus. Les individus sont repartis en deuxgroupes de meme effectif. Les donnees sont telles que l’on peut atteindre un pourcentagede bien classes de 100% en utilisant trois pics. Les autres pics ne contiennent que du bruit.L’objectif est de donc de retrouver en sortie de l’AG les trois pics interessants avec des seuilsadaptes. Comme pour les essais precedents, nous avons applique l’AG cent fois et etudier lasolution finale obtenue au moment de l’arret par le critere. Finalement, 91% des essais ontmene a la bonne solution. Encore une fois, on pourrait ameliorer ce resultat en prenant uneprobabilite d’arret plus faible mais la pseudo-convergence serait bien plus longue. De plus,les 9% qui n’ont pas donne la solution optimale en etaient tout de meme tres proches enterme de fitness. Le critere est donc egalement efficace pour un autre AG.

2.4.4 Limites

Nous avons vu, d’apres l’hypothese 2.2 que nous negligions la probabilite d’apparitionde nouvelles solutions optimales, de meme valeur que la solution optimale courante, parapplication des operateurs de mutation et de croisement, devant la probabilite de disparition,par ces memes operateurs, des solutions optimales deja existantes. Dans les AG que nousvenons d’etudier, cette hypothese tient mais il existe des cas pour lesquels, il est impossiblede faire cette hypothese.

2.4.4.1 Cas 1 : peu de possibilites ou beaucoup de solutions equivalentes

Dans un cas ou l’espace des solutions serait de petite dimension, par mutation et/ou croi-sement, on aurait une forte probabilite de retrouver la solution localement optimale a partird’une autre solution. Cependant, on utilise generalement les AG pour des cas ou l’espace des

Page 157: Etude des Algorithmes génétiques et application aux

140 Construction d’un critere de pseudo-convergence

solutions est de tres grande dimension et ce cas doit donc pouvoir etre evite.Cependant, on observerait le meme phenomene si de nombreuses solutions differentes obte-naient la meme fitness. En effet, nous avons vu que nous comptons le nombre de solutions quiont la valeur localement optimale, peu importe que ce soit exactement les memes ou qu’ellessoient simplement equivalentes. Dans un tel cas, on augmenterait egalement la probabilitede faire apparaıtre de nouvelles solutions de fitness egale a la fitness optimale locale. Parexemple, on peut se trouver dans cette situation si la fitness correspond a un pourcentage debien classes et que l’on a peu d’individus a classer. Par exemple, s’il y a vingt individus, lafitness ne pourra prendre que vingt valeurs quelle que soit la dimension de l’espace des solu-tions. Dans un tel cas, la modelisation de Zn ne sera pas realiste et le critere d’arret ne pourrapas etre applique. Notons que nous avons toujours construit des fitness qui contenaient aumoins deux termes, ce qui reduit les risques d’avoir beaucoup de solutions equivalentes.

2.4.4.2 Cas 2 : initialisation non aleatoire

Nous avons vu au paragraphe 1.2 de la partie 1 que l’initialisation d’un AG peut se faireselon deux grands types de methodes : l’initialisation aleatoire et l’initialisation dirigee. Dansle cas de l’initialisation aleatoire, il n’y a pas de probleme pour le critere. En revanche, sil’initialisation est dirigee et que les solutions de la population initiale sont toutes identiquesou presque, la probabilite d’obtenir plusieurs fois la meme solution de facon independante apartir de deux solutions identiques est evidemment bien plus elevee que si toutes les solutionsde depart sont differentes ou presque. Rappelons que l’on utilise generalement les AG dans lecas d’espaces des solutions de grande dimension et que l’on a donc peu de chance de genereraleatoirement plusieurs fois la meme solution dans la population initiale. Le cas d’une ini-tialisation dirigee ne se prete donc pas a l’utilisation du critere que nous avons construit.

Pour revenir aux cas auxquels nous avons applique le critere, pour ce qui est de la classifi-cation non supervisee, dans l’approche 1, on avait, pour chaque solution 80 loci qui pouvaientprendre 10 valeurs differentes, la dimension de l’espace des solutions est donc tres impor-tante. Quant a la fitness, elle porte sur le nombre de groupes, qui est certes limite, mais aussisur la somme des distances intra-groupes moyennes qui, elle, peut prendre de nombreusesvaleurs. Enfin, l’initialisation est aleatoire. Cette application remplit donc bien les conditionsd’application du critere.Quant a la recherche de pics discriminants en SELDI, nous avons vu au paragraphe 1.2 quela taille de l’espace des solutions est colossale. Pour la fitness, nous combinons le pourcentagede bien classes (qui prend autant de valeurs differentes qu’il y a de spectres) et le nombrede pics utilises, ce qui represente un nombre de possibilites assez important. Enfin, l’initiali-sation est a nouveau aleatoire. On a donc, une fois de plus, reuni les conditions necessairesa une bonne utilisation du critere d’arret que nous avons construit.

2.4.5 Conclusion

Les exemples precedents nous ont permis de montrer que le critere

Sn < sth,

ou sth est le seuil determine, est tres efficace. Il est evident que les hypotheses simplificatricesque nous avons du faire ne permettent pas de l’appliquer a tous les AG. De plus, nous avons

Page 158: Etude des Algorithmes génétiques et application aux

2.4 Etude du critere 141

eu besoin d’une application pour pouvoir determiner le seuil. Cependant, les developpementstheoriques que nous avons montres permettent de mieux comprendre le fonctionnement dece critere meme s’ils ne recouvrent pas exactement la realite.C’est precisement cet ecart entre le modele et la realite qui nous conduit a devoir considererune probabilite tres faible pour l’arret de notre algorithme. En effet, si on considere l’hy-pothese 2.2, il est evident que, dans certains cas, de nouvelles solutions dont la fitness estegale a celle de l’optimum local peuvent apparaıtre parmi les autres solutions. C’est no-tamment le cas quand un optimum avait commence a coloniser la population et qu’il a etedepasse par une autre solution. Dans une telle situation, la meme solution est presente enplusieurs exemplaires et certaines peuvent evoluer dans le meme sens pour donner la memesolution ou des solutions de meme valeur. C’est pourquoi nous avons tendance, par le modele,a sous-estimer le nombre d’occurrences de la meilleure solution courante. Par consequent, sion s’arretait a une probabilite plus elevee (0.01 par exemple), le modele aurait l’impressionque l’on a deja atteint une colonisation importante. Pourtant, cette colonisation est duea l’apparition d’autres occurrences par mutation/selection, il faut donc atteindre une plusgrande valeur pour Sn pour que cela corresponde a l’envahissement predit par le modele.De meme, pour avoir une vraie estimation de Pr[Tn = 0], il faudrait avoir des informationsprecises sur la fonction que l’on optimise et tenir compte de l’evolution de l’optimum. Or,la plupart du temps, dans les applications, on n’a aucune idee des proprietes de la fonctionoptimisee. Tout critere qui prendrait en compte les caracteristiques de cette fonction seraitdonc inutilisable. Mais, on perd evidemment de l’information qui pourrait etre interessante.

Finalement, on voit bien que les hypotheses faites sont simplificatrices et qu’elles nepermettent pas de tenir compte de tous les elements de l’AG. Mais, elles permettent d’avoirune idee assez precise de ce fonctionnement et l’utilisation de plusieurs applications nous apermis de finaliser le critere et de montrer son adaptabilite et sa efficacite, a l’interieur deslimites que nous avons citees. Il semble donc que le critere que nous avons construit realiseun bon compromis entre fondement theorique et applicabilite.

Page 159: Etude des Algorithmes génétiques et application aux

142 Construction d’un critere de pseudo-convergence

Page 160: Etude des Algorithmes génétiques et application aux

Chapitre 3

De l’acceleration de la convergence

3.1 Presentation

La proposition faite dans ce paragraphe decoule de l’observation suivante. Dans le casou un optimal local s’est installe pendant plusieurs generations et que son nombre d’occur-rences dans la population devient important, si un nouvel optimum apparaıt, il aura du mala s’imposer dans la population. En effet, surtout pres de la convergence, l’ancien optimum abeaucoup de chances d’avoir une valeur juste inferieure a celle du nouveau. Il aura donc desrangs tres proches, ce qui, en termes de probabilite de selection, se traduit par une tres legeredifference. D’autant plus que la probabilite globale de selection de l’optimum precedent estmultipliee par le nombre d’occurrences de cette solution. C’est pourquoi le nombre d’occur-rences du nouvel optimum aura du mal a augmenter.Ce phenomene peut avoir d’importantes consequences sur la convergence de l’algorithme,notamment dans le cadre de l’application du critere de convergence construit dans le para-graphe precedent. Pour proposer une solution a ce probleme, nous sommes retournes a labiologie afin d’essayer de voir s’il existait une analogie a ce phenomene et si la nature avaittrouve une solution.A nouveau, il est possible de trouver une similitude dans l’histoire de l’evolution des especes.En effet, on sait qu’au-dela des phenomenes de mutation/croisement/selection, d’autresphenomenes ont des consequences sur les apparitions/disparitions d’especes. Parmi ceux-ci, on trouve les grandes catastrophes. Pour exemple, nous prendrons la plus connue d’entretoutes, celle qui marque la limite entre l’ere secondaire et l’ere tertiaire, celle qui a vu la dis-parition des dinosaures. A la fin du secondaire, les dinosaures etaient des animaux dominantssur terre qui limitaient le developpement d’autres groupes, comme les mammiferes. Une foisque les dinosaures se sont eteints (par l’une ou l’autre des multiples causes actuellementproposees. . .) les mammiferes (et beaucoup d’autres groupes) ont eu le champ libre pourse developper. Certaines qualites leur ont permis de resister a la crise, ils etaient donc, encela, mieux adaptes que les dinosaures et la crise a permis de faire s’exprimer cet avantage.Notons que cette theorie a connu de tres recentes remises en question (Bininda-Emonds etal., 2007), mais nous laisserons de cote ces polemiques qui depassent le cadre de notre etude.Revenons a nos AG, nous nous trouvons exactement dans le meme cas : des individus tres bienadaptes (au sens de la fitness) ne peuvent exprimer leur avantage en raison de la suprematied’autres individus bien adaptes. Pour resoudre le probleme, nous allons donc simuler unepisode d’extinction. Plus precisement, nous allons, de temps en temps, laisser la possibilitede detruire les individus dont le nombre d’occurrences est le plus grand et les remplacer par

143

Page 161: Etude des Algorithmes génétiques et application aux

144 De l’acceleration de la convergence

Tab. 3.1 Nombre moyen de generations necessaires a la convergence pour l’application al’AG pour les k-means dans le cas de l’AG simple et de l’AG avec catastrophe pour k = 1,2 et 3.

sans cata k = 2 k = 3 k = 4nb generations 135 113 121 105

les individus localement optimaux.Ce phenomene a evidemment des consequences sur le deroulement de l’AG, c’est pourquoi,a chaque fois que l’on appliquera la catastrophe, on remettra a zero les compteurs de laconvergence. Pour cela, on reinitialise la variable aleatoire Sw a sa valeur minimum, c’est-a-dire w (la taille de la fenetre). On ignore donc ce qui s’est passe avant la catastrophe maisce n’est pas genant puisqu’on sait que la dependance entre les valeurs successives de Zn neporte que sur l’etape precedente.

3.2 Application

Nous avons applique cette idee a l’algorithme introduit dans le paragraphe 2.2.1.2, celuiqui realise une sorte de k-means ou l’AG gere le nombre et la position des centres de groupes.Nous avons repris le meme type simulation que precedemment et applique notre algorithmecent fois de suite. A chaque iteration, le jeu de donnees est simule a nouveau, on trouvedonc des jeux de donnees legerement differents d’une etape a l’autre. Pour chaque jeu dedonnees simule, on applique l’AG decrit dans le paragraphe 2.2.1.2 et le meme algorithmeauquel on ajoute des catastrophes aleatoires. Pour gerer la frequence des ces catastrophes,nous avons genere un nombre entre 0 et 1 et si ce nombre etait inferieur a 1/(k × w). Ilsemble en effet que w, la taille de la fenetre est une bonne base pour definir la frequence descatastrophes. En effet, il ne semble pas raisonnable de prevoir des catastrophes qui seraientplus frequentes que la taille de la fenetre. Nous avons donc, pour chaque simulation, faittourner l’algorithme avec catastrophe pour k ∈ 2, 3, 4. Nous avons enregistre le nombre degenerations necessaires a la convergence dans chaque cas, les resultats sont donnes dans laTab. 3.1.Les resultats obtenus nous permettent difficilement de faire un choix quant a la frequencenecessaire. On peut tout de meme remarquer que c’est pour k = 4 que l’on obtient, enmoyenne, le plus petit nombre de generations necessaires a la convergence. En tous cas,on voit nettement une diminution du nombre de generations necessaires lorsqu’on introduitles evenements de catastrophe. Il semble donc que ce processus soit tout a fait favorable al’acceleration de la convergence.Finalement, on constate que les phenomenes naturels peuvent apporter certaines solutions.Il peut donc etre profitable, lorsqu’on rencontre un probleme au niveau de l’algorithme, dechercher s’il n’existe pas de probleme analogue dans la nature et comment l’obstacle a etefranchi. Il est bien evident que cette technique ne peut pas resoudre tous les problemes maiselle peut apporter certaines idees fructueuses.

Page 162: Etude des Algorithmes génétiques et application aux

Conclusion

Nous allons tout d’abord dresser un bilan des conclusions qui ont pu apparaıtre au coursde ce travail.

Dans la premiere partie, nous avons presente une sorte d’etat de l’art des AG. Son ob-jectif etait de permettre une bonne comprehension de ces methodes et non de cette methodecar nous avons vu qu’il n’existait pas un mais bien plusieurs AG. C’est cette richesse et sesconsequences que nous avons voulu exposer dans cette partie.

Dans le premier chapitre, nous avons considere la mise en place d’un AG et nous avonsvu que l’on peut distinguer cinq grandes etapes : le codage, l’initialisation, la mutation, lecroisement et la selection. Nous pouvons deduire de cette presentation qu’il existe de tresnombreuses possibilites, pour la moindre etape. Malheureusement, on possede rarement uncritere qui pourrait nous dire, a coup sur, quel choix effectuer, quel que soit le contexte d’ap-plication. Il est donc necessaire d’avoir une connaissance d’un bon nombre de possibilites desorte a choisir, pour chaque cas, la ou les solutions les mieux adaptees. Suivant l’application,on privilegiera la rapidite, la precision ou l’adaptabilite. En tous cas, il est tres souhaitablede faire les choix en connaissance de cause.Nous l’avons vu, rien n’a permis (et ne permettra sans doute jamais), de prouver une hy-pothetique superiorite des AG sur d’autres methodes d’optimisation. Ce qui leur apporte lesucces, c’est essentiellement le fait que l’on puisse les adapter pour tenir compte, au mieux,des contraintes de l’application. Ces remarques peuvent rebuter certains mais l’effort estreellement payant. De plus, il existe certains principes assez simples. Par exemple, nousavons choisi de realiser un codage reel (et non binaire) car cela nous semble plus adaptepour des problemes optimisant de nombreux parametres. On obtient des chromosomes pluscourts et cela permet d’interpreter chaque etape, notamment les mutations.

Nous avons ensuite evoque les resultats existants sur la modelisation des AG et leur uti-lisation pour obtenir des resultats de convergence. Bien que de tels efforts aient ete faits desl’introduction des AG, il semble que c’est l’introduction d’une modelisation grace aux chaınesde Markov qui ait permis un grand pas en avant a la comprehension des AG. Ces methodesont l’avantage d’etre tout a fait adaptees au fonctionnement des AG mais egalement celui detraıner dans leur sillage de tres nombreux resultats theoriques. On peut les appliquer auxAG plus ou moins directement afin d’en deduire certaines proprietes theoriques.Ces efforts de modelisation ont permis une bien meilleure comprehension des mecanismes quisous-tendent les AG. Cela pourrait ainsi permettre leur diffusion plus large et faire, peu a peu,disparaıtre les a priori negatifs qui considerent les AG comme des boıtes noires mysterieuses.Par ailleurs, si les resultats obtenus permettent de comprendre les raisons des succes des AG,

145

Page 163: Etude des Algorithmes génétiques et application aux

146 Conclusion

ils expliquent egalement certains echecs (comme les problemes de convergence) et permettentsouvent d’y remedier. Cependant, bien que ces modelisations aient permis de franchir l’etapenecessaire qui consistait a theoriser les AG, les consequences pratiques de ces efforts ne sontpas aussi importantes que l’on aurait pu s’y attendre. Ceci est particulierement vrai pour lesresultats de convergence.

Le dernier chapitre de cette premiere partie nous a permis d’introduire les principauxrepresentants de la famille des metaheuristiques. Une famille haute en couleur dans laquelleon voit passer des fourmis, des recuits, des mutants,. . . Pour chacune des methodes presentees,il existe de nombreuses variantes, comme nous l’avons montre pour les AG au debut de cettepartie. Ce que nous avons presente est une sorte de socle commun qui rassemble ces va-riantes. Nous avons essaye, dans la mesure du possible, de faire une presentation unifiee deces methodes de sorte a mettre en evidence leurs points communs.Mais notre apport principal dans ce domaine est la proposition d’une nomenclature pour per-mettre de realiser une comparaison assez precise des divers algorithmes. L’objectif n’en estabsolument pas de faire ressortir telle ou telle methode comme superieure ou, au contraire,inefficace. Comme pour le premier chapitre, son objectif est de donner des outils de connais-sance pour permettre un eventuel choix plus eclaire. En effet, les criteres que nous avonsretenus nous semblent constituer les principaux elements qui decrivent le mode de fonc-tionnement des algorithmes et donc les plus importants pour connaıtre leur applicabilite achaque probleme d’optimisation.Nous n’avons pas (ou peu) applique les autres methodes proposees, mais notre experience desAG nous laisse penser qu’une certaine expertise est egalement necessaire pour realiser uneapplication efficace de telle ou telle methode. Cependant, etant donnes les nombreux pointscommuns entre algorithmes, il nous semble qu’une fois que l’on maıtrise une des methodesla prise en mains des autres algorithmes doit etre beaucoup plus rapide. Rappelons ici qu’iln’existe pas de methode qui soit meilleure que les autres de facon universelle. Les succesrencontres par telle ou telle methode viennent generalement d’une bonne maıtrise de l’outilet d’un reel effort d’adaptation au probleme d’optimisation pose.

Dans la deuxieme partie, nous nous sommes essentiellement interesses a l’applicationconcrete des AG a deux types de donnees provenant du domaine de la proteomique, disci-pline dont nous esperons avoir convaincu notre lecteur de l’utilite. Cette partie avait deuxobjectifs, le but premier etait de proposer aux biologistes des outils performants et adaptes aleurs donnees qui leur apportent une reelle valeur par rapport aux methodes existantes. Ceciest passe par la mise en place de methodes statistiques originales totalement independantesde la mise en œuvre des AG. Dans un deuxieme temps, cette partie avait pour objectifde montrer au lecteur la necessite d’une adaptation minutieuse de chaque etape de l’AG achaque problematique.

La premiere application concernait les donnees de spectrometrie de masse SELDI. L’ob-jectif etait de trouver des proteines (correspondant a des pics a l’interieur des spectres) quisoient caracteristiques de telle ou telle condition biologique. Il s’agissait donc d’un choix devariables dans le cadre d’un probleme de discrimination. Pour cette application, nous avonsmis au point une methode de traitement du signal (extraction des pics et alignement desspectres).Cependant, l’essentiel de notre travail a porte sur la conception d’une methode de discri-

Page 164: Etude des Algorithmes génétiques et application aux

Conclusion 147

mination. Cette methode a ete concue de sorte a etre mieux adaptee aux caracteristiquesdes donnees. Les consequences de la tres grande variabilite des donnees d’intensite ont etereduites par une binarisation des donnees. Pour cela, nous avons defini un seuil d’intensitequi etait optimise a l’interieur de l’AG. La taille generalement reduite des echantillons nous aconduits a utiliser les informations de differents pics simultanement et non sequentiellementcomme dans les arbres de classification. Enfin, comme les experiences biologiques confrontentsouvent plus de deux conditions, nous avons utilise la technique du pairwise coupling pouretendre notre methode de discrimination a plus de deux groupes.La methode a ete appliquee a deux jeux de donnees. Le premier est un classique de lalitterature, certes controverse, mais qui nous a permis de comparer nos resultats avec ceuxde nombreuses autres methodes. Les pics que nous avons selectionnes comme discriminantsavaient deja ete reperes par les autres methodes mais la combinaison que nous avons obtenueetait tout a fait originale et efficace. La methode a egalement ete appliquee a des donneesoriginales, les resultats ont beaucoup interesse les biologistes qui isolent actuellement lesproteines correspondantes pour les etudier plus profondement.Dans le cadre de la spectrometrie et du choix de variables, nous avons egalement mis aupoint un AG pour la recherche de longueur d’ondes discriminantes pour des donnees despectrometrie Proche Infra-Rouge. La demande provenait d’un industriel. Les resultats ontete valides en laboratoire et publies.

La deuxieme application concernait la deuxieme grande technique utilisee en proteomique :l’electrophorese en deux dimensions. Le probleme consistait a aligner les spots de differentsgels. La encore, il a ete necessaire de tenir compte des differentes caracteristiques des donnees.Tout d’abord, il etait connu qu’une transformation globale n’etait pas adequate, il fallait doncrealiser plusieurs transformations locales. Nous avons choisi d’utiliser des landmarks qui nousont permis d’avoir quelques points de reperes ainsi qu’une grille (sous forme de cellules deVoronoı) pour diviser les gels en cellules elementaires. Puisque l’on utilise des landmarks, laforme et la position des cellules sont adaptees a chaque gel (ce qui n’est pas le cas quandon divise le gel en rectangles, comme cela est fait habituellement). Un alignement global aete realise et les resultats obtenus, notamment l’erreur commise apres alignement, ont servia definir des zones homogenes dans lesquelles une transformation locale a ete definie.Nous avons tenu a mettre au point une methode qui ne se base pas sur un gel de reference. Eneffet, la definition d’un gel de reference (qu’il s’agisse d’un des gels choisi plus ou moins au ha-sard ou d’un gel construit) empeche l’appariement de spots qui ne seraient pas presents dansle gel de reference mais dans plusieurs autres gels. Etant donne que l’on cherche generalementa aligner des gels provenant de differentes conditions biologiques, on s’attend a avoir de nom-breuses apparitions/disparitions de spots dont on risque de manquer une partie avec un gel dereference. Nous avons donc concu une extension de la methode Procuste generalisee qui per-met d’aligner plusieurs tableaux de points dont on ne connaıt pas l’appariement a l’avance.Les resultats obtenus sur un jeu de donnees reel a permis de constater que, bien que l’on n’aitimpose aucune contrainte, les differentes transformations locales sont tout a fait coherentesentre elles. On constate une continuite d’une zone a l’autre ce qui montre la pertinence dudecoupage et des transformations trouvees. Les resultats des appariements ont ete validespar le biologiste qui etait a l’origine des donnees et sont beaucoup plus complets que lesresultats obtenus avec les logiciels habituellement utilises.

Dans la derniere partie, nous nous sommes interesses a la convergence des AG. Cette

Page 165: Etude des Algorithmes génétiques et application aux

148 Conclusion

propriete est fondamentale tant du point de vue pratique que theorique. C’est pourquoi nousavons cherche a obtenir des resultats sur ces deux plans. En effet, les resultats theoriquessont generalement tres complets et precis mais les informations necessaires a leur utilisationpratique ne sont generalement pas disponibles. Cependant, ces resultats sont indispensablespour justifier l’usage de telles methodes. En ce qui concerne la pratique, les utilisateurs secontentent generalement d’utiliser des criteres empiriques tels qu’un nombre maximum degenerations ou une evolution non significative de la fitness moyenne dans les populations.Malheureusement, ces criteres doivent etre reevalues pour chaque nouvelle application. C’estpourquoi nous avons cherche a concilier ces deux points de vue.

Le premier chapitre etait consacre a l’extension des resultats de convergence pour les AGavec elitisme obtenus par Bhandari et al. (1996). Ce chapitre a permis de montrer commenton pouvait faire entrer les AG dans le cadre des chaınes de Markov et comment on pouvaits’en servir. En effet, la modelisation directe des populations des AG est extremement com-plexe, le nombre de populations est, le plus souvent, colossal, conduisant a un espace d’etatde tres grande dimension, difficile a gerer. Nous avons evoque dans cette partie une facon dereduire la dimension de l’espace des solutions en regroupant les etats qui, du point de vuede la convergence, sont equivalents. Pour ce faire, les populations sont tout d’abord reduitesa la meilleure valeur de fitness que l’on trouve parmi leurs individus puis regroupees parvaleurs de fitness equivalentes.Notre apport dans ce domaine a consiste a etendre les resultats au cas d’une chaıne de Mar-kov non homogene et a des mutations dirigees. Pour ce qui concerne la non homogeneite,l’objectif etait de pouvoir inclure dans les resultats un taux de mutation variable qui peutpermettre de controler la convergence. On autorise une large exploration de l’espace dessolutions au debut de l’algorithme puis une diminution du taux de mutation permet a lapopulation de converger. On peut aussi envisager une reaugmentation du taux de mutationa la fin de l’AG pour lui permettre de sortir d’un eventuel optimum.Nous avons egalement introduit l’idee de mutation dirigee qui consiste a pouvoir choisir untype de mutation par individu au cours d’une etape. Dans les resultats de Bhandari et al.(1996), chaque locus avait la meme probabilite de mutation ce qui permettait de s’assurerque l’on puisse passer de n’importe quelle solution a n’importe quelle autre en n’importe quelnombre donne de generations. Cependant, on peut vouloir diriger les mutations en definissantdes grands types de mutation et en appliquant une seule mutation pour un meme individuau cours d’une etape. Par exemple, dans le cadre du SELDI, dans un comite, nous autorisonsl’algorithme a ajouter un pic, a supprimer un pic ou a modifier un seuil, de facon exclusive.Cela permet d’introduire certaines priorites dans les mutations obtenues. En revanche, ilest impossible, dans ce cas, de pouvoir obtenir n’importe quelle solution a partir de n’im-porte quelle autre en n’importe quel nombre donne de generations. Nous avons etendu lademonstration a notre cas en montrant qu’il suffisait de pouvoir obtenir n’importe quellesolution a n’importe quelle autre en un nombre fini de generations.Pour remplir cette condition, les contraintes sont beaucoup plus laches : il suffit d’avoir definison operateur de mutation de sorte a ce que tous les changements existants soient possibles,ce qui semble etre une propriete minimale a imposer pour construire un operateur de mu-tation. Nous avons demontre que la convergence etait toujours valide pour ces cas, ce quipermet d’envisager des AG plus souples et donc plus a meme d’etre adaptes precisement adifferentes problematiques.

Page 166: Etude des Algorithmes génétiques et application aux

Conclusion 149

Le chapitre suivant a eu pour but la construction d’un critere de convergence auxbases theoriques fortes mais dont l’application ne devrait pas necessiter des informationsgeneralement indisponibles. Pour cela, nous avons recouru au nombre d’occurrences de l’op-timum local au cours des generations. En effet, un bon optimum est cense coloniser la popu-lation. Nous avons donc modelise le nombre d’occurrences de la meilleure solution courantepar une chaıne de Markov qui tient uniquement compte des parametres de l’AG et de soncomportement quand il n’a pas encore converge. Le critere ne necessite pas d’informationsur la fonction que l’on est en train d’optimiser ce qui rend son utilisation independante duprobleme d’optimisation. La modelisation nous a permis de donner les formules de calcul desprobabilites de transition de cette chaıne. A partir de ces resultats, et a l’aide d’une formulede recurrence que nous avons demontree, nous avons pu determiner la loi d’une somme derealisations successives de cette chaıne. C’est finalement cette loi que nous avons utiliseepour proposer un critere d’arret de l’algorithme.Le critere ne necessite la determination que de trois parametres : le nombre de generationssuccessives que l’on considere, la probabilite de non convergence et la probabilite pour la-quelle on souhaite arreter l’AG. Ces parametres ont l’avantage d’etre immediatement in-terpretables, on sait exactement a quoi ils correspondent. Nous avons montre dans le detailcomment ces parametres ont ete fixes et quelle est leur influence sur les resultats de conver-gence. Le prix a payer est evidemment que l’on ne peut etre sur que l’optimum final estglobal. En revanche, on a la garantie d’obtenir une solution tres interessante et plusieursapplications de l’AG permettent de tester l’adaptativite de cet optimum.Nous avons egalement defini les limites de l’application de ce critere. Ces limites imposentcertaines contraintes quant a l’initialisation de l’AG et ecartent les applications pour les-quels on a trop de solutions equivalentes ou pour lesquelles la fitness ne peut prendre qu’unpetit nombre de valeurs differentes. Nous avons choisi plusieurs applications qui se situaientevidemment a l’interieur de ces limites et l’application de ce critere a donne d’excellentsresultats.

Enfin, nous avons voulu donner une solution possible a certains problemes de conver-gence qui sont lies a la colonisation de la population par un optimum local qui empeche,par la suite, la colonisation par un nouvel optimum plus interessant. Cette solution est,une nouvelle fois, inspiree par les phenomenes naturels de l’evolution. Il s’agit de simulerles effets d’une catastrophe comme celle qui a vu la disparition des dinosaures au profitd’autres groupes comme les mammiferes. De plus, nous ne voulions pas que ce procede soitincompatible avec l’utilisation du critere de convergence que nous avons propose. La variablealeatoire, Sw definie precedemment a donc ete reinitialisee a chaque fois que l’on appliqueune catastrophe. D’apres les resultats que nous avons obtenus, on note une acceleration nonnegligeable de la convergence.

Nous esperons avoir montre, au cours de ce travail, les differents aspects des methodesriches et puissantes que sont les AG. Des methodes aux origines tout a fait intuitivesmais aux fondements theoriques maintenant etablis. Meme si cette demarche (intuition puisdemonstration) est certainement la plus courante et la plus fructueuse pour la mise en placede methodes efficaces, il nous semble assez fabuleux d’arriver a modeliser un phenomenenaturel (aux concepts tres simples, meme si les mecanismes en jeu sont extremement sophis-tiques) par une methode aux developpements theoriques si complexes (chaınes de Markov,theorie de Freidlin-Wentzell) avec le succes que l’on a montre. Si on pense en outre, qu’apres

Page 167: Etude des Algorithmes génétiques et application aux

150 Conclusion

etre passes par les raisonnements plus ou moins abstraits des statisticiens, les AG finissentpar venir en aide aux biologiques, on peut considerer que la boucle est bouclee.

Perspectives

Pour ce qui est des limites a l’utilisation des AG, il nous semble qu’il en est une qui peutetre depassee rapidement et qui ne devrait pas rentrer en ligne de compte, c’est le temps decalcul. En effet, toutes les methodes que nous avons mises au point ont ete programmees enlangage R ou Matlab. Les fonctions ecrites sont diffusables mais, pour ne pas alourdir le ma-nuscrit, nous ne les avons pas jointes. On pourrait certainement diminuer considerablementles temps de calculs en utilisant des langages comme C ou Fortran. De meme, l’utilisationd’ordinateurs plus puissants que ceux que nous utilisons permettrait un reel gain de temps.Nous pensons donc que le temps de calcul ne devrait pas etre un critere de rejet des AG d’au-tant qu’ils ne sont pas toujours tres longs. De plus, les applications pour lesquelles nous lesavons utilises peuvent se permettre de prendre du temps. L’alignement des gels par exempleprendra toujours moins de temps que les jours de travail qu’il faut au biologiste pour lesaligner a la main.Toujours dans un souci de meilleure diffusion des AG il serait certainement necessaired’implementer les methodes concues dans des logiciels facilement utilisables par des non-specialistes. En effet, en les englobant dans des boıtes a outils, une fois que la problematiquea bien ete etudiee, il est tout a fait possible, pour les biologistes, d’appliquer ces methodesa de nouveaux jeux de donnees en ne jouant que sur un nombre minimal de parametres.Des interfaces graphiques et des explications concretes de chacun des parametres utilisesdevraient permettre une telle utilisation.En ce qui concerne les perspectives plus statistiques, il nous semble qu’il reste encore de nom-breuses possibilites d’exploration, notamment, pour permettre la mise en place de criteresde convergence reellement utilisables. Cette notion de critere de convergence nous sembleprimordiale, c’est sans doute l’aspect le plus limitant actuellement pour la diffusion des AG.Nous avons essaye d’y contribuer mais nous avons egalement montre les limites du critereque nous avons construit. Ces limites sont probablement difficiles a depasser dans le cadred’un critere qui se veut independant du probleme d’optimisation. Mais, il est certainementpossible de poursuivre dans ce sens, notamment en prenant en compte au fur et a mesurede l’AG les informations que l’on acquiert au cours des generations sur la fitness. En effet, iln’est generalement pas envisageable d’avoir une information precise a priori concernant lesdonnees. Cependant, au fur et a mesure des generations, on peut certainement se servir de cequi se passe dans les populations pour apprendre des informations sur la fitness. Cela nouspermettrait de realiser une modelisation plus precise qui s’adapterait a chaque probleme.Enfin, le cas de l’ajout efficace de la catastrophe, presente dans le dernier chapitre, peutegalement laisser entrevoir d’autres possibilites dans l’insertion dans les AG de phenomenesqui ont fait leurs preuves dans la nature. Bien sur de tels ajouts necessiteraient, a leur tour,des etudes theoriques, mais nous avons vu combien cet effort peut etre payant. On pourraitpenser, par exemple, a construire des sous-populations qui evolueraient independammentavant de se rejoindre. Cela permettrait sans doute d’augmenter la probabilite d’atteindrel’optimum global.Bref, meme si les AG sont des methodes que l’on pourrait considerer comme vieillottes (ellesdatent tout de meme de 1975), nous pensons qu’il existe encore beaucoup de chemins pro-metteurs a explorer, tant d’un point de vue theorique que pour les domaines d’application.

Page 168: Etude des Algorithmes génétiques et application aux

Conclusion 151

Nous sommes certains qu’un tel progres ne peut passer que par une etroite collaborationentre theoriciens et appliques et par une large diffusion des resultats obtenus dans les deuxdomaines.

Page 169: Etude des Algorithmes génétiques et application aux

152 Conclusion

Page 170: Etude des Algorithmes génétiques et application aux

BibliographieAarts, E.H.L. & van Laarhoven, P.J.M. (1985) Statistical cooling : A general Approach to

combinatorial optimization problems. Phillips Journal of Research, 40, 193-226.

Aarts, E.H.L. & Korst, J. (1989) Simulated Annealing and Boltzmann Machines : A Sto-chastic Approach to Combinatorial Optimization and Neural Computing. John Wiley &Sons, Chichester, England.

Alexe, G., Alexe, S., Liotta, L.A., Petricoin, E., Reiss, M. & Hammer, P.L. (2004) Ovariancancer detection by logical analysis of proteomic data. Proteomics, 4, 766-783.

Antonisse, J. (1989) A New Interpretation of Schema Notation that Overturns the BinaryEncoding Constraint. Proceedings of the Third International Conference on GAs, MorganKaufmann, Publishers.

Baggerly, K.A., Morris, J.S., Wang, J., Gold D., Xiao, L.-C. & Coombes, K.R. (2003) Acomprehensive approach to the analysis of matrix-assisted laser desorption/ionization-time of flight proteomics spectra from serum samples. Proteomics, 3(9), 1667-1672.

Baker, J.E. (1987) Reducing bias and inefficiency in the selection algorithm. In : Grefens-tette, J.J. (Ed.) Proceedings of the 2nd International Conference on Genetic Algorithms,Lawrence Erlbaum Associates, Hillsdale, New jersey, 14-21.

Barker, M. & Rayens, W. (2003) Partial Least Squares for discrimination. Journal of Che-mometrics, 17,166-173.

Bauchart, C., Remond, D., Chambon, C., Patureau Mirand, P., Savary-Auzeloux, I., Reynes,C. & Morzel M. (2006) Small peptides (¡5 kDa) found in ready-to-eat beef meat. MeatScience, 74, 658-666.

Bhandari, D., Murthy, C.A. & Pal, S.K. (1996) Genetic algorithm with elitist model andits convergence. International Journal of Pattern Recognition and Artificial Intelligence,10(6), 731-747.

Bininda-Emonds, O.R.P., Cardillo, M., Jones, K.E., MacPhee, R.D.E., Beck, R.M.D., Gre-nyer, R., Price, S.A., Vos, R.A., Gittleman, J.L. & Purvis, A. (2007) The delayed rise ofpresent-day mammals. Nature, 446, 507-512.

Breiman, L., Friedman, J., Olshen, R. & Stone, C. (1984) Classification and regression trees,Wadsworth/Brooks/Cole, Monterey.

Bremermann, H.J. (1962) Optimization through Evolution and Recombination, SpartanBooks, San Francisco, CA.

Cerf, R. (1994) Une theorie asymptotique des algorithmes genetiques, These de doctorat,Universite Montpellier II.

153

Page 171: Etude des Algorithmes génétiques et application aux

154 BIBLIOGRAPHIE

Cerf, R. (1996a) The dynamics of mutation-selection algorithms with large population sizes.Annales de l’Institut Henri Poincare, Probabilites et Statistiques, 32(4), 455-508.

Cerf, R. (1996b) A new genetic algorithm. Annals of Applied Statistics, 6(3), 778-817.

Ciphergen ProteinChip R© Software, Version 3.1 (2002), Ciphergen Biosystems, Freemont,CA, USA.

Commandeur, J.J.F. (1991) Matching configurations, Leiden, The Netherlands : DSWOPress.

Coombes, K.R., Fritsche, H.A., Clarke, C., Chen, J.-N., Baggerly, K.A., Morris, J.S., Xiao, L.-C., Hung, M.-C. & Kuerer, H.M. (2003) Quality Control and Peak Finding for ProteomicsData Collected from Nipple Aspirate Fluid by Surface-Enhanced Laser Desorption andIonization. Clinical Chemistry, 49(10), 1615-1623.

Darwin, C.R. (1859) On the Origin of Species by means of Natural Selection or the Preser-vation of Favoured Races in the Struggle for Life, John Murray, London.

Davenport, A., Tsang, E.P.K., Wang, C.J. & Zhu, K. (1994) GENET : a connectionist archi-tecture for solving constraint satisfaction problems by iterative improvement. Proceedings12th National Conference for Artificial Intelligence (AAAI), 325-330.

Davis, L. (1991) Handbook of Genetic Algorithms, Van Nostrand Reinhold, New York.

Davis, T.E. & Principe, J.C. (1993) A Markov chain framework for the simple genetic algo-rithm. Evolutionary Computation, 1, 269-288.

Dawkins, R. (1995) River out of Eden, Basic Books, New York.

De Jong, K.A. (1975) An analysis of the behaviour of a class of genetic adaptive systems,Doctoral Dissertation, University of Michigan, Ann Arbor, Michigna.

De Jong, K.A. (1992) Are genetic algorithms function optimizers ? In : Manner, R. & Man-derick, B. (Eds.) Parallel Problem-Solving from Nature, 2, Elsevier Science Publishers,Amsterdam, 3-13.

Dijksterhuis, G. & Gower, J.C. (1991) The interpretation of generalized Procrustes analysisand allied methods. Food Quality and Preference, 3, 67-87.

DiMatteo, I., Genovese, C.R. & Kass, R.E. (2001) Bayesian curve-fitting with free-knotsplines. Biometrika Trust, 88, 1055-1071.

Dorigo, M. & Di Caro, G. (1999) The Ant Colony Optimization meta-heuristic. In : Corne,D., Dorigo, M. & Glover, F. (eds.), New Ideas in Optimization. McGraw Hill, London,11-32.

Dorigo, M., Di Caro, G. & Gambardella, L.M. (1999) Ant algorithms for discrete optimiza-tion. Artificial Life, 5(2), 137-172.

Duda, R., Hart, P. & Strok, D. (2001) Pattern classification and scene analysis, John Wileyand Sons, New York.

Page 172: Etude des Algorithmes génétiques et application aux

BIBLIOGRAPHIE 155

Eshelman, L.J., Caruana, R.A. & Schaffer, J.D. (1989) The CHC adaptive search algorithm :How to hava safe search when engaging in nontraditional genetic recombination. In :Rawlins, G.J.E. (Ed.) Foundations of Genetic Algorithms, Morgan Kaufmann, San Mateo,CA, 265-283.

Faigle, U. & Kern, W. (1992) Some convergence results for probabilistic Tabu Search. ORSAJournal on Computing, 4, 32-37.

Feo, T.A. & Resende, M.G.C. (1989) A probabilisstic heuristic for a computationally difficultset covering problem. Operations Research Letters, 29, 330-341.

Feo, T.A. & Resende, M.G.C. (1995) Greedy Randomized Adaptive Search procedures. Jour-nal of Global Optimization, 6, 109-133.

Figueres G., Andrieu E., Letourneux S., Biesse J.P & B. Vidal (2004) Near infrared spectro-scopy and pattern recognition as screening methods for classification of commercial tobaccoblends. Congres de Chimiometrie, Paris, France, 30 Novembre & 1er Decembre 2004.

Fogarty, T.C. (1989) Varying the probability of mutation in the genetic algorithm. In :Schaffer, J.D. (Ed.) Proceedings of the third Internation Conference on Genetic Algorithms,Morgan Kaufmann, Los ALtos, CA, 104-109.

Fogel, L.J. (1963) Biotechnology : Concepts and Applications, Prentice-Halls, EnglewoodCliffs, NJ.

Fogel, L.J., Owens, A.J. & Walsh, M.J. (1966) Artifical Intelligence through Simulated Evo-lution, John Wiley, New York.

Fogel, D.B. (1998) Evolutionary Computation : The Fossil Record, IEEE Press, Piscataway,NJ.

Fortune, S. (1987) A Sweepline Algorithm for Voronoi Diagrams. Algorithmica, 2, 153-174.

Fraser, A.S. (1962) Simulation of genetic systems, Journal of Theoretical Biology, 2, 329-346.

Freidlin, M.I. & Wentzell, A.D. (1984) Random perturbations of dynamical systems, Springer-Verlag, New York.

Friedman, J. H. (1984) A variable span scatterplot smoother. Laboratory for ComputationalStatistics, Stanford University Technical Report No. 5.

Gendreau, M. (2003) An introduction to tabu search. In : Glover, F. & Kochenberger, G.A.(eds.), Handbook of metaheuristics, Kluwer’s International Series, 37-54.

Gidas, B. (1985) Non stationary markov chains and convergence of the annealing algorithm.Journal of Statistical Physics, 39, 73-131.

Glover, F. (1986) Future paths for integer programming and links to artificial intelligence.Computers and operations research, 13, 533-549.

Glover, F. (1998) A template for scatter search and path relinking. In : Hao, J.-K., Lutton,E., Ronald, E., Schoenauer, M. & Snyers, D. (eds.), Artificial evolution, Lecture Notes inComputer Science 1363, Springer, 3-51 Klose.

Page 173: Etude des Algorithmes génétiques et application aux

156 BIBLIOGRAPHIE

Glover, F. & Hanafi, S. (2002) Tabu Search and Finite Convergence. Discrete Applied Ma-thematics, 119, 3-36.

Glover, F., Laguna, M. & Marti, R. (2003) Scatter search and path relinking : advances andapplications. In : Glover, F. & Kochenberger, G.A. (eds.), Handbook of metaheuristics,Kluwer’s International Series, 1-35.

Goldberg, D.E. (1985) Optimal initial population size for binary-coded genetic algorithms,TCGA Report 85001, University of Alabama, Tuscaloosa.

Goldberg, D.E. (1989a) Sizing populations for seria and parallel genetic algorithms. In :Schaffer, J.D. (Ed.) Proceedings of the third International Conference on Genetic Algo-rithms, Morgan Kaufmann, San Mateo, CA, 70-79.

Goldberg, D.E. (1989b) Genetic Algorithms in Search, Optimization and Machine Learning,Addison-Wesley, Reading, Massachussetts.

Goldberg, D.E., Deb, K. & Clark, J.H. (1992) Genetic algorithms, noise and the sizing ofpopulations. Complex Systems, 6, 333-362.

Gower, J.C. (1975) Generalized Procrustes Analysis. Psychometrika, 40, 33-51.

Green, B.F. (1952) The orthogonal approximation of an oblique structure in factor analysis.Psychometrika, 17, 429-440.

Green, P.J. (1995) Reversible jump Markov Chain Monte Carlo computation and bayesianmodel determination. Biometrika, 82, 711-732.

Gustafsson, J.S., Blomberg, A. & Rudemo, M. (2002) Warping two-dimensional electropho-resis gel images to correct for geometric distorsions of the spot pattern. Electrophoresis,23, 1731-1744.

Gutjahr, W.J. (2002) ACO algorithms with guaranteed convergence to the optimal solution.Information Processing Letters, 82, 145-153.

Hanafi, S. (2001) On the convergence of Tabu Search. Journal of Heuristics, 7(1), 47-58.

Hancock, P.J.B. (1994) An empirical comparison of selection methods in evolutionary algo-rithms. In : Fogarty, T.C. (Ed.) Evolutionary Computing : AISB Workshop, Leeds, UK,April 1994 ; Selected Papers, Springer-Verlag, Berlin, 80-94.

Hancock, P.J.B. (1996) Selection methods for evolutionary algorithms. In : Chambers, L.(Ed.) Practical Handbook of Genetic Algorithms : New Frontiers, Vol. II, CRC Press,Boca Raton, FL, 67-92.

Hastie, T., Tibshirani, R. & Friedman, J. (2001) The Elements of Statistical Learning, DataMining, Inference and Prediction, Springer-Verlag, New York.

Henderson, D., Jacobson, S.H. & Johnson, A.W. (2003) The theory and practice of simula-ted annealing. In : Glover, F. & Kochenberger, G.A. (eds.), Handbook of metaheuristics,Kluwer’s International Series, 287-319.

Page 174: Etude des Algorithmes génétiques et application aux

BIBLIOGRAPHIE 157

Hilario, M., Kalousis, A., Muller, M. & Pellegrini, C. (2003) Machine learning approaches tolung cancer prediction from mass spectra. Proteomics, 3(9), 1716-1719.

Holland, J.H. (1975) Adaptation in Natural and Artificial Systems, University of MichiganPress, Ann Arbor, Michigan.

Hurley, J.R. & Cattell, R.B. (1962) The Procrustes Program : Producing direct rotation totest a hypothesized factor structure. Behavioural Science, 7, 258-262.

James, P. (1997) Protein identification in the post-genome era : the rapid rise of proteomics.Quarterly review of biophysics, 30, 279-331.

Janikow, C.Z. & Michalewicz, Z. (1991) An experimental comparison of binary and floatingpoint representations in genetic algorithms. In : Belew, R.K. & Booker, J.B. (Eds.), Pro-ceedings of the Fourth International Conference Genetic Algorithms, Morgan Kaufmann,San Mateo, 31-36.

Jeffers, J.N.R. (1967) Two case studies in the application of principal component analysis.Applied Statistics, 16, 225-236.

Jeffries, N.O. (2004) Performance of a genetic algorithm for mass spectrometry proteomics.BMC Bioinformatics, 5(180).

Jong, K., Marchiori, E. & van der Vaart, A. (2004) Analysis of proteomic pattern data forcancer detection. Lecture Notes in Computer Science, 3005, 41-51.

Kaczmarek, K., Walczak, B., de Jong, S. & Vandeginste, B.G. (2004) Preprocessing of two-dimensional gel electrophoresis images. Proteomics, 4, 2377-2389.

Klose, J. (1975) Protein mapping by combined isoelectric focusing and electrophoresis : atwo-dimensional technique. Humangenetik, 26, 231-234.

Kristof, W. (1970) A theorem on the trace of certain matrix products and some applications.Journal of Mathematical Psychology, 7, 515-530.

Kristof, W. & Wingersky, B. (1971) Generalization of the orthogonal Procrustes rotationprocedure for more than two matrices. In : Proceedings of the 79th annual convention ofthe American psychological association, p.89-90.

Le, R., Hino, M. & Ezzo, M. (2005) How antiquated statistics can overcome showy youth.Journal of Adequate Statistic Methods, 18(5).

Leardi, R. (2000) Application of genetic algorithm-PLS for feature selection in spectral datasets. Journal of Chemometrics, 14, 643-655.

Lee, K.R., Lin, X., Park, D.C. & Eslava, S. (2003) Megavariate data analysis of mass spectro-metric proteomics data using latent variable projection method. Proteomics, 3(9), 1680-1686.

Liu, H., Li, J. & Wong, L. (2002) A comparative study on feature selection and classificationmethods using gene expression profiles and proteomic patterns. Genome Informatics, 13,51-60.

Page 175: Etude des Algorithmes génétiques et application aux

158 BIBLIOGRAPHIE

Lohr, S.L. (1999) Sampling : Design and Analysis, Duxbury Press, Pacific Grove, CA.

Lundy, M. & Mees, A. (1986) Convergence of an annealing algorithm. Mathematical Pro-gramming, 34, 111-124.

Mardia, K.V., Kent, J.T., Bibby, J.M. (1979), Multivariate Analysis, Academic Press, Lon-don.

Marengo, E., Robotti, E., Gianotti, V., Righetti, P.G., Cecconi, D., Domenici, E. (2003)A new integrated statistical approach to the diagnostic use of two-dimensional maps.Electrophoresis, 24, 225-236.

McKay, M.D., Conover, W.J. & Beckman, R.J. (1979) A comparison of three methods forselecting values of input variables in the analysis of output from a computer code. Tech-nometrics, 21, 239-245.

Michalewicz, Z. (1992) Genetic Algorithms + Data Structure = Evolution Programs,Springer-Verlag, Berlin.

Mitra, D., Romeo, F. & Sangiovanni-Vincentelli, A. (1986) Convergence and finite timebehavior of simulated annealing. Advances in Applied Probability, 18, 747-771.

Mladenovic, N. (1995) A Variable neighborhood algorithm - a new metaheuristic for combi-natorial optimization. In : Abstracts of papers presented at Optimization Days, Montreal,p.112.

Mladenovic, N. & Hansen, P. (1997) Variable neighborhood search. Computers OperationsResearch, 24, 1097-1100.

Monod, J. (1970) Le Hasard et la Necessite. Le seuil, Paris, p.155.

Mulenbein, H. & Schlierkamp-Voosen, D. (1994) The science of breeding and its applicationto the breeder genetic algorithm. Evolutionary computation, 1, 335-360.

Muri-Majoube, F. & Prum, B. (2002) Une approche statistique de l’analyse des genomes.La Gazette des Mathematiciens, 89, 63-98.

Naes, T. & Mevik, B.-H. (2001) Understanding the collinearity problem in regression anddiscriminant analysis. Journal of Chemometrics, 15,413-426.

Nix, A.E. & Vose, M.D. (1992) Modelling genetic algorithms with Markov chains. Annals ofMathematics and Artificial Intelligence, 5, 79-88.

O’Farrell, P.H. (1975) High resolution two-dimensional electrophoresis of proteins. Journalof Biological Chemistry, 250, 4007-4021.

Peck, C.C. & Dhawan, A.P. (1995) Genetic algorithms as global random search methods :An alternative perspective. Evolutionary Computation, 3, 39-80.

Peng, T., Jian, M. & Zhiping, F. (1997) A stochastic tabu search strategy and its globalconvergence. IEEE International conference on Computational Cybernetics and Simula-tions, 1, 410-414.

Page 176: Etude des Algorithmes génétiques et application aux

BIBLIOGRAPHIE 159

Petricoin, E.F., Ardekani, A.M., Hitt, B.A., Levine, P.J., Fusaro, V.A., Steinberg, S.M., Mills,G.B., Simone, C., Fishman, D.A., Kohn, E.C. & Liotta, L.A. (2002) Use of proteomicpatterns in serum to identify ovarian cancer. The Lancet, 359, 572-577.

Pittman, J. (2002) Adaptive Splines and Genetic Algorithms. Journal of Computational &Graphical Statistics, 11(3), 615-638.

Potra, F.A. & Liu, X. (2006) Aligning Families of 2D-gels by a Combined Multiresolu-tion Forward-Inverse Transformation Approach. Journal of Computational Biology, 13(7),1384-1395.

Prados, J., Kalousis, A., Sanchez, J.-C., Allard, L., Carrette, O. & Hilario, M. (2004) Miningmass spectra for diagnosis and biomarker discovery of cerebral accidents. Proteomics, 4(8),2320-2332.

Qu, Y., Adam, B.-L., Yasui, Y., Ward, M.D., Xazares, L.H., Schellhammer, P.F., Feng, Z.,Semmes, O.J. & Wright, G.L. (2002) Boosted Decision Tree Analysis of Surface-enhancedLaser Desorption/Ionization Mass Spectral Serum Profiles Discriminates Prostate Cancerfrom Noncancer Patients. Clinical Chemistry, 48(10), 1835-1843.

R Development Core Team (2004). R : A language and environment for statistical compu-ting. R Foundation for Statistical Computing, Vienna, Austria. ISBN 3-900051-07-0, URLhttp ://www.R-project.org.

Radcliffe, N.J. & Surry, P.D. (1995) For mae and the variance of fitness. In : Whitley, D. &Vose, M. (Eds.), Foundations of the Genetic Algorithms 3, Morgan Kaufmann, San Mateo,CA, 51-72.

Rechenberg, I. (1973) Evolutionsstrategie : Optimierung technischer Systeme nach Prinzipender biologischen Evolution, Frommann-Holzboog Verlag, Stuttgart. (2nd Edition 1993).

Rees, J. & Koehler, G.J. (1999) An investigation of GA performance results for differentcardinality alphabets. In : Davis, L.D., De Jong, K.A., Vose, M.D. & Whitley, L.D.(Eds.) Evolutionary algorithms : IMA Volumes in Mathematics and its Applications, 111,Springer-Verlag, New-York, 191-206.

Reeves, C.R. (1994) Genetic algorithms and neighbourhood search. In : Fogarty, T.C.(Ed.) Evolutionary Computing : AISB Workshop, Leeds, UK, April 1994 ;Selected Papers.Springer-Verlag, Berlin.

Reeves, C.R. (1995) A genetic algorithm for flowshop sequencing. Computers & Operationsresearch, 22, 5-13.

Reeves, C.R. (2000) Fitness landscapes and evolutionary algorithms. In : Fonlupt, C., Hao,J.K., Lutton, E., Ronald, E. & Schoenauer, M. (Eds.) Artificial Evolution : 4th EuropeanConference ; Selected Papers. Springer-Verlag, Berlin, 3-20.

Reeves, C.R. & Rowe, J.E. (2003) Genetic algorithms - Principles and perspectives, A guideto GA theory, Kluwer Academic Publishers, London.

Page 177: Etude des Algorithmes génétiques et application aux

160 BIBLIOGRAPHIE

Reynes, C., de Souza, S., Sabatier, R., Figueres, G., Vidal, B. (2007a) Selection of dis-criminant wavelength intervals in NIR spectrometry with genetic algorithms. Journal ofChemometrics, 20, 136-145.

Reynes, C., Roche, S., Tiers, L., Sabatier, R., Jouin, P., Molinari, N. & Lehmann, S. (2007b)Comparison between surface and bead based MALDI profiling technologies using a singlebioinformatics algorithm. Clinical Proteomics (sous presse).

Rogers, M., Graham, J. & Tonge, R.P. (2003) Statistical models of shape for the analysis ofprotein spots in two-dimensional electrophoresis gel images. Proteomics, 3, 887-896.

Rousson, V. & Gasser, T. (2003), Some Case Studies of Simple ComponentAnalysis. Department of Biostatistics, University of Zurich. (Available fromhttp ://www.unizh.ch/biostat/Manuscripts/.)

Rousson, V. & Gasser, T. (2004) Simple Component Analysis. Applied Statistics, 53, 539-555.

Rudolph, G. (1997) Convergence properties of Evolutionary Algorithms. Verlag Dr. Kovac,Hamburg, Germany.

Salmi, J., Aittokallio, T., Westerholm, J., Griese, M., Rosengren, A., Numan, T.A., Lahes-maa, R. & Nevalainen, O. (2002) Hierarchical grid transformation for image warping inthe analysis of two-dimensional gel electrophoresis. Proteomics, 2, 1504-1515.

Schonemann, P.H. & Carroll, R.M. (1970) Fitting one matrix to another under choice of acentral dilatation and a rigid motion. Psychometrika, 35, 245-256.

Schwefel, H.-P. (1977) Numerische Optimierung von Computer-modellen mittels der Evo-lutionsstrategie, Birkhauser Verlag, Basel. (English edition : Numerical Optimization ofComputer Models, John Wiley & Sons, Chichester, 1981).

Shapiro, J.L., Prugel-Bennett, A. & Rattray, M. (1994) A statistical mechanics formulationof the dynamics of genetic algorithms. Lecture Notes in Computer Science., 865, 17-27.

Smilansky, Z. (2001) Automatic registration for images of two-dimensional protein gels.Electrophoresis, 22, 1616-1626.

Sorace, J.M. & Zhan, M. (2003) A data review and re-assessment of ovarian cancer serumproteomic profiling. BMC Bioinformatics, 4(24).

Stadler, P.F. & Wagner, G.P. (1998) Algebraic theory of recombination spaces. EvolutionaryComputation, 5, 241-275.

Stewart, W.J. (1995) Introduction to the numerical solution of Markov Chains, PrincetonUniversity Press, Princeton.

Ten Berge, J.M. (1977) Orthogonal procrustes rotation for two or more matrices. Psycho-metrika, 42, 267-276.

Tenenhaus, M. (1998) La Regression PLS, Theorie et Pratique, Technip, Paris, 1998.

Page 178: Etude des Algorithmes génétiques et application aux

BIBLIOGRAPHIE 161

Thomas, E.V. (1994) A primer on multivariate calibration. Analytical Chemistry, 66, 795-804.

Tibshirani, R., Hastie, T., Narasimhan, B., Soltys, S., Shi, G., Koong, A. & Le, Q.-T. (2004)Sample classification from protein mass spectrometry, by peak probability contrasts. Bio-informatics, 20(17), 3034-3044.

Tsang, E.P.K., Wang, C.J., Davenport, A., Voudouris, C. & Lau, T.L. (1999) A family ofstochastic methods for constraint satisfaction and optimisation. Proceedings of the FirstInternational Conference on The Practical Application of Constraint Technologies andLogic Programming (PACLP), London, 359-383.

van Laarhoven, P.J.M. & Aarts, E.H.L. (1987) Simulated Annealing : Theory and Applica-tions. D. Reidel, Kluwer Academic Publishers, Dordrecht, Boston, Norwell, Massachusetts.

Veeser, S. Dunn, M.J. & Yang, G.Z. (2001) Multiresolution image registration for two-dimensional gel electrophoresis. Proteomics, 1, 856-870.

Vines, S.K. (2000) Simple Principal Components. Applied Statistics, 49, 441-451.

Vose, M.D. (1988) Generalizing the notion of schema in genetic algorithms. Artificial Intel-ligence, 50, 385-396.

Voss, T. & Haberl, P. (2000) Observations on the reproducibility and matching efficiencyof two-dimensional electrophoresis gels : consequences for comprehensive data analysis.Electrophoresis, 21, 3345-3350.

Wagner, M., Naik, D. & Pothen, A. (2003) Protocols for disease classification from massspectrometry data, Proteomics, 3, 1692-1698.

Wang, X. & Feng, D.D. (2005) Hybrid registration for two-dimensional gel protein images.In : Yi-Ping Phoebe Chen & Limsson Wong (eds.), Proceedings of 3rd Asia-Pacific Bio-informatics Conference, 17-21 January 2005, Singapore, Imperial College Press, London.

Watson, J.D & Crick, F. (1953) A Structure for Deoxyribose Nucleic Acid. Nature, 171,737-738.

Whitney, D. (1989) The GENITOR algorithm and selection pressure : Why ranked-basedallocation of reproductive trials is best. In : Schaffer, J.D. (Ed.) Proceedings of the 3rdInternational Conference on Genetic Algorithms, Morgan-Kaufmann, Los Altos, CA 116-121.

Wolpert, D.H. & Macready, W.G. (1997) No free lunch theorems for optimization. IEEETransactions on Evolutionary Computation, 1, 67-82.

Wu, T.-F., Lin, C.-J. & Weng, R.C. (2004) Probability estimates for multi-class classificationby pairwise coupling. Journal of Machine Learning Research, 5, 975-1005.

Yasui, Y., Pepe, M.S., Thompson, M.L., Adam, B.-L., Wright, G.L., Qu, Y., Potter, J.D.,Winget, M., Thornquist, M. & Feng, Z. (2003) A data-analytic strategy for protein bio-marker discovery : profiling of high-dimensional proteomic data for cancer detection. Bio-statistics, 4(3), 449-463.

Page 179: Etude des Algorithmes génétiques et application aux

162 BIBLIOGRAPHIE

Ycart, B. (2002) Modeles et algorithmes markoviens, Mathematiques et Applications, 39,Springer, Berlin, 270p.

Zhu, W., Wang, X., Ma, Y., Rao, M., Glimm, J. & Kovach, J.S. (2003) Detection of cancer-specific markers amid massive mass spectral data. Proceedings of the National Academyof Sciences, 100(25), 14666-14671.