• Aucun résultat trouvé

Contribution aux techniques et algorithmes évolutifs de traitement de l’information et de communication : Applications en télécommunications, sécurité et réseaux

N/A
N/A
Protected

Academic year: 2021

Partager "Contribution aux techniques et algorithmes évolutifs de traitement de l’information et de communication : Applications en télécommunications, sécurité et réseaux"

Copied!
156
0
0

Texte intégral

(1)

N° d’ordre 2323

THÈSE DE DOCTORAT D’ETAT

Présentée par

KADA Ahmed

Discipline : Physique

Spécialité : Automatique et Technologie de l’information

Titre : Contribution aux techniques et algorithmes évolutifs de traitement de

l’information et de communication : applications en télécommunications,

sécurité et réseaux

Soutenue le 03 janvier 2007

Devant le jury

Président :

DAHHOU Boutaib, Professeur à l’Université Paul Sabatier de Toulouse (Rapporteur)

Examinateurs :

HALOUA Mohamed, Professeur à l’Ecole Mohammedia d’Ingénieurs, Rabat (Rapporteur) NACCACHE David, Professeur à l’Université de Paris II (Rapporteur)

ABOUTAJDINE Driss, Professeur à la Faculté des Sciences, Rabat HAOUARI Ameur, Professeur à la Faculté des Sciences, Rabat

MAJDOUL Abderrahim, ancien Professeur à la Faculté des Sciences, Rabat

YOULAL Hussein, Professeur à la Faculté des Sciences, Rabat (Directeur de thèse)

Faculté des Sciences, 4 Avenue Ibn Battouta B.P. 1014 RP, Rabat – Maroc Tel +212 (0) 37 77 18 34/35/38, Fax : +212 (0) 37 77 42 61, http://www.fsr.ac.ma

FACULTÉ DES SCIENCES

(2)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 2/155

AVANT

AVANT

AVANT

AVANT----PROPOS

PROPOS

PROPOS

PROPOS

Le travail présenté dans cette thèse a été effectué au sein de l’équipe de recherche « Automatique et Technologies de l’Information », Département de Physique, Faculté des Sciences de Rabat, Université Mohammed V-Agdal.

Voici sûrement la partie la plus difficile de cette thèse, à savoir trouver assez de synonymes de « je remercie, je présente ma reconnaissance, etc.», pour pouvoir adresser mes remerciements à mon directeur de thèse, Monsieur YOULAL HusseinMonsieur YOULAL HusseinMonsieur YOULAL HusseinMonsieur YOULAL Hussein, , , , Professeur à la faculté des sciences de Rabat. Je ne saurais commencer ce mémoire sans lui exprimer ma sincère gratitude pour la qualité de son encadrement, la pertinence de ses suggestions et sa clairvoyance. Merci pour son soutien, ses conseils judicieux mais aussi pour la patience et la disponibilité dont il a su faire preuve à mon égard. J’ai également une petite pensée pour l’environnement de recherche durant ces longues séances de travail devant son ordinateur.

Il m’est particulièrement agréable d’exprimer ma plus sincère reconnaissance à MoMoMonsieur Monsieur nsieur nsieur DAHDAHDAHDAHHHHHOUOUOU OU Boutaib,

Boutaib, Boutaib,

Boutaib, Professeur à l’Université Paul Sabatier de Toulouse,pour l'honneur qu'il me fait en acceptant de présider mon jury de thèse. Je le remercie aussi pour avoir accepté la charge de rapporteur de cette thèse et avoir dégagé le temps, malgré ses responsabilités et son emploi du temps chargé, pour examiner en

profondeur ce travail et pour le regard apporté aux résultats de cette thèse.

Je souhaite également exprimer ma profonde gratitude à Monsieur Monsieur Monsieur Monsieur ABOUTAJDINE DrissABOUTAJDINE DrissABOUTAJDINE Driss, , , , ABOUTAJDINE Driss Professeur à la faculté des sciences de Rabat et examinateur de cette thèse, pour avoir accepté de faire parti de ce jury. Qu’il trouve ici mon profond respect.

Je remercie sincèrement et vivement Monsieur Monsieur Monsieur Monsieur HAOUARI Ameur,HAOUARI Ameur,HAOUARI Ameur, Professeur à la faculté des HAOUARI Ameur, sciences de Rabat,,,, d'avoir accepté de faire partie du jury de cette thèse en tant qu’examinateur. Qu’il trouve ici ma sincère gratitude.

Je tiens à témoigner ma plus profonde reconnaissance et à exprimer mes remerciements les plus sincères à Monsieur Monsieur Monsieur HALOUAMonsieur HALOUAHALOUAHALOUA Mohammed Mohammed Mohammed Mohammed, , , , Professeur à l’Ecole Mohammedia d’Ingénieurs de Rabat, qui a collaboré à l’édification, à la correction et à la mise en forme de ce manuscrit. Merci pour ses coups de mains, ses commentaires éclairés mais aussi pour s’être intéressé de près à ce travail de recherche. Je le remercie vivement pour sa participation au jury en qualité de rapporteur ainsi pour l’attention particulière et constante qu’il a portée à mes travaux.

Je veux tout particulièrement remercier Monsieur NACCACHEMonsieur NACCACHEMonsieur NACCACHE DavidMonsieur NACCACHEDavidDavid,,,, Professeur à l’Université de David Paris II, et lui présenter également ma profonde reconnaissance pour l’intérêt qu’il a manifesté à ce travail de recherche. Je lui adresse aussi mes vifs remerciements pour sa participation au jury de cette thèse en qualité de rapporteur. Qu’il trouve ici ma vive sympathie.

J'exprime mes sincères remerciements à Monsieur MAJDOUMonsieur MAJDOUMonsieur MAJDOUMonsieur MAJDOULLLL Abderrahim, Abderrahim, Abderrahim, Abderrahim, ancien professeur à la faculté des sciences de Rabat, pour l'honneur et le plaisir qu'il me fait en acceptant de participer à ce jury de thèse. Qu’il trouve ici ma profonde reconnaissance.

Je tiens à remercier également tous les membres de l’équipe de recherche « Automatique et

Technologies de l’Information », au sein de laquelle cette thèse a été élaborée, ainsi que tous mes collègues de travail à Poste Maroc.

(3)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 3/155

D

D

D

D

EDICACES

EDICACES

EDICACES

EDICACES

A la mémoire de mon père et ma grande mère

A la mémoire de mon père et ma grande mère

A la mémoire de mon père et ma grande mère

A la mémoire de mon père et ma grande mère

A ma mère

A ma mère

A ma mère

A ma mère

A mes trésors ahmed ADAM et ahmed NIZAR

A mes trésors ahmed ADAM et ahmed NIZAR

A mes trésors ahmed ADAM et ahmed NIZAR

A mes trésors ahmed ADAM et ahmed NIZAR

A ma femme

A ma femme

A ma femme

A ma femme

A toute ma famille

A toute ma famille

A toute ma famille

A toute ma famille

A mes amis et professeurs

A mes amis et professeurs

A mes amis et professeurs

A mes amis et professeurs

….Je dédie ce modeste travail

….Je dédie ce modeste travail

….Je dédie ce modeste travail

….Je dédie ce modeste travail

(4)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 4/155

SOMMAIRE

LISTE DES ABREVIATIONS...7

INTRODUCTION GENERALE...10

CHAPITRE I ALGORITHMES GENETIQUES (AG): CONCEPTS ET ASPECTS FONDAMENTAUX...14

I.1 Introduction ...15

I.1 Principes des algorithmes génétiques ...15

I.2 Caractéristique des algorithmes génétiques...16

I.3 Concepts et formalismes d’opérateurs génétiques...17

I.4 Formalismes du gabarit de similitude...20

I.4.1 Le schéma ...20

I.4.2 La reproduction « les schémas »...21

I.4.3 Le croisement « les schémas »...21

I.4.4 La mutation et les schémas ...22

I.5 Les grandes étapes de l'algorithme génétique...22

I.5.1 Caractéristiques de l’optimisation génétique...23

I.6 Conclusion ...24

CHAPITRE II RESEAUX DE NEURONE (RN) MODELES ET METHODES D’APPRENTISSAGE...25

II.1 Introduction ...26

II.1 Historique et état de l’art ...26

II.2 Espace et réseaux de neurones ...27

II.2.1 Auto organisation des réseaux « métrique sur le poids » ...28

II.2.2 Auto organisation des réseaux localement connecté ...29

II.3 Temps et réseaux de neurones...31

II.3.1 Fondement algorithmique du modèle temporel...31

II.3.2 Architectures neuronales temporelles ...32

II.4 Conclusion...37

CHAPITRE III ALGORITHMES DE CRYPTAGE (AC) : CONCEPTS, OPERATIONS ET FONCTIONS DE CRYPTAGE ...38

III. Introduction...39

III.1 Principes de base de la sécurité informatique ...39

III.2 Grands concepts des algorithmes cryptographiques ...41

III.3 Principaux procédés cryptographiques ...42

III.3.1 Les substitutions...42

III.3.2 Les transpositions...43

III.3.3 « Ou exclusif » simple ...43

III.4 Schémas de cryptage...44

III.4.1 Signature numérique (ou digitale)...44

III.4.2 Contrôle d’accès...45

III.5 Conclusion ...45

CHAPITRE IV PROCESSUS ET SYSTEMES HYBRIDES DE SECURITE DINFORMATION...46

IV.1 Introduction...47

IV.2 Algorithme de cryptage DES...47

IV.2.1 Principes de base de l’algorithme de cryptage DES ...47

IV.2.2 Cryptanalyse du DES...50

IV.2.3 Conception d’un algorithme de cryptage DES hybride ...51

IV.3 Algorithme de cryptage à clé extensible CLEX ...52

IV.4 Serveur firewall ...55

IV.4.1 Principe de fonctionnement du serveur firewall ...55

IV.4.1.1 Concept d’un filtrage de paquets ...57

IV.4.1.2 Concept d’une passerelle ...57

(5)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 5/155

IV.4.2.2 Attachement d’une socket à une adresse (association) ...59

IV.4.2.3 Etablissement d’une connexion ...60

IV.4.2.4 Mise d’un serveur à l’état d’écoute...60

IV.4.2.5 Acceptation de connexion par le serveur ...60

IV.4.2.6 Transfert de données...61

IV.4.2.7 Fermeture de connexion...63

IV.4.3 Approche neuronale utilisée pour la définition des classes. ...64

IV.5 Système de reconnaissance de mot de passe vocal en langue arabe ...66

IV.5.1 Analyse phonétique ...67

IV.5.2 Le processus d’identification de l’emprunte vocale basé sur la quantification vectorielle neuronale ...68

IV.5.3 Organigramme de l’algorithme de quantification vectorielle neuronale ...70

IV.5.4 Résultats des simulations ...72

IV.6 Codage et fusion basés sur les réseaux de neurones ...73

CHAPITRE V CONCEPTION ET SIMULATION DE TROIS SYSTEMS UTILISANT LES AG, RN ET AC DANS LES DOMAINES DE TELECOMMUNICATIONS, DE RESEAUX DE DISTRIBUTION ET DE RESEAUX DE TRANSFERT SECURISE DE DONNEES...78

V.1 Introduction...79

V.2 Conception et simulation d’un planificateur adaptatif de chemin pour le routage de données dans un réseau ...79

V.2.1. Contexte ...80

V.2.2 Planificateur adaptatif pour le routage de données ...81

V.2.3 Mécanisme de sécurité d’accès au réseau ...85

V.2.4 Module GPFA et métrique utilisée dans le planificateur ...87

V.2.5 Simulations...92

V.3 Algorithme génétique multivariable pour l'optimisation d'un réseau de distribution ...101

V.3.1 Description du problème ...101

V.3.2 Modélisation du réseau de distribution ...102

V.3.3 Algorithme génétique multivariable ...105

V.3.3.1 Population initiale ...106

V.3.3.2 Fonction d’évaluation...106

V.3.3.3 Les opérateurs de croisement et de mutation multivariables ...108

V.3.3.4 Processus de construction des chromosomes ...110

V.3.4 Simulation ...112

V.4. Conception, développement et simulation d'un réseau de transfert sécurisé de données Principaux116 V.4.1 Contexte du choix de l'exemple d'illustration ...116

V.4.2 Principaux blocs du chèque électronique ...116

V.4.3 Premier block de codage-fusion-cryptage...117

V.4.4 Deuxième block identification et authentification de la signature vocale...118

V.5 Conclusion ...119

ANNEXES CONCEPTION ET SIMULATION DE TROIS SYSTEMES TELEMATIQUES UTILISANT LES AG, RN ET AC DANS LE DOMAINE DE LOGISTIQUE « TRANSPORT ET DISTRIBUTION » ...121

Introduction...122

ANNEXE A: CONCEPTION ET SIMULATION DUN PLANIFICATEUR GENETQIUE DE CHEMIN POUR UNE TOURNEE DE FACTEUR...123

A.1 Introduction...124

A.2 Contexte ...124

A.3 Planificateur génétique de chemin pour une tournée de facteur ...125

A.4 Résultats de test...127

A.4.1 Protocole de test ...127

A.4.2 Tests et analyse des résultats...127

ANNEXE B: CONCEPTION D’UNE BOITE A LETTRE INTELLIGENTE BASEE SUR UN MOT DE PASSE VOCAL ...131

(6)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 6/155

B.2 Contexte. ...132

B.3 Architecture fonctionnelle et technique d’une boite à lettre intelligente...133

B.3.2 Aperçu sur les fonctionnalités de la boite à lettre intelligente...133

B.3.3 Aperçu sur l’architecture conceptuelle de la boite à lettre intelligente ...133

B.3.4 Conception du système de gestion des boites à lettre intelligentes ...134

B.3.4.1 Description de l’application ...134

B.3.4.2 Description de la configuration physique des boites à lettre intelligente ...140

ANNEXE C : SYSTEME DE RECONNAISSANCE DE CODES POSTAUX...142

C.1 Introduction ...143

C.2 Schéma neuronal ...143

C.3 Résultat des tests ...145

Conclusion ...146

CONCLUSION GENERALE...147

(7)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 7/155

L

ISTE DES

A

BREVIATIONS

AAR : Algorithme d’Apprentissage Rapide AC(s) : Algorithme(s) de Cryptage(s) AG(s) : Algorithme(s) Génétique(s)

AGRA : Algorithme Génétique de Routage Adaptatif ATI : Automatique et Technologie de l'Information BP: Bande Passante

BSR : meilleur ensemble de trajets

CARP : Contrôle d’Accès au Réseau par Profil utilisateur CDD : Centre de Distribution Domiciliaire

CHi : CHromosome i

CHEL : CHèque ELectronique. CL : Classe de vecteur

C(P) : Coût total de ce chemin P

CLEX : algorithme de Cryptage à cLé EXtensible CSET : Certificate Secure Electronic Transaction CWCV : variance cumulée

DES : Data Encryption Standard DT : Délai de Transmission

DSA : Distributed Systems Architecture Fe(P) : Fonction d’évaluation d’un chemin P FF : First Formant

FNR : premier sous réseau

GPFA : module de Gestion de Priorité de File d'Attente SNR : deuxième sous réseau

(8)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 8/155

FTP : File Transfert Protocol

KLVQ : quantification adaptative du réseau de Kohonen LVQ : quantification vectorielle adaptative

MLP : Multi Layer Perceptron

MRN : Modèle de Réseau de Neurones

MRNI : Modèle Inverse de Réseau de Neurones Nci : nœud de collecte

Ncaij : nœud « rom-points »

Ndi : nœud de livraison

Nfij : le noeud le plus éloigné du CDD

Nnij : le nœud plus proche du CDD

PL : Point de Livraison

PAPS : Premier Arrivé – Premier Servi

PB : Probabilité de Blocage PBS : durée du phonème au début de la phrase PKIX : Public-Key Infrastructure X.509

OSPF : Open Shortest Path First

PES : durée du phonème à la fin de la phrase

PMES : durée du phonème au milieu et fin de la phrase PS : Prestation de Service

QdS : Qualité de Service.

QSAR : Quantitative Structure Activity Relation ship RN : Réseaux de Neurones

RNA : Réseau de Neurones d’Anticipation RNR : Réseau Neuronal Récurrent

(9)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 9/155

RSA : data security public key encryption algorithms created by ron Rivest, adi Shamir and leonard Adleman

RZC : vitesse de passage zéro Seti : Ensemble de trajets

SIG : Système d’Information Géographique SMS : Short Message Services

SR : Sous Réseau SRP : Meilleur trajet

SRPB : trajet de substitution SSL : Secure Socket Layer TP : Taux de perte

TELNET : Utilitaire de connectivité TCP/IP permettant la connexion en mode terminal (ouverture de session)

TCP : Transmission Control Protocol TDNN : Time Delay Neural Network TI : Technologies de l’Information UDP : User Datagram Protocol VPN : Virtual Private Network WD : Word Duration

(10)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 10/155

I

NTRODUCTION

G

ENERALE

Le développement d’outils d'accès intelligents à l'information multimédia en passant par la modélisation, le partage et l'échange de données produit un ensemble de services croisés et complexes pour l'intercommunication entre différents formats de données. Ceci représente un défi pour un grand nombre de techniques d’optimisation et de conception en traitement de l’information (Mandal et al, 2005 ; Chen et al, 1998 ; U.S. department of commerce, 2002). En plus, avec l’accroissement spectaculaire des applications sur le net et l’augmentation exponentielle des connexions réseau, les systèmes d’informations constituent maintenant des biens essentiels qui appuient la mission d’un processus. Leurs protections sont aussi cruciales que celles des autres ressources organisationnelles telles que l’argent, les biens matériels ou les employés (Shim et al, 2000 ; Menezes et al, 1996).

Donc, la conception et la mise en oeuvre d'architectures de réseaux sécurisés en traitement de l’information destinés aux applications qui traitent des conflits interdépendants avec des topologies optimales de connexions, de routage et de capacité de liens deviennent une nécessité vitale (Wang et al, 2004 ; Montana, 1998). Plusieurs applications, comme la vidéoconférence, la certification électronique, la navigation et la reconnaissance des formes sont sensibles aux contraintes de qualité de service. Pour accommoder ces diverses exigences, les réseaux de télécommunications ou de distribution requièrent l’emploi d’algorithmes de routage, de modélisation, de codage, de cryptage et d’apprentissage efficaces et capables de répondre aux critères de qualité de service (Pujolle, 2000 ; Sinclair, 1999 ; Webb et al, 1998).

Le présent travail de recherche est réalisé au sein de l’équipe de recherche « Automatique et Technologie de l’Information (ATI)» à la Faculté des Sciences de Rabat. Il concerne la conception et le développement des techniques et algorithmes évolutifs de traitement de l'information. Ces techniques et algorithmes sont issus des approches génétiques, neuronales et cryptographiques. Celles-ci se sont révélées performantes et efficaces dans les domaines des télécommunications et réseaux (Hedible et al, 2003 ; Tank et al, 2001). L’objectif de ce travail est double : contribuer d’une part à évaluer les performances des approches qui découlent des processus de réflexion et de communication humain en traitement de l'information et d’autre part, développer et simuler des algorithmes et techniques qui permettent de résoudre des problèmes de modélisation, d'optimisation et de sécurisation des processus ayant trais aux domaines des télécommunication et des réseaux.

(11)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 11/155 En outre, ce travail de recherche s’inscrit dans le cadre de la continuité des travaux de recherche en automatique et traitement de signal et images menés au sein de l’équipe Automatique et Technologie de l’Information (ATI). En effet, ces travaux ont mis en évidence les performances des algorithmes neuronaux vis-à-vis de l'apprentissage et la modélisation des dynamiques non linéaires (Youlal et al, 1994-"a, c, d" et 1995 ; Kada, 1995), de la reconnaissance en traitement d’images (El-ismaili, 1996) et de la capacité des algorithmes génétiques à optimiser les processus de planification de chemin (Juidette, 2002).

Motivations du travail

La motivation de cette recherche provient d’une part, de la possibilité d’étudier les potentialités et les performances des approches génétiques, neuronales et cryptographiques et d’autre part, de l’aspect multidisciplinaire qui caractérise le champ de leurs applications. En effet, nous allons approfondir des concepts et développer des algorithmes qui permettent l'amélioration et l’interprétation des résultats de l’intégration de ces approches dans des processus de traitement de l'information et de communication. Trois domaines seront considérés. Il s’agit des domaines des télécommunications, des réseaux et de sécurité.

Méthodologie

L’approche adoptée dans ce travail est basée sur la conception, le développement et la simulation des architectures qui peuvent répondre à certains besoins du domaine des technologies de l’information et de communication. Ces architectures sont basées sur la modélisation fonctionnelle, l’optimisation et la sécurisation des processus des réseaux de transport. La non linéarité des fonctions régissant les processus et la multiplicité des configurations topologiques possibles, des réseaux considérés dans ce travail, contribuent à rendre complexe le problème de conception. Il s’ensuit que les approches de résolution exacte ne peuvent garantir une solution optimale à moindre coût, ce qui limite en faveur des méthodes heuristiques capables de fournir au prix d’un effort de calcul non prohibitif de bonnes solutions faisables, non nécessairement optimales (Webb et al, 1998). Les méthodes de modélisation et d'optimisation proposées sont basées sur des algorithmes évolutifs AG et RN associés aux techniques de cryptage pour résoudre des problèmes de sécurité de l'information.

Les champs d’applications liées à ce travail concernent la reconnaissance des formes et de parole, le codage, la fusion, le routage, l’optimisation des réseaux de transport, le contrôle d’accès et la sécurité de l’information.

(12)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 12/155

Contributions de la présente thèse

Les apports de ce travail se situent sur différents plans :

•sur le plan méthodologique, nous montrons la faisabilité d’intégrer les algorithmes génétiques, neuronaux et/ou cryptographiques pour modéliser, optimiser et sécuriser des processus fonctionnels ayant trait à différents champs d’applications des technologies de l’information et de communication.

•sur le plan développement algorithmique,

 concernant les algorithmes génétiques, nous proposons de nouveaux opérateurs génétiques et méthodes d’adaptation. En outre, nous présentons un nouveau processus de construction de chromosomes qui introduit une moulinette. Cette moulinette utilise une base de connaissance, concernant le problème considéré, pour le choix des liens des chromosomes. Ces méthodes et opérateurs sont utilisés pour l'élaboration des systèmes de routage de données et d'optimisation de réseau de distribution (Kada et al, 2005-a).

 concernant les réseaux de neurones, nous développons un mode d’apprentissage par étage pour assurer des opérations de codage et de fusion et nous adaptons des modèles neuronaux pour le reconnaissance de l'emprunte vocale (Kada et al, 2005-c ; Youlal et al, 1996-"a, b").

•sur le plan des applications, notre implication au sein de l'équipe de recherche Automatique et Technologie de l’Information (ATI), dans les domaines de l'algorithmique évolutif et cryptographique, nous a permis de développer des applications télématiques et des services à valeur ajoutée dans le cadre de notre activité professionnelle à POSTE MAROC. Celles-ci sont référencées en annexes, à savoir : un planificateur de chemin pour l’optimisation d’une tournée facteur, une boîte à lettre intelligente (Kada et al, 2005-b) et un système de reconnaissance de code postale (Kada et al, 1997). Concernant les algorithmes de cryptage, nous proposons un algorithme de cryptage à clé extensible et une variante hybride de l’algorithme de cryptage DES. Ces algorithmes sont utilisés pour élaborer des systèmes sécurisés d'échange de données sur le net (Kada et al, 1999).

Organisation du document

Ce document est organisé en cinq chapitres et trois annexes. Nous étudions tout d’abord au niveau du premier chapitre les concepts de base des algorithmes génétiques.

(13)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 13/155 Au troisième chapitre, nous présentons les principaux concepts et formalismes utilisés dans le domaine de la cryptographie.

Nous proposons dans le quatrième chapitre des techniques pour sécuriser l’information, à savoir : un système de codage et de fusion, des algorithmes de cryptage, un serveur firewall et un module de signature vocale.

Le cinquième chapitre relate une compilation des approches neuronales et génétiques avec les techniques de sécurité de l’information pour l’intégration, la conception et la simulation des systèmes de traitement de l’information. Trois domaines seront considérés : les domaines de télécommunications, de réseaux de distribution et de réseaux de transfert sécurisé de données.

Par référence à mon activité professionnelle à POSTE MAROC des tests de faisabilité des techniques et algorithmes évolutifs de traitement de l'information, proposés sur des processus de logistique « transport et distribution », sont portés en annexes. Nous exposerons respectivement au niveau des annexes I, II et III les mises en œuvre d'un planificateur de chemin pour une tournée de facteur, d'une boite à lettre intelligente et d'un système de reconnaissance de codes postaux. En conclusion générale, nous récapitulons les résultats dégagés par ce travail de recherche en soulignant notre contribution aux différentes applications rapportées dans ce mémoire.

(14)

C

HAPITRE I

ALGORITHMES GENETIQUES

(

AG

)

:

(15)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 15/155

I.1 Introduction

En dépit du fait que les premiers travaux sur le sujet remontent aux années cinquante, le développement des techniques de solution de problèmes basées sur les principes d’héritage et d’évolution naturelle a été mis en évidence au courant des années soixante dix. Parmi ces techniques ressort l’algorithme génétique. Cet algorithme a démontré de très bons résultats dans la résolution de problèmes d’origine combinatoire.

Les méthodes classiques d’exploration sont de trois types : les méthodes directes et indirectes (fondées sur le calcul), les méthodes énumératives et les méthodes aléatoires. L’algorithme génétique est un exemple de procédure pseudo aléatoire qui utilise un choix aléatoire pour guider une exploration dans un espace de recherche (Juidette, 2002). En effet, l’AG est une technique de solution aux problèmes d'optimisation combinatoire fondée sur les principes d’évolution naturelle et d’héritage. A partir d’un ensemble de solutions (nommées population ou ensemble de chromosomes parents), l’algorithme se sert des opérateurs génétiques pour obtenir de nouvelles solutions (ensemble d’enfants), souvent meilleures selon un critère d’évaluation donné. Le processus prend après comme population la nouvelle génération et ainsi de suite. La condition d’arrêt du processus et la grandeur de la population initiale sont définies selon des tests expérimentaux, en fonction des connaissances du problème traité.

Une des premières applications des AG dans le domaine d’ingénierie fut proposée par Goldberg en 1989 pour l’optimisation et l’apprentissage d’un processus de contrôle de gazoducs (Goldberg, 1994). Dés lors et grâce à leur simplicité de calcul et leurs performances, l’apprentissage et l’optimisation par les AG sont devenus des processus de recherches efficaces qui permettent de s’approcher de la solution optimale.

Dans ce chapitre, nous exposerons l'algorithme génétique en tant que méthode heuristique de résolution des problèmes d'optimisation combinatoire. Dans un premier temps, nous ferons une illustration des principes de base des AG. En deuxième lieu, nous relatons leurs caractéristiques, puis nous présentons successivement les concepts d'opérateurs génétiques, les formalismes du gabarit de similitude et les grandes étapes de l’algorithme génétique. En fin nous ferons un état de synthèse de ce chapitre.

I.1 Principes des algorithmes génétiques

Les algorithmes génétiques sont l'oeuvre de Holland (Holland, 1975). Il s'est directement inspiré du modèle des lois de la nature de Darwin, modèle basé sur la survie des espèces les plus

(16)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 16/155 fortes. Ainsi, dans un bassin de population donné, les plus forts individus auront plus de chance de se reproduire et ainsi de transmettre leurs gênes pour produire de meilleurs descendant, augmentant la qualité globale de la population. La population qui résultera de cette reproduction sera donc globalement mieux adaptée à l’environnement que la précédente puisque la plupart des individus auront hérité de plusieurs des caractéristiques de l'"élite" de la génération précédente (puisque chacun hérite à la fois de sa mère et de son père). Et c'est ainsi, en recombinant à chaque génération les caractéristiques élémentaires de bonne adaptation et en saupoudrant le tout d'un peu de hasard, que la population va évoluer vers une adéquation toujours meilleure avec l'environnement.

Dans cette ligne de pensée où les spécimens se reproduisent, dans le modèle des algorithmes génétiques, les spécimens se reproduiront aussi; en particulier les plus forts à un rythme plus rapide. Des opérations génétiques sont effectuées sur deux candidats pour obtenir deux nouveaux candidats plus performants que leurs propres parents. La progéniture aura hérité de bons gènes de chaque parent. Pour trouver une solution à un problème, les AG utilisent le hasard. En effet, les gènes de chaque parent sont choisis et croisés de façon aléatoire dans la progéniture.

I.2 Caractéristiques des algorithmes génétiques

Les fondements de base des algorithmes génétiques donnés dans la littérature (Goldberg, 1994) décrivent le processus génétique comme étant une reproduction des individus « chromosomes » qui permet d’obtenir de nouveaux descendants plus performants que leurs parents. Chaque chromosome est représenté par une chaîne de gènes de longueur finie. La mise en œuvre des AG se caractérise par divers aspects tels que l’espace de recherche de solutions, la fonction d’évaluation servant à sélectionner les chromosomes parents, le codage des paramètres du problème à traiter, les règles de transition probabilistes et le rôle du hasard.

–La fonction d’évaluation : c’est une fonction objective associée aux individus composant la population. Elle est utilisée par les AG pour sélectionner les candidats aptes à la reproduction. La fonction d’évaluation exprime non seulement la fonction objective du problème, mais elle réfléchit également ses contraintes, puisque normalement des pénalités sont imposées quand les contraintes ne sont pas respectées. Cette fonction permet la représentation des multiples nuances du problème réel, ce qui n’arrive pas toujours dans le cas des heuristiques classiques.

– Le codage : l’ensemble des paramètres plutôt que les paramètres eux-mêmes sont codés sous forme de chaînes de gènes de longueur finie. On peut trouver une solution satisfaisante à un problème grâce aux codes et aux similitudes de ces codes. Deux principes sont proposés dans la

(17)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 17/155 littérature pour le codage : le principe de pertinence des briques élémentaires et le principes des alphabets minimaux. Le premier principe, rarement utilisé, s’énonce comme suit : « l’utilisateur doit sélectionner un codage de façon à ce que les schémas courts et d’ordres faibles (voir paragraphe I.4) soient pertinents pour le problème traité ». Le deuxième principe est défini comme suit : « l’utilisateur doit choisir le plus petit alphabet qui permet une expression naturelle du problème traité ».

– Les règles de transition probabilistes : elles sont utilisées pour choisir le site de croisement de manière probabiliste. La sélection des deux chromosomes, impliqués dans le processus de croisement, est faite en fonction de leur qualité.

– Le rôle du hasard : Les AG utilisent des règles de transition probabilistes. Dans le processus de croisement, le choix des deux chromosomes et le lieu de croisement sont réalisés de façon probabiliste en fonction de leur qualité. Le hasard guide la recherche vers des régions de l'espace de recherche susceptibles d'améliorer la solution.

I.3 Concepts et formalismes d’opérateurs génétiques

Les opérateurs génétiques sont appliqués à une population initiale de façon à produire, dans le temps, des populations successives de qualité. Une des représentations génétiques les plus utilisées est la binaire, dans laquelle chaque gène (composant) d’un chromosome est symbolisé par les valeurs zéro ou un. La représentation par nombres entiers associe à chaque gène une valeur entière. La figure I.1 représente une chaîne (un chromosome) composé de 7 bits. Le gène le plus à gauche du chromosome occupe la première position, c'est le bit 1, le gène qui le suit immédiatement occupe la deuxième position, et ainsi de suite.

Figure I.1 : Schéma d’un chromosome

Les opérateurs génétiques de base sont : la reproduction, la sélection, le croisement, la mutation et la réparation.

– La reproduction est un processus qui consiste à choisir des chaînes de la population globale suivant la valeur de leur fonction objective f, qu'on désire maximiser. Plus la valeur de la fonction objective d'une chaîne est élevée, plus cette chaîne a des chances d'être choisie pour la

Position 1 Position 3

0 1 1 0 1 1 0

(18)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 18/155 reproduction (Chambers, 1995). Si une chaîne n'a pas une valeur de fonction objective élevée, elle a peu de chance d'être choisie pour une reproduction. Ainsi, elle disparaîtra, puisque ses gènes ne se retrouveront pas dans la prochaine génération. Si une chaîne est choisie pour reproduction, sa réplique exacte est intégrée à une poule d'accouplement.

– La sélection permet de combiner de bonnes solutions autant que la qualité de solutions de codage. Il faut donc doser le choix de solutions de bonne qualité tout en conservant la diversité pour prévenir les convergences prématurées de la population vers un minimum local. Nous notons que l’introduction de sélection aléatoire, biaisée vers les plus adaptés, est une notion très importante dans la recherche de diversité. Il existe plusieurs techniques pour la sélection des chromosomes à reproduire. Une des plus connues est la technique de la roulette (Roulette Wheel). Selon cette technique, la probabilité d'être choisie est directement proportionnelle à la valeur d'aptitude du parent. Le tableau I.1 illustre le fonctionnement de la sélection : d'abord on calcule la valeur d'aptitude de chaque chromosome (fonction d’évaluation), puis on calcule l'aptitude totale en faisant la somme de toutes les valeurs d'aptitude de la population ; enfin, on calcule le pourcentage de l'aptitude de chaque chromosome par rapport à l'aptitude totale (Yarushkina, 2002).

Figure I.2 : Schéma d’une roulette avec des slots proportionnel à l’aptitude

Comme le montre la figure I.2, les quartiers de la roulette sont proportionnels à la valeur d'aptitude. Nous pouvons également noter qu'en faisant tourner la roulette, nous aurons beaucoup plus de chance de choisir les chromosomes 3 et 5. Il existe une stratégie élitiste, qui consiste à choisir systématiquement les deux meilleurs candidats de la population, pour déterminer les chromosomes aptes à la reproduction. Cette stratégie diffère de la roulette qui, elle, risque d'oublier les meilleurs candidats étant donné son approche probabiliste.

1 19% 11% 31% 5% 34% 5 4 3 2

(19)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 19/155

Chromosome 1 2 3 4 5 Total

Chaîne 01110 01010 10111 00101 11100

Aptitude 14 10 23 5 28 80

% du total 17,5 12,5 28,75 6,25 35 100

Tableau I.1 : Exemple de sélection selon le principe de la roulette

– Le croisement est un processus qui consiste à inter changer les gènes de deux chaînes élues de l'une à l'autre, donc croisés. Pour exécuter le croisement, des chaînes de la poule d'accouplement sont accouplées au hasard. Chaque paire de chaînes de longueur l subit le croisement comme suit : une position entière k est choisie uniformément entre 1 et (l-1). Deux nouvelles chaînes sont créées en échangeant tous les caractères entre les positions (k+1) et l de chaque chaîne de la paire considérée. Les nouvelles chaînes peuvent être totalement différentes de leurs parents. À remarquer qu'un croisement n'aura aucune conséquence sur un bit dont les parents ont la même valeur à la même position. Soit les chromosomes A1 et A2 définis comme suit :

A1 = 0101↓101 et A2 = 1110↓100

Les deux chaînes ont une longueur l = 7 et pour alphabet de base {0,1}. Le symbole ↓ représente l'endroit à partir duquel aura lieu le croisement, ici la position k = 4. Après croisement, nous obtiendrons les deux chaînes suivantes:

A1' = 0101100 et A2' = 1110101

Comme nous pouvons le constater, la valeur des bits des positions 5 et 6 n'a nullement changé. Nous pouvons aussi remarquer que, dans ce cas, le croisement a affecté très légèrement les chaînes initiales. Il est à noter qu’il y’a des AG qui considèrent deux lieux de croisement. Ce sont les gènes entre les lieux de croisement qui seront alors échangés. Syswerda a introduit le croisement uniforme (Syswerda, 1989).

– La mutation est un processus qui consiste à permuter un bit choisi au hasard dans un chromosome. On attribue à ce processus la fréquence à laquelle la mutation se produit. Si on lui associe une probabilité de 0.005, un chromosome aura cinq chances sur mille d'être muté. La mutation modifie aléatoirement la valeur d'une position d'une chaîne. Elle est utile pour ramener du matériel génétique qui aurait été oublié par les opérateurs de reproduction et de croisement. Certaines implantations vont automatiquement changer la valeur du bit choisi,

(20)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 20/155 d'autres vont générer aléatoirement une nouvelle valeur de bit, ce qui n'entraîne aucune mutation (Goldberg, 1994). Soit la chaîne A = 0101100. Après mutation, nous pouvons obtenir la chaîne suivante A' = 0111100. La valeur du troisième bit a été modifiée.

– La réparation est méthode simple qui consiste à parcourir la chaîne pour enlever les liens violant les contraintes de la solution recherchée. En effet, le croisement engendre souvent une dégénérescence des chromosomes mais aussi peut rendre les solutions irréalisables. Lors de la réparation il faut conserver au maximum les propriétés de la solution initiale tout en rendant cette solution réalisable. Les nœuds disjoints peuvent êtres réinsérés dans la chaîne selon diverses procédures d’insertions.

I.4 Formalismes du gabarit de similitude

Les AG peuvent exploiter des similitudes contenues dans la population et, de cette façon, guider la recherche. Dans ce paragraphe, nous exposerons les principes de base de fonctionnement des schémas dans les AG.

I.4.1 Le schéma

Un schéma peut être défini comme étant un gabarit de similitude décrivant un sous ensemble de chaînes qui englobent des gènes de même valeur à des positions particulières dans la chaîne. En enrichissant par exemple l'alphabet de base U = {0,1} par le symbole spécial *, le schéma devient un mécanisme dénommé «Pattern Matching» (Chambers, 1995). Soit l'alphabet des schémas U+ = {0, 1, *} avec des chaînes de longueur 5, le schéma *110* décrit un sous ensemble de 4 éléments. Ce sous ensemble est {01100, 01101, 11100, 11101}. En général, pour des alphabets de cardinalité k avec des chaînes de longueur l, il y a (k+1)l schémas avec kl chaînes différentes. Chaque chaîne est un élément de 2l schémas.

– Pour le schéma (b1, b2, b3, ..., bl-1, bl), bi ( i : 1,...l) peut prendre k valeurs différentes plus le

symbole spécial "*''. D'où (k+1)l schémas différents.

– Pour la chaîne (b1, b2, b3, ..., bl-1, bl), bi ( i : 1...l) peut prendre k valeurs différentes (les

chaînes ne sont jamais constituées du symbole "*''). D'où k l chaînes différentes.

– Pour la chaîne (b1, b2, b3, ..., bl-1, bl), bi (i : 1...l) peut prendre sa valeur actuelle ou le

(21)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 21/155 Soit la chaîne A = 01010, elle est un élément du schéma H1 = *1010, du schéma H2= 0*010,

du schéma H3 = **010, et ainsi de suite. En fait, il y a exactement 32 schémas ou « blocs de

construction ».

Pour analyser la croissance et la décroissance des schémas d'une génération nous définissons deux propriétés. Soit le schéma H (111**1*) :

– L'ordre d'un schéma H, noté o(H), est le nombre de positions fixes présentes dans le gabarit, ainsi o(111**1*) = 4.

– La longueur d'un schéma H, notée ß(H), est la distance entre la première et la dernière position spécifique de la chaîne; ainsi ß (111**1*) = 5 : car la dernière position spécifique est 6 et la première est 1. Les schémas et leurs propriétés constituent les outils de base pour l'analyse de l'effet de reproduction, croisement et mutation sur les membres d'une population.

I.4.2 La reproduction « les schémas »

" Si on utilise une technique de reproduction proportionnelle à l'aptitude de chaque chromosome, alors on peut prédire la croissance ou la décroissance relative d'un schéma H dans la prochaine génération " (Holland, 1975).

Soient f(H), m(H) et Ā = (∑ Aj /n) sont respectivement l'aptitude moyenne d'une chaîne

relative au schéma H, le nombre de chromosomes contenant le schéma H dans la population et l'aptitude moyenne de toute la population. Alors, le nombre prévu d'occurrences de H dans la prochaine génération est égale à m(H) * A(H) / Ā . Les schémas ayant des valeurs d'aptitude au

dessus de la moyenne de la population auront un nombre croissant d'échantillons dans la prochaine génération, alors que des schémas avec des valeurs sous la moyenne recevront des échantillons en nombre décroissant. Tous les schémas dans la population croissent ou décroissent selon les moyennes des schémas avec l'opérateur de reproduction.

I.4.3 Le croisement « les schémas »

Le croisement est un opérateur qui affecte les schémas et crée de nouvelles structures. Soient le chromosome A et deux schémas H1 et H2 :

A = 0 1 0 1 0 0 1 ; H1 = * 1 * * * * 1 ; H2 = * * * 1 0 * *

Si la chaîne A a été choisie pour croisement, et que le lieu de croisement se situe à la position 3, le croisement aura un effet différent sur les deux schémas.

(22)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 22/155 En effet, le schéma H1 sera abandonné car le 1 de la position 2 et le 1 de la position 7 seront

placés dans des progénitures différentes. Par ailleurs, on peut remarquer que H2 survivra parce

que les valeurs des positions 4 et 5 seront transférées intactes dans une même progéniture. Si A est croisé avec la chaîne B, on retrouve le schéma H2 dans la chaîne B’, alors que H1 n'est ni

dans A’ ni dans B’.

A = 0 1 0 1 0 0 1 ; B = 1 0 0 0 0 1 0 ; A’ = 0 1 0 0 0 1 0 ; B’ = 1 0 0 1 0 0 1 ; H1 = * 1 * * * * 1 ; H 2 = * * * 1 0 * * ;

Donc, un schéma H survit quand le lieu de croisement est à l'extérieur de la longueur ß(H). Le croisement peut s'effectuer à n'importe quelle position entre 1 et (l-1). Dans le cas du schéma précédent H1, le croisement peut s'effectuer à 6 positions différentes. Le schéma H1

sera détruit si le lieu de croisement est en positions 2, 3, 4, 5 et 6. Le schéma H1 a une

probabilité d'être détruit de 5/6 ou plus généralement de ß(H)/ (l -1) (Julstrom, 1995). Donc a probabilité de survivre subséquemment à un croisement est régie par l’équation suivante :

Ps = 1 - ß(H) / (l -1) (I.1)

I.4.4 La mutation et les schémas

La mutation est une altération aléatoire d'une seule position avec probabilité Pm. Pour qu'un

schéma survive, il faut que toutes les positions spécifiques survivent, c'est à dire que chacune des positions fixes de o(H) dans le schéma survive. La probabilité qu'une mutation survive est égale à (1 - o(H) * Pm ) lorsque Pm est petit.

I.5 Les grandes étapes de l'algorithme génétique

Le principe d’un algorithme génétique consiste à évaluer une population et à en générer une autre de façon itérative grâce aux actions opérées par les opérateurs génétiques. Le nombre de chromosomes dans une population reste inchangé à travers les diverses générations. Pour mettre en œuvre un AG, il faut disposer d’un schéma pour coder les solutions du problème, une fonction d’évaluation, une procédure d’initialisation, un ensemble d’opérateurs et un ensemble de paramètres qui gouvernent l’élaboration de la population initiale, l’exécution des opérateurs et l’arrêt de génération de nouvelles populations. De façon générale, un AG fonctionne selon les étapes suivantes :

– Étape 1 : On génère une population initiale de taille n, représentant le nombre de chromosomes. Puis on choisit au hasard les gènes qui composent chaque chromosome. La

(23)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 23/155 qualité de la population initiale est très importante pour la génération de meilleures solutions. La diversité de la population est très importante pour éviter la convergence prématurée vers des minimums locaux. Cette diversité de population de définit initialement et se maintient en combinant diverses stratégies de croisement et de mutation.

– Étape 2 : On évalue chaque chromosome par la fonction objective, ce qui permet de déduire sa valeur d'aptitude.

– Étape 3 : On exécute les cycles de génération de populations. Chaque nouvelle génération remplace la précédente. Le nombre de cycle x est déterminé au départ. Dans chaque cycle, n chromosomes sont choisis pour reproduction et croisement deux à deux. Après la création de la xème population, les chromosomes vont évolué de façon telle que cette dernière génération contient des chromosomes qui sont meilleurs que ceux des générations précédentes.

I.5.1 Caractéristiques de l’optimisation génétique

Une définition de l’optimisation peut être comme suit (Goldberg, 1995) : « Le désir humain de perfection trouve son expression dans la théorie de l’optimisation. Elle étudie comment décrire et atteindre ce qui est meilleur, une fois que l’on connaît comment mesurer et modifier ce qui est bon et mauvais… La théorie d’optimisation comprend l’étude quantitative des optimums et les méthodes pour les trouver ». Donc, l’optimisation cherche à améliorer une performance en se rapprochant d’un ou des points optimaux via un procédé d’amélioration. Cependant les procédures d’optimisation classiques se concentrent souvent sur les résultats finaux (convergence vers un optimum) et négligent les performances intermédiaires en oubliant que l’objectif majeur de l’optimisation est l’amélioration. Les AG est un processus d’optimisation qui tient compte de cette idée en recherchant de meilleures solutions au cours des générations. En outre, face à un problème pour lequel il existe une infinité de solutions, la recherche d'une solution optimale consiste à explorer l'espace des solutions en se laissant guider par les principes de l’algorithme génétique, plutôt que d'essayer naïvement toutes les solutions une à une pour trouver la meilleure.

Les AG se caractérisent par rapport aux différentes méthodes classiques d’optimisation selon les principaux points suivants :

– Ils utilisent un codage de paramètres et non pas les paramètres eux même du problème considéré.

(24)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 24/155 – Ils considèrent une population de solutions au lieu d’une solution unique. Ceci va permettre d’escalader plusieurs pics en parallèle, réduisant ainsi la probabilité de trouver un faux pic.

– Ils utilisent des règles de transitions probabilistes et non déterministes dans le but d’inscrire leur exploration dans une optique d’amélioration probable.

I.6 Conclusion

Nous avons étudié et montré dans ce chapitre les principaux formalismes et concepts des opérateurs et algorithmes génétiques. En outre, nous soulignons que les AG trouvent maintenant des applications dans des domaines aussi diversifiés que l’informatique, le traitement des signaux, voire les sciences sociales. L’algorithme génétique se caractérise par sa fonction d’évaluation (d'adaptation), qui pour chaque solution possible donnera une valeur reflétant sa qualité pour résoudre le problème posé : plus la valeur de la fonction est élevée, meilleure est la solution.

Dans ce travail nous allons étudier deux applications des AG dans le domaine du routage des réseaux de télécommunications et une application dans le domaine de l’optimisation des parcours des réseaux de transport. Dans le but de développer des architectures applicatives hybrides, nous avons combinés les algorithmes génétiques avec les techniques de cryptographie et les réseaux de neurones qui feront l’objet du chapitre suivant.

(25)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 25/155

C

HAPITRE II

RESEAUX DE NEURONE

(

RN

)

:

MODELES ET

(26)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 26/155

II.1 Introduction

Au cours de la dernière décennie, les algorithmes d’apprentissage statistique ont suscité beaucoup d’intérêt dans le milieu académique et au sein d’entreprises de diverses industries. Ils ont été implantés avec succès pour l’accomplissement de tâches prédictives reliées à des processus statistiques observés pour lesquels on peut identifier plusieurs variables explicatives. Ce chapitre se concentre sur une classe particulière de ces algorithmes : les réseaux de neurones artificiels. Les réseaux de neurones tirent leur puissance de modélisation de leur capacité à capter les dépendances de haut niveau (qui impliquent plusieurs variables à la fois).

Dans ce travail de recherche, nous allons utiliser un certain nombre de modèles de réseaux de neurones pour concevoir des architectures applicatives supportons des systèmes télématiques sur le net. Les domaines d’applications des réseaux de neurones considérés dans ce travail sont : le codage, la fusion et la reconnaissance des formes et de la parole. Ce chapitre vise donc, à illustrer les concepts et formalismes des principaux modèles neuronaux. Premièrement, nous effectuons un survol historique de l’évolution des réseaux de neurones. Ensuite, nous décrivons les formalismes et concepts qui régissent la relation espace et réseaux de neurones et la relation temps et réseaux de neurones en mettant l’accent sur les modèles neuronaux utilisés dans le cadre de travail. En conclusion, nous donnons une synthèse de chapitre.

II.1 Historique et état de l’art

De façon générale, on situe le début des réseaux de neurones artificiels en 1943 avec les travaux de McCulloch et Pitts qui montrent qu’un réseau de neurones discret, sans contrainte de topologie, peut représenter n’importe quelle fonction booléenne et donc émuler un ordinateur. En 1958, Rosenblatt propose le premier algorithme d’apprentissage, qui permet d’ajuster les paramètres d’un neurone. En 1969, Minsky et Papert publient le livre Perceptrons dans lequel ils utilisent une solide argumentation mathématique pour démontrer les limitations des réseaux de neurones à une seule couche. En 1982, Hopfield propose des réseaux de neurones associatifs et l’intérêt pour les réseaux de neurones renaît chez les scientifiques. En 1986, Rumelhart, Hinton et Williams publient l’algorithme de la rétro-propagation de l’erreur qui permet d’optimiser les paramètres d’un réseau de neurones à plusieurs couches. À partir de ce moment, la recherche sur les réseaux de neurones connaît un essor fulgurant et les applications commerciales de ce succès académique suivent au cours des années 90 (Bourret et al, 1991).

(27)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 27/155 Aujourd’hui, on retrouve les réseaux de neurones solidement implantés dans diverses industries : dans les milieux financiers pour la prédiction des fluctuations de marché ; en pharmaceutique pour analyser le « QSAR » (quantitative structure activity relation ship) de diverses molécules organiques ; dans le domaine bancaire pour la détection de fraudes sur les cartes de crédit et le calcul de cotes de crédit ; dans les départements de marketing de compagnies de diverses industries pour prévoir le comportement des consommateurs ; en aéronautique pour la programmation de pilotes automatiques ; etc. Les applications sont nombreuses et partagent toutes un point commun essentiel à l’utilité des réseaux de neurones. L’avantage fondamental des réseaux de neurones par rapport aux modèles statistiques traditionnels réside dans le fait qu’ils permettent d’automatiser la découverte des dépendances les plus importantes du point de vue de la prédiction du processus (Kada, 1995). La cartographie des principaux modèles neuronaux est donnée dans la figure II.1

Figure II.1 : Héritage temporel spatial des modèles neuronaux

Nous présentons dans ce chapitre deux concepts neuronaux :

• les modèles connexionnistes qui prennent en compte, au sein de leur architecture, les contraintes spatiales présentes dans le problème qu’ils considèrent ;

• les aspects de la relation entre les réseaux de neurones et le temps.

II.2 Espace et réseaux de neurones

Les architectures connexionnistes sont utilisées dans des problèmes de type « spatial » au sens large (on modélise par exemple le perceptron multicouche comme des fonctions d’un

MLP (MultiLayer Perceptron) et neurones temporels Réseau de neurones

Fréquences Intervalles inter-spikes

Classiques Temporelles

MLP Linsker Kohonen Sans retard Retards

TDNN (Time Delay

Neural Networks)

Temporalisation Cartes temporelles RST (Regularized Spline with Tension) Puissance supérieure à la machine de turning

(28)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 28/155 espace i dans un espace j). Nous présentons deux architectures, une intégrant une relation spatiale par le biais d’une connectivité locale et une autre où la relation n’est plus portée par la connectique, mais par les poids des connexions.

II.2.1 Auto organisation des réseaux « métrique sur le poids »

Dans cette section nous présentons une architecture où la relation spatiale n’est plus portée par la connectique, mais par les poids des connexions.

Cette architecture est basée sur des relations spatiales entre des neurones essentiellement portées par les valeurs des poids des connexions. L’exemple d’illustration présenté dans cette section repose sur l’adaptation du modèle de Kohonen au problème du voyageur de commerce (voir figure II.2). Cette adaptation consiste à trouver le plus cours cycle passant par tous les sommets d’un graphique complet non orienté.

Le problème du voyageur de commerce est typiquement un problème dans lequel une certaine métrique intervient. D’un autre côté, le réseau de Kohonen est une architecture totalement connectée sans aucune spécificité spatiale des unités. Pour illustrer le réseau de Kohonen, on propose une adaptation de cette architecture au problème du voyageur de commerce. Pour un problème à N villes, on construit un réseau à N neurones organisés en une matrice carrée. Chaque ligne y représente un point de livraison (PL) et chaque colonne une position dans le cycle des PL. Si par exemple "l’adresse 3" représentée par la 3ème ligne du réseau est en seconde position dans le cycle de parcours du voyageur de commerce, le neurone (3,2) sera allumé (voir figure II.2). Cela implique alors des contraintes spatiales sur le réseau : un neurone et un seul par ligne et par colonne peut être actif à un instant donné. Ces contraintes de voisinage sont intégrées dans l’architecture : des liaisons inhibitrices relient chaque neurone avec ses voisins d’une même ligne ou d’une même colonne. La place de chaque neurone dans l’architecture n’est plus indifférenciée.

En ce qui concerne la représentation de l’espace du problème (les distances entres les PL), ce sont les poids des liaisons entre les neurones qui les portent : un neurone de la ligne "adresse 3" sera relié à un neurone de la ligne "adresse 5" par une liaison de poids (voir figure II.2).

L’architecture porte ainsi la topographie spécifique au problème par ses poids et spécifie par contre positionnellement les contraintes de codage. Le modèle de neurone employé ici est un neurone continu (non binaire) dont la fonction est une "sigmoïde". Une fois le problème codé, le réseau est initialisé aléatoirement à de faibles valeurs d’activation des neurones, puis il

(29)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 29/155 évolue rapidement vers un cycle de parcours « le meilleur des moins très proche des PL ». Cette approche qui donne de bons résultats présente tout de même l’inconvénient d’avoir à reconstruire toute l’architecture pour chaque nouveau problème (Bourret et al, 1991).

Dans ce travail le réseau Kohonen a été testé pour optimiser la tournée de facteur dans un réseau de distribution de courrier (voir chapitre 5).

Figure II.2 : Illustration du réseau de Kohonen adapté au problème du voyageur de commerce

II.2.2 Auto organisation des réseaux localement connecté

Les travaux de Linsker ont montré qu’à l’aide d’un apprentissage non supervisé, il est possible d’obtenir, pour un modèle de rétine, une auto-organisation en zones sélectives à l’orientation d’un stimulus visuel, telles que celles observées dans le cortex visuel primaire des mammifères. La présente section porte sur l’auto organisation de réseaux localement connectés (Bourret et al, 1991).

Partant d’une architecture qui donne une spécificité spatiale aux neurones (via des connexions sur voisinages spatiaux), nous pouvons détecter des formes spatiales (orientation de barres) uniquement grâce à un apprentissage non supervisé utilisant un bruit blanc. Le modèle est basé sur une architecture en couches où chaque neurone est connecté à un voisinage circulaire de la couche précédente (voir figure II.2). Le mode d’apprentissage non supervisé est inspiré du principe de Hebb. L’architecture employée se caractérise par les aspects suivants :

Adresse 1 Adresse 3 Adresse 2 Adresse 4 Adresse 6 Adresse 5 PL1 PL2 PL3 PL4 PL5 PL6

Chaque ligne du réseau représente un PL. Chaque colonne est une position dans la liste de parcours : ici le parcours PL1-PL2-PL3-PL4-PL5-PL6 (un rond noir représente un neurone actif). Toutes les liaisons du neurone (adresse, PL) sont représentées en trait plein celles qui portent les distances, en trait pointillé les liaisons fortement inhibitrices pour empêcher l’activation simultanée de plusieurs neurones par ligne ou par colonne.

(30)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 30/155

• Les activités des neurones sont linéaires, non bornées a priori :

• Les poids des liaisons sont par contre bornés :

• L’apprentissage, ne se fait que couche après couche : on ne fait apprendre une couche que lorsque l’apprentissage de la précédente est terminé. La règle d’apprentissage utilisée est supposée être la loi de Hebb, formalisée ici par :

Notons - Ej : l’activité du neurone j

- Wij : le ième poids de pondération du neurone j

- ßj : le seuil du neurone j

- k{a,b,c,d} sont des constantes qui sont déterminés de façon empirique.

Figure II.3 : Architecture en couches avec connexions locales définies par un rayon propre à chaque couche

Le réseau étant soumis à des entrées aléatoires indépendantes (bruit blanc), on observe et on construit, à l’aide des paramètres k du modèle, plusieurs modes particuliers pour les neurones dans les différentes couches de l’architecture. Dans la première couche, on observe l’émergence de l’un ou l’autre de deux modes de neurones, soit « tout excité », soit « tout inhibé», c’est à dire des neurones pour lesquels tous les poids sont à un extremum (voir II.3) .

Entrée Sortie A B C R B R A Neurone i Ej=

Σ

WijEi – ßj (II.1)

Wmin ≤ Wij ≤ Wmax (II.2)

(31)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 31/155 Dans ce travail de recherche, nous avons utilisé ce type de réseau de neurone (MLP) pour la reconnaissance des chiffres (voir annexe c).

II.3 Temps et réseaux de neurones

Dans ce paragraphe, nous exposons de façon sommaire les grands concepts et formalismes de la relation entre les réseaux de neurones et le temps. La première section traite la question du point de vue puissance algorithmique. La seconde section aborde la question du point de vue architecturale. Nous illustrons ces concepts par une description de quelques architectures qui seront utilisées qui sont utilisées dans le cadre de ce travail de recherche.

II.3.1 Fondement algorithmique du modèle temporel

Le processus de communication entre les cellules biologiques s’effectue dans le système nerveux à l’aide d’impulsions appelées « potentiels d’action ». Du point de vue traitement de l’information par les réseaux de neurones dans un problème d’ordre temporel, le codage de l’information s’effectue par intervalle entre deux points d’action successifs. En effet, avec les ordinateurs, le temps est échantillonné en une suite d’instants. Deux grandes options se dégagent toutefois (Bourret et al, 1991) :

– Première option : L’information contenue dans les moyennes temporelles et conservant uniquement la fréquence moyenne de décharge du neurone, est largement suffisante. La reproduction fine des potentiels d’action et des retards synaptiques n’est pas nécessaire ; seule la fonction caractéristique de réponse fréquence–fréquence suffit.

– Deuxième option : Le codage s’effectue au niveau temporel fin (par exemple par écart entre potentiels d’action). On ne peut alors s’affranchir (sans pour autant garantir que cela suffise) de la description en termes de potentiels d’action.

L’adoption de ces options conduit à différents modèles d’architectures neuro-mimétiques. Dans la première option la modélisation est plus simple : En effet, la fonction de transfert fréquentielle suffit à la description du fonctionnement neuronal. Cette solution est souvent choisie pour les architectures neuronales classiques. Les fonctions de type «Heaviside » ou «sigmoïde », indépendamment de leur introduction pour des propriétés de dérivabilité, découlent en effet de la première option (Ramacher, 1993). Donc on peut distinguer les modèles qui utilisent le temps de ceux qui le traitent, c'est-à-dire les modèles statique et dynamique.

(32)

Thèse d’Etat (2007), Faculté des Sciences de Rabat 32/155 – Modèle statique : Le calcul d’un modèle, qui utilise le temps, se déroule dans le temps. Donc la notion de temporalité est totalement absente du problème traité par l’architecture. L’exemple typique est celui des réseaux de Hopfield où la mémoire du réseau réside dans les attracteurs de sa dynamique. Le problème le plus connu, traité avec ces architectures, est celui de la reconnaissance statique des caractères (où le temps n’est donc pas présent).

– Modèle dynamique: On dira qu’un modèle traite le temps s’il se préoccupe des problèmes d’ordre temporel (reconnaissance de parole, reconnaissance de mouvement, ...) en gardant d’une façon ou d’une autre la trace du temps. Dans ce dernier cas, on peut distinguer deux sous catégories : les modèles qui traitent le temps de façon externe et les modèles qui traitent le temps de façon réellement interne.

II.3.2 Architectures neuronales temporelles

En ce qui concerne l’introduction des modèles temporels de neurones, nous ne présenterons que les modèles utilisés dans ce travail de recherche. La figure II.4 illustre la classification des architectures selon le degré de l’intégration du temps dans leurs modèles.

Figure II.4 : Réseaux de neurones temporels classés selon le degré de l’intégration du temps dans leurs modèles

– Réseaux à retards. Ce type de réseau est basé sur l’introduction de temporalité par des retards : les poids ne sont pas simplement statiques (multiplication par un scalaire) mais aussi temporels. Ils représentent une convolution par un noyau et qui est une distribution de Dirac dans le cas le plus simple d’un retard voir figure II.5. Chaque liaison possède non seulement un poids susceptible d’apprentissage (comme dans les architectures traditionnelles) mais aussi des

Réseaux de neurones temporels

Temps Implicite : RNR

Temps au niveau des liaisons (retards synaptiques)

Seuils (t)

Algébrique Intégré

« integrate and fire » Temps au niveau des liaisons

(retards synaptiques) Temps au niveau du neurone Temps extérieur TDNN Temps comme mécanisme interne

Figure

Figure I.2 : Schéma d’une roulette avec des slots proportionnel à l’aptitude
Figure II.2 : Illustration du réseau de Kohonen adapté au problème du voyageur de commerce
Figure II.3 : Architecture en couches avec connexions locales définies par un rayon propre  à chaque couche
Figure II.4 : Réseaux de neurones temporels classés selon le degré de l’intégration du temps  dans leurs modèles
+7

Références

Documents relatifs

[r]

Deuxièmement, dans le cadre de l’identification du locuteur au sein d’un document sonore, des scores de confiance sont utilisés pour déterminer le nom du locuteur en

De ce fait, si on parcourt la tableau de gauche à droite, on positionne à chaque fois le plus petit élément qui se trouve dans le sous tableau droit. Ou plus généralement : Pour

Si l'on en croit Jesse Fox, auteur principal d'une étude et professeur assistante en communication à l'Université de l'Ohio, les hommes qui publient beaucoup de selfies sur

marge brute – remise – prix d’achat net – prix de vente hors taxe – coût d’achat prix de vente toute taxe comprise – prix d’achat net – frais d’achat – prix

III.2.2 Déterminer la fréquence de rotation du moteur si et le couple utile moteur T u1 pour un réglage de la pression d'air comprimé à 7 bars. III.2.3 En déduire la

Ce scénario décrit les processus qui surviennent lors des interventions de maintenance précédant généralement un avis de panne pour un objet technique (vous avez également

MouseListener en Java, mais que l'on ne souhaite pas implémenter de comportement pour toutes les méthodes, on peut dériver la classe MouseAdapter.. Celle-ci fournit en effet un