Académique Documents
Professionnel Documents
Culture Documents
Cours ReseauxNeurones PDF
Cours ReseauxNeurones PDF
RESEAUX DE NEURONES
Grald PETITJEAN
gerald.petitjean@eurodecision.com
BIBLIOGRAPHIE
1.
2.
3.
4.
5.
6.
Sur le net :
C. Touzet, Les Rseaux de Neurones Artificiels : Introduction au
Connexionnisme, 1992
OUTILS / BIBLIOTHEQUES
Outils commerciaux :
1. Matlab : neural networks toolbox
http://www.mathworks.com/products/neuralnet/
2. Netral : Neuro One
http://www.netral.com/index.html
http://www.netral.com/logiciels/neuroone-fr.html
Outils open-source / gratuits :
1. JOONE : bibilothque JAVA open source (licence LGPL)
http://www.jooneworld.com/
2. Scilab : ANN toolbox
http://www.scilab.org/
http://www.scilab.org/contrib/displayContribution.php?fileID=165
3. Matlab : netlab toolbox
http://www.ncrg.aston.ac.uk/netlab/index.php
RESEAUX DE NEURONES
Connexionisme.
Modlisation mathmatique du cerveau humain.
Rseaux de neurones formels = rseaux d units de calcul
lmentaire interconnectes.
2 axes de recherche :
- tude et modlisation des phnomnes naturels d apprentissage
(biologie, physiologie du cerveau)
- algorithmes pour rsoudre des problmes complexes
RESEAUX DE NEURONES
Applications :
statistiques : analyse de donnes / prvision / classification
robotique : contrle et guidage de robots ou de vhicules
autonomes
imagerie / reconnaissance de formes
traitement du signal
simulation de lapprentissage
MODELE BIOLOGIQUE
Les neurones reoivent des signaux (impulsions lectriques) par les
dendrites et envoient l information par les axones.
Les contacts entre deux neurones (entre axone et dendrite) se font par
l intermdiaire des synapses.
Les signaux n oprent pas de manire linaire : effet de seuil.
HISTORIQUE
Historique :
Mac Culloch et Pitts (1943) : dfinition d un neurone formel
Loi de Hebb (1949)
Rosenblatt (1958), Widrow et Hoff : modle avec processus
d apprentissage, perceptron
Minsky et Papert (1969) : limites des perceptrons
Kohonen (1972) : mmoires associatives
Rumelhart Mc Clelland (1980), Werbos Le Cun : perceptron
multi-couches, mcanismes d apprentissage performants (rtropropagation du gradient).
7
NEURONE FORMEL
Principes :
pas de notion temporelle
coefficient synaptique : coefficient rel
sommation des signaux arrivant au neurone
sortie obtenue aprs application d une fonction de transfert
NEURONE FORMEL
Modlisation :
Le neurone reoit les entres x1, , xi, , xn.
Le potentiel dactivation du neurone p est dfini comme la somme
pondre (les poids sont les coefficients synaptiques wi) des entres.
La sortie o est alors calcule en fonction du seuil .
w1
wi
xi
Alors :
o = 1 si p >
o = 0 si p
wn
xn
9
DEFINITIONS
Dfinitions :
Dterminer un rseau de neurones = Trouver les coefficients
synaptiques.
On parle de phase dapprentissage : les caractristiques du rseau
sont modifies jusqu ce que le comportement dsir soit obtenu.
Base dapprentissage : exemples reprsentatifs du comportement ou
de le fonction modliser. Ces exemples sont sous la forme de couples
(entre ; sortie) connus.
Base dessai : pour une entre quelconque (bruite ou incomplte),
calculer la sortie. On peut alors valuer la performance du rseau.
10
DEFINITIONS
Dfinitions :
apprentissage supervis : les coefficients synaptiques sont valus en
minimisant l erreur (entre sortie souhaite et sortie obtenue) sur une
base d apprentissage.
apprentissage non-supervis : on ne dispose pas de base
d apprentissage. Les coefficients synaptiques sont dtermins par
rapport des critres de conformit : spcifications gnrales.
sur-apprentissage : on minimise l erreur sur la base d apprentissage
chaque itration mais on augmente l erreur sur la base d essai. Le
modle perd sa capacit de gnralisation : c est l apprentissage par
cur.
Explication : trop de variables explicatives dans le modle ; on
n explique plus le comportement global mais les rsidus.
11
LOI DE HEBB
Rseau de neurones :
n entres e1, , en
m neurones N1, , Nm.
wij le coefficient synaptique de la liaison entre les neurones Ni et Nj
une sortie o
un seuil S
Fonction de transfert : fonction Signe
si x > 0 : Signe(x) = +1
si x 0 : Signe(x) = 1
Ni
wij
Nj
12
LOI DE HEBB
Principe :
Si deux neurones sont activs en mme temps, alors la force de
connexion augmente.
Base d apprentissage :
On note S la base d apprentissage.
S est compose de couples (e, c) o :
e est le vecteur associ l entre (e1, , en)
c la sortie correspondante souhaite
Dfinitions :
ai est la valeur d activation du neurone Ni.
13
LOI DE HEBB
Algorithme :
est une constante positive.
Initialiser alatoirement les coefficients wi
Rpter :
Prendre un exemple (e, c) dans S
Calculer la sortie o du rseau pour l entre e
Si c o
Modification des poids wij :
wij = wij + (ai aj)
Fin Pour
Fin Si
Fin Rpter
14
=1
Conditions initiales : coefficients et seuils nuls
15
o=11=x
w1 = w1 + e1 x = 1
w2 = w2 + e2 x = 1
Exemple (2) : o = Signe((w1 e1 + w2 e2) = Signe(0) = 1
o=11=x
w1 = w1 + e1 x = 2
w2 = w2 + e2 x = 0
Exemples (3) et (4) OK
Exemples (1) et (2) OK STOP
16
LOI DE HEBB
Remarque :
Calcul des coefficients wij sans utiliser l algorithme itratif.
Principe : les coefficients sont initialiss 0, vaut 1, et on prsente
tous les exemples de la base d apprentissage.
wij = [(e,c) dans S] (ai aj)
17
LOI DE HEBB
Application : mmoires auto-associatives
Kohonen (1977)
Reconstruction de donnes :
en entre : une information partielle ou bruite
en sortie : le systme complte ou corrige l information
image apprise
image soumise
au rseau
Image restitue
par le rseau
18
19
PERCEPTRON
Perceptron linaire seuil :
n entres x1, , xn
n coefficients synaptiques w1, , wn
une sortie o
un seuil
20
PERCEPTRON
On ajoute une entre supplmentaire x0 (le biais), avec le coefficient
synaptique suivant : w0 =
On associe comme fonction de transfert la fonction de Heavyside :
f(x) = 1 si x > 0
f(x) = 0 sinon
21
PERCEPTRON
Apprentissage par l algorithme du perceptron
On note S la base d apprentissage.
S est compose de couples (x, c) o :
x est le vecteur associ l entre (x0, x1, , xn)
c la sortie correspondante souhaite
On cherche dterminer les coefficients (w0, w1, , wn).
Initialiser alatoirement les coefficients wi.
Rpter :
Prendre un exemple (x, c) dans S
Calculer la sortie o du rseau pour l entre x
Mettre jour les poids :
Pour i de 0 n :
wi = wi + (c o) xi
Fin Pour
Fin Rpter
22
PERCEPTRON : exemple
Apprentissage par l algorithme du perceptron : exemple
Apprentissage du OU logique
x0 = 1
x1
w0
o = x1 OR x2
w1
w2
x2
23
PERCEPTRON : exemple
Apprentissage par l algorithme du perceptron : exemple
=1
x0 vaut toujours 1
Initialisation : w0 = 0 ; w1 = 1 ; w2 = 1
tape
init
1
2
3
4
5
6
7
8
9
10
w0
w1
w2
Entre
02 wi xi
0
0
1
1
1
0
1
1
1
0
1
1
1
1
1
1
1
1
1
1
-1
-1
0
0
0
0
1
1
1
1
100
101
110
111
100
101
110
111
100
101
0
-1
2
2
1
0
2
3
1
1
0
0
1
1
1
0
1
1
1
1
0
1
1
1
0
1
1
1
0
1
w0
0
0+0x1
0+1x1
1
1
1+(-1)x1
0+1x1
1
1
1+(-1)x1
0
w1
1
1+0x0
1+1x 0
1
1
1+(-1)x0
1+1x0
1
1
1+(-1)x0
1
w2
-1
-1+0x0
-1+1x1
0
0
0+(-1)x0
0+1x1
1
1
1 +(-1)x0
1
Donc : w0 = 0 ; w1 = 1 ; w2 = 1
Ce perceptron calcule le OU logique pour tout couple (x1 ; x2)
24
PERCEPTRON
Apprentissage par l algorithme du perceptron : remarques
bien choisi, suffisamment petit
Si trop grand : risque d oscillation autour du minimum
Si trop petit : nombre lev d itrations
En pratique : on diminue graduellement au fur et mesure des
itrations
25
PERCEPTRON
Apprentissage par l algorithme du perceptron : remarques
Si l chantillon n est pas linairement sparable, l algorithme ne converge
pas.
L algorithme peut converger vers plusieurs solutions (selon les valeurs
initiales des coefficients, la valeur de , l ordre de prsentation des exemples).
La solution n est pas robuste : un nouvel exemple peut remettre en cause le
perceptron appris.
26
28
PERCEPTRON :
REGLE DELTA GENERALISEE
Fonctionnement d un neurone :
somme pondre des signaux reus (en tenant compte du biais)
puis application d une fonction de transfert (ou d activation) : sigmode
log, sigmode tangente hyperbolique, linaire
x0 = 1
x1
x2
w1
w0
o = (y)
w2
wi
Biais
y = wixi
xi
wn
xn
Entres
Sortie
Coefficients
synaptiques
On note :
y = x.w
o = (x.w)
X0 = 1 : biais
Reprsente le seuil
d activation du neurone
Somme
Pondre
31
PERCEPTRON :
REGLE DELTA GENERALISEE
Fonctions de transfert :
Sigmode tangente hyperbolique : tansig
sorties entre -1 et +1
(x) = tanh(x) et (x) = 1 tanh(x) = 1 (x)
Sigmode log : losig
sorties entre 0 et 1
x
x
x
(x) = e /(e + 1) = 1/(1 + e ) et (x) = (x) (1 (x))
Linaire : purelin
(y) = y et (y) = 1
32
PERCEPTRON :
REGLE DELTA GENERALISEE
Apprentissage par descente de gradient :
Soient le vecteur des entres x et le vecteur des coefficients
synaptiques w.
La sortie vaut alors : o = (x.w) = (x0.w0 + + xn.wn),
tant une fonction de transfert continue et drivable.
Posons : y = x.w
Soit S la base d apprentissage compose de couples (x, c), o c est la
sortie attendue pour x.
On dfinit ainsi l erreur sur le rseau pour la base d apprentissage S :
E(w) = 1/2 [(x,c) dans S] (c o)
Problme : trouver w qui minimise E(w).
Mthode du gradient.
33
PERCEPTRON :
REGLE DELTA GENERALISEE
Fonction de transfert (y)
Par exemple : est la tangente hyperbolique (sigmode tansig)
(y) = tanh(y) et (y) = 1 tanh(y) = 1 (y)
34
PERCEPTRON :
REGLE DELTA GENERALISEE
Mthode du gradient (rappel) :
xn+1 = xn f (xn) = xn + xn
E (W ) 1
1
=
=
(c o)
(
)
c
o
wi
2 S wi
2 wi S
E (W ) 1
(c o ) = (c o )
(c ( x w))
= 2(c o)
2 S
wi
wi
wi
S
y
(c ( x.w)) =
(c ( y )) = (c ( y ))
= ' ( y ) xi
Or :
wi
wi
y
wi
E (W )
= (c o)( xi ) ' ( x w)
wi
S
E (W )
= xi (c o) ' ( x w)
D ' o : wi =
wi
S
35
PERCEPTRON :
REGLE DELTA GENERALISEE
Apprentissage par descente de gradient : algorithme
Initialiser alatoirement les coefficients wi.
Rpter :
Pout tout i :
wi = 0
Fin Pour
Pour tout exemple (x, c) dans S
Calculer la sortie o du rseau pour l entre x
Pout tout i :
wi = wi + (c o) xi (x.w)
Fin Pour
Fin Pour
Pour tout i :
wi = wi + wi
Fin Pour
Fin Rpter
36
PERCEPTRON :
REGLE DELTA GENERALISEE
Variante de la Rgle Delta gnralise :
On ne calcule pas les variations de coefficients en sommant sur tous
les exemples de S mais on modifie les poids chaque prsentation
d exemple.
Initialiser alatoirement les coefficients wi.
Rpter :
Prendre un exemple (x, c) dans S
Calculer la sortie o du rseau pour l entre x
Pout i de 1 n :
wi = wi + (c o) xi (x.w)
Fin Pour
Fin Rpter
37
38
39
?
AND
OR
XOR
EXERCICE : perceptron
Classificateur linaire :
Trouver la droite qui spare deux groupes de points.
41
PERCEPTRON MULTI-COUCHES
Les diffrentes couches :
Cellules rparties dans q couches : C0, C1, , Cq
C0 : couche d entre (la rtine) les variables d entre
Cq : couche de sortie
C1, , Cq-1 : les couches caches
42
PERCEPTRON MULTI-COUCHES
Fonction de transfert :
fonction sigmode logsig :
k ( x) = e kx /(e kx + 1) = 1 /(1 + e kx )
k=1:
Drive :
( x) = e x /(e x + 1) = 1 /(1 + e x )
' ( x) = ( x) (1 ( x))
43
PERCEPTRON MULTI-COUCHES
Notations :
n cellules
Cellules dsignes par un indice i, 0 i < n
p cellules de sortie
k indice d une cellule de sortie
ck : sortie attendue pour la cellule de sortie k avec l entre x
ok : sortie calcule pour la cellule de sortie k avec l entre x
xij : entre associe au lien entre cellule I vers cellule j
wij : coefficient synaptique associ au lien entre cellule i vers cellule j
Succ(i) : ensemble des cellules qui prennent comme entre la sortie de la
cellule i.
Pred(i) : ensemble des cellules dont la sortie est une entre de la cellule i.
yi : entre totale de la cellule i : yi = (j Pred(i)) (wij xij)
oi : sortie de la cellule I : oi = (yi)
44
PERCEPTRON MULTI-COUCHES
Notations :
45
PERCEPTRON MULTI-COUCHES
Algorithme de rtropropagation du gradient :
Initialiser alatoirement les coefficients wij dans [-0.5 ; 0.5]
Rpter
Prendre un exemple (x, c) de S
Calculer la sortie o
Pour toute cellule de sortie i
i = (yi) (ci oi) = oi (1 oi) (ci oi)
Fin Pour
Pour chaque couche de q 1 1
Pour chaque cellule i de la couche courante
i = (yi) [(k Succ(i)) (k wki)]
= oi (1 oi) [(k Succ(i)) (k wki)]
Fin Pour
Fin Pour
Pour tout poids wij
wij = wij + i xij
Fin Pour
Fin Rpter
46
PERCEPTRON MULTI-COUCHES
Ajout d un paramtre inertiel (momentum) : viter les oscilations
Initialiser alatoirement les coefficients wi dans [-0.5 ; 0.5]
Rpter
Prendre un exemple (x, c) de S
Calculer la sortie o
Pour toute cellule de sortie i
i = (yi) (ci oi) = oi (1 oi) (ci oi)
Fin Pour
Pour chaque couche de q 1 1
Pour chaque cellule i de la couche courante
i = (yi) [(k Succ(i)) (k wki)]
= oi (1 oi) [(k Succ(i)) (k wki)]
Fin Pour
Fin Pour
Pour tout poids wij litration k
wij(k) = wij(k-1) + i xij + (wij(k 1) - wij(k 2))
Fin Pour
Fin Rpter
47
PERCEPTRON MULTI-COUCHES
Remarques :
Perceptron Multi-Couches
= gnralisation du perceptron et de la rgle delta.
48
PERCEPTRON MULTI-COUCHES
Estimer la qualit du rseau :
Prsenter des exemples (pour lesquels on connat la sortie souhaite)
qui ne font pas partie de la base dapprentissage et comparer la sortie
souhaite avec la sortie calcule par le rseau.
Attention au sur-apprentissage : la base dapprentissage est
parfaitement apprise mais la capacit de gnralisation est faible.
Dans la pratique : garder une partie de la base dapprentissage pour
valuer la qualit du rseau
80 % de la base pour lapprentissage
20 % restant de la base pour lvaluation de la qualit
49
PERCEPTRON MULTI-COUCHES
Normaliser les donnes dentre (pour chaque neurone
dentre i) :
xi =
k
x
i
k =1
1 N k
2
(
)
=
x
x
i i
N 1 k =1
2
i
~
xik =
xik xi
50
PERCEPTRON MULTI-COUCHES
Remarque :
Le nombre de couches caches et le nombre de neurones par
couche ont une influence sur la qualit de lapprentissage.
51
PERCEPTRON MULTI-COUCHES
Classification / Discrimination :
Rseaux de neurones 2 ou 3 couches (1 ou 2 couches caches)
Fonctions de transfert logsig
Sorties dans lintervalle [0 ; 1]
52
PERCEPTRON MULTI-COUCHES
Classification / Discrimination :
1-re modlisation :
chaque neurone de sortie indique la probabilit dappartenance la
classe correspondante
lexemple fourni en entre appartient la classe pour laquelle la
probabilit dappartenance est la plus forte
53
PERCEPTRON MULTI-COUCHES
Classification / Discrimination :
Inconvnients :
apprentissage trs long (trs nombreuses connexions)
une nouvelle classe : il faut tout rapprendre !
2-me modlisation : un rseau par classe
pour chaque rseau, une sortie indique si lexemple soumis
appartient la classe correspondante
54
PERCEPTRON MULTI-COUCHES
Classification / Discrimination :
Applications :
Reconnaissance de formes
codes postaux, signatures, visages,
dfauts de rails
55
PERCEPTRON MULTI-COUCHES
Rgression (Approximation de fonction) :
On donne x en entre.
Le rseau calcule f(x) en sortie
Rseaux de neurones 2 couches (1 couche cache)
Fonctions de transfert logsig pour la couche cache
Fonctions de transfert purelin pour la couche de sortie
Perceptron Multi-Couches = approximateur universel.
Permet dapproximer nimporte quelle fonction, condition que le
nombre de neurones dans les couches caches soit suffisant !
56
PERCEPTRON MULTI-COUCHES
Prvision :
On donne K valeurs successives de f en entre.
Le rseau calcule la valeur suivante en sortie
Mme type de rseau que pour la rgression.
57
PERCEPTRON MULTI-COUCHES
Rgression / Prvision :
Applications :
approximation de fonctions compliques
rgression partir de donnes exprimentales (relevs ou mesures
exprimentales)
prvisions mtorologiques
prvisions financires
58
EXERCICES : PMC
Classification :
Reconnaissance de formes :
les lettres de l alphabet
les chiffres de 0 9
59
EXERCICES : PMC
Rgression :
Approximation de fonctions :
y = 2*x + 4 sur [-8 ; 8]
60
EXERCICES : PMC
Rgression :
Approximation de fonctions :
y = 2*x^2 + 4 sur [-8 ; 8]
61
EXERCICES : PMC
Rgression :
Approximation de fonctions :
y = 2*x + 4 sur [0 ; 20]
62
EXERCICES : PMC
Rgression :
Approximation de fonctions :
y = 2*sin(x) + 4 sur [0 ; 10]
63
EXERCICES : PMC
Rgression :
Approximation de fonctions :
y = 2*ln(x) + 4 sur [0.1 ; 15.1]
64
EXERCICES : PMC
Rgression :
Approximation de fonctions :
y = 2*exp(x) + 4 sur [-1 ; 5]
65
CARTE DE KOHONEN
Rseaux de Neurones Comptition : un seul neurone de sortie est activ
pour une entre donne.
Mise en correspondance de lespace dentre avec lespace du rseau.
Auto-organisation
Origine biologique : une zone du cortex correspond une zone des
organes sensoriels et moteurs
66
CARTE DE KOHONEN
Applications :
robotique : pilotage de robots
compression de donnes
statistiques : mthode semblable lAnalyse en Composantes
Principales (ACP)
67
CARTE DE KOHONEN
Principes (en 2D) :
n cellules dentre e = (e1, , en)
une carte : rseau de m neurones de sortie x1, , xm
connexions latrales (coefficients fixes) entre les neurones de sortie :
un neurone est connect ses 4 plus proches voisins
connexions de coefficient wij entre une cellule dentre ei et un
neurone de sortie xj
68
CARTE DE KOHONEN
Principes :
Pour une entre, un seul neurone sur la carte est slectionn (valeur 1).
On encourage le vainqueur : the winner takes all .
Ce neurone correspond le plus possible lentre : minimisation dune
distance.
Remarques :
En pratique, on normalise les entres.
69
CARTE DE KOHONEN
Algorithme dapprentissage :
Initialiser alatoirement les coefficients wij
Rpter
Prendre une entre e = (e1, , ei, , en)
Calculer la distance dj de chaque neurone xj par rapport e
dj =
2
(
e
w
)
i ij
i =1
70
CARTE DE KOHONEN
Algorithme dutilisation :
La sortie sk du neurone xk, pour une entre e, est donne par :
sk = 1 si dk = Min(di)
sk = 0 si i k
71
CARTE DE KOHONEN
Application :
Analyse de donnes (cf. analyse en composantes principales)
Exemple :
Analyse de donnes socio-conomiques (PIB, croissance du PIB,
mortalit infantile, taux dillettrisme, ) de 52 pays
1 neurone de la carte = 1 groupe de pays (mme situation socioconomique)
Neurones voisins = groupes de pays proches (du point de vue de la
situation socio-conomique)
72
CARTE DE KOHONEN
73
74
75
x(k)
q 1 Symbole
reprsentant
un retard
dune unit
de temps
u(k-1)
x(k-1)
q 1
q 1
76
Sries temporelles
77
Mmoires auto-associatives
78
80
Apprentissage :
On apprend avec une base de :
couples {xk ; f(xk)}
vecteurs yk
Algorithme dapprentissage : analogue la loi de Hebb :
1
wij =
N
y
k =1
k
i
k
j
N : nombre de neurones
(nombre dentres)
P : nombre de vecteurs yk
81
Utilisation :
Aprs prsentation des entres, rinjecter les sorties
jusqu ce que ltat interne du rseau devienne stable
On fournit x en entre et le rseau donne f(x)
On fournit y incomplet ou bruit et le rseau
reconstitue y
82
Optimisation : AG (rappels)
Principe des algorithmes gntiques :
Oprateurs
croisement : exploiter
mutation : explorer
83
RESEAUX EVOLUTIONNAIRES
Exemple 1 :
Problmatique :
Garer un semi-remorque en marche arrire
Solution :
Pilotage du vhicule par un rseau de neurones (PMC)
Apprentissage par un algorithme volutionnaire
Pas de base dapprentissage
Lexprience permet dapprendre : comportement
mergent
84
RESEAUX EVOLUTIONNAIRES
Principe :
85
RESEAUX EVOLUTIONNAIRES
Variables :
Paramtres :
Contraintes :
quations de mouvement :
86
RESEAUX EVOLUTIONNAIRES
PMC :
3 couches caches
Entres : x, y, s, c
Sortie : u
87
RESEAUX EVOLUTIONNAIRES
Principe :
Position de dpart : x0, y0, s0, c0
1 mouvement (itration) : la position
suivante est donne par la sortie du
rseau u et par les quations de
mouvement
On autorise 300 mouvements
(itrations) max.
Le point de garage est donn par :
Xg = 0 ; Yg = 0 ; sg = 0
88
RESEAUX EVOLUTIONNAIRES
Apprentissage par algorithme volutionnaire :
un individu = 1 PMC = liste des coefficients synaptiques
population de PMC
oprateurs de croisement, mutation, slection
au bout de N gnrations : le PMC optimal pour une
fonction d valuation (fitness function) le PMC le plus
adapt
89
RESEAUX EVOLUTIONNAIRES
Fitness function :
On veut minimiser
la distance au point de garage
le nombre de mouvements (itrations)
fitness function = 1 / ( + d + * nb_iter), o
d est la distance au point de garage
nb_iter est le nombre de mouvements (itrations)
effectus
= 0.1 et = 0.001
90
RESEAUX EVOLUTIONNAIRES
Rsultats :
Apprentissage :
Tests (gnralisation) :
91
RESEAUX EVOLUTIONNAIRES
Exemple 2 :
Problmatique :
Apprentissage du comportement suivant
Trouver le plus court-chemin jusqu un point-cible
Et viter des obstacles
Solution :
Pilotage du robot par un rseau de neurones (PMC)
Apprentissage par un algorithme volutionnaire
Pas de base dapprentissage
Lexprience permet dapprendre : comportement
mergent
92
RESEAUX EVOLUTIONNAIRES
Modlisation de l univers : quadrillage NxM
Modlisation d un obstacle : indice de prsence Iij d une menace
sur une case (i ; j)
Iij = 0 si aucune menace et aucun obstacle
Iij = -1 si un obstacle
Iij = -0.5 si un obstacle sur les cases voisines
PMC :
6 entres : coordonnes du point courant et indices de prsence d un
obstacle sur les cases voisines
4 sorties : probabilit de dplacement vers le nord, le sud, l ouest ou
l est. La sortie la plus leve indique la direction suivre
93
RESEAUX EVOLUTIONNAIRES
PMC :
94
RESEAUX EVOLUTIONNAIRES
Pas de base d apprentissage ! Pas de couples {position de
dpart ; liste des dplacements successifs}
Apprentissage par des algorithmes gntiques
un individu = 1 PMC = liste des coefficients
synaptiques
population de PMC
oprateurs de croisement, mutation, slection
au bout de N gnrations : le PMC optimal pour une
fonction d valuation (fitness function) le PMC le
plus adapt
95
RESEAUX EVOLUTIONNAIRES
Principe :
96
RESEAUX EVOLUTIONNAIRES
Principe de lapprentissage :
Pout tout point de dpart dapprentissage Xi
Point_Courant = Xi
nb_iteri = 0
Tant que (point_cible A non atteint) et
(Point_Courant nest pas dans un obstacle) et
(nb_iteri < nb_iter_max) Faire
Incrmenter nb_iteri
Calculer les 4 sorties du PMC pour Point_Courant (coordonnes et voisinage)
Dplacement_Elmentaire = Max (Sortie , Sortie , Sortie , Sortie )
Dplacer Point_Courant selon Dplacement_Elmentaire
Fin Tant que
Si (Point_Courant est dans un obstacle) Alors
nb_iteri = nb_iter_max
Fin Si
Fin Pour tout
97
RESEAUX EVOLUTIONNAIRES
Comment slectionner les meilleurs rseaux ?
Tenir compte de plusieurs critres :
la distance au point-cible
le nombre de dplacements effectus
le cumul des indices de prsence de menace des cases parcourues
i =1
1 + 10 d ( X i , A)
f ( x) =
nb _ iteri
RESEAUX EVOLUTIONNAIRES
Paramtres AG :
taille de la population : 100
nombre de gnrations : 500
taux de mutation : 0.1
taux de croisement : 0.7
fitness function :
= 500,
= 100
99
RESEAUX EVOLUTIONNAIRES
Tests : gnralisation sur
les points de dpart
100
RESEAUX EVOLUTIONNAIRES
Rfrences :
Darwin revisit par la slection artificielle, La Recherche n de fvrier
2002
M. Schoenauer et E. Ronald, Neuro-Genetic Truck Backer-Upper
Controller, 1994
D. Floreano et F. Mondada, Evolution of Homing Navigation in a Real
Mobile Robot, 1996
101
102