Νοημοσύνη σμήνους

28/1/2011
Swarm Intelligence
Νοημοςφνη ςμήνουσ
1
Ant Colony Optimization
ΒΕΛΣΙ΢ΣΟΠΟΙΗ΢Η ΑΠΟΙΚΙΑ΢
ΜΤΡΜΗΓΚΙΩΝ
2
1
28/1/2011
Κεληξηθή ηδέα (1/2)
• Δθαξκόδεηαη ζε πξνβιήκαηα πνπ κπνξνύλ λα κεηαζρεκαηηζηνύλ ζε
αλαδήηεζε βέιηηζηεο δηαδξνκήο ζε γξάθνπο.
• Σηνλ πξαγκαηηθό θόζκν ηα κπξκήγθηα αξρηθά κεηαθηλνύληαη ηπραία,
κέρξη λα βξνπλ ηξνθή. Όηαλ βξνπλ ηξνθή επηζηξέθνπλ πίζσ από
ηελ ίδηα δηαδξνκή. Σε όιε ηελ πνξεία ηνπο αθήλνπλ ίρλε
θεξνκόλεο, κηαο νπζίαο πνπ αληρλεύεηαη από ηα επόκελα κπξκήγθηα
γηα πεξηνξηζκέλν ρξνληθό δηάζηεκα, όκσο εμαηκίδεηαη ζρεηηθά
γξήγνξα.
• Τα επόκελα κπξκήγθηα έρνπλ ηελ ηάζε λα αθνινπζνύλ δηαδξνκέο
πνπ έρνπλ έληνλε νζκή θεξνκόλεο.
• Όζν πην ζύληνκε είλαη κηα δηαδξνκή πνπ νδεγεί ζε ηξνθή, ηόζν
κεγαιύηεξε είλαη ε πηζαλόηεηα λα ηελ αλαθαιύςνπλ θάπνηα
κπξκήγθηα θαη έηζη απηή λα έρεη έληνλε θεξνκόλε γηα λα
πξνζειθύζεη θαη ηα επόκελα.
3
Κεληξηθή ηδέα (2/2)
4
2
28/1/2011
Δθαξκνγή: Πιαλόδηνο πσιεηήο
•
•
Έζησ ν πιήξσο ζπλδεδεκέλνο γξάθνο ηνπ πξνβιήκαηνο ηνπ πιαλόδηνπ πσιεηή
(construction graph).
Σε θάζε αθκή ηνπ γξάθνπ αληηζηνηρνύκε δύν ηηκέο:
– Μηα επξεηηθή ηηκή (ακεηάβιεηε θαηά ηε δηαδηθαζία βειηηζηνπνίεζεο) κε ηηο κεηαιύηεξεο ηηκέο
λα ζεσξνύληαη θαιύηεξεο, π.ρ. αληηζηξόθσο αλάινγε πξνο ηελ απόζηαζε ησλ δύν πόιεσλ.
– Μηα ηηκή θεξνκόλεο (πνπ κεηαβάιιεηαη θαηά ηε δηαδηθαζία βειηηζηνπνίεζεο), αξρηθά ίζεο κε
ηηο επξεηηθέο ηηκέο ή κε κεδέλ.
•
Κάζε δηαδξνκή κπξκεγθηνύ θαηαζθεπάδεηαη σο εμήο:
– Τν κπξκήγθη μεθηλά από κηα ηπραία πόιε θαη ζηε ζπλέρεηα επαλαιεπηηθά επηιέγεη ηελ επόκελε
πόιε κεηαμύ απηώλ πνπ δελ έρεη επηζθεθζεί ζηνραζηηθά κε πηζαλόηεηα πνπ εμαξηάηαη από ηηο
επξεηηθέο ηηκέο θαη ηηο ηηκέο θεξνκόλεο ησλ ππνςήθησλ αθκώλ (όζν κεγαιύηεξεο νη ηηκέο
απηέο, ηόζν κεγαιύηεξε θαη ε πηζαλόηεηα)
•
Αθνύ όια ηα κπξκήγθηα θαηαηαζθεπάζνπλ ηηο δηαδξνκέο ηνπο, ελεκεξώλνληαη νη
ηηκέο θεξνκόλεο ησλ αθκώλ.
– Όιεο νη ηηκέο θεξνκόλεο κεηώλνληαη θαηά ζπγθεθξηκέλν πνζνζηό.
– Οη ηηκέο θεξνκόλεο ησλ αθκώλ πνπ ζπκκεηέρνπλ ζε θαιέο δηαδξνκέο απμάλνληαη.
•
Η δηαδηθαζία επαλαιακβάλεηαη κέρξη ηελ ηθαλνπνίεζε θάπνηνπ θξηηεξίνπ.
5
Γεληθή κνξθή αιγνξίζκνπ
• Όζν δελ ηθαλνπνηείηαη ην θξηηήξην ηεξκαηηζκνύ:
– Καηαζθεύαζε ηηο ιύζεηο
– Βειηίσζε ηηο ιύζεηο (πξναηξεηηθό)
– Δλεκέξσζε ηηο ηηκέο ηεο θεξνκόλεο
6
3
28/1/2011
Κξηηήξην ηεξκαηηζκνύ
• Αξηζκόο επαλαιήςεσλ
• Φξόλνο
• Με βειηίσζε ηεο ιύζεο γηα ζπγθεθξηκέλν αξηζκό
επαλαιήςεσλ
7
Καηαζθεπή ιύζεσλ (1/2)
• Δπηινγή ηνπ πιήζνπο ησλ κπξκεγθηώλ m.
• Η θαηαζθεπή κηαο ιύζεο γίλεηαη πξννδεπηηθά,
πξνζζέηνληαο αθκέο ηε κία κεηά ηελ άιιε.
– Δμαξηάηαη από ην πξόβιεκα
• Ο πην γλσζηόο θαλόλαο επηινγήο αθκώλ είλαη:
p (cij | s p ) 
 ija ij
 c N ( s
il
p
 a 
) il il
, cij  N ( s p )
• όπνπ...
8
4
28/1/2011
Καηαζθεπή ιύζεσλ (2/2)
• sp κηα κεξηθή ιύζε
• cij ε ηπραία ππνςήθηα αθκή
• N(sp) ην ζύλνιν ησλ αθκώλ ηνπ γξάθνπ πνπ κπνξνύλ
λα πξνζηεζνύλ ζηε ιύζε
• τij ε ηηκή θεξνκόλεο ηεο cij
• ηij ε επξεηηθή ηηκή ηεο cij
• α θαη β ζηαζεξέο πνπ θαζνξίδνπλ ηε ζρεηηθή
βαξύηεηα ηεο θεξνκόλεο ζε ζρέζε κε ηελ επξεηηθή
ηηκή.
9
Βειηίσζε ιύζεσλ
• Μεηά ηελ θαηαζθεπή ησλ ιύζεσλ θαη αλάινγα κε ην
πξόβιεκα, ελδέρεηαη λα βνεζά κηα βειηίσζε ησλ
ιύζεσλ. Πηζαλέο αηηίεο γηα απηό είλαη:
– Η ηθαλνπνίεζε θαζνιηθώλ πεξηνξηζκώλ
– Η παξαπέξα βειηηζηνπνίεζή ηνπο κε πεξηνξηζκέλε ηνπηθή
αλαδήηεζε
10
5
28/1/2011
Δλεκέξσζε ηηκώλ θεξνκόλεο (1/2)
• Οη ηηκέο θεξνκόλεο ησλ αθκώλ πνπ ζρεηίδνληαη κε
θαιέο ιύζεηο πξέπεη λα απμεζνύλ. Απηό
επηηπγράλεηαη:
– Με ειάηησζε ησλ ηηκώλ θεξνκόλεο όισλ ησλ αθκώλ
– Με αύμεζε ησλ ηηκώλ θεξνκόλεο ησλ αθκώλ πνπ
ζπκκεηέρνπλ ζε επηιεγκέλεο ιύζεηο
 ij  (1   ) ij  
 F ( s)
sSupd |cij s
– F(s) ε ζπλάξηεζε θαηαιιειόηεηαο, Supd έλα επηιεγκέλν
ζύλνιν ιύζεσλ, ρ ν ξπζκόο εμάηκηζεο.
11
Δλεκέξσζε ηηκώλ θεξνκόλεο (2/2)
• Οη δύν αθξαίεο ηηκέο γηα ην Supd είλαη νη:
– Supd  Siter
– Supd  argmaxsSiterF(s)
– Supd  argmaxsF(s)
Όιεο νη δηαδξνκέο
Iteration Best (IB) roule
Best So Far (BS) roule
• Max-Min Ant System (MMAS): Δπηβνιή νξίσλ
ζηελ ειάρηζηε θαη (θπξίσο) ζηε κέγηζηε ηηκή ηεο
θεξνκόλεο γηα όιεο ηηο αθκέο, [τmax,τmin]. Αξρηθά όιεο
νη αθκέο έρνπλ ηηκή τmax, θαη επαλαθέξνληαη ζε απηή
ηελ ηηκή κε θάζε επαλεθθίλεζε ηνπ αιγνξίζκνπ.
• Rank based Ant System: Με βάζε ηελ θαηάηαμε...
12
6
28/1/2011
Σρόιηα
• Οη αιγόξηζκνο ACO πιενλεθηεί έλαληη άιισλ
ζηνραζηηθώλ αιγνξίζκσλ (π.ρ. γελεηηθνί) ζε
πξνβιήκαηα όπνπ ν γξάθνο κπνξεί λα αιιάμεη
δπλακηθά.
– Γξνκνιόγεζε παθέησλ ζε δίθηπν.
13
PARTICLE SWARM OPTIMIZATION
14
7
28/1/2011
Γεληθή ηδέα (1/2)
• Η κέζνδνο PSO βειηηζηνπνηεί δηαηεξώληαο έλαλ
πεζπζκό από ππνςήθηεο ιύζεηο, ηα ζσκαηίδηα
(particles), ηα νπνία κεηαθηλνύληαη ηξηγύξσ ζην ρώξν
αλαδήηεζεο ζύκθσλα κε απινύο καζεκαηηθνύο
ηύπνπο.
• Οη θηλήζεηο ησλ ζσκαηηδίσλ θαζνδεγνύληαη από ηα
θαιύηεξα ζσκαηίδηα πνπ έρνπλ βξεζεί.
• Γελ ρξεζηκνπνηεί παξαγώγνπο, άξα δελ απαηηεί ην
πξόβιεκα λα είλαη παξαγσγίζηκν.
15
Γεληθή ηδέα (2/2)
• Γεκηνύξγεζε έλαλ πιεζπζκό από ππνςήθηεο ιύζεηο.
• Σε θάζε επαλάιεςε, γηα θάζε ιύζε:
– Αμηνιόγεζε ηελ
– Σύγθξηλέ ηελ (κε ηηο ππόινηπεο)
– Μηκήζνπ (ηελ θαιύηεξε ηεο γεηηνληάο ηεο)
• Γεηηνληά:
– Οξίδεηαη κηα ζηαζεξή (fixed) ηνπνινγία ησλ ππνςήθησλ
ιύζεσλ.
• gbest: Όιεο ζπλδένληαη κεηαμύ ηνπο
• lbest: Κάζε κία έρεη k γεηηνληθέο (π.ρ. k=2)
16
8
28/1/2011
Γεληθόο αιγόξηζκνο – ζεκεηνγξαθία (1/3)
(γηα δπαδηθέο κεηαβιεηέο)
• xi, ην i δηάλπζκα
• xid, ε ηηκή ηεο d δηάζηαζεο ηνπ δηαλύζκαηνο xi
• pi, ην θαιύηεξν (κέρξη ηώξα) i δηάλπζκα (από ηηο
πξνεγνύκελεο επνρέο)
• G(.), ε ζπλάξηεζε αμηνιόγεζεο (εθαξκόδεηαη επί
ησλ δηαλπζκάησλ)
• vi, ε ηαρύηεηα (ξπζκόο) κεηαβνιήο ηνπ δηαλύζκαηνο
xi .
17
Γεληθόο αιγόξηζκνο – ζεκεηνγξαθία (2/3)
(γηα δπαδηθέο κεηαβιεηέο)
• vid, ε "ηαρύηεηα" ηεο d δηάζηαζεο ηνπ δηαλύζκαηνο xi
– vid  (-Vmax, +Vmax)
• εηαζρεκαηηζκόο ηεο "ηαρύηεηαο" ζηελ θιίκαθα (0,1),
κηαο θαη έρνπκε δπαδηθέο κεηαβιεηέο:
s(vid ) 
1
1  e vid
• ρid, θαηώθιη πνπ θαζνξίδεη ηελ ηειηθή ηηκή ηεο
δηάζηαζεο d ηνπ δηαλύζκαηνο xi, κε βάζε ηελ s(vid)
18
9
28/1/2011
Γεληθόο αιγόξηζκνο – ζεκεηνγξαθία (3/3)
(γηα δπαδηθέο κεηαβιεηέο)
• Loop
– Γηα θάζε δηάλπζκα xi,
• Δάλ G(xi) > G(pi), ηόηε pi = xi
• Βξεο ην θαιύηεξν δηάλπζκα pg ηεο γεηηνληάο ηνπ i.
• Γηα θάζε δηάζηαζε d ηνπ xi,

vid (t )  vid (t  1)  1  pid  xid (t  1)  2 p gd  xid (t  1)
vid (t )   Vmax ,Vmax 

φ1, φ2: Τυχαίεσ πραγματικζσ τιμζσ ςτα
διαςτήματα [0,max(φ1)] και [0,max(φ2)]
• if s(vid(t)) > ρid ηόηε xid(t)=1, αιιηώο xid(t)=0.
19
Τξνπνπνηήζεηο γηα πξαγκαηηθέο ηηκέο
• vi, ηαρύηεηα θίλεζεο ηνπ xi ζην ρώξν.
– "Τπραία" θίλεζε ζην ρώξν, επεξεαδόκελε από ηα
θαιύηεξα γεηηνληθά δηαλύζκαηα.
• Η λέα ηαρύηεηα εμαξηάηαη από ηελ πξνεγνύκελε
ηαρύηεηα αιιά θαη από ηα θαιύηεξα δηαλύζκαηα:
vid (t )  vid (t  1)  1  pid  xid (t  1)  2  p gd  xid (t  1)
• Η λέα ζέζε θαζνξίδεηαη από ηελ παιηά, ζπλ ηελ
ηαρύηεηα:
xid (t )  xid (t  1)  vid (t )
20
10
28/1/2011
Θέκαηα πινπνίεζεο
• Τπραίεο αξρηθέο ηηκέο γηα ηα δηαλύζκαηα θαη ηηο
ηαρύηεηεο/πξνδηαζέζεηο ζην δηάζηεκα (-Vmax, +Vmax).
• Σπλήζσο 10 κε 15 δηαλύζκαηα.
• Γηα ην ίδην πξόβιεκα, ζπλήζσο ιηγόηεξα δηαλύζκαηα
ζε ζρέζε κε έλαλ γελεηηθό αιγόξηζκν.
21
Δθπαίδεπζε λεπξσληθώλ δηθηύσλ
• Δθαξκνγή ζε εθπαίδεπζε λεπξσληθώλ δηθηύσλ
– Σεκαληηθή επηηάρπλζε ηεο εθπαίδεπζεο ζε πνιιέο
πεξηπηώζεηο (δνθηκή?)
• Δκπεηξηθνί θαλόλεο:
–
–
–
–
Όξηα ζηα βάξε, [-10,+10]
Vmax ≈ 2
max(φ1)+max(φ2)=4
Μέγεζνο γεηηνληάο πεξίπνπ 20% ηνπ ζπλόινπ ησλ
δηαλπζκάησλ
22
11
28/1/2011
ΣΕΧΝΙΚΑ ΘΕΜΑΣΑ
23
Δπίδξαζε νξίνπ Vmax
(1/2)
• Έζησ βειηηζηνπνίεζε ζε κία δηάζηαζε, κε ην
βέιηηζην λα είλαη ζην 0. Έζησ φ=3,9 (ζηαζεξό) θαη
150 επαλαιήςεηο. Αξρηθέο ηηκέο x=2 θαη p=0.
• Φσξίο όξην:
24
12
28/1/2011
Δπίδξαζε νξίνπ Vmax
(2/2)
• Vmax = 2.0
• Vmax = 0.2
25
Η παξάκεηξνο φ
• Έζησ φ=φ1+φ2 θαη
p
1 pi  2 p g
1  2
• ηόηε
– v = v + φ(p-x)
– x=x+v
• Η παξάκεηξνο φ αλαθέξεηαη θαη σο acceleration
parameter.
26
13
28/1/2011
Γηεξεύλεζε φ κε ζηνραζηηθέο θηλήζεηο
• φ=0.01
• φ=0.1
27
Γηεξεύλεζε φ κε ζηνραζηηθέο θηλήζεηο
• φ=1
• φ=10
28
14
28/1/2011
Γηεξεύλεζε φ κε ζηνραζηηθέο θηλήζεηο
• φ=100
29
Γηεξεύλεζε φ κε αηηηνθξαηηθέο θηλήζεηο
30
15
28/1/2011
Γηεξεύλεζε φ κε αηηηνθξαηηθέο θηλήζεηο
31
Γηεξεύλεζε φ κε αηηηνθξαηηθέο θηλήζεηο
32
16
28/1/2011
Γηεξεύλεζε φ κε αηηηνθξαηηθέο θηλήζεηο
33
Γηεξεύλεζε φ κε αηηηνθξαηηθέο θηλήζεηο
34
17
28/1/2011
STOCHASTIC DIFFUSION SEARCH
Bishop, J.M., (1989). Stochastic Searching Networks. Proc. 1st IEE Conf.
on Artificial Neural Networks, pp 329–331, London.
ΑΝΑΖΗΣΗ΢Η ΢ΣΟΧΑ΢ΣΙΚΗ΢
ΔΙΑΧΤ΢Η΢
35
Τν παηρλίδη ηνπ εζηηαηνξίνπ (1/2)
• Μία νκάδα ζπλέδξσλ παξαθνινπζεί έλα πνιπήκεξν
ζπλέδξην ζε κηα αθηιόμελε πόιε
• Κάζε λύρηα θάζε ζύλεδξνο πξέπεη λα βξεη θάπνπ λα
δεηπλήζεη.
• Υπάξρεη πιεζώξα εζηηαηνξίσλ, θαζέλα από ηα νπνία
πξνζθέξεη κηα κεγάιε πνηθηιία γεπκάησλ.
• Τν πξόβιεκα πνπ αληηκεησπίδεη ε νκάδα είλαη ε εύξεζε
ηνπ βέιηηζηνπ εζηηαηνξίνπ, δειαδή ηνπ εζηηαηνξίνπ όπνπ
ην κεγαιύηεξν πιήζνο ησλ ζπλέδξσλ ζα απνιαύζεη ην
δείπλν.
• Όινη νη ζύλεδξνη έρνπλ ιίγν-πνιύ ηηο ίδηεο πξνηηκήζεηο.
36
18
28/1/2011
Τν παηρλίδη ηνπ εζηηαηνξίνπ (2/2)
• Κάζε ζύλεδξνο δξα σο έλαο πξάθηνξαο πνπ δηαηεξεί κηα ππόζεζε
ζρεηηθά κε ην θαιύηεξν εζηηαηόξην ζηελ πόιε.
• Κάζε λύρηα θάζε ζύλεδξνο ειέγρεη ηελ ππόζεζή ηνπ δεηπλώληαο ζην
εζηηαηόξην θαη επηιέγνληαο έλα γεύκα ζηελ ηύρε.
• Τν επόκελν πξσί ζην πξσηλό, θάζε ζύλεδξνο πνπ δελ απόιαπζε ην
ρζεζηλό ηνπ δείπλν, επηιέγεη κε ηπραίν ηξόπν έλαλ άιιν ζύλεδξν θαη
ηνλ ξσηά γηα ην ρζεζηλό δείπλν ηνπ.
• Δάλ ν ηπραίνο ζύλεδξνο είρε ζεηηθή εκπεηξία, ν εξσηώλ πηνζεηεί ην
εζηηαηόξην ηνπ εξσηώκελνπ.
• Αιιηώο, ν εξσηώλ επηιέγεη ζηελ ηύρε έλα εζηηαηόξην.
• Με απηή ηε ζηξαηεγηθή πνιύ γξήγνξα ζεκαληηθόο αξηζκόο
ζπλέδξσλ ζπλαζξνίδεηαη ζην ίδην "βέιηηζην" εζηηαηόξην ηεο πόιεο.
37
Γεληθά
• Η κέζνδνο SDS ρξεζηκνπνηεί έλα-πξνο-έλα επηθνηλσλία
κεηαμύ ησλ ππνςήθησλ ιύζεσλ (=πξάθηνξεο).
• Κάζε πξάθηνξαο πξαγκαηνπνηεί γξήγνξε, κεξηθή
αμηνιόγεζε ηεο ππόζεζήο ηνπ.
• Σηε ζπλέρεηα αληαιιάζεη πιεθνξνξίεο κε έλαλ άιιν
πξάθηνξαο ζρεηηθά κε ηηο ππνζέζεηο ηνπο.
• Λύζεηο πςειήο πνηόηεηεο κπνξεί λα πξνθύςνπλ από
νκάδεο (clusters) πξαθηόξσλ κε ηελ ίδηα ππόζεζε.
• Δθαξκόδεηαη θπξίσο ζε πξνβιήκαηα όπνπ δελ είλαη
δπλαηή ε πιήξεο αμηνιόγεζε θάζε ππόζεζεο.
38
19
28/1/2011
Σύλνςε
• Δθαξκνγέο
– Αλαδήηεζε αληηθεηκέλσλ (π.ρ. πξόζσπα ζε εηθόλεο)
– Δληνπηζκόο ξνκπόη
• Απνδνηηθόο αιγόξηζκνο
• Αλζεθηηθόο ζε ζόξπβν, πνιιαπιέο εκθαλίζεηο ηνπ
αληηθεηκέλνπ (π.ρ., πνιιά πξόζσπα ζε κία εηθόλα)
39
20