ACO ant colony
Post on 29-Jun-2015
3140 Views
Preview:
DESCRIPTION
Transcript
1
A running time analysis for an ant colony
optimization algorithmFor shortest paths on
directed acyclic graphs
Nattapat Attiratanasunthron
Joint work with Jittat Fakcharoenphol
Department of Computer EngineeringKasetsart University
2
ลำ��ดั�บก�รนำ��เสนำอ
• วั�ตถุ�ประสงค์�ของงานวั�จั�ย• ผลงานวั�จั�ยก่�อนหน�า• ผลงานวั�จั�ยของเรา• วั�เค์ราะห�เวัลาก่ารทำ�างาน• ผลก่ารทำดลอง
3
วั�ตถุ�ประสงค์�ของง�นำวั�จั�ย
• วั�เค์ราะห�เวัลาในก่ารทำ�างานของ ACO algorithms ในก่ารแก่�ป!ญหา shortest path บน DAG– ซึ่%&งป!ญหา One-Max เป'นก่รณี)พิ�เศษของ
ป!ญหาน)-
4
ACO algorithmNatural behavior of ant •ใช้�มดหลายต�วัในก่ารทำ�างาน
•ซึ่%&งมดแต�ละต�วัช้�วัยก่�นในก่ารแก่�ป!ญหา•และจัะต�ดต�อส0&อสารก่�นโดยฝาก่ Pheromone ไวั�บนเส�นทำาง•มดจัะทำ�าก่ารเล0อก่เส�นทำางทำ)&ส� -นก่วั�าโดยใช้�ค์วัามเข�มข�นของ Pheromone เป'นส�วันในก่ารต�ดส�นใจั• Pheromone บนเส�นทำางม)ก่ารปร�บเปล)&ยนค์�าตามเวัลาทำ)&เปล)&ยนแปลงไป โดยมาก่หร0อน�อยข%-นอย4�ก่�บอ�ตราก่ารระเหยของ Pheromone
5
ผลำง�นำวั�จั�ยก�อนำหนำ��• Stutzle และ Dorigo แสดงวั�า ACO
algorithm Convergence–พิ�ส4จัน�วั�าถุ�าให�เวัลานานพิอ ACO algorithm
จัะพิบค์�าตอบทำ)&ด)ทำ)&ส�ด– ไม�สามารถุระบ�เวัลาในก่ารทำ�างานได�
• Neumann และ Witt วั�เค์ราะห�เวัลาก่ารทำ�างานของ 1-ANT algorithm บนป!ญหา One-Max
6
นำ�ย�มป�ญห� one-max
• ป!ญหา one-max ค์0อม) set ของต�วัแปร x1,x2,…,xn ทำ)&แต�ละต�วัม)ค์�า {0,1}
• จั�ดประสงค์�ค์0อต�องก่ารผลรวัมของค์�า Xi ทำ)&มาก่ทำ)&ส�ด ;
)max(1
n
i ix
one-max [Neumann and Witt]
7
ก�รมองป�ญห� one-max เป"นำก�รห�เส�นำท�งในำกร�ฟ
one-max [Neumann and Witt]
8
Running time ของ 1-ant Algorithm บนป!ญหา one-max [Neumann and Witt] )(2 1)( 3/
nifn
เวัลำ�ก�รท��ง�นำ ของ 1-ANT
n/1Phase Transition บนอ�ตราก่ารระเหย
)()( 12 nifn
time
9
ผลำง�นำวั�จั�ย• บทำวั�เค์ราะห�เวัลาในก่ารทำ�างานของ ACO
algorithms – one-max (มดหลายต�วั)
•เวัลาก่ารทำ�างานเป'น •ไม�ม) phase transition บนอ�ตราก่ารระเหย
– single-destination shortest path problem on directed acyclic graphs•เวัลาก่ารทำ�างานเป'น
)log(2
nn
)log(2
nmn
10
One-Max (version multi graph)
• edge ทำ)& e(2n-1) ม)ค์�า weight เป'น X=1• edge ทำ)& e(2n) ม)ค์�า weight เป'น X=0
one-max (แบบ multiple graph) โดยม)ค์�ณีสมบ�ต�ด�งน)-
e(2n-1)
…
e(2n)
e1 e3 e5 e7 e9
e2 e4 e6 e8 e10
Vo V1 V2 V3 V4V5
Vn
Xi=1
Xi=0
11
ขอบเขตของค์�� pheromone
• pheromone บนเส�นเช้0&อมใดๆ ม)ค์�าได�มาก่ทำ)&ส�ดม)ค์�าไม�เก่�น
• pheromone บนเส�นเช้0&อมใดๆ ม)ค์�าได�น�อยทำ)&ส�ดม)ค์�าไม�เก่�น
• ถุ�าค์�า pheromone บนเส�นเช้0&อม และบนเส�นเช้0&อม จัะเร)ยก่วั�า correctly saturated
max
max)12( ne
min)2( ne
min
12
Multiple-Ant Algorithm for one-max
• Initial State– Initial pheromone value = 1/2– Initial Ant n-1 – –
• while forever do• for i=1 to n-1
• ant i random walks
• calculate distance
• update pheromone
• solution generated by ant 1
n/1min
Multiple-Ant Algorithm for One-Max
nn /)1(max
13
PROCEDURE ANT_WALK
• ถุ�ามดอย4�ทำ)&โหนด i มดต�วัจัะทำ�าก่ารเล0อก่เส�นเช้0&อม e(2i-1) ด�วัยค์วัามน�าจัะเป'น
• น�&นค์0อ ถุ�า Z เป'นต�วัแปรส��มแบบสม�&าเสมอบน [0,1]then
ii
iZif
)2()12(
)12(
)12( ienodeselect
)2( ienodeselect
else
)2()12(
)12(
ii
i
14
PROCEDUCE PHEROMENE_UPDATE
thenffif uu
iANTFORUPDATEPHEROMONEPROCEDURE
maxmax , ee thenif
conditionboundary//
ve
e
e
Seif
otherwise
,)1(
)1(
uuuu SSff
,
doEwueeachfor ),(
updatenormal//
minmin , ee thenif
15
ต�วัอย�างก่ารทำ�างานของ multiple-ant algorithm
ก่�าหนดค์�าเร�&มต�น ให�มดแต�ละต�วัอย4�ในทำ�ก่ๆ โหนด และ pheromone ในทำ�ก่ๆ เส�นเช้0&อม
16
ต�วัอย�างก่ารทำ�างานของ multiple-ant algorithm(2)
ต�วัอย�างทำ)& 1 : พิ�จัารณีา มดต�วัทำ)& i = 1 ในก่ารทำ�างานรอบทำ)& 1
มดต�วัทำ)& i = 1 เด�นได�ค์วัามยาวั เป'น 4 ; ระยะก่�อนหน�าเป'น 0
X1=1 X2=1 X4=0 X5=1 X6=0 X7=1X3=0
เพิราะฉะน�-น ทำ�าก่ารปร�บค์�า pheromone บนเส�นทำางทำ)& X1
17
ต�วัอย�างก่ารทำ�างานของ multiple-ant algorithm(3)
ต�วัอย�างทำ)& 2 : พิ�จัารณีา มดต�วัทำ)& i = 5 ในก่ารทำ�างานรอบทำ)& 3
มดต�วัทำ)& i = 5 เด�นได�ค์วัามยาวั เป'น 2 ; ระยะก่�อนหน�าเป'น 3
X5=1 X6=0 X7=1
เพิราะฉะน�-น ไม�ม)ก่ารปร�บค์�า pheromone
18
ต�วัอย�างก่ารทำ�างานของ multiple-ant algorithm(4)
ต�วัอย�างทำ)& 3 : พิ�จัารณีา มดต�วัทำ)& i = 5 ในก่ารทำ�างานรอบทำ)& 3
มดต�วัทำ)& i = 5 เด�นได�ค์วัามยาวั เป'น 3 ; ระยะก่�อนหน�าเป'น 3
X5=1 X6=1 X7=1
เพิราะฉะน�-น ทำ�าก่ารปร�บค์�า pheromone บนเส�นทำางทำ)& X5
19
วั�เค์ร�ะห�เวัลำ�ในำก�รท��ง�นำของ ACO algorithms
• วั�เค์ราะห�เวัลาในก่ารทำ�างานของ ACO algorithms บนป!ญหา One-Max
20
Running timeanalysis
Lemma 1:
Lemma 2: จั�านวันค์ร�-งของก่ารปร�บ ; เม0&อมดเด�นได�มาก่ก่วั�าหร0อเทำ�าก่�บค์�าก่�อนหน�า
Lemma 3: ค์วัามน�าจัะเป'นของมดต�วัทำ)& i ในก่ารทำ)&จัะเล0อก่เส�นทำางทำ)&ม)ค์�า Xi เทำ�าก่�บ 1
.maxmin )(, ttandiallFor i
solutionjiifijij ),(,maxmin )log
1( nT
T
ป!จัจั�ยของก่ารวั�เค์ราะห�เวัลาในก่ารทำ�างาน
. n)(1/
จัาก่
21
บทพิ�ส'จันำ� : Lemma 1
minmin , ee thenif
thenffif uu
iANTFORUPDATEPHEROMONEPROCEDURE
maxmax , ee thenif
conditionboundary//
ve
e
e
Seif
otherwise
,)1(
)1(
uuuu SSff
,
doEwueeachfor ),(
updatenormal//
22
บทพิ�ส'จันำ� : Lemma 1
minmin , ee thenif
iANTFORUPDATEPHEROMONEPROCEDURE
maxmax , ee thenif
conditionboundary//
.maxmin )(, ttandiallFor i
23
บทพิ�ส'จันำ� : Lemma2
จั�านวันค์ร�-งในก่ารปร�บค์�า • ก่�าหนดให� pheromone บน และ• ด�งน�-นให� ก่�าหนดให� T =
max)2( nesolutionjiifijij ),(,maxmin
min)12( ne
maxmin τT
)log1
(ln1
min
maxn
minmax
max)1(min,
)1(
}max{
T
ijT
)/ln(/1max
)/ln(/1max
minmaxminmax)(1
e
min)/ln(
maxminmax e
24
ทำ)&โหนดใดๆ ในก่ราฟ มดต�วัทำ)& i ม)ค์วัามน�าจัะเป'นทำ)&จัะเล0อก่เส�นทำางทำ)&ม)ค์�า Xi ทำ)&ม)ค์�าเป'น 1 เทำ�าก่�บ
บทพิ�ส'จันำ� : Lemma3
)1(2
1
/)1(2
/1
maxmax
min
'
nnn
n
jj
j
. n)(1/
. n)(1/
25
Theorem 1
Theorem 1 : Running Time ของ Multiple-Ant Algorithm บนป!ญหา
one-max เป'น)log(
2
nn
26
Lemma 2 : จั�านวันค์ร�-งของก่ารปร�บค์�า
Lemma 3 : ค์วัามน�าจัะเป'นในก่ารทำ)&มดเล0อก่เส�นทำาง Xi =1 เป'น
บทพิ�ส'จันำ� : Theorem 1
)log1
( nn
)(1
nn
พิ�จัารณีาก่ารทำ�างานของมดต�วัทำ)& n-1 ;
จัาก่ Lemma ทำ)& 2 และ 3nT log
1
27
บทพิ�ส'จันำ� : Theorem 1 (2)
)log( nn
)/11(/1/)1(
/)1(
minmax
max nnnn
nn
constantพิ�จัารณีาก่ารทำ�างานของมดต�วัทำ)& n-2 ; เม0&อเวัลาผ�านไป
)log1
( nn
28
บทพิ�ส'จันำ� : Theorem 1 (3)
)log2( nn
O
)log1
( nn
พิ�จัารณีาก่ารทำ�างานของมดต�วัทำ)& n-3 ; เม0&อเวัลาผ�านไป constantค์วัามน�าจัะเป'นของ
Xn-3 เป'น 1/n
29
Correctly saturate
บทพิ�ส'จันำ� : Theorem 1 (5)
1
1
)/11(/1/)1(
/)1(1
minmax
max
i
i
nnnn
nni
)1()/11( 11 en n
เพิราะฉะน�-นหาก่ทำ�ก่ๆ เส�นเช้0&อมจัาก่โหนด i ม)ค์�า pheromone เป'น correctly saturated แล�วัน�-น ค์วัามน�าจัะเป'นในก่ารทำ)&มดจัะเล0อก่เส�นทำางถุ4ก่ต�องทำ�-งหมดจัาก่โหนดน�-นจัะเป'น
i
30
Theorem 1 : Running Time ของ Multiple-Ant Algorithm บนป!ญหา
one-max เป'น
บทพิ�ส'จันำ� : Theorem 1 (4)
)log( nn
n
)log(2
nn
)log( nn
31
Experiment on one-max
1n
ก่ารปร�บค์�าของ pheromones บนเส�นทำางทำ)& Xi ม)ค์�าเป'น 1 เม0&อเทำ)ยบก่�บเวัลา (multiple-ant algorithm ส�าหร�บ one-max โดยก่�าหนด n = 30 )
ก�รปร�บค์�� pheromone บนำเส�นำท�งท()ม(ค์�� Xi เป"นำ 1 (Multiple-ant)
32
Experiment on one-max (2)ก�รปร�บค์�� pheromone บนำเส�นำท�งท()ม(ค์�� Xi เป"นำ 0
(Multiple-ant)
ก่ารปร�บค์�าของ pheromones บนเส�นทำางทำ)& Xi ม)ค์�าเป'น 0 เม0&อเทำ)ยบก่�บเวัลา (multiple-ant algorithm ส�าหร�บ one-max โดยก่�าหนด n = 30 )
33
Experiment on one-max (3)
ก�รปร�บค์�� pheromone บนำเส�นำท�งท()ม(ค์�� Xi เป"นำ 1 (1-ant)
ก่ารปร�บค์�าของ pheromones บนเส�นทำางทำ)& Xi ม)ค์�าเป'น 1 เม0&อเทำ)ยบก่�บเวัลา (1-ant algorithm ส�าหร�บ one-max โดยก่�าหนด n = 30 )
34
- ACO based Algorithm for Finding SingleDestination
Shortest Paths on a DAG Theorem 2 : Running Time ของ Multiple-Ant
Algorithm บน DAG เป'น
)log1
( 2 nmn
35
Experiment on DAG
- ACO based Algorithm ส��หร�บก�รห� SingleDestination
Shortest Paths บนำ DAG
ต�วัอย�าง ก่ราฟ G เป'น DAG โดย n=16
36
Experiment on DAG (2)
ก่ารปร�บค์�าของ pheromones เม0&อเทำ)ยบก่�บเวัลา (muliple-ant algorithm บน DAGโดยก่�าหนด n = 25 )
37
Experiment on DAG (3)
ก่ารปร�บค์�าของ pheromones เม0&อเทำ)ยบก่�บเวัลา (muliple-ant algorithm บน DAGโดยก่�าหนด n = 25 )
38
Thank you
Q/A
top related