Documente Academic
Documente Profesional
Documente Cultură
Metaeuristici - Curs 8 1
Sisteme imunitare naturale/artificiale
http://www-users.cs.york.ac.uk/jtimmis/utm/ais-course.html
Metaeuristici - Curs 8 2
Sisteme imunitare artificiale
Scurt istoric: domeniu iniiat la mijlocul anilor 1980
[http://www-users.cs.york.ac.uk/jtimmis/utm/ais-course.html]
Metaeuristici - Curs 8 3
Caracteristici
Sistem imunitar artificial
Sistem imunitar natural
Specific fiecrui individ
Distribuit Robustee
Detecie a anomaliilor Scalabilitate
Invare/adaptare Flexibilitate
Memorie
Extragere caracteristici
http://www-users.cs.york.ac.uk/jtimmis/utm/ais-course.html
Metaeuristici - Curs 8 4
Aplicaii
3. Planificare;
4. Cutare i optimizare;
Metaeuristici - Curs 8 5
Sistem imunitar natural
Specificul sistemului imunitar natural: dou componente:
Metaeuristici - Curs 8 6
Sistem imunitar natural
Specificul sistemului imunitar natural
Innascut - static
(mostenit de la vs Dobandit de-a lungul vietii
parinti) dinamic (adaptiv)
Celula de tip T
(Helper)
Celula de tip B
Celula de tip T secreta
(Killer) anticorpi
Metaeuristici - Curs 8 7
Sistem imunitar natural
Specificul sistemului imunitar natural diferite nivele de aciune
Pathogens
Skin
Metaeuristici - Curs 8 8
Sistem imunitar natural
Componenta adaptiv a sistemului imunitar (acioneaz la al treilea nivel)
se caracterizeaz prin abiliti de:
- Memorare (capacitatea de a-i reaminti de contactul anterior cu
ageni patogeni i de a reaciona mai rapid la un nou contact)
- Invare (capacitatea de a recunoate ageni patogeni nentlnii
anterior)
Metaeuristici - Curs 8 10
Sistem imunitar natural
Mecanisme principale:
Clonal deletion
(negative selection)
Self-antigen Proliferation
(Cloning) M
Antibody
Memory cells
Selection
Differentiation
Plasma cells
Foreign antigens
Self-antigen
Clonal deletion
(negative selection)
Metaeuristici - Curs 8 11
Sistem imunitar natural
Modul de aciune al sistemului imunitar natural
Metaeuristici - Curs 8 12
Sistem imunitar natural
Modul de aciune al sistemului imunitar natural
Lag
Lag
Response Response to
Lag to Ag1 Ag1 + Ag3
...
Response
to Ag1 Response
to Ag2
...
... ...
Antigens Time
Antigen Ag1 Antigen
Ag1, Ag2 Ag1 + Ag3
Metaeuristici - Curs 8 14
Sistem imunitar artificial
Principiul rezolvrii problemelor cu AIS[DeCastro, Timmis, 2002]
Solutie
Algoritmi
Valori binare
Afinitate
Valori discrete
valori reale
Reprezentare
valori simbolice
Aplicatie
Metaeuristici - Curs 8 15
Sistem imunitar artificial
Principiul rezolvarii problemelor cu AIS[DeCastro, Timmis, 2002]
Solutie
Algoritmi Corelat cu o
distan
Euclidean
Afinitate Manhattan
Hamming
Reprezentare
Aplicatie
Metaeuristici - Curs 8 16
Sistem imunitar artificial
Principiul rezolvarii problemelor cu AIS [DeCastro, Timmis, 2002]
Solutie
Clonal Selection
Negative Selection
Algoritmi Immune Network Models
Positive Selection
Bone Marrow Algorithms
Afinitate
Reprezentare
Aplicatie
Metaeuristici - Curs 8 17
Sistem imunitar artificial
Algoritmul CLONALG (Selecie clonal)
Initializare
REPEAT
Antigenic presentation (contact cu antigenul)
a. Affinity evaluation (evaluarea afinitii)
b. Clonal selection and expansion (selecie clonal
i multiplicare)
c. Affinity maturation (maturizarea afinitii)
d. Metadynamics (modificare prin mutaie
aleatoare)
UNTIL conditie de oprire
Metaeuristici - Curs 8 18
Sistem imunitar artificial
Algoritmul CLONALG (Selectie clonala)
Creeaz o populaie de
Initializare indivizi (anticorpi)
REPEAT
Antigenic presentation (contact cu antigenul)
a. Affinity evaluation (evaluarea afinitii)
b. Clonal selection and expansion (selecie
clonal i multiplicare)
c. Affinity maturation (maturizarea afinitii)
d. Metadynamics (modificare prin mutaie
aleatoare)
UNTIL conditie de oprire
Metaeuristici - Curs 8 19
Sistem imunitar artificial
Algoritmul CLONALG (Selectie clonala)
Initializare
REPEAT
Antigenic presentation (contact cu antigenul)
a. Affinity evaluation (evaluarea afinitii)
b. Clonal selection and expansion (selecie
clonala si multiplicare)
c. Affinity maturation (maturizarea afinitatii)
d. Metadynamics (modificare prin mutatie
aleatoare)
UNTIL conditie de oprire
Pentru fiecare ablon antigenic (dat din
setul de intrare sau element al
populaiei) se efectueaz prelucrrile a-
d
Metaeuristici - Curs 8 20
Sistem imunitar artificial
Algoritmul CLONALG (Selectie clonala)
Initializare
REPEAT
Antigenic presentation (contact cu antigenul)
a. Affinity evaluation (evaluarea afinitii)
b. Clonal selection and expansion (selecie
clonal i multiplicare)
c. Affinity maturation (maturizarea afinitii)
d. Metadynamics (modificare prin mutaie
aleatoare) Calculeaz afinitatea
UNTIL conditie de oprire a) Pb de analiz a datelor: afinitatea e cu att
mai mare cu ct similaritatea dintre data de
intrare (antigen) i elementul populaiei
(anticorp) este mai mare
b) Pb de optimizare: afinitatea e cu att mai
mare cu cat valoarea fitness-ului (corelat
Metaeuristici - Curs 8 21
cu
funcia obiectiv) este mai mare
Sistem imunitar artificial
Algoritmul CLONALG (Selectie clonala)
Initializare
REPEAT
Antigenic presentation (contact cu antigenul)
a. Affinity evaluation (evaluarea afinitatii)
b. Clonal selection and expansion (selectie
clonala si multiplicare)
c. Affinity maturation (maturizarea afinitatii)
d. Metadynamics (modificare prin mutatie
aleatoare)
Selecteaz n elemente din P n ordinea
UNTIL conditie de oprire descrescatoare a afinitii
Genereaza pt. fiecare element selectat
din P un numr de clone direct
proporional cu afinitatea.
Metaeuristici - Curs 8 22
Sistem imunitar artificial
Algoritmul CLONALG (Selectie clonala)
Initializare
REPEAT
Antigenic presentation (contact cu antigenul)
a. Affinity evaluation (evaluarea afinitatii)
b. Clonal selection and expansion (selectie clonala si multiplicare)
c. Affinity maturation (maturizarea afinitii)
d. Metadynamics (modificare prin mutaie aleatoare)
UNTIL conditie de oprire
Aplic mutaie fiecrei clone
Rata de mutaie e invers proporional cu afinitatea
Se adaug indivizii obtinui prin mutaie la populaie
Se evalueaz afinitatea pentru indivizii adugai i cel cu
afinitatea maxim este memorat
Metaeuristici - Curs 8 23
Sistem imunitar artificial
Algoritmul CLONALG (Selectie clonala)
Initializare
REPEAT
Antigenic presentation (contact cu antigenul)
a. Affinity evaluation (evaluarea afinitatii)
b. Clonal selection and expansion (selectie clonala si multiplicare)
c. Affinity maturation (maturizarea afinitatii)
d. Metadynamics (modificare prin mutatie
aleatoare)
UNTIL conditie de oprire
O parte dintre indivizii cu afinitate mic sunt
nlocuii cu elemente generate aleator
Metaeuristici - Curs 8 24
Sistem imunitar artificial
Aplicaii ale algoritmului CLONALG (Selecie clonal)
p1 1 0 1 1 0 1 1 0 1 1 0 1
p 0 1 0 0 1 0 0 0 0 1 1 0
2
P = p3 = 1 1 0 0 1 0 0 1 0 0 1 0
p4 1 0 1 0 0 1 1 0 1 1 0 1
p5 1 1 1 1 0 1 1 1 1 0 0 1
Metaeuristici - Curs 8 25
Sistem imunitar artificial
Aplicatii ale algoritmului CLONALG (Selectie clonala)
Metaeuristici - Curs 8 26
Sistem imunitar artificial
Proprieti ale algoritmului CLONALG (Selecie clonal)
Metaeuristici - Curs 8 27
Sistem imunitar artificial
Algoritm de selecie negativ
Metaeuristici - Curs 8 28
Sistem imunitar artificial
Algoritm de selecie negativ
Self
strings (S)
1. Generare set detectori
Generate
random strings Match Detector
(R0) No Set (R)
Yes
Reject
Detector Set
(R)
2. Monitorizare sistem
Protected
Match No
Strings (S)
Metaeuristici - Curs 8 30
Sistem imunitar artificial
Algoritmul aiNET
Initializare
REPEAT
Antigenic presentation (contact cu antigenul)
a. Affinity evaluation (evaluarea afinitii)
b. Clonal selection and expansion (selecie clonal i multiplicare)
c. Affinity maturation (maturizarea afinitii)
d. Metadynamics (modificare prin mutaie aleatoare)
e. Clonal suppression (eliminarea clonelor cu afinitate mica)
Network interactions (analiza interaciunilor dintre anticorpii reelei =
calcul afinitate ntre perechi de anticorpi)
Network suppression (eliminarea anticorpilor similari cu ali anticorpi)
Diversity (introducerea unor anticorpi aleatori)
UNTIL conditie de oprire
Metaeuristici - Curs 8 31
Sistem imunitar artificial
Proprietati ale algoritmului aiNET:
Metaeuristici - Curs 8 32
Sistem imunitar artificial
aiNET (analogia cu sistemul imunitar natural)
http://www.aickelin.com
Metaeuristici - Curs 8 33
Sistem imunitar artificial
aiNET - aplicatii in clustering
Training P atterns
1 1
11
1
11
1
1
1
11
1
11
11
111
1
111
1
11
11
1
11
1 1 11
111
11
11
11
1 1 11
111
1
11
11
1
1 1
1
111
11
1
1
1
1
1 1
111
1
1
1
11 2
2 1
1
1
11
1
1 5 55
11
11 2
22 2
2
222 11
1
1
1 5 55
5
1
11 22
22
2
22
22
22
2
22 111 55
55
5
55
5
55
5
5
55
5
55
5
55 5
0.8 1
1
1
11
1
1
1
1 222
2
2
22
22
2
2
22
2
2
22
2
222
22 11
1
1
11
166
666
66 55
6 55
555
55
55
555
5
555
1
11
1
1
1 222
2 2
2
22
22
22
2 1
1
1
11 5
5
555
5
5
55
55
5
5
5 5
5
5
1 22
2
2 2 1
11
1
1 5
5555 55
1
1
11
1
1
11
2 2 1
11
1
1
1
1 5 5 55
1
1
11
1 11
11 8
1
1
11
1
11 111
1
11 88
0.6
1 1
11
1
1
11
1
1
11
1
1
111
1
1
11
111
1
11
111
11
1
1
1
1
11
11
1 8888
1 1
11 77 8
88
7
77 888
4 4
777 88
88
7
7 88
8
4444 44 777 8
0.4 4
4 444 77 8
44444
4
4
44
44
4
4
4
4
4
44
4
44
444
44 77 88
8
8
4
4 444
444
44
4
44
4
44 44
4
4 7
7 88
44
44
444
4 44 7 7 88
8
4
44
4
44
44
4 444 7
77
7 888
7
77 88
4
33 43 77 8
3 3 3 8
0.2 3 3 33
3
3
333 3
33
3 7
7
777
8
888
33
33
33
3 333 7 88
33333
3
3
3333 33
3 7 88
8
333
3
3
3
33
33
3
3
3
3
3
33
3
3
3
3
333 7
8
8
8
3 33
3
33
33
3 3
33
3
3
7777
7 8
8
88
33333 7
77
8
7
0 7
Metaeuristici - Curs 8 34
Sistem imunitar artificial
aiNET - optimizare multimodala
Populatie initiala
Populatie finala
Metaeuristici - Curs 8 35
Differential Evolution (DE)
Creatori: Rainer Storn & Kenneth Price (1995)
Scop: optimizare n domenii continue
Metaeuristici - Curs 8 36
Differential Evolution (DE)
Problema: maximizare f:D RnR
Elemente
r1
X = {x1, ,xm } populatie curenta aleatoare
r1
x j
+ F ( x j
x j
r3 ), cu probabilitatea p candidat (Y)
yi =
j r2
xij , cu probabilitatea 1 p
r1,r2 ,r3 = indici aleatori din {1,..., m} Selectia celui mai bun
xij , cu probabilitatea 1 p
x j
+ F ( x j
x j
) + F ( x j
x j
r5 ), cu probabilitatea p
yi =
j r1 1 r2 r3 2 r4
xij , cu probabilitatea 1 p
* x j
+ (1 ) x j
+ F ( x j
x j
r3 ), cu probabilitatea p
yi =
j r1 r2
xij , cu probabilitatea 1 p
x* = cel mai bun element al populatiei
Probabilitate de ncruciare:
- valori mici (<0.5): adecvate pt probleme separabile (optimizarea
se poate realiza separat pe componente)
- valori mari (>0.5): adecvate pentru probleme neliniar separabile
Metaeuristici - Curs 8 39
Differential Evolution (DE)
Auto-adaptare [Brest, 2006]
Aplicaii:
- optimizare global, multicriterial, multimodal
- Analiza datelor (clustering, reguli de clasificare)
- Planificare activiti (grid scheduling)
- Prelucrarea imaginilor
Metaeuristici - Curs 8 40
Harmony Search (HS)
Sursa de inspiraie: modul de ajustare a tonalitilor n compoziia
muzical (Geem, 2001)
Structura general: similar cu structura de la DE
Element specific: modul de construire al unui nou element
xrj + bw( j ) U 3 daca U1 < p1 si U 2 < p2
yi =
j
xrj daca U1 < p1 si U 2 p2
U (a , b ) altfel
j j
Semnificaie notaii:
r = index aleator din {1,2...m,} (m= dim populaie)
U1,U2: variabile aleatoare uniform repartizate n [0,1]
U3 : variabil aleatoare uniform repartizat n [-1,1]
bw(j) = stdev(X(j)) (abatere standard a valorilor componentei j)
p1, p2: parametri control (ex: p1=0.9, p2=0.75)
Metaeuristici - Curs 8 41
Probabilistic Model Building
Algorithms
Specific: reprezint o clas de algoritmi care realizeaz cutarea
soluiei prin simularea unor distribuii de probabilitate
Alte denumiri/variante:
- Estimation of Distribution Algorithms (EDA) [Mhlenbein &
Paass, 1996]
- Iterated Density Estimation Algorithms (IDEA) [Bosman &
Thierens, 2000]
- Bayesian Optimization Algorithms (BOA) [Pelikan, Goldberg, &
Cantu-paz, 1998]
Idee: se nlocuiete mutaia i ncruciarea cu un proces de estimare
a unei distribuii de probabilitate a elementelor selectate iar noile
elemente sunt generate prin simulare n conformitate cu acea
distribuie de probabilitate
Observaie: n felul acesta se exploateaz distribuia elementelor
promitoare din populaie
Metaeuristici - Curs 8 42
Probabilistic Model Building
Algorithms
Ilustrarea ideii [M.Pelikan Probabilistic Model Building GA Tutorial]
Metaeuristici - Curs 8 43
Probabilistic Model Building
Algorithms
Structura general.
Metaeuristici - Curs 8 44
Probabilistic Model Building
Algorithms
Observaii:
Dificultatea principal const n estimarea distribuiei, n special
n cazul n care componentele elementelor (variabilele funciei
obiectiv) sunt corelate
Metaeuristici - Curs 8 45
Probabilistic Model Building
Algorithms
UMDA (Mhlenbein, Paass, 1996)
m'
j =1
j ( X i = xi | S (t 1))
P t ( xi ) = probabilitatea corespunzatoare componentei i
m'
S(t-1 ) este populatia selectata la iteratia (t-1 )
j ( X i = xi | S (t 1)) = 1 daca al j - lea element selectat contine
valoarea xi pe componenta i
PBIL (Baluja, 1995)
m'
j =1
j ( X i = xi | S (t 1))
P t ( xi ) = (1 ) P ( t 1) ( xi ) +
m'
(0,1]
Metaeuristici - Curs 8 46
Memetic Algorithms
Creator: Pablo Moscato (1989)
Metaeuristici - Curs 8 47
Memetic Algorithms
Structura general:
Pas 1: Iniializarea populatiei
Pas 2: WHILE <condiie de continuare>
evalueaz elementele populaiei
genereaz noi elemente aplicnd operatorii de evoluie (de
exemplu ncruciare i mutaie)
selecteaz o subpopulaie asupra creia se aplic operatori
specifici de cutare local (de exemplu Simulated Annealing sau
Tabu Search)
Observatii:
1. Cutarea local se poate baza pe o colecie de algoritmi dintre
care se alege la fiecare etap cte un algoritm (n manier
aleatoare)
2. Elementele ce definesc operatorii de cutare locala pot face
parte din componentele populaiei i pot fi transformate n
procesul de evoluie
Metaeuristici - Curs 8 48