REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE Ministère de l’Enseignement Supérieur et de la Recherche Scientifique Université des Sciences et de la Technologie d’Oran -Mohamed BoudiafFaculté des Sciences Département d’Informatique Thèse de Magister Spécialité : Informatique Option : Modélisation, Optimisation et Evaluation des Performances des Systèmes (MOEPS) Présenté par : MERAD BADR MÉTAHEURISTIQUES ET ANALYSE DE DONNÉES MEDICALES Soutenu le 03/01/2012 / / à 9h00 à la salle de soutenances Devant le jury composé de Présidente: Dr. FIZAZI IZABATEN Hadria Maître de conférences A -USTO Rapporteur : Dr. BELKADI Khaled Maître de conférences A -USTO Examinateur: Dr. RAHAL Sid Ahmed Maître de conférences A -USTO Examinatrice: Dr. MEKKI Rachida Maître de conférences A -USTO 2012 2011 Remerciements Je remercie tout d’abord Allah le tout puissant pour le courage et la volonté qu’il m’a donné pour arriver à bout de ce travail. Ce mémoire a été réalisé au sein du laboratoire «Modélisation, Optimisation et Evaluation des Performances des Systèmes » du département informatique, Université des Sciences et de la Technologies d’Oran. Je tiens à remercier toutes les personnes qui ont contribué de manière directe ou indirecte à l’aboutissement de ce travail. J’exprime tout particulièrement mes remerciements et respects à Dr. BELKADI Khaled, mon directeur et encadreur pour sa disponibilité. Son écoute et ses conseils qui m’ont été toujours précieux, sa confiance, son investissement scientifique et humain ont été essentiels à la réalisation de ce travail. Je veux adresser tous mes remerciements à Dr. FIZAZI IZABATEN Hadria, qui m’a fait l’honneur de présider le jury. J’exprime également ma gratitude à Dr RAHAL Sid Ahmed et Dr. MEKKI Rachida, qui ont accepté d’examiner ce travail et de me faire l’honneur de participer au jury. Résumé Dans ce travail on s'intéresse à la classification de datasets médicales en utilisant un système immunitaire artificiel (SIA). On propose une amélioration de l'algorithme "AIRS" de Watkins qui présente deux faiblesses: La première est le fait que l'activation de cellules mémoires dans AIRS se fait par un seul antigène (qui peut présenter des données bruitées). Ce mémoire présente une méthode pour activer les cellules par groupe d'antigènes homogènes. La deuxième faiblesse est le fait qu'AIRS ne test que les cellules mémoires sollicitées par des antigènes. On propose une méthode pour tester toutes les cellules mémoires et détruire celles qui ne sont plus capable de défendre le système. Les résultats expérimentaux montrent une amélioration de la précision de classification d'AIRS ainsi qu'une réduction (plus de 50%) des données utilisées pour la classification après apprentissage. Mots clés: Analyse de données médicales, classification, système immunitaire artificiel, antigène, mémoire immunitaire. Abstract In this work we focus on the classification of medical datasets using an artificial immune system (AIS). We propose an improvement of the Watkins’s algorithm "AIRS" who has two weaknesses: One is the fact that the activation of memory cells in AIRS is done by a single antigen (which may represent noisy data). This paper presents a method to activate the cells by homogeneous antigen group. The second weakness is the fact that AIRS does not test all memory cells. We propose a method to test all the memory cells and destroy those that are no longer capable of defending the system. Experimental results show an improvement classification accuracy of AIRS and reduction (over 50%) of the data used for classification after learning. Keywords: medical data analysis, classification, artificial immune system, antigen, immune memory. Table des matières Introduction générale……………………………………………………………………….. 1 Chapitre I :Le système immunitaire naturel……………………………………….………3 I.1 Introduction .................................................................................................................... 4 I.2 Les différents types d'immunité ..................................................................................... 5 I.2.1 Le système immunitaire inné ................................................................................... 5 I.2.2 Le système immunitaire adaptatif ............................................................................ 5 I.3 Les Organes du système Immunitaire ............................................................................ 6 I.3.1 Organes lymphoïdes primaires................................................................................. 6 I.3.1.1 Moelle osseuse (MO) ......................................................................................... 6 I.3.1.2 Thymus............................................................................................................... 6 I.3.2 Les Organes lymphoïdes secondaires....................................................................... 7 I.4 Les cellules du système immunitaire ............................................................................. 7 I..4.1 Cellules lymphoîdes (L) ........................................................................................... 8 I.4.1.1 Le récepteur des lymphocytes B (BCR)............................................................. 9 I.4.1.2 Le récepteur des lymphocytes T (TCR) ............................................................. 9 I.5 Sélection clonale (Clonal selection) ............................................................................... 9 I.5.1 Activation des lymphocytes T.................................................................................. 9 I.5.2 Activation des lymphocytes B................................................................................ 10 I.6 La mémoire immunitaire .............................................................................................. 10 I.7 La maturation de l’affinité............................................................................................ 11 I.8 Détection du soi et du non soi ...................................................................................... 11 I.8.1 La sélection positive............................................................................................... 11 I.8.2 La délétion clonale (sélection négative des lymphocytes B) ................................. 12 I.8.3 La sélection négative des lymphocytes T............................................................... 12 I.9 La théorie du réseau immunitaire................................................................................. 12 I.10 La théorie du danger..................................................................................................... 13 I.11 Les étapes d’une réaction immunitaire......................................................................... 13 I.11.1 Pénétration de l’antigène ........................................................................................ 13 I.11.2 Réaction inflammatoire .......................................................................................... 14 I.11.3 La réponse immunitaire.......................................................................................... 14 I.11.3.1 La réponse primaire.......................................................................................... 14 I.11.3.2 Réponse secondaire et suivantes ...................................................................... 14 I.12 Caractéristiques du système immunitaire..................................................................... 15 I.13 Conclusion.................................................................................................................... 16 ChapitreII: Le système immunitaire artificiel………………………...…...………...……18 II.1 Introduction .................................................................................................................. 19 II.2 Représentation et affinité ............................................................................................. 20 II.3 Les algorithmes du système immunitaire artificiel ...................................................... 21 II.3.1 La sélection négative .............................................................................................. 21 II.3.2 La sélection positive............................................................................................... 22 II.3.3 Domaine d’application de la sélection négative et positive ................................... 22 II.3.4 La sélection clonale ................................................................................................ 23 II.4 Les réseaux immunitaires artificiels............................................................................. 24 II.5 La théorie du danger..................................................................................................... 25 II.6 Les domaines d'application des AIS............................................................................. 25 II.6.1 La classification...................................................................................................... 26 II.6.2 La sécurité des ordinateurs ..................................................................................... 26 II.6.3 La détection et l'élimination des virus informatiques............................................. 26 II.6.4 Optimisation ........................................................................................................... 27 II.6.5 Robotique ............................................................................................................... 27 II.6.6 Autres domaines d'utilisation ................................................................................. 28 II.7 Conclusion.................................................................................................................... 28 ChapitreIII: Présentation de l'algorithme AIRS.………………………........…..…….…29 III.1 Introduction .................................................................................................................. 30 III.2 Définitions .................................................................................................................... 30 III.3 Tour de l’algorithme..................................................................................................... 32 I.3.1 La phase d’initialisation ......................................................................................... 33 I.3.2 La phase d’Identification de la cellule mémoire et génération des ARBs ............. 34 I.3.3 La phase de Compétition des ressources et développement de la cellule mémoire candidate............................................................................................................................... 36 I.3.4 Introduction de la cellule mémoire......................................................................... 39 I.3.5 Classification .......................................................................................................... 39 III.4 AIRS 2.......................................................................................................................... 40 III.5 Conclusion.................................................................................................................... 40 Chapitre IV: AIRS3: Une amélioration d'AIRS et AIRS2……………………………….41 IV.1 Introduction .................................................................................................................. 42 IV.2 AIRS3........................................................................................................................... 42 IV.3 Conclusion.................................................................................................................... 45 Chapitre V: Etude expérimentale ………………………………………………………….48 V.1 Introduction .................................................................................................................. 48 V.2 Aperçu des bases de données utilisées ......................................................................... 48 V.2.1 Haberman Surgery Survival (HSS) ....................................................................... 48 V.2.2 Liver disorder's (LD)............................................................................................. 49 V.2.3 Travaux anterieurs.................................................................................................. 50 V.3 Présentation de l'application......................................................................................... 50 V.3.1 Présentation logiciel: LD DATASET .................................................................... 51 V.3.2 Présentation logiciel: HSS DATASET .................................................................. 56 V.4 Résultats et interprétations ........................................................................................... 61 V.4.1 Paramétrage ............................................................................................................ 61 V.4.2 Résultats expérimentaux ........................................................................................ 62 IV.4.2.1 Résultats expérimentaux pour la base de données LD.................................... 62 IV.4.2.2 Résultats expérimentaux pour la base de données HSS.................................. 64 V.5 Conclusion.................................................................................................................... 66 Conclusion générale…………………………….......……………………………………….67 Bibliographie………………………………………………………………………………...69 Mes contributions…………………………………………………………………………...73 Liste des tableaux Tableau 1. Caractéristiques de l'ensemble de données HSS …………..…………………….48 Tableau 2. Caractéristiques de l'ensemble de données LD…………………………………..49 Tableau 3. Paramètres d’apprentissage………………………………………………………62 Tableau 4. Comparaison des méthodes de classifications (LD Dataset)…………………….62 Tableau 5. Tableau comparatif pour AIRS, AIRS2 et AIRS3 (LD Dataset)……………...…63 Tableau 6. Comparaison des méthodes de classifications (HSS Dataset)…………………...64 Tableau 7. Tableau comparatif pour AIRS, AIRS2 et AIRS3 (HSS Dataset)……………….65 Liste des figures Figure1. Le système immunitaire naturel…………………………………………………….4 Figure 2. Hiérarchie des cellules…………………………………………………….…….....8 Figure3. Groupes d'Antigènes Homogènes …………………………………………….…....43 Figure 4. Ecran d'accueil ……………………………………………….. ………….……....51 Figure 5. Résultats des tests de classification (AIRS/LD) ………………………….….…..52 Figure 6. Résultats des tests de classification (AIRS2/LD)………………………………...52 Figure 7. Résultats des tests de classification (AIRS3/LD)………………………………...53 Figure 8. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS/LD)……..54 Figure 9. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS2/LD)…....54 Figure 10. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS3/LD)…..55 Figure 11. Interface de classification (AIRS/LD)…………………………………………..56 Figure 12. Résultats des tests de classification (AIRS/HSS)………………………………..57 Figure 13. Résultats des tests de classification (AIRS2/HSS)………………………………57 Figure 14. Résultats des tests de classification (AIRS3/HSS)………………………………58 Figure 15. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS/HSS)……59 Figure 16. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS2/HSS)…..59 Figure 17. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS3/HSS)…..60 Figure 18. Interface de classification (AIRS/HSS)………………………………………….61 Introduction générale Introduction générale L'homme, depuis plusieurs siècles, cherche à recréer artificiellement une copie de lui même. Il inventa d'abord au 18ème siècle les premiers robots, des mécanismes qui reproduisaient toujours les mêmes gestes. Puis se posa la question d'une intelligence qui pourrait animer ces robots : c'est la naissance de l'idée de l'intelligence artificielle (IA). La capacité de s'améliorer avec l'expérience, de devenir meilleur au fil du temps, de se souvenir des décisions et résultats passées afin de faire de meilleurs choix dans l'avenir, dans les mêmes situations, c'est la capacité d'apprendre qui peut être considérée comme une caractéristique fondamentale de l'intelligence humaine. Ceci étant dit, il est peu surprenant que tant de recherches dans le domaine de l'intelligence artificielle (IA) pourrait être qualifiées, d'une manière ou d'une autre, comme recherche sur l'apprentissage machine qui s'intéresse à la question suivante: Comment construire des programmes informatiques qui s'améliorent automatiquement avec l'expérience. Pour construire de tels systèmes capables d'apprendre et de s'améliorer, les chercheurs en informatique se sont intéressés aux systèmes biologiques (cerveau et neurones, comportement des insectes, la génétique,..). Plusieurs méthodes sont développées à partir de ces systèmes on appel ces méthodes "Méthodes bio-inspirées" Les systèmes immunitaires artificiels (SIA) représentent une des approches bioinspirées les plus récentes, ils sont basés sur des métaphores du système immunitaire naturel. AIRS (Artificial Immune Recognition System) est un algorithme SIA connu pour ces bonnes capacités de classification. Dans ce travail on essayera d'améliorer AIRS et appliquer cet algorithme et ces améliorations à la classification de données médicales vu l'importance sociale et aussi à la particularité du défi qu'elle impose. Dans le premier chapitre on présente le système immunitaire naturel et on montre ses capacités d'apprendre et d'évoluer qui présentent un réel intérêt d'un point de vue informatique. Le deuxième chapitre est une présentation des systèmes immunitaires artificiels et des bases de modélisation de ses systèmes. 1 Introduction générale Dans le troisième chapitre on présente les différentes routines d'AIRS ainsi que son amélioration AIRS2. Le quatrième chapitre est une présentation de nos solutions aux faiblesses que présente AIRS. Le cinquième chapitre présente l'application qu'on a développé pour tester AIRS, AIRS2 et notre solution AIRS3 ainsi que les résultats expérimentaux. 2 Chapitre I Le système immunitaire naturel Chapitre I: Le système immunitaire naturel I.1 Introduction Pour maintenir la cohérence de ses cellules et tissus et pour assurer son intégrité en éliminant les substances étrangères auxquelles il est exposé, l’homme utilise un ensemble de mécanismes biologiques, exercés par un réseau d’opérateurs et traitant des informations : le système immunitaire. Le système immunitaire est un système extrêmement complexe dont le rôle est de maintenir l'intégrité de l'individualité biologique d'un être donné, c'est-à-dire le "soi". Ainsi le système immunitaire est capable d'éliminer le "non-soi", encore dénommé antigène, par la mise en oeuvre d'une réponse immunitaire [ROD 04]. C’est un système de défense remarquable par sa capacité d'adaptation, il est composé d'organes, de cellules et de molécules très variées, susceptible de reconnaître et d'éliminer un grand nombre d'éléments étrangers. Dans la suite de ce chapitre nous allons présenter le système immunitaire humain vu ses caractéristiques intéressantes d’une perspective informatique. Figure 1. Le système immunitaire naturel. 4 Chapitre I: Le système immunitaire naturel I.2 Les différents types d'immunité L’immunité a deux composantes: l’immunité naturelle ou innée et l’immunité adaptative. I.2.1 Le système immunitaire inné Le système immunitaire inné est composé d’un ensemble de cellules spécialisées dont le rôle principal est la liaison avec des modèles moléculaires trouvés dans des microorganismes. Cependant, ce système ne peut pas assurer la protection complète du corps. Il est caractérisé par: - Les mécanismes de détection des organismes étrangers sont constants pour les infections répétées [TIM 04]. - La réponse du système immunitaire inné est non spécifique à un type particulier d’intrus mais elle est identique contre tous les pathogènes qui envahissent le corps et elle joue un rôle vital pour l’initialisation et la régularisation de la réponse immunitaire adaptative [KIM 02]. I.2.2 Le système immunitaire adaptatif Le système immunitaire adaptatif est constitué de types différents de cellules dont chacune joue un rôle important. Le rôle central est assuré par les lymphocytes qui sont composés de deux types de cellules : cellule B et cellule T. Le système immunitaire adaptatif est caractérisé par [TIM 04], [KIM 02]: - Le système immunitaire adaptatif s’occupe des intrus qui ne sont pas détectés par le système immunitaire inné. -Le système immunitaire adaptatif est généré dynamiquement contre les organismes étrangers pendant sa durée de vie. Il fournit des mécanismes plus efficaces qui seront adaptés aux changements antigéniques. - Le système adaptatif est adressé à des intrus spécifiques. - La présence d’une mémoire immunologique qui permet aux cellules de se souvenir des intrus déjà rencontrés lors des prochaines rencontres. 5 Chapitre I: Le système immunitaire naturel I.3 Les Organes du système Immunitaire Le système Immunitaire est constitué de nombreux organes et tissus réparatrices dans le corps et sont reliés entre eux par la circulation lymphatique et sanguine. Il existe deux catégories d’organes lymphoïdes selon leurs fonctions: - Les organes lymphoïdes primaires ; dont la fonction est le développement et la maturation des cellules. - Les organes lymphoïdes secondaires : qui sont le lieu des interactions entre l’Ag (Antigène) et les Lymphocytes. I.3.1 Organes lymphoïdes primaires I.3.1.1Moelle osseuse (MO) Toutes les cellules sanguines proviennent de la MO à partir de la cellule souche hématopoïétique (CSH). Ces cellules souches sont très peu nombreuses et ont une propriété de s’autorenouveler, se différencier et de se spécialiser, ainsi va apparaître la cellule progénitrice lymphoïde qui va croître et se différencier dans la MO grâce au microenvironnement et aux facteurs de naissance. Les cellules précurseurs des LT (Lymphocyte T) quittent la MO et vont au thymus. Les cellules précurseurs des LB (Lymphocyte T) restent dans la MO où ils continuent leur maturation, puisque chez l’homme il n’y a pas de Bourse de Fabricius (comme chez les oiseaux). I.3.1.2Thymus C’est un organe dont le développement est indépendant de toute stimulation antigénique, Le thymus recueil les précurseurs de LT qui viennent de la MO, grâce au microenvironnement et hormones thymiques, ces précurseurs subissent une maturation et une multiplication, mais la plupart d’entre eux meurent sur place par apoptose, seul 5% qui quittent le thymus et vont vers les organes périphériques. 6 Chapitre I: Le système immunitaire naturel I.3.2 Les Organes lymphoïdes secondaires Ce sont les lieux de passage, d'accumulation, et de rencontre des antigènes et des cellules de l'immunité. - Les ganglions lymphatiques - La pulpe blanche de la rate - Les MALT (Mucosa-Associated Lymphoid Tissue, en français : "Tissu Lymphoïde Associé aux Muqueuses"). Plus précisément, les organes lymphoïdes secondaires sont des lieux de drainage de la lymphe, en effet lorsque le sang passe dans un capillaire, au début du capillaire celui-ci donne au tissu une partie du liquide plasmatique, tandis qu'à la fin, quasiment la même quantité de liquide est récupérée par le capillaire, du tissu; la quantité de liquide non récupérée est drainée par les vaisseaux lymphatiques qui vont aboucher sur les organes lymphoïdes secondaires, puis ce liquide va revenir vers la circulation veineuse, exactement dans la veine sous-clavière gauche par le canal thoracique, ou pour une autre partie dans la veine sous-clavière droite par le canal lymphatique droit. La fonction des organes lymphoïdes secondaires est d'activer la réponse immunitaire par ce moyen : des antigènes se situant dans le tissu afférent à l'organe lymphoïde périphérique vont migrer dans ce tissu vers cet organe lymphoïde secondaire, soit par le biais du flux de liquide interstitiel, soit à l'intérieur d'une cellule présentatrice d'antigène, ainsi dans le ganglion, la rate ou le MALT en question, les lymphocyte B et T spécifiques de cet antigène pourront être activés et jouer leur rôle soit en diffusant des anticorps dans le liquide extracellulaire, soit en retournant sur le lieu originel de l'antigène et en effectuant une réponse à médiation cellulaire contre les agents contenants l'antigène. I.4 Les cellules du système immunitaire Les cellules qui participent aux réponses immunitaires sont nombreuses, les plus importantes sont: - Les cellules lymphoïdes, qui comprennent : LB, LT et NK (Natural Killer). - Macrophages. - Cellules mononuclées. 7 Chapitre I: Le système immunitaire naturel - Cellules dendritiques. - Granulocytes. Seules LT et LB possèdent les attributs de diversité, spécificité, mémoire, reconnaissance du soi et du non soi. Ce sont les caractéristiques de la réponse immunitaire adaptative, spécifique (acquise). Les autres cellules jouent des rôles accessoires, tel que : - L’activation des lymphocytes. - Facilitation de l’élimination de l’Ag. I.4.1 Cellules lymphoïdes (L) Chez l’adulte, les lymphocytes représentent 20 à 40% des globules blancs ; ces cellules circulent dans le sang, la lymphe, les espaces tissulaires et les organes lymphoïdes périphériques. Les LT et LB au repos, sont de petites cellules mobiles de 6µm de diamètre, morphologiquement identiques, elles sont appelées ; cellules naïves ou vierges. Au contacte de l’Ag les lymphocytes progressent dans le cycle de division cellulaire et deviennent des lymphocytes de 15µm de diamètre, elles se différencient ensuite en cellules effectrices de l’immunités et en cellules mémoires. Les différentes lignées et différentes étapes de maturation et d’activation des lymphocytes peuvent être distinguées grâce à des molécules de membrane appelées classe de différentiation CD. Immunité Adaptative Innée (Acquise) Lymphocytes Macrophage Cellule T Cellule B Figure 2. Hiérarchie des cellules 8 Chapitre I: Le système immunitaire naturel I.4.1.1Le récepteur des lymphocytes B (BCR) Les immunoglobulines (Ig) ou communément appelées anticorps (Ac), sont présentes sur la membrane du lymphocyte B où elles jouent le rôle de récepteur de l’antigène. Lorsqu’elles sont sécrétées par les plasmocytes, elles existent dans les liquides biologiques où elles sont alors les effecteurs de la réponse immunitaire humorale. I.4.1.2Le récepteur des lymphocytes T (TCR) Le TCR est différent du BCR car premièrement il n’existe que sous forme membranaire et pas sous forme soluble. Deuxièmement le TCR n’est pas spécifique de l’antigène seul mais de l’antigène combiné à une molécule du CMH. L’organisation et le réarrangement des gènes du TCR est semblable à ceux des immunoglobulines. On pioche les segments géniques dans des librairies et on les met bout à bout pour former le TCR. I.5 Sélection clonale (Clonal selection) Nous avons vu précédemment que chaque lymphocyte exprime une immunoglobuline ou un récepteur T d’une spécificité quasi-unique. Dans un état d’infection, seul un très petit nombre de lymphocytes porteurs des récepteurs spécifiques du pathogène sera activé, et après s’être divisé, se différenciera en cellules effectrices. En conséquence, tout lymphocyte stimulé par le pathogène donne naissance à une population clonale de cellules qui toutes expriment une immunoglobuline ou un récepteur des cellules T identique à celui de la cellule initiale. Le processus par lequel les pathogènes sélectionnent des clones particuliers de lymphocytes en vue de leur expansion est appelé sélection clonale. I.5.1 Activation des lymphocytes T Dès que le lymphocyte T helper au repos (Th naïf) rentre en contact avec le complexe peptide-CMH de la cellule présentatrice d’antigène, il s’engage dans le cycle de la multiplication cellulaire. Lors de son activation, le Th secrète une cytokine qui se fixe sur la cellule elle même (auto-stimulation), ce qui permet au Th naïf activé de proliférer et de se différencier en un large clone de cellules progénitrices et enfin en cellule Th mémoire et en cellule effectrice. 9 Chapitre I: Le système immunitaire naturel La cellule Th effectrice a pour rôle de sécréter des cytokines et d’aider les lymphocytes B. La cellule Th mémoire qui assure une réactivité du système immunitaire plus élevée lors d’une seconde rencontre avec l’antigène. Une fois activée, par un processus semblable à celui du Th, le lymphocyte T cytotoxique se lie à une cellule cible et la détruit. Il se dissocie de cette cellule et se lie à une autre. Les cellules cibles meurent par apoptose. I.5.2 Activation des lymphocytes B Selon la nature de l’antigène, la cellule B est activée en présence ou pas du lymphocyte T helper. Les antigènes thymo-dépendants nécessitent un contact étroit entre le lymphocyte B et le Th, tandis que les antigènes thymo-indépendants activent le lymphocyte B sans l’aide du Th. Dans le cas des Ag thymodépendants, la fixation de l’antigène sur l’immunoglobuline n’est pas suffisante pour activer le lymphocyte B. Cette activation nécessite une liaison directe avec des lymphocytes T helper et l’action de cytokines. Après la liaison antigèneimmunoglobuline, l’antigène est internalisé par le lymphocyte B. Il est ensuite apprêté en peptide et présenté à la surface du lymphocyte B sous forme de complexe peptide-CMH. La cellule B se comporte alors comme une cellule présentatrice d’antigène. Le lymphocyte Th va reconnaître le complexe peptide-CMH et se lier à la cellule B, ce qui permettra à la cellule B de s’activer. Une fois le lymphocyte B activé, il va se multiplier et former un clone de cellules B identiques de même spécificité antigénique. La cellule B fille se différencie en cellule B mémoire et en plasmoblaste qui devient ensuite plasmocyte sécréteur d’anticorps. I.6 La mémoire immunitaire Une réponse immunitaire adaptative réussie ne se caractérise pas uniquement par l’élimination de l’agent infectieux, mais aussi par le développement d’une immunité de protection de longue durée. Un contact ultérieur avec le même pathogène entraîne une réponse plus rapide et plus forte. En l’absence d’une nouvelle infection, les taux d’anticorps et 10 Chapitre I: Le système immunitaire naturel de cellules effectrices baissent graduellement. Cependant, les populations de cellules B et T ”se souviennent” de l’agent infectieux pendant des années après l’infection primaire qu’il a provoquée. Ceci permet le développement d’une réponse secondaire adaptative rapide et puissante. Les cellules B et T mémoires peuvent être activées plus rapidement et en plus grand nombre que les lymphocytes naïfs activés au cours de la réponse primaire. I.7 La maturation de l’affinité L’affinité d’un anticorps pour un antigène est la force de liaison entre un seul site de liaison de l’anticorps et l’antigène. Lors d’une réponse immunitaire, avant que les lymphocytes B ne se transforment en plasmocytes, ils subissent des mutations. Seules les cellules ayant les plus hautes affinités avec l’antigène sont sélectionnées. Donc plus un sujet est exposé à un pathogène plus sa réponse immunitaire est affine et il produit des anticorps se liant de mieux en mieux avec le pathogène. Pour éviter les problèmes de maximums locaux liés à la mutation à partir d’une seule cellule souche et donc une perte de la diversité immunitaire, des cellules venant de la moelle osseuse sont ajoutées parmi les cellules marquées comme affines. I.8 Détection du soi et du non soi Lors du développement des lymphocytes T dans le thymus, ils subissent deux types de criblage. Au cours du premier criblage, la sélection positive porte sur toutes les cellules T capables de reconnaître les peptides présentés par les molécules du CMH du soi. Le second criblage est la sélection négative qui élimine les cellules potentiellement auto-réactives, qui pourraient être activées par les peptides normalement présentés par les molécules du CMH à la surface de cellules saines. I.8.1 La sélection positive Le répertoire primaire des molécules TCR (récepteur des lymphocytes T) se caractérise par sa tendance à réagir avec les molécules du CMH par le biais de la partie variable du TCR. Le réarrangement génique procure ainsi un répertoire étendu de TCR reconnaissant des centaines de molécules du CMH présents dans la population humaine. 11 Chapitre I: Le système immunitaire naturel Cependant, le répertoire des gènes de TCR que possède un individu donné n’est pas spécifiquement assorti aux formes de ses molécules du CMH. Ce n’est que 1 ou 2% des lymphocytes T qui possèdent des récepteurs pouvant interagir avec les molécules du CMH d’un individu et sont capables de répondre aux antigènes présentés par ces mêmes molécules du CMH. La Sélection positive est donc le procédé par lequel de petites populations de lymphocytes T poursuivent leur maturation laissant la plupart des autres cellules mourir par apoptose. I.8.2 La délétion clonale (sélection négative des lymphocytes B) Lors de la maturation des lymphocytes B dans la moelle osseuse, ils sont exposés par hasard aux antigènes du soi. Les cellules réagissant avec ces antigènes (ie elles se lient aux antigènes) sont poussées au suicide par apoptose. L’élimination des clones de cellules B immatures spécifiques des antigènes du soi est appelée ”délétion clonale”. I.8.3 La sélection négative des lymphocytes T La sélection négative, un mécanisme similaire à la délétion clonale, sert à éliminer les cellules T dont le TCR se fixe trop fortement au complexe peptide du soi-CMH présenté par les cellules présentatrices d’antigène dans le thymus. De telles cellules T sont potentiellement autoréactives et si elles arrivent à rentrer dans la circulation périphérique, elles causeraient des lésions tissulaires et des pathologies auto-immunes. La sélection négative n’est pas parfaite, certaines cellules T arrivent à passer et se retrouvent dans la périphérie. Ces cellules pourraient causer des lésions, mais pour qu’un lymphocyte T soit activé, il a besoin de recevoir d’autres signaux que ceux de la liaison avec les complexes peptide-CMH. Ces cellules ne réussissent pas à s’activer. I.9 La théorie du réseau immunitaire Jerne a imaginé en 1974 [JER 04] une théorie ingénieuse qui est la théorie des réseaux idiotypiques. Chaque molécule d’anticorps réagit avec les autres éléments du système immunitaire par deux sites distincts. En premier lieu par son site anticorps qui est spécifique, mais aussi par les déterminants idiotypiques des autres molécules d’immunoglobulines 12 Chapitre I: Le système immunitaire naturel reconnus de façon croisée avec l’antigène. En second lieu, par ses déterminants idiotypiques (les idiotopes). La molécule d’immunoglobuline réagit avec d’autres molécules d’immunoglobuline ayant un site anticorps spécifique de ces idiotopes. L’idée de cette théorie est qu’à chaque antigène, à chaque épitope correspond un idiotope, en d’autres termes, l’univers des idiotopes se confond avec celui des antigènes. I.10 La théorie du danger La principale idée de la théorie du danger proposée par [MAT 01] est que le système immunitaire ne répond pas au non-soi mais au danger. Cette idée vient de l’observation du système immunitaire qui n’attaque pas systématiquement tout ce qui est étranger à l’organisme, par exemple la nourriture. Dans cette théorie, le danger est mesuré en fonction de la gravité des dégâts sur les cellules, par l’envoi de signaux de détresse lors d’une mort inhabituelle. Quand une cellule envoi un signal de détresse, les antigènes dans sa périphérie sont capturés par les cellules présentatrices d’antigènes qui les présentent aux lymphocytes. De même que les cellules B, se trouvant dans la zone de danger et possédant des récepteurs reconnaissant les antigènes de cette même zone, sont stimulées et s’engagent dans le processus de sélection clonale. Les autres cellules en dehors de la zone de danger ou qui ne reconnaissent pas les antigènes ne sont pas activées. La nature même du signal de danger envoyé par les cellules n’est pas claire. Il peut être positif comme pour la sécrétion de proteines lors d’un choc thermique, ou négatif comme lors d’une présence de microbes dans l’organisme. C’est à ce niveau là que cette théorie va à l’encontre de certaines notions de la sélection du soi et du non-soi traditionnelle [AIC 02]. I.11 Les étapes d’une réaction immunitaire I.11.1 Pénétration de l’antigène Les antigènes peuvent pénétrer dans l’organisme par voie entérale ou parentérale. La voie entérale nécessite pour permettre la stimulation du système de défense le passage de l’Ag au travers de la muqueuse intestinale. Cette voie de pénétration est peu importante. 13 Chapitre I: Le système immunitaire naturel I.11.2 Réaction inflammatoire L’inflammation est un mécanisme de défense qui contribue à la restauration du sujet, même s’il peut parfois entraîner des conséquences dommageables. I.11.3 La réponse immunitaire I.11.3.1 La réponse primaire La réponse primaire correspond à la montée des anticorps lorsque l’antigène pénètre pour la première fois dans l’organisme. Elle comprend plusieurs étapes chronologiques: - Un temps de latence: il se passe quelques jours pendant lesquels se déroulent les interactions cellulaires entre macrophages et populations lymphocytaires (lymphocytes T et lymphocytes B). Cette longue latence s’explique par le grand nombre d’interactions. - Une phase de synthèse d’anticorps: le taux des Ac croît en fonction directe du nombre de plamocytes engendrés par les divisions cellulaires et les différentiations des lymphocytes activés. - Une phase de déclin métabolique qui commence dès que le stimulus antigénique est épuisé. - Une phase de repos durant laquelle l’Ac n’est plus détectable. Toutefois l’organisme n’est cependant pas dans le même état immunitaire qu’avant contact avec l’Ag. Il posséde des cellules à mémoire susceptibles d’agir ultérieurement. I.11.3.2 La réponse secondaire et suivantes Dès que le même antigène pénètre à nouveau dans l’organisme s’amorce la réponse secondaire. Elle présente également plusieurs phases. - Temps de latence beaucoup plus court car les cellules à mémoire, au contact de l’Ag, se transforment en plamocytes et synthétisent les anticorps. - Phase de synthèse plus importante car les Ig sont produites d’une part par les cellules à mémoire, d’autre part par de nouveaux plasmocytes induits par une réponse immunitaire normale qui s’est amorcée dés contact avec l’Ag. 14 Chapitre I: Le système immunitaire naturel - La phase de déclin est plus longue car plus il y a d’anticorps, plus ils mettent de temps à disparaître. - La phase de repos qui est plus longue pour la même raison. Ces caractéristiques ne font qu’augmenter au cours des réponses immunitaires ultérieures. C’est sur cette chronologie des réponses immunitaires que se base le principe des vaccinations en plusieurs étapes et des rappels de vaccins. I.12 Caractéristiques du système immunitaire Dans les sections précédentes, nous avons essayé de présenter le système immunitaire humain, son processus d’identification et d’activation. Ainsi que certains processus immunitaires de base. Cette partie sera consacrée à une récapitulation des propriétés intéressantes du système immunitaire qui constituent d’un point de vue informatique une source d’inspiration très riche, qui sont : - Multicouche: Le système immunitaire possède une architecture multicouche qui consiste en deux sous systèmes inter-liés qui sont le système immunitaire inné et le système immunitaire adaptatif. Ces deux systèmes combinent leurs tâches et responsabilités pour assurer la protection et la sécurité globale. - Unicité: Chaque élément dans le système immunitaire assume des responsabilités particulières. - Autonomie: Le système immunitaire humain ne possède aucun contrôle central ou un gestionnaire particulier. Il possède une autonomie globale dans la détection et l’élimination des intrus. - Distribution: Les cellules immunitaires et les molécules sont distribuées dans le corps humain pour assurer sa protection. Il n’existe pas un point de contrôle centralisé. - Parallélisme: Le système immunitaire est capable de produire plusieurs réponses immunitaires en même temps à des endroits dispersés. - Tolérance au soi: Le système immunitaire humain peut différencier entre les cellules de soi et les cellules de non soi. 15 Chapitre I: Le système immunitaire naturel - Apprentissage: Le système immunitaire augmente la capacité d'identification des anticorps à un antigène sélectif (les réponses primaire et secondaire). Il apprend continuellement les structures de pathogènes. - Adaptabilité: Le système immunitaire humain permet la production des cellules de plus en plus spécialisées pour l’identification des antigènes. Cela est garantit par la théorie de la sélection clonale suivie par le mécanisme de l’hypermutation somatique. - Dynamique: Le système immunitaire change continuellement par la création de nouvelles cellules et molécules, l’élimination des cellules vieilles ou endommagées. Un bon exemple de la dynamique du système immunitaire est la théorie du réseau idiotypique. -Diversité: Le système immunitaire naturel est capable d’identifier n’importe quels intrus qui envahissent le corps. Le répertoire cellulaire est complet. Cette particularité est due à plusieurs mécanismes qui sont par exemple : l’hypermutation somatique, la reproduction de récepteur, etc. - Mémorisation: Après une réponse immunitaire à un antigène donné, un ensemble de cellules constituent l'ensemble de cellules mémoires qui seront dotées d'une durée de vie longue afin de fournir des réponses immunitaires plus rapides et plus puissantes aux rencontres suivantes d'un même antigène. - Coopération: Les cellules immunitaires coopèrent leurs capacités pour assurer une meilleure détection et également une protection puissante par exemple les cellules T d’aide, etc.. - Détection: Le système immunitaire est capable d’identifier et de détecter les intrus dans le corps sans aucune connaissance antérieure de la structure de ces intrus. I.13 Conclusion On a vu dans ce chapitre les grands principes du système immunitaire naturel et les mécanismes d’une réponse immunitaire. On s’est focalisé sur la présentation de la réponse spécifique qui est caractérisée par sa spécificité, sa diversité, sa mémoire immunitaire et la reconnaissance du soi et du non soi. Vu ses facultés d’apprendre et d’évoluer elle présente un réel intérêt d’un point de vu informatique [GHA 06]. 16 Chapitre I: Le système immunitaire naturel Dans le chapitre suivant on présentera un système informatique inspiré du système immunitaire naturel: Le système immunitaire artificiel. 17 Chapitre II Le système immunitaire artificiel Chapitre II: Le système immunitaire artificiel II.1 Introduction Le système immunitaire biologique possède la capacité de protéger le corps humain contre une variété de pathogènes étrangers. Dans les dernières années, un nombre de chercheurs ont étudié ce système naturel et ont proposé le modèle immunitaire artificiel pour la résolution de divers problèmes. Des approches diverses ont été proposées pour mettre en ouvre les mécanismes de ce système. Ce chapitre sera consacré à introduire le système immunitaire artificiel avec une présentation des différents modèles qui ont été mis en oeuvre. Plusieurs définitions ont été proposées pour un AIS (Artificial Immune System). En voici quelques unes: Définition 1: Les AIS sont des méthodes de manipulation de données, de classification, de représentation et de raisonnement qui s’inspirent d’un modèle biologique plausible: le système immunitaire humain [DEC 04]. Définition 2: Les AIS sont des systèmes informatiques basés sur des métaphores du système immunitaire naturel [DEC 04]. Définition 3: Les AIS sont des systèmes adaptatifs, s’inspirant des théories de l’immunologie, ainsi que des fonctions, des principes et des modèles immunitaires afin d’être appliqués à la résolution de problèmes [DEC 04] Le premier livre sur les systèmes immunitaires artificiels a été édité par Dasguta en 1999 [DAS 99]. Les travaux de De Castro & Von Zuben et Nicosia & Cutello sur la sélection clonale ‘CLONALG’ furent remarqués en 2002 [DEC 02]. De nouvelles voies, comme la théorie du danger (observation des dégâts plutôt que celle des agents pathogènes) et des algorithmes inspirés par le système immunitaire inné ont également été explorées. Le fait qu’elles apportent quelque chose au-delà des algorithmes des systèmes immunitaires artificiels existants sont actuellement le sujet de débats qui animent le développement des systèmes immunitaires artificiels. Au départ, les travaux sur les systèmes immunitaires artificiels visaient à trouver des abstractions efficientes des phénomènes découverts dans le système immunitaire. Plus récemment, les praticiens des systèmes immunitaires artificiels se sont aussi intéressés à la modélisation du système immunitaire et à l’application des résultats issus des 19 Chapitre II: Le système immunitaire artificiel systèmes immunitaires artificiels aux problèmes d’immunologie (ce qui entre dans le cadre de l’immuno informatique) [KHE 06]. II.2 Représentation et affinité Afin de pouvoir être utilisés en informatique, les différents composants du système immunitaire biologique, plus particulièrement les cellules immunitaires et les antigènes, doivent être modélisés sous forme numérique, informatique. Par ailleurs le système immunitaire biologique a pour base de fonctionnement l’identification des antigènes et l’affinité entre les différents récepteurs des cellules (BCR et TCR) et ces antigènes. Pour que les cellules modélisées puissent reconnaître les ”antigènes”, cette notion d’affinité est reprise et appliquée aux cellules informatiques. Les lymphocytes B et T portent à leur surface un grand nombre de récepteurs, chacun n’est capable de reconnaître qu’un seul type d’antigène et tous les récepteurs d’une même cellule sont identiques. Dans les AIS dont le domaine d’application est l’informatique, on ne parlera plus de cellules B et T ni de leurs récepteurs respectifs mais d’anticorps en général par soucis de facilité de modélisation et de représentation. Cependant, certaines applications basées sur les AIS utilisent cette notion. Perelson et Oster ont introduit en 1979 la notion ”d’espace de forme” [PER 79] pour décrire quantitativement les interactions entre les molécules du système immunitaire et les antigènes. Chaque antigène et anticorps est représenté par un point dans ”l’espace de forme”. La distance entre ces points définit donc l’affinité entre antigène et anticorps [SMI 97]. Un espace de forme de Hamming utilise la méthode de Hamming pour le calcul de la distance, de même qu’un espace de forme Euclidien utilise la méthode Euclidienne pour calculer la distance entre deux points. Chaque point est décrit par un certain nombre L de paramètres tel que: sa longueur, sa largeur, son poids, etc.. Cette notion est donc reprise pour représenter les anticorps et les antigènes sous forme de vecteurs à L dimensions. Chacune de ces dimensions représente un paramètre. Ces paramètres permettent de calculer l’affinité entre ces deux entités. Il va de soi que les dimensions de ces deux vecteurs doivent être identiques afin de pouvoir les comparer. Etant donné que le calcul de l’affinité entre un antigène et un anticorps est réduit au calcul de la distance entre deux points dans un L- espace. 20 Chapitre II: Le système immunitaire artificiel - La distance Euclidienne : calcul de la distance entre les deux points Ab et Ag dans chacun des espaces: [SMI 97] (1) La distance de Manhattan : calcul de la distance entre les deux points Ab et Ag en ne suivant que les axes de coordonnées de l’espace:[DEC 04] (2) La distance de Hamming : représente les anticorps et les antigènes sous forme de symboles et calcule la différence entre ces symboles. Par exemple la comparaison de CADBCADB (un antigène) avec CBDBCDDB (un anticorps) donne une complémentarité de six sur huit positions. [SMI 97] (3) II.3 Les algorithmes du système immunitaire artificiel II.3.1 La sélection négative La sélection négative, permet d’assurer que tout lymphocyte T reconnaissant trop les cellules du soi comme antigène ne sorte pas du thymus afin d’éviter les maladies autoimmunes. Forrest [FOR 94] a proposé en 1994 un algorithme de détection du non-soi en s’inspirant de la sélection négative du thymus. L’algorithme peut se diviser en deux parties 21 Chapitre II: Le système immunitaire artificiel distinctes: la génération des détecteurs de non-soi et la surveillance qui teste les entrées avec les détecteurs générés précédemment. Dans cet algorithme, le soi correspond aux données à protéger et le non-soi aux données indésirables. La génération de détecteurs proposée par Forrest [FOR 94] est la suivante: 1. Définir les données du soi. 2. Générer les détecteurs aléatoirement. 3. Comparer chaque détecteur généré avec les données du soi. S’il en détecte une, il est supprimé, sinon il est gardé. Une fois les détecteurs générés et filtrés, ils sont comparés avec les données du soi. S’il y a correspondance, c’est que ce n’est pas une donnée du soi et qu’on se trouve face à du non- soi. S’il n’y a pas de correspondance, c’est que les données sont bien celles du soi. Dans cet algorithme, les détecteurs sont générés aléatoirement. Une analyse de probabilité est utilisée pour définir le nombre de détecteurs nécessaires pour avoir un certain niveau de fiabilité. II.3.2 La sélection positive L’algorithme de la sélection positive est proposé par Forrest et al [FOR 96] et Somayaji et Forrest [SOM 00]. Cet algorithme est la solution alternative à l’algorithme de la sélection négative. La différence principale est la génération des détecteurs qui détectent des éléments de soi au lieu de la génération des détecteurs qui détectent des éléments de non soi. Selon cet algorithme, un élément de non soi suspect doit être comparé avec tout l’ensemble des détecteurs de soi, s’il n’est pas détecté alors il est considéré comme un élément de non soi. II.3.3 Domaines d’application de la sélection négative et positive Les algorithmes de sélection positive et de sélection négative sont le plus souvent utilisés dans des applications de détection d’intrusion, des firewalls, des antivirus, des détecteurs de fraude (de cartes bancaires par exemple), ainsi que des détecteurs d’anomalies. Les deux algorithmes de sélection positive et sélection négative peuvent être utilisés simultanément dans une application car ils reposent tous les deux sur le calcul de l’affinité 22 Chapitre II: Le système immunitaire artificiel entre les éléments du système. Par contre, les interactions entre leurs éléments respectifs sont différentes, ce qui rend ces algorithmes complémentaires. Par exemple dans la détection d’intrusion, les algorithmes de sélection positive donnent des alarmes dans la zone faux positif et les algorithmes de sélection négative dans les faux négatifs. II.3.4 La sélection clonale La sélection clonale est la théorie expliquant comment le système immunitaire interagit avec les antigènes. Cette théorie est applicable aux lymphocytes B ainsi qu’aux lymphocytes T. La seule différence est que les cellules B subissent une hypermutation somatique durant leur prolifération contrairement aux cellules T. Grâce à ce procédé, le corps humain est capable de contrer un très grand nombre d’éléments externes. Les AIS s’inspirent de cette théorie. Mais vu que seules les cellules B sont capables de muter pour optimiser la réponse immunitaire, seules ces cellules nous intéressent. Cette optimisation est due au fait que les cellules B une fois en contact avec l’antigène, elles se multiplient et donnent plusieurs clones et chaque clone subit plusieurs mutations. Ces mutations servent à trouver des clones de la cellule mère possédant une plus grande affinité avec l’antigène. Lors des mutations successives, le risque est d’être affronté à un problème d’optimum local où l’on ne peut plus trouver de meilleur clone même en passant des générations de cellules. Le corps humain évite ce problème en ajoutant à ces clones des éléments nouvellement créés, qui n’ont aucune relation avec la cellule mère. Cet ajout d’éléments ”aléatoires” permet de résoudre le problème en faisant évoluer les nouveaux éléments s’ils possèdent une plus grande affinité avec l’antigène. Les principales différences entre tous les algorithmes de sélection clonale sont les méthodes utilisées dans la génération aléatoire des détecteurs, la mutation et l’affinité entre les détecteurs et les antigènes. Les algorithmes de sélection clonale sont le plus souvent utilisés: dans des applications d’optimisation vu que les cellules B deviennent de plus en plus affines aux antigènes, des applications de détection d’intrusions également où l’on ne peut répertorier tous les éléments 23 Chapitre II: Le système immunitaire artificiel indésirables et où ces éléments sont extrêmement variés, ainsi que d’autres applications comme la reconnaissance de caractères ou les problèmes de classification en général. II.4 Les réseaux immunitaires artificiels En 1974 Jerne [JER 74] émit l’hypothèse que le système immunitaire est un réseau autorégulé de molécules et de cellules qui se reconnaissent entre elles, même en l’absence d’antigène. Il existe deux grands modèles de réseaux immunitaires artificiels: un modèle continu et un autre discret. Comme tout modèle continu, le principal obstacle à son utilisation est de lui trouver une solution analytique, ce qui n’est pas forcément possible. Les modèles discrets sont généralement adaptatifs, que ça soit dans le nombre d’éléments les constituant ou dans la forme de ces éléments afin d’accroître leur affinité. Les modèles discrets sont plus appropriés pour résoudre des problèmes externes vu qu’ils peuvent interagir avec leur environnement (notion d’antigène) contrairement à certains algorithmes continus [JER 74] [COU 91]. Les modèles continus de réseaux immunitaires artificiels sont basés sur des équations différentielles décrivant la dynamique du réseau. Le premier modèle discret est celui de Jerne en 1974 [JER 74], où à chaque élément du réseau (lymphocyte ou anticorps) est relié une équation différentielle qui gère l’état d’activation ou d’inhibition des éléments. Un autre modèle de Varela et Coutinho [COU 91], qui a été nommé ”second-generation immune network”, se caractérise par sa structure (formes de connexion entre les différents éléments du système), sa dynamique (variation avec le temps du nombre d’éléments du réseau et de leur affinité) et sa métadynamique (production et renouvellement des éléments ainsi que la suppression des éléments non stimulés ou autoréactifs). Un autre modèle continu a été proposé par Farmer [FAR 86], où les éléments du système sont représentés par des vecteurs binaires de différentes tailles dans un espace de forme de Hamming. Contrairement aux deux précédents modèles, Farmer a introduit la notion ”d’antigène” (élément extérieur au système). Les modèles discrets de réseaux immunitaires artificiels sont basés, quant à eux, sur des différences d’équations et sur des itérations. Timmis proposa en 2000 [TIM 00] le modèle RAIN où se confond théorie des réseaux idiotypiques et sélection clonale. Cet algorithme est donc capable, grâce à la sélection clonale, de reconnaître des éléments externes au réseau. On y retrouve donc, les notions de stimulation des éléments comme dans la théorie des réseaux 24 Chapitre II: Le système immunitaire artificiel idiotypiques ainsi que les notions de mutations, d’hypermutations somatiques et de clonages de la théorie de la sélection clonale. De Castro et Von Zuben [DEC 00] ont proposé un autre modèle de réseaux immunitaires artificiels nommé ”aiNet”. Il s’inspire aussi des deux théories de la sélection clonale et des réseaux immunitaires. Les deux modèles peuvent paraître similaires, cependant ils sont différents de plusieurs points de vue. La représentation des données, le calcul de la stimulation des éléments du réseau ainsi que la manière dont ils limitent la taille du réseau [DEC 04]. II.5 La théorie du danger Contrairement à la plupart des théories des systèmes immunitaires artificiels, la théorie du danger proposée par Matzinger [MAT 01] ne repose pas uniquement sur l’utilisation des cellules B mais également sur les cellules T et les cellules présentatrices d’antigènes. Cette théorie est contreversée mais intéressante d’un point de vue informatique. Comme pour le système immunitaire biologique, une fois qu’un signal de danger est lancé, les cellules présentatrices d’antigènes qui se trouvent dans la zone du signal présentent les données considérées comme nuisibles aux cellules T. De même, les cellules B se clonent si elles sont dans la zone et reconnaissent les données. Les signaux de danger peuvent être différents, dépendant de l’application. Par exemple, on peut considérer le manque ou l’excès l’utilisation de la mémoire, activité inappropriée des disques, etc ... La notion de proximité de danger peut être également très différente et n’est pas forcément géographique. La proximité peut être par exemple des temps de début d’exécution identiques ou un accès aux mêmes ressources. La théorie du danger commence à être utilisée dans quelques applications comme les IDS(Intrusion Detection Systems) [AIC 03] et l’extraction de données [AIC 02]. II.6 Les domaines d'application des AIS Comme vu dans les sections précédentes, le système immunitaire artificiel possède une variété de modèles de telle sorte que chaque modèle est basé sur une partie particulière de fonctionnement du système immunitaire humain. Cette diversité permet d'utiliser le système immunitaire artificiel à plusieurs secteurs d'application pour des buts différents. D'une manière générale, parmi ces secteurs on peut citer: La classification, La sécurité des 25 Chapitre II: Le système immunitaire artificiel ordinateurs, La détection et l'élimination des virus informatiques, l’optimisation, la robotique, et d’autres domaines. II.6.1 La classification De nombreux travaux exploitent les principes des systèmes immunitaires pour résoudre le problème de classification. Le principal intérêt de ces approches est de réduire considérablement la taille de la population car les individus sont des anticorps (représentées par des vecteur de même dimension que les données à classer –antigènes) qui vont reconnaître les données des différentes classes. Parmi les algorithmes exploitant la théorie des systèmes immunitaire pour la classification on peut citer AIRS (Artificial Immune Recognition System) qui sera présenté en détail dans le chapitre III. II.6.2 La sécurité des ordinateurs La sécurité des ordinateurs est une application directe de la métaphore du système immunitaire humain. Plusieurs travaux intéressants ont été proposés afin d'exploiter les principes de base de la détection et l’élimination, employés par le système immunitaire humain dans la sécurité des systèmes informatiques. Un travail très intéressant, et qui est considéré parmi les premières tentatives dans ce secteur de recherche est celui de Stéphanie Forrest et son groupe [FOR 94]. Dans ce travail, le problème de la protection des systèmes informatiques est vu comme une instance d'un problème de la discrimination entre le soi et le non soi ce qui signifie la capacité de distinction entre les utilisateurs légitimes et les données non infectées qui constituent le soi et les virus et les utilisateurs non autorisés qui constituent le non soi. II.6.3 La détection et l'élimination des virus informatiques Okamoto et Ishida [OKA 99] ont proposé un système multi agents basé AIS. Ce système de détection de virus opère dans un environnement distribué et hétérogène. L'algorithme de la sélection négative a été utilisé comme une méthode d'authentification de fichier. 26 Chapitre II: Le système immunitaire artificiel La détection des virus est réalisée via l'appariement entre les informations propres d'un fichier tel que les premiers bits de l'entête du fichier, sa taille, le chemin d'accès et le fichier de l'hôte. La neutralisation des virus est faite par la réécriture des informations initiales sur le fichier infecté. Le système est composé de quatre types d'agents qui sont : - Les agents anticorps qui détectent les virus sur les hôtes locaux. - Les agents tueurs qui neutralisent les virus par les réécritures des informations initiales sur les fichiers infectés. - Les agents de copie qui copient les fichiers non infectés qui sont équivalents aux fichiers infectés à partir des différents hôtes. - Les agents de contrôle qui aident la communication entre les différents agents. II.6.4 Optimisation Le problème d'optimisation consiste à trouver l'ensemble absolu des meilleures conditions admissibles pour atteindre un certain objectif. Les problèmes d'optimisation apparaissent dans plusieurs secteurs d'application. Pour cette raison, le problème est caractérisé par l'existence de plusieurs travaux qui ont exploité le système immunitaire artificiel afin de résoudre les différents problèmes d'optimisation. Par exemple le travail de De Castro et Von Zuben [DEC 00] dont le but principal est le développement d’un algorithme approprié pour le problème d'optimisation, la reconnaissance de forme. Ce travail se focalise sur le principe de la sélection clonale et la maturation d'affinité lors d'une réponse immunitaire adaptative afin de résoudre des problèmes complexes tels que l'optimisation combinatoire et l'optimisation multi modale. II.6.5 Robotique Plusieurs tentatives ont été faites pour appliquer le principe du réseau immunitaire pour contrôler les grandes populations de robots dont le but principal est d'obtenir les propriétés de base du système immunitaire qui sont l'auto organisation et le comportement de groupe. Le travail de Mitsumoto et al [MIT 96] est parmi les premiers travaux, ils ont essayé de créer un groupe de robots qui se comportent d'une façon autonome pour chercher l'alimentation sans aucun mécanisme de contrôle global. 27 Chapitre II: Le système immunitaire artificiel L'idée principale dans ce travail est l'interaction entre les robots au niveau local. Les auteurs emploient trois métaphores immunologiques principales. La première métaphore est les cellules B, où un robot représente une cellule B et chaque robot possède une stratégie particulière pour trouver l'alimentation. La deuxième est le réseau immunitaire pour garantir l'interaction entre ces robots. La troisième est le calcul de stimulation des cellules B, où on considère que la stratégie du robot le plus stimulé est la meilleure et c’est elle qui sera prise en considération. Suite à ce travail, plusieurs travaux ont été proposés dans ce domaine de recherche. II.6.6 Autres domaines d'utilisation Le système immunitaire artificiel est aussi utilisé dans plusieurs secteurs de recherche. Voici une liste non exhaustive d'autres domaines d’application: - La maintenance des systèmes d'ordinateurs [BUR 00]. - La reconnaissance de formes [KHE 06]. - La planification [MOR 98]… II.7 Conclusion Les algorithmes s’inspirant du système immunitaire biologique, peuvent s’appliquer à un très grand nombre de domaines de la classification à la protection de réseaux contre les intrusions en passant par l’optimisation de la recherche de données et l’interprétation de celles-ci. La principale difficulté d’utilisation des AIS est de trouver le modèle biologique à partir duquel s’inspirer pour résoudre un problème ainsi que la représentation de ce problème sous forme biologique (ie. trouver quelles données vont être les anticorps et quelles autres seront les antigènes). Le chapitre suivant est une présentation d’un AIS très connu pour ces bonnes capacités de classification, on présentera le fonctionnement et les différentes routines d’AIRS. 28 Chapitre III Présentation de l’algorithme AIRS Chapitre III: Présentation de l'algorithme AIRS. III.1 Introduction Dans ce chapitre on présente une vue d'ensemble de l’algorithme immunitaire AIRS (Artificial Immune Recognition System) [WAT 05]. Dans une première partie on définit les concepts importants pour la compréhension de l'algorithme et dans la deuxième on fera un tour formel sur les routines de l’algorithme. III.2 Définitions Cette section présente les termes clés utilisés dans l’algorithme AIRS. - Affinity: Une mesure de proximité ou de similitude entre deux anticorps ou antigènes. Cette valeur doit être entre 0 et 1 et elle est calculée simplement comme la distance euclidienne entre les deux vecteurs représentant les anticorps ou les antigènes. Ainsi, les petites valeurs d'affinité indiquent une forte affinité. - Affinity threshold (AT): La valeur moyenne d'affinité entre tous les antigènes de l’ensemble d’apprentissage ou d’un sous ensemble sélectionné de l’ensemble d’apprentissage. - Affinity threshold scalar (ATS): Une valeur entre 0 et 1 qui sera multipliée par affinity threshold pour déterminer une valeur d’arrêt pour le remplacement des cellules mémoires. - Anticorps: Un vecteur couplé à sa sortie (ou à sa classe). On appel ce couple Vecteur-Classe Anticorps quand c’est une partie d’un ARB1 ou quand c’est une cellule mémoire - Antigène: C’est la même représentation que l’anticorps. Le couple VecteurClasse désigne un antigène quand il est présenté à un ARB pour comparaison. - Artificial Immune Recognition System (AIRS): Un algorithme de classification inspiré du système immunitaire naturel. 1 ARB (Artificial Recognition Ball) Désigne un ensemble de lymphocytes représentés par (Vecteur, ressource et classe) 30 Chapitre III: Présentation de l'algorithme AIRS. - Artificial Recognition Ball (ARB): appelé aussi cellule-B, un ARB est une association d’anticorps, le nombre de ressources associé à la cellule et la valeur de stimulation de la cellule. - Candidate memory cell: C’est l’anticorps d’un ARB de la même classe que l’antigène d’apprentissage et qui a été le plus stimulé par cet antigène. - Classe: C’est la catégorie d’un vecteur donné, elle représente la sortie d’une cellule. - Clonal rate: Une valeur entière utilisée pour déterminer le nombre de clones mutés qu’un ARB est autorisé de produire. Dans l’implémentation d’AIRS, un ARB est autorisé à produire "clonal rate*stimulation value" clones mutés après sa stimulation par un antigène. Ce produit est aussi utilisé pour l’attribution des ressources à un ARB. Clonal rate joue un double rôle, un facteur pour l’allocation des ressources et un facteur pour la mutation des clones. - Hyper-mutation rate: Une valeur entière utilisée pour déterminer le nombre de clones mutés qu’une cellule mémoire est autorisée d’injecter dans la population des cellules. La cellule mémoire sélectionnée injecte au maximum "hyper-mutation rate*clonal rate*stimulation value" clones mutés dans la population des cellules lors de l’introduction de l’antigène. - Memory cell (mc): L’anticorps d’un ARB le plus stimulé par un antigène d’apprentissage. - Mutation rate: Un paramètre entre 0 et 1 qui indique la probabilité de mutation d’un vecteur (ou d’une classe) d’un ARB. - Ressources: Un paramètre qui limite le nombre d’ARBs autorisés dans le système. Pour chaque ARB on alloue un certain nombre de ressources basé sur sa stimulation_value et le clonal_rate. Le nombre de ressources dans le système est limité à une certaines valeur et si cette valeur est dépassée on diminue le nombre de ressources de l’ARB le moins stimulé. Quand un ARB n’a plus de ressources il est supprimé du système. 31 Chapitre III: Présentation de l'algorithme AIRS. - La fonction stimulation: Une fonction utilisée pour calculer la ressemblance entre un anticorps et un antigène. Dans AIRS cette fonction retourne une valeur entre 0 et 1 et elle est inversement proportionnelle à la distance euclidienne entre l’anticorps et l’antigène. - Stimulation value: la valeur retournée par la fonction stimulation. - Stimulation threshold : Une valeur entre 0 et 1 utilisée comme critère d’arrêt de l’apprentissage par un antigène donné. III.3 Tour de l’algorithme Cette section présente un tour de l’algorithme AIRS, en particulier on présente une vue d’ensemble sur les principales méthodes, routines et équations utilisées dans l’apprentissage construisant un classificateur basé sur un système immunitaire. AIRS est divisé en phases : - La phase de normalisation et d’initialisation des données. - La phase d’identification de la cellule mémoire et génération des ARBs. - La phase de compétition des ressources et développement de la cellule mémoire candidate. - La phase d’introduction de la cellule mémoire candidate. Avant de détailler les différentes phases de l’algorithme présentant quelques conventions : - MC représente l’ensemble des cellules mémoires et mc représente un individu de cet ensemble (une cellule mémoire). - ag.c représente la classe d’un antigène, ag, et ag.c C={1,2, …,nc} avec nc le nombre de classes dans le dataset. - mc.c représente la classe de la cellule mémoire mc avec mc.c C={1,2, …,nc}. - MCc MC={MC1 MC2 …MCnc} et mc MCc si mc.c ≡ c - ag.f et mc.f représente le vecteur d’un antigène et d’une cellule mémoire ag et mc respectivement. ag.fi représente la valeur du ième élément de ag.f et mc.fi représente la valeur du ième élément de mc.f 32 Chapitre III: Présentation de l'algorithme AIRS. - AB représente l’ensemble des ARBs ou de la population de cellules, et MU représente l’ensemble des clones mutés des ARBs. ab représente un ARB (ab AB). - ab.c représente la classe d’un ARB, ab où ab.c C={1,2, …,nc}. - ABc AB={AB1 AB2 …ABnc} et ab ABc si ab.c ≡ c. - ab.stim représente la valeur de stimulation de l’ARB ab. - ab.resources représente le nombre de ressources allouées à l’ARB ab - TotalNumResources représente le nombre de ressources maximum autorisées dans le système. I.3.1 La phase d’initialisation Cette phase concerne d'une part la normalisation des données pour que la distance euclidienne entre 2 vecteurs (antigènes) soit dans l’intervalle [0,1] et d'autre part la création de l’ensemble initial de cellules mémoires (M) et de l’ensemble d’ARB (Artificial Recognition Ball) (AB). Les cellules sont choisies aléatoirement à partir de l’ensemble des données d’apprentissage. La dernière opération d’initialisation est le calcul du paramètre affinity_threshold l’affinité moyenne entre tous les antigènes deux à deux qui est représenté par la formule 4: n n affinity (agi, agj ) Affinity threshold= i 1 j i 1 n(n 1) 2 (4) Avec n le nombre d’antigènes, agi et agj sont le ième et le jème antigène et affinity(X,Y) est la distance euclidienne entre deux vecteurs X et Y. 33 Chapitre III: Présentation de l'algorithme AIRS. I.3.2 La phase d’Identification de la cellule mémoire et génération des ARBs Une fois l’initialisation achevée chaque élément de l’ensemble d’apprentissage (chaque antigène) est présenté à l’algorithme AIRS une seule fois. La phase d’apprentissage aura lieu à partir de cette étape. Pour un antigène donné (celui qui est en cours d’utilisation), une cellule mémoire mcmatch sera sélectionnée à partir de l’ensemble des cellules mémoires de telle façon qu’elle reconnaisse au mieux l’antigène en cours de traitement, c'est-à-dire la plus similaire à cet antigène que l’ensemble total des cellules mémoire de même classe. mcmatch=argmaxmcMCag.c stimulation (ag,mc) (5) avec Stimulation (x,y)= 1-affinity(x,y): Si la classe de x classe de y Affinity (x,y): sinon Si MCag.c ≡ , alors mcmatch ag et MCag.c MCag.c ag. Ceci est applicable si l’ensemble de cellules mémoires de même classe que l’antigène est vide, alors on ajoute l’antigène dans l’ensemble des cellules mémoires et on le désigne comme mcmatch. La fonction de stimulation pour AIRS est la distance euclidienne et il est possible d’utiliser une autre fonction. Une fois la cellule mcmatch est sélectionnée elle sera utilisée pour générer les nouveaux ARBs, ceci est réalisé par la méthode donnée dans l'algorithme 1. La fonction makeARB(x) retourne un ARB avec x l’anticorps de cet ARB, et la fonction mutate(x,b) est définie dans l'algorithme 2. La fonction drandom() retourne une valeur aléatoire entre 0 et 1 et (lrandom() mod nc) retourne une valeur aléatoire entre 0 et nc. 34 Chapitre III: Présentation de l'algorithme AIRS. Algorithme1. Génération des ARBs Algorithme 2. Routine de mutation 35 Chapitre III: Présentation de l'algorithme AIRS. I.3.3 La phase de Compétition des ressources et développement de la cellule mémoire candidate A ce point l’ensemble d’ARBs (AB) inclut la cellule mcmatch , les mutations de mcmatch et les ARBs générés dans les cycle d’apprentissage précédents. Rappelant qu’AIRS est un "One-shot algorithm" et l’apprentissage se fait dans chaque cycle par un seul antigène. Cette phase consiste à sélectionner la cellule candidate à partir l’ensemble généré des ARBs et qui se rapproche le plus à l’antigène en cours de traitement, ce qui se fait selon trois mécanismes. Le premier mécanisme se base sur la compétition des ressources qui sont allouées pour un ARB donné, et qui sont calculées en fonction de la stimulation et le taux de clonage. Le deuxième mécanisme consiste à appliquer la mutation au niveau des ARBs pour la diversification et l’exploration de l’espace des formes. Le troisième mécanisme est l’utilisation du seuil d’affinité comme critère d’arrêt. Chaque ARB est présenté à l’antigène pour déterminer son degré de stimulation. Suivant cette valeur de stimulation on alloue un certain nombre de ressources pour chacun de ces ARBs. L’adaptation de la population des ARBs nécessite parfois la suppression des ressources de certains ARB ayant une très faible stimulation à l’antigène en cours de traitement. La même chose pour le cas des ARBs n’ayant pas de ressources (ressource nulle) seront eux-mêmes supprimés de l’ensemble de population des ARBs ; à la fin de cette adaptation, l’ensemble des ARBs contient seulement ceux qui sont les plus stimulés et qui contiennent le plus de ressources (les plus proches à l’antigène en cours). Ce processus est présenté et formaliser dans l'algorithme 3 La fonction de stimulation présentée dans la l'algorithme 3 privilégie les ARBs de même classe que l’antigène d’apprentissage qui sont hautement stimulé par celui-ci ainsi que les ARBs de classe différente de celle de l’antigène et qui n’ont pas une grande ressemblance avec l’antigène. A ce point, la population des ARBs (AB) contient les ARBs qui ont été le plus stimulé par un antigène donnée, c-à-dire les ARBS qui ont pu avoir le plus de ressources. L'étape suivante consiste à déterminer si les ARBs ont été stimulés assez par ag pour arrêter 36 Chapitre III: Présentation de l'algorithme AIRS. Algorithme 3. Stimulation, Allocation des ressources et suppression des ARBs 37 Chapitre III: Présentation de l'algorithme AIRS. l'apprentissage pour cet antigène. Ceci est réalisé par la définition d'un vecteur S de longueur nc qui contient la stimulation moyenne pour chaque classe d'ARBs. Si ABi j 1 abj.stim ABi , abj ABi (6) Le critère d'arrêt est satisfait si Si>= stimulation_threshold pour tous les éléments dans S={S1, S2, … Snc} Quelque soit le résultat concernant le critère d'arrêt, les ARBs passent par une autre phase de création de mutants présenté dans l'algorithme 4. Cette méthode est proche de celle présenté dans l'algorithme 3 avec quelque changement. Algorithme 4. Mutation des ARBs survivants 38 Chapitre III: Présentation de l'algorithme AIRS. Après cette phase, le critère d’arrêt est examiné. S’il est satisfait l’apprentissage sur cet antigène est arrêté, sinon ce processus est répété jusqu’à satisfaire le critère d’arrêt. Ensuite la cellule mémoire candidate est choisie. mccandidate est l’ARB de même classe et le plus stimulé par l’antigène. I.3.4 Introduction de la cellule mémoire Dans cette étape, on introduit la cellule candidate mccandidate dans l’ensemble total des cellules mémoires, le choix de cette cellule est fait en comparant les stimulations de cette cellule et mcmatch avec l’antigène en cours de traitement. On utilise le seuil de l’affinité calculé dans la première étape comme condition pour que la cellule mccandidate remplacera la cellule mcmatch, cette substitution est prise en compte seulement si la stimulation de la nouvelle cellule est plus élevée que mcmatch. L’introduction de la cellule mémoire est présentée dans l'algorithme 5 Algorithme 5. Introduction de la cellule mémoire I.3.5 Classification Après la phase d’apprentissage, les cellules mémoires sont prêtes pour être utilisées dans la phase de classification qui est réalisée par la méthode des K plus proches voisins, chaque cellule mémoire est présentée à chaque vecteur de données pour stimulation. Le système de classification détermine la classe du vecteur par rapport à la classe de la majorité des cellules mémoires utilisées. 39 Chapitre III: Présentation de l'algorithme AIRS. III.4 AIRS 2 AIRS2 est une amélioration de l’algorithme AIRS en faisant quelques simplifications. Les simplifications apportées sont les suivantes : - L’initialisation de l’ensemble d’ARB (AB) n’est plus nécessaire. - Les mutations ne concernent que les vecteurs de données et non pas les classes - Pour la sélection clonale et le critère d’arrêt de l’apprentissage on ne s’intéresse qu’aux ARBs de même classe que ag. III.5 Conclusion Dans ce chapitre on a présenté d’une façon détaillée l’algorithme AIRS. Les 4 étapes d’apprentissage ont été décrites formellement. Ensuite on a présenté les différences qui existent entre AIRS et AIRS2 qui est une amélioration d’AIRS. AIRS2 ne donne pas de meilleurs résultats en point de vue précision de classification mais c’est un algorithme plus rapide dans la phase d’apprentissage. Dans le chapitre suivant on présentera les faiblesses d’AIRS et AIRS2 et on proposera une solution pour améliorer ces deux algorithmes. 40 Chapitre IV AIRS3: Une amélioration d'AIRS et AIRS2 Chapitre IV: AIRS3: Une amélioration d'AIRS et AIRS2 IV.1 Introduction Dans ce qui suit on propose une amélioration de l'algorithme "AIRS" de Watkins qui présente deux faiblesses: La première est le fait que l'activation de cellules mémoires dans AIRS se fait par un seul antigène (qui peut présenter des données bruitées). Ce chapitre présente une méthode pour activer les cellules par groupes d'antigènes homogènes. La deuxième faiblesse est le fait qu'AIRS ne test que les cellules mémoires sollicitées par des antigènes. On propose une méthode pour tester toutes les cellules mémoires et détruire celles qui ne sont plus capables de défendre le système. IV.2 AIRS3 Dans un AIS les cellules mémoires activées pour la reconnaissance ne doivent pas être sollicitées par un seul antigène (qui peut présenter des données bruitées) [FRE 06], et doivent toutes faire face à un test de maturité. Ces deux règles ne sont pas vérifier dans les algorithmes de Watkins: AIRS et AIRS2 vu que l’algorithme est un "one-shot algorithm" et l’apprentissage se fait dans chaque cycle par un seul antigène et que les cellules mémoires introduites dans la phase d’initialisation qui n’ont eu aucun contact avec des antigènes sont retenues pour la phase de classification. Nous proposons dans ce qui suit une solution à ces deux faiblesses d’AIRS et AIRS2, L’apprentissage ne doit plus se faire par un seul antigène mais plutôt par groupe d’antigènes. Un groupe contient l’ensemble de cellules qui représentent au mieux un sous ensemble homogène d’une classe, ce sont les antigènes les plus proches les uns des autres et ne dépassant pas une distance donnée. Un pseudo code pour la création des groupes est présenté dans l'algorithme 6. Ces Groupes d’Antigènes Homogènes (GAH) seront présentés à l’algorithme au lieu d’un seul antigène. Et le calcul de l’affinité entre anticorps et antigènes est remplacé par le calcul de l’affinité moyenne entre un anticorps et un GAH par la formule (7). 42 Chapitre IV: AIRS3: Une amélioration d'AIRS et AIRS2 n affinity (ac, agi) Affinité(ac,GAH) = i 1 (7) n Avec agi le ième antigène du groupe, n le nombre d'antigènes du groupe et ac l'anticorps. GS (Group Scalar) est un paramètre (valeur entre 0 et 1) qu’on a utilisé pour définir la taille des groupes dans l’espace des formes et donc le nombre de groupes. Si GS est grand le nombre de groupes diminue puisqu’on donne plus d’espace au groupe (dans l'espace des formes) et inversement si la valeur de GS est plus petite on aura plus de groupes. La figure 3 schématise la notion de GAH. Distance entre antigènes <= Affinity_threshold*GS Figure3. Groupes d'Antigènes Homogènes (GAH) Dans AIRS et AIRS2 le but est de diminuer l'ensemble de données utilisées pour la classification (on utilise pour la classification la méthode des K-Plus-Proches-Voisins). Pour ce faire on choisi un sous ensemble (à partir de l'ensemble initial donné) qu'on appel ensemble de cellules mémoires et on essaye d'améliorer ce sous ensemble pour qu'il soit capable de faire le travail (ou même un travail meilleur) de l'ensemble originaire. 43 Chapitre IV: AIRS3: Une amélioration d'AIRS et AIRS2 // Tous les antigènes sont initialement dans le groupe 0 groupe=1 ; Pour chaque antigène ag faire { pp_ag =best_affinity(ag, EAG) /*Renvoie à partir de l’EAG (ensemble des antigènes) l’antigène –de même classe- le plus proche de ag.*/ si (affinity(ag,pp_ag)>affinity_threshold*GS)) { si (ag.groupe==0) {ag.groupe=groupe; groupe++;} } Sinon { si ( (pp_ag.groupe==0) et (ag.groupe==0) ) { ag.groupe=groupe ; pp_ag.groupe=groupe ; groupe++ ; } sinon { si ( (pp_ag.groupe==0) et (ag.groupe !=0) ) pp_ag.groupe=ag.groupe ; sinon { si ( (pp_ag.groupe !=0) et (ag.groupe ==0) ) ag.groupe=pp_ag.groupe ; } } } Algorithme 6. Création des Groupes d’Antigènes Homogènes 44 Chapitre IV: AIRS3: Une amélioration d'AIRS et AIRS2 Pour cela on choisi pour chaque antigène de test une cellule mémoire (La plus proche de cet antigène) et on essaye de l'améliorer pour qu'elle puisse faire un travail de classification plus correcte. Ayant épuisé tout l’ensemble d’apprentissage ne veut pas dire que toutes les cellules mémoires ont fait preuve de maturité (on n'est pas sure que toutes les cellules sont testées) et donc le mécanisme de sélection positive reste imparfait dans AIRS et AIRS2. C’est pour cela que dans notre algorithme on fait des tests supplémentaires pour ne laisser que des cellules mémoires capable de défendre le système et donc de faire une classification correct. On a ajouté un paramètre pour toutes les cellules mémoires "cellule.test" qui a la valeur false initialement et quand une cellule est sollicitée par un antigène, cellule.test passe à true. Après épuisement de l’ensemble des antigènes, les cellules mémoires qui n’ont jamais contacté des antigènes et donc ayant cellule.test à false sont divisées en deux groupes, le premier reste dans l’ensemble de cellules mémoires M. et l’autre forme un nouvel ensemble d’apprentissage. On refait toutes les étapes d’apprentissage avec ces antigènes depuis la création des GAH. Tant qu’il y’a des cellules mémoires non testées on re-divise l’ensemble de ces cellules et on reprend l’apprentissage jusqu’à avoir un ensemble de cellules matures. La solution proposée permet d’avoir moins de cellules mémoires (mais plus efficaces) pour la phase de classification ce qui rend notre système plus rapide. Le nombre de groupes GAH utilisé est inférieur au nombre d’antigènes ce qui rend la phase d’apprentissage plus rapide vu que c’est un algorithme en one-shot qui répète les mêmes étapes pour chaque antigène dans le cas d’AIRS et AIRS2, et pour chaque GAH dans le cas de notre solution AIRS3. IV.3 Conclusion Dans ce chapitre on a mis en évidence les faiblesses qu'on a pu détecter dans AIRS et AIRS2 et on a proposé une solution à ces faiblesses. 45 Chapitre IV: AIRS3: Une amélioration d'AIRS et AIRS2 La validation de notre solution, est présentée dans le chapitre suivant. On présentera une étude comparative entre plusieurs algorithmes de classification et AIRS,AIRS2 et AIRS3 ainsi qu'une comparaison entre AIRS,AIRS2 et AIRS3. 46 Chapitre V Etude expérimentale Chapitre V: Etude expérimentale V.1 Introduction Dans ce chapitre on va présenter une étude expérimentale et comparative pour les algorithmes (AIRS, AIRS2 et AIRS3). On présentera les différentes bases de données utilisées pour les tests : HS (Haberman Surgery Survival) et LD (Liver disorders), l'application qu'on a implémenté pour les tests ainsi que les résultats (Numériques et graphiques) et l'analyse de ces résultats. On va aussi interpréter les résultats obtenus pour voir la performance des algorithmes utilisés par rapport à d'autres algorithmes de classification et pour voir l'intérêt de l'amélioration qu'on a apporté à AIRS et AIRS2. V.2 Aperçu des bases de données utilisées On a utilisé 2 bases de données pour faire une étude comparative des trois algorithmes (AIRS, AIRS2 et AIRS3) étudiés dans ce travail. La première base de données est HSS (Haberman Surgery Survival) et la deuxième est LD (Liver disorders). V.2.1 Haberman Surgery Survival (HSS) Cette base de données contient des études de cas faites entre 1958 et 1970 à "University of Chicago's Billings Hospital" étudiant la survie de patients qui ont subits des chirurgies du cancer des seins. Nombre d’attributs Nombre d’enregistrements Nombre d’enregistrements positifs Nombre d’enregistrements négatifs 3 306 225 81 Tableau 1. Caractéristiques de l'ensemble de données HSS Les attributs de cette base de données sont les suivants: 1. L'Age du patient lors de l'intervention; 48 Chapitre V: Etude expérimentale 2. L'Années de l'opération (Années 1900, numérique); 3. Nombre de ganglions auxiliaires détectés; Statut du patient --1= Le patient est resté en vie 5ans ou plus. --2= Le patient est mort après 5 ans. V.2.2 Liver disorder's (LD) Cette base de données contient 345 enregistrements décrivant des patients confirmant ou non des troubles du foie. Nombre d’attributs Nombre d’enregistrements Nombre d’enregistrements positifs Nombre d’enregistrements négatifs 6 345 145 200 Tableau 2. Caractéristiques de l'ensemble de données LD Les attributs de cette base de données sont les suivants (Les 5 premières variables sont des tests sanguins qui sont susceptibles être sensible à des troubles hépatiques: 1. mcv mean corpuscular volume (Volume Globulaire Moyen); 2. alkphos alkaline phosphotase; 3. SGPT aminotransférase alanine 4. DGOT aspartate aminotransferase; 5. gammagt gamma-glutamyl transpeptidase; 6. Nombre de boissons alcoolisées par jour; Statut du patient --1= Ne Présente pas des troubles du foie. --2= Présente des troubles du foie. 49 Chapitre V: Etude expérimentale V.2.3 Travaux antérieurs Plusieurs travaux ont utilisé HSS et LD. HSS est l’un des datasets les plus difficiles pour la classification [GYE 08] Voici quelques travaux qui l'ont utilisé: Kecman et Arthanari [KEC 01] ont obtenu une précision de 71.2% en utilisant une approche SVM (Support Vector Machine). Domm, Engel, Louis et Goldberg [DOM 05] ont proposé le classificateur ISVM (Integer Support Vector Machine) et ont obtenu un résultat de 62.7%. Shevked et Dakovski [SHE 07] ont modélisé les points d’apprentissage en fonctions logiques, ces fonctions sont ensuite optimisées pour avoir une fonction globale F(V). Le résultat de cette approche est de 66.2%. D'autres travaux ont utilisé LD pour des tests d'algorithmes de classification, on cite ici quelques uns: Cheung [CHE 01] a utilisé différents algorithmes de classification : C4.5, Naive Bayes, Bayesian Network with Naive Dependence (BNND), et une combinaison entre (Bayesian Network with Naive Dependence) et (Feature Selection). Il a obtenu respectivement 65.5, 63.4, 61.8, et 61.4% comme pourcentages de précision. Van et al ont utilisé une approche SVM qui a donnée 69.2% de précision [VAN 02]. V.3 Présentation de l'application On présente dans ce qui suit notre application qui a servie pour les tests des algorithmes AIRS/ AIRS2/ AIRS3. L'application utilise les deux bases de données HSS et LD. Les principales fonctionnalités de cette application sont l'apprentissage, la classification de l'ensemble de test et l'affichage des graphes présentant le nombre de cellules mémoires testées par des antigènes. Cette application est développée en langage C++ et les tests sont fait dans une machine Pentium Dualcore 3GHZ, 1Go de RAM. La figure 4 représente l'écran d'accueil de l'application à partir duquel on peut accéder aux différents algorithmes (AIRS/ AIRS2/ AIRS3) et choisir la base de données (LD ou HSS). 50 Chapitre V: Etude expérimentale Figure 4. Ecran d'accueil Dans ce qui suit on présentera l'application en montrant les écrans des résultats qu'on a obtenu. La présentation sera organiser suivant la base de données utilisée. V.3.1 Présentation logiciel: LD DATASET La figure 5 montre le résultat des tests de classification obtenus après apprentissage en utilisant l'algorithme AIRS et la base de données LD. La précision de classification est de 62,07%. La figure 6 montre le résultat des tests de classification obtenus après apprentissage en utilisant l'algorithme AIRS2 et la base de données LD. La précision de classification est de 67,82%. 51 Chapitre V: Etude expérimentale Figure 5. Résultats des tests de classification (AIRS/LD) Figure 6. Résultats des tests de classification (AIRS2/LD) 52 Chapitre V: Etude expérimentale La figure 7 montre le résultat des tests de classification obtenus après apprentissage en utilisant l'algorithme AIRS3 et la base de données LD. La précision de classification est de 73,56%. Figure 7. Résultats des tests de classification (AIRS3/LD). Les figures 8,9 et 10 montrent des graphes représentant le nombre de cellules testées par des antigènes pour chaque cycle d'apprentissage. La dernière valeur représente le nombre de cellules testées à la fin de l'apprentissage. On peut voir clairement que l'incrémentation du nombre de cellules ne se fait pas pour chaque cycle ce qui veut dire qu'il y'a des cellules mémoires qui sont re-testées. Les figures 8 et 9 montrent que le nombre de cellules testées à la fin de la phase d'apprentissage pour AIRS et AIRS2 n'est pas égal au nombre total de cellules utilisées pour la classification. 68/100 pour AIRS et 70/100 pour AIRS2 53 Chapitre V: Etude expérimentale Figure 8. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS/LD). Figure 9. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS2/LD). 54 Chapitre V: Etude expérimentale La figure 10 montre que toutes les cellules utilisées pour la classification dans AIRS3 sont testées (50/50). Figure 10. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS3/LD). Pour chacun des algorithmes AIRS/AIRS2 et AIRS3 l'application propose une interface pour faire des classifications. La figure 11 présente cette interface. L'utilisateur doit saisir les 6 paramètres: mcv mean corpuscular volume (Volume Globulaire Moyen); alkphos alkaline phosphotase; SGPT aminotransférase alanine DGOT aspartate aminotransferase; gammagt gamma-glutamyl transpeptidase; Nombre de boissons alcoolisées par jour; 55 Chapitre V: Etude expérimentale Le résultat est: Pas de troubles du foie. Trouble du foie Figure 11. Interface de classification (AIRS/LD). V.3.2 Présentation logiciel: HSS DATASET La figure 12 montre le résultat des tests de classification obtenus après apprentissage en utilisant l'algorithme AIRS et la base de données HSS. La précision de classification est de 77,92%. La figure 13 montre le résultat des tests de classification obtenus après apprentissage en utilisant l'algorithme AIRS2 et la base de données HSS. La précision de classification est de 85,71%. 56 Chapitre V: Etude expérimentale Figure 12. Résultats des tests de classification (AIRS/HSS) Figure 13. Résultats des tests de classification (AIRS2/HSS) 57 Chapitre V: Etude expérimentale La figure 14 montre le résultat des tests de classification obtenus après apprentissage en utilisant l'algorithme AIRS3 et la base de données HSS. La précision de classification est de 87,01%. Figure 14. Résultats des tests de classification (AIRS3/HSS). Les figures 15,16 et 17 montrent des graphes représentant le nombre de cellules testées par des antigènes pour chaque cycle d'apprentissage. La dernière valeur représente le nombre de cellules testées à la fin de l'apprentissage. On peut voir clairement que l'incrémentation du nombre de cellules ne se fait pas pour chaque cycle ce qui veut dire qu'il y'a des cellules mémoires qui sont re-testées. Les figures 15 et 16 montrent que le nombre de cellules testées à la fin de la phase d'apprentissage pour AIRS et AIRS2 n'est pas égale au nombre total de cellules utilisées pour la classification. 58/100 pour AIRS et 63/115 pour AIRS2 58 Chapitre V: Etude expérimentale Figure 15. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS/HSS). Figure 16. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS2/HSS). 59 Chapitre V: Etude expérimentale La figure 17 montre que toutes les cellules utilisées pour la classification dans AIRS3 sont testées (41/41). Figure 17. Graphe des cellules testées pour chaque cycle d'apprentissage (AIRS3/HSS). Pour chacun des algorithmes AIRS/AIRS2 et AIRS3 l'application propose une interface pour faire des classifications. La figure 18 présente cette interface. L'utilisateur doit saisir les 3 paramètres: 1. L'Age du patient lors de l'intervention; 2. L'Année de l'opération 3. Nombre de ganglions auxiliaires détectés; Le résultat est: Grandes chances de survie. Chances de survie réduites. 60 Chapitre V: Etude expérimentale Figure 18. Interface de classification (AIRS/HSS). V.4 Résultats et interprétations On récapitulera dans cette partie les différents résultats qu'on a trouvés à l'aide de l'application présentée ci-dessus et on fera un comparatif avec d'autres méthodes qu'on a trouvé dans la littérature. V.4.1 Paramétrage La phase d'initialisation est la première phase d'apprentissage. La création des ensembles initiaux de cellules mémoires (M) et d’ARB (P) se fait par un nombre aléatoire de cellules. La phase d'apprentissage nécessite la définition de quelques paramètres. Ils sont présentés dans le tableau 3 61 Chapitre V: Etude expérimentale Paramètre Signification Taux maximum de hyper_clonal_rate clonage Taux moyen de Clonal_rate clonage Probabilité de Mutate_rate mutation Domaine de valeurs Valeur choisie N 30 N 20 [0,1] 0.1 [0,1] 0.9 Echelle de distance entre cellules d’un Group_Scalar(GS) GAH (pour AIRS3) Tableau 3. Paramètres d’apprentissage V.4.2 Résultats expérimentaux IV.4.2.1 Résultats expérimentaux pour la base de données LD Le tableau 4 présente une comparaison entre différentes méthodes de classification en utilisant la base données LD (Liver Disorders) y compris les méthodes que nous avons implémenté AIRS,AIRS2 et AIRS3. Algorithme Précision de classification C4.5 65,5% Naïve Bayes 63,4% BNNF 61,4% BNND 61,8% SVM 69,2% AIRS 62,07% AIRS2 67,82% AIRS3 73,56% Tableau 4. Comparaison des méthodes de classification (LD Dataset) 62 Chapitre V: Etude expérimentale D'après ce tableau comparatif on peut voir que AIRS et AIRS2 donnent des résultats moyens par rapport aux autres méthodes (62,07 et 67,82% respectivement). AIRS3 montre une très grande capacité de classification avec une précision de 73,56%. Le tableau 5 est un tableau comparatif pour les trois algorithmes AIRS, AIRS2 et AIRS3. Le tableau compare les résultats d'apprentissage et de classification en utilisant Liver Disorders dataset. Nombre de cellules Précision mémoires utilisées Nombre de cellules pour la mémoires testées classification AIRS 62,07% 100 68 AIRS2 67,82% 100 70 AIRS3 73,56% 50 50 Tableau 5. Tableau comparatif pour AIRS, AIRS2 et AIRS3 (LD Dataset) Les résultats de classification et d’optimisation d'AIRS3 sont très satisfaisants: La précision de classification est améliorée 73,56% pour AIRS3 par rapport à 62,07% et 67,82% pour AIRS et AIRS2 respectivement en utilisant LD Dataset, ce qui représente une amélioration considérable. Le nombre de cellules mémoires résultantes de la phase d'apprentissage et utilisées pour la classification est un autre paramètre très important vu qu'il a un impact directe sur la vitesse de la classification. Dans AIRS3 le nombre de cellules mémoires utilisées pour la classification est très réduit par rapport à AIRS et AIRS2. On remarque une réduction de 50% de ce nombre: 100 cellules mémoires pour la classification avec AIRS et AIRS2 et 50 cellules mémoires pour AIRS3. Le nombre de cellules résultantes testées est un autre avantage d'AIRS3 qu'on peut remarquer dans ce tableau. Toutes les cellules mémoires retenues pour la phase de classification (50) sont testées par des antigènes et sont donc capable de faire une bonne 63 Chapitre V: Etude expérimentale classification, par contre on trouve 32 cellules mémoires qui ne sont pas testées dans AIRS et 30 cellules mémoires non testées pour AIRS2. Ces cellules qui ne sont pas testées peuvent donner de faux résultats de classification et ne sont pas fidèles à la métaphore du système immunitaire qui oblige le système à vérifier toutes les cellules avant de les activer. IV.4.2.2 Résultats expérimentaux pour la base de données HSS Le tableau 6 présente une comparaison entre différentes méthodes de classification en utilisant la base données HSS (Haberman Surgery Survivor) y compris les méthodes que nous avons implémenté AIRS,AIRS2 et AIRS3. Algorithme Précision de classification SVM 71,2% ISVM 62,7% Logical functions 66,2% AIRS 77,92% AIRS2 85,71% AIRS3 87,01% Tableau 6. Comparaison des méthodes de classification (HSS Dataset) D'après ce tableau comparatif on peut voir que AIRS et AIRS2 donnent de meilleurs résultats par rapport aux autres méthodes (77,92% et 85,71% respectivement). AIRS3 montre une très grande capacité de classification avec une précision de 87,01%. Le tableau 7 est un tableau comparatif pour les trois algorithmes AIRS, AIRS2 et AIRS3. Le tableau compare les résultats d'apprentissage et de classification en utilisant HSS (Haberman Surgery Survivor). 64 Chapitre V: Etude expérimentale Nombre de cellules Précision mémoires utilisées Nombre de cellules pour la mémoires testées classification AIRS 77,92% 100 58 AIRS2 85,71% 115 63 AIRS3 87,01% 41 41 Tableau 7. Tableau comparatif pour AIRS, AIRS2 et AIRS3 (HSS Dataset) Les résultats de classification et d’optimisation d'AIRS3 sont très satisfaisants en utilisant HSS: La précision de classification est améliorée 87,01% pour AIRS3 par rapport à 77,92% et 85,71% pour AIRS et AIRS2 respectivement en utilisant HSS Dataset, ce qui représente une amélioration assez bonne. Le nombre de cellules mémoires résultantes de la phase d'apprentissage et utilisées pour la classification est un autre paramètre très important vu qu'il a un impact directe sur la vitesse de la classification. Dans AIRS3 le nombre de cellules mémoires utilisées pour la classification est très réduit par rapport à AIRS et AIRS2. On remarque une réduction de 50% de ce nombre: 100 cellules mémoires pour la classification avec AIRS 115 pour AIRS2 et 41 cellules mémoires pour AIRS3. Le nombre de cellules résultantes testées est un autre avantage d'AIRS3 qu'on peut remarquer dans ce tableau. Toutes les cellules mémoires retenues pour la phase de classification (41) sont testées par des antigènes et sont donc capable de faire une bonne classification, par contre on trouve que dans AIRS 42 cellules mémoires ne sont pas testées et 52 cellules mémoires non testées pour AIRS2. Ces cellules qui ne sont pas testées peuvent donner de faux résultats de classification et ne sont pas fidèles à la métaphore du système immunitaire qui oblige le système de vérifier toutes les cellules avant de les activer. 65 Chapitre V: Etude expérimentale V.5 Conclusion Dans ce chapitre nous avons présenté une étude expérimentale pour tester les capacités de classification d'AIRS et AIRS2 ainsi que les résultats de notre amélioration de ces deux algorithmes que nous avons appelé AIRS3. Les résultats de classification d'AIRS et AIRS2 sont bons en les comparant avec d'autres algorithmes. AIRS3 a donné de meilleurs résultats et a montré de grandes capacités de classification ainsi qu'une grande réduction des ressources utilisées pour la classification. 66 Conclusion générale Conclusion générale Le développement de l'intelligence des machines a toujours été un problème fondamental dans le domaine informatique. Une des caractéristiques de l'intelligence humaine les plus intéressantes, est la capacité d'apprendre et de s'améliorer avec l'expérience. L'apprentissage a été largement étudié, et pourtant, on cherche toujours de meilleurs programmes et méthodes d'apprentissage. On fait cela pour deux raisons: La première raison est que l'homme veut que l'ordinateur puisse résoudre des problèmes du monde réel à sa place et la deuxième concerne le fait qu'on veut découvrir ce que l'apprentissage et l'intelligence et savoir plus sur la nature de notre propre intelligence et sur nos capacités d'apprendre. Dans ce travail on a étudié le problème de classification de données médicales en suivant les méthodes d'apprentissage inspirées du système immunitaire humain. On a présenté le système immunitaire naturel et les systèmes immunitaires artificiel. On a ensuite étudié un système de classification basé sur la métaphore immunitaire qui est AIRS et on a essayé de proposé des solutions aux faiblesses qu'il présente. À la fin de ce travail on a présenté une étude expérimentale en se basant sur les résultats qu'on a pu avoir avec le logiciel développé durant la préparation de cette thèse. Contribution Dans le cadre de ce travail on a étudié les capacités de classification des données médicales pour l'algorithme AIRS et pour son successeur AIRS2. On a aussi étudié les faiblesses que présentent ces deux algorithmes et on a essayé de les corriger. L'algorithme qu'on a proposé (AIRS3) est plus rapide dans sa phase d'apprentissage puisqu'il utilise des groupes d'antigènes et non pas un seul antigène ce qui réduit le nombre de cycles d'apprentissage, et assure une meilleure classification vu qu'il assure le test de toutes les cellules retenues pour la phase de classification. Les résultats obtenus pour AIRS3 sont très satisfaisants, on a remarqué une amélioration en terme de rapidité et de précision de classification. 67 Conclusion générale Perspectives On espère pour l'avenir essayer d'utiliser d'autres distances (autres que la distance euclidienne) pour calculer la ressemblance entre antigène et anticorps. Un autre point important est l'étude de la diversité des cellules utilisées. Et essayer d'exploiter les avantages de chaque type de cellules. La distribution de l'apprentissage est un autre point à étudier vu la lourdeur de l'apprentissage dans ce type de systèmes. 68 Bibliographie Bibliographie [AIC 02] U Aickelin et S Cayzer, The danger theory and its application to artificial Immune systems, In J Timmis and P J Bentley, editors, Proceedings of the 1st International Conference on Artificial Immune Systems (ICARIS), volume 1, pages 141–148, University of Kent at Canterbury, September 2002. [AIC 03] U Aickelin, Peter J. Bentley, Steve Cayzer, Jungwon Kim, et Julie McLeod. Danger theory: The link between ais and ids? In Jon Timmis, Peter J. Bentley, and Emma Hart, editors, ICARIS, volume 2787 of Lecture Notes in Computer Science, pages 147–155. Springer, 2003. [BUR 00] Burgess, M, Evaluating Cfengine’s Immunity Model of Site Maintenance, Proceedings of the 2nd SANE system administration conference (USENIX/NLUUG), 2000. [CAS 00] De Castro.L.N et Von Zuben.F.J, The clonal selection algorithm with engineering application, Proc of GECCO00, Workshop Proceeding, 36-37, 2000. [CHE 01] Cheung, N.: (2001). Machine learning techniques for medical analysis. BSc thesis, School of Information Technology and Electrical Engineering, University of Queensland, Australia (2001). [COU 91] F. Varela and A. Coutinho. Second generation immune networks, Immunol Today, 12:159–167, 1991. [DAS 99] D. Dasgupta, Artificial Immune Systems and Their Applications, Springer-Verlag, Inc. Berlin, January 1999. [DEC 00] Leandro Nunes de Castro et Fernando J. Von Zuben, An evolutionary immune network for data clustering, In SBRN ’00: Proceedings of the VI Brazilian Symposium on Neural Networks (SBRN’00), page 84, Washington, DC, USA, 2000. IEEE Computer Society. [DEC 02] de Castro L. N., F. J. et Von Zuben, Learning and optimization using 69 Bibliographie the clonal selection principle. IEEE Transactions on Evolutionary Computation, 2002. [DEC 04] Leandro N. de Castro et Jonathan Timmis, Artificial Immune Systems: A New Computational Intelligence Approach, Springer-Verlag, September 2002. [DOM 05] Domm, M., Engel, A., Louis, P. P., Goldberg, J.: An integer support vector machine. 6th international conference on software engineering, artificial intelligence, networking and parallel/distributed. Towson, MD, USA (2005). [DRO 04]: Vincent Rodin, Contribution à l'utilisation de l'informatique en biologie, Institut de Formation Supérieure en Informatique et en Communication, HDR,Université de Rennes, 2004. [FAR 86] J D Farmer, N H Packard et A S Perelson, The immune system, adaptation, and machine learning, Phys. D, 2(1-3):187–204, 1986. [FOR 94] Stephanie Forrest, Alan S. Perelson, Lawrence Allen, et Rajesh Cherukuri, Selfnonself discrimination in a computer, In SP ’94: Proceedings of the 1994 IEEE Symposium on Security and Privacy, page 202, Washington, DC, USA, 1994. [FOR 96] Forrest .S, Hofmeyr. S, Somayaji .A et Longstaff .T, A sense of self for Unix processes, Proceedings of the 1996 IEEE Symposium on research in Security and Privacy, 120-128, 1996. [FRE 06] Freitas, A1.Timmis, J.2: Re-visiting the Foundations of Artificial Immune Systems for Data Mining, 1University of Kent, 2University of York (2006). [GHA 06]: Mokhtar Gharbi, Optimisation grâce aux Systèmes Immunitaires Artificiels, Rapport de stage de Master 2 Recherche Informatique, l’Ecole Nationale d’Ingénieurs de Brest, 2006. [GYE 08] Gyen, h. Pham ,A., Triantaphyllou, E.: An application of a new meta-heuristic for optimizing the classification accuracy when analyzing some medical datasets, Department of Computer Science, Louisiana State University (2008). 70 Bibliographie [JER 74] Niels K. Jerne, Towards a network theory of the immune system, Ann. Immunol. (Inst. Pasteur), 125C:373–389, 1974. [KEC 01] Kecman, V. Arthanari, T. Comparisons of QP and LP based learning from empirical data. In L. Monostori, J. V´ ancza, et M. Ali (Eds.), LNCS and LNAI. New York, NY, USA: Springer (Juin 2001). [KHE 06] Hiba KHELIL, Application des systèmes immunitaires artificiels pour la reconnaissance des formes, Université des Sciences et de la Technologie d’Oran -Mohamed Boudiaf, 2007. [KIM 02]: J. Kim, Integrating Artificial Immune Algorithms for Intrusion Detection, PhD Thesis, University College London, 2002. [MAT 01]: Polly Matzinger, The danger model in its historical context. Scandinavian journal of immunology, 54:4–9, 2001. [MIT 96] Mitsumoto. N, Fukuda.T et Idogaki. T, Self-Organising Multiple Robotic System , Proceedings of IEEE International Conference on Robotics and Automation, Pp. 1614-1619. Minneapolis, USA. IEEE,1996 [MOR 98] Mori. K, Tsukiyama. M et Fukuda. T, Adaptive Scheduling System Inspired by Immune System, Proceeding of IEEE Systems, Man and Cybernetics, pp.3833- 3837, 1998. [OKA 99] Okamoto, T et Ishida, Y, A Distributed Approach to Computer Virus Detection and eutralization by Autonomous and Heterogeneous Agents, the Proceeding of the SADS.99, pp.328-331. 1999. [PER 79] A. Perelson et G. Oster, Theoretical studies of clonal selection: minimal antibody repertoire size and reliability of self-non-self discrimination. J. Theor. Biol., 81:645–670, 1979. [SHE 07] Shevked, Z., Dakovski, L.: Learning and classification with prime implicants applied to medical data diagnosis. In proceedings of the 2007 international conference on computer systems and technologies, Rousse, Bulgaria (Juin 2007). 71 Bibliographie [SMI 97] Derek J. Smith, Stephanie Forrest, Ron R. Hightower, et Alan S. Perelson, Deriving shape space parameters from immunological data for a model of cross-reactive memory, Working Papers 97-03-017, Santa Fe Institute, March 1997. [SOM 00] Somayaji. A et Forrest. S, Automated response using system-call delays, Proceedings of the ninth USENIX Security Symposium, 185-197, 2000. [TIM 00] Jon Timmis et Mark Neal. Investigating the evolution and stability of a resource limited artificial immune system, In A.S.Wu, editor, Special Workshop on Artificial Immune Systems, Gentic and Evolutionay Computation Conference (GECCO) 2000, Workshop Program, pages 40–41, Las Vegas, Nevada, U.S.A., July 2000. [TIM 04]: J. Timmis, T. Knight, L.N. De Castro et E.Hart, An overview of Artificial immune Systems, Natural computation series, pages 51-86, Springer, 2004. [VAN 02] Van, G. T., Suykens, J. A. K., Lanckriet, G., Lambrechts, A., de Moor, B., et Vandewalle,J.: Bayesian framework for least squares support vector machine classifiers Gaussian processes and Kernel Fisher discriminant analysis. Neural Computation (2002). [WAT 05] Watkins. A, Exploiting immunological metaphors in the development of serial, parallel, and distributed learning algorithms, PhD, Kent university, 2005. 72 Mes Contributions Mes contributions MERAD Badr, BELKADI Khaled, Amélioration de l'algorithme AIRS (Artificial Immune Recognition System). Application à la classification de données médicales. JDLIO'11 (Journées Doctorales du Laboratoire d'Informatique d'Oran) 2011. MERAD Badr, BELKADI Khaled, Amélioration de l'algorithme AIRS (Artificial Immune Recognition System). Application à la classification de données médicales. Rencontres sur la Recherche en Informatique (R2I) TIZI-OUZOU 2011. 73 Résumé Dans ce travail on s'intéresse à la classification de datasets médicales en utilisant un système immunitaire artificiel (SIA). On propose une amélioration de l'algorithme "AIRS" de Watkins qui présente deux faiblesses: La première est le fait que l'activation de cellules mémoires dans AIRS se fait par un seul antigène (qui peut présenter des données bruitées). Ce mémoire présente une méthode pour activer les cellules par groupe d'antigènes homogènes. La deuxième faiblesse est le fait qu'AIRS ne test que les cellules mémoires sollicitées par des antigènes. On propose une méthode pour tester toutes les cellules mémoires et détruire celles qui ne sont plus capable de défendre le système. Les résultats expérimentaux montrent une amélioration de la précision de classification d'AIRS ainsi qu'une réduction (plus de 50%) des données utilisées pour la classification après apprentissage. Mots clés: Analyse de données médicales, classification, système immunitaire artificiel, antigène, mémoire immunitaire. Abstract In this work we focus on the classification of medical datasets using an artificial immune system (AIS). We propose an improvement of the Watkins’s algorithm "AIRS" who has two weaknesses: One is the fact that the activation of memory cells in AIRS is done by a single antigen (which may represent noisy data). This paper presents a method to activate the cells by homogeneous antigen group. The second weakness is the fact that AIRS does not test all memory cells. We propose a method to test all the memory cells and destroy those that are no longer capable of defending the system. Experimental results show an improvement classification accuracy of AIRS and reduction (over 50%) of the data used for classification after learning. Keywords: medical data analysis, classification, artificial immune system, antigen, immune memory.