Professional Documents
Culture Documents
Thesis
Thesis
Thesis
Li u tin em xin gi li cm n su sc n thy Ng Duy Ha, thy tn tnh ch bo v hng dn em trong sut qu trnh thc tp v lm n em hon thnh tt n tt nghip ca mnh! Tip n em xin gi li cm n chn thnh n cc thy c trong khoa Cng Ngh Thng Tin, cc thy c trong trng i hc Bch Khoa H Ni dy cng dy d em trong sut 5 nm hc ti trng. Em xin chn thnh cm n cc thy c trong b mn Khoa hc my tnh lun lun to cho chng em mt mi trng hc tp tt ti trng. Em xin gi li bit n chn thnh v su sc n b m v gia nh. Cui cng, ti cm n tt c bn b lun lun gip ti trong cuc sng v hc tp!
Phm Thi Sn
1 |Page
Mc lc
Danh mc hnh v s dng......................................................................................... 7 Danh mc cc t vit tt............................................................................................ 8 Tng quan.................................................................................................................. 9 Gii thiu chung......................................................................................................... 9 1.Cc kin thc c bn............................................................................................. 11 1.1 Cc khi nim c bn v th.......................................................................11 nh ngha th .............................................................................................. 11 1.1.1. Cc thut ng c bn............................................................................... 13 1.1.2. ng i, chu trnh v th lin thng...................................................14 1.1.3. Chu trnh Euler......................................................................................... 15 1.1.4. Chu trnh Hamilton................................................................................... 16 1.1.5. th c trng s .................................................................................... 17 1.1.6. Cc cu trc d liu biu din th........................................................17 1.2 Khi nim v lp cc bi ton P v NP.............................................................18 1.1.1 Khi nim cc loi thi gian tnh...............................................................18 1.1.2 Bng chng ngn gn d kim tra............................................................19 1.1.3 Khi nim quy dn ................................................................................... 20 1.1.4 Lp bi ton P........................................................................................... 20 1.1.5 Lp bi ton NP......................................................................................... 20 1.1.6 Lp bi ton Co-NP....................................................................................21 1.1.7 Lp bi ton NP-y (NP-Complete).....................................................21 1.1.8 Lp bi ton NP- kh (NP-Hard).................................................................21 1.3 Cc thut ton xp x...................................................................................... 22 1.4 Bi ton ti u ha t hp (Combinatorial optimization).................................24 2 |Page
Bi ton ti u ha t hp tnh (Static Combinatorial optimization):.................24 Bi ton ti u ha t hp ng (Dynamic Combinatorial optimization):..........24 2.Bi ton ngi du lch............................................................................................ 25 1.5 Gii thiu bi ton........................................................................................... 25 1.6 Lch s bi ton TSP....................................................................................... 26 1.7 M t bi ton TSP.......................................................................................... 27 1.8 Phn loi bi ton............................................................................................ 27 i xng v bt i xng..................................................................................27 Vi khong cch l metric ................................................................................28 Vi khong cch khng l metric .....................................................................28 1.9 Cc gii thut gii bi ton TSP.......................................................................29 Cc gii thut tm li gii chnh xc..............................................................29 Heuristic v cc gii thut xp x......................................................................30 3.Giao thc truyn gi tin(MPI) v cc vn song song ha .................................31 1.10 Kin trc my tnh song song.......................................................................31 1.11 Phn tch bi ton......................................................................................... 32 1.12 Phn tch d liu........................................................................................... 32 1.13 Phn tch cng vic...................................................................................... 32 1.14 Song song ha d liu v m hnh truyn tin................................................33 1.15 Ti u chng trnh song song .....................................................................33 1.16 Phn chia cng vic....................................................................................... 33 1.17 Ti thiu ha trao i d liu.........................................................................34 1.18 Gim chng cho gia trao i d liu v tnh ton:.....................................34 1.19 MPI................................................................................................................ 34 1.20 Lch s pht trin MPI.................................................................................... 35 1.21 Mc ch ca MPI.......................................................................................... 35 3 |Page
1.22 Cc c tnh c bn ca mt chng trnh MPI..............................................36 4.Gii thut di truyn v di truyn song song..........................................................37 1.23 Gii thiu v gii thut di truyn...................................................................37 4.1.1 Lch s pht trin:..................................................................................... 37 1.24 Cc khi nim c bn.................................................................................... 38 4.1.2 C th, nhim sc th...............................................................................38 4.1.3 Qun th................................................................................................... 39 4.1.4 Cc ton t di truyn.................................................................................39 1.25 M hnh gii thut di truyn..........................................................................39 1.26 Cc tham s ca GA...................................................................................... 41 Xc sut lai ghp............................................................................................... 41 Xc sut t bin.............................................................................................. 41 Kch thc qun th.......................................................................................... 41 1.27 Cc cch m ho NST.................................................................................... 41 M ho nh phn................................................................................................ 42 M ho hon v.................................................................................................. 42 M ho theo gi tr............................................................................................ 42 1.28 Khi to qun th ban u............................................................................ 43 Hm tnh thch nghi...................................................................................... 43 C ch la chn................................................................................................. 43 La chn t l.................................................................................................... 43 La chn xp hng............................................................................................ 44 La chn theo c ch ly mu ngu nhin.......................................................44 La chn tranh u........................................................................................... 44 1.29 Cc ton t di truyn (GA operators).............................................................44 M ho nh phn................................................................................................ 45 4 |Page
M ho hon v.................................................................................................. 45 M ho theo gi tr............................................................................................ 46 1.30 Chin lc np li qun th...........................................................................46 Np li hon ton.............................................................................................. 46 Np li ngu nhin............................................................................................ 47 Np li theo m hnh c th u t.....................................................................47 1.31 GA song song................................................................................................ 47 4.1.5 Gii thiu................................................................................................... 47 4.1.6 Cc gii thut GA song song.....................................................................48 4.1.7 M hnh GA song song a qun th phn tn............................................50 5.Thut ton by kin v by kin song song..........................................................54 1.32 S chung ca thut ton by kin............................................................54 5.1.1 Gii thiu chung v thut ton by kin...................................................54 5.1.2 Ni dung thut ton..................................................................................60 1.33 Cc s thut ton..................................................................................... 64 5.1.3 Thut ton Ant System (AS) .....................................................................64 5.1.4 Thut ton Ant Colony System(ACS) ........................................................66 5.1.5 Thut ton MaxMin Ant System(MMAS) ..................................................67 5.1.6 Thut ton Rank-Based Ant System(RBAS) ..............................................69 5.1.7 Thut ton Best-Worst Ant System(BWAS) ...............................................70 1.34 Thut ton n kin song song.....................................................................71 6.Gii thut luyn thp............................................................................................. 74 1.35 Gii thiu gii thut luyn thp.....................................................................74 1.36 S gii thut............................................................................................. 74 1.37 Gii thut luyn thp song song....................................................................76 6.1.1 Song song bng chia nh d liu..............................................................76 5 |Page
6.1.2 M hnh chy nhiu ln............................................................................. 76 6.1.3 Cc bc di chuyn song song..................................................................77 Ti liu tham kho.................................................................................................... 78
6 |Page
7 |Page
Danh mc cc t vit tt
ACO ACS AS TSP SA GA PGA PSA TSP BFS DFS Pheromone PACO Thut ton ti u by kin H thng by kin H thng kin Bi ton ngi du lichj Gii thu luyn thp Gii thut di truyn Gii thut di truyn song song Gii thu luyn thp song song Bi ton ngi du lch Thut ton tm kim theo chiu su Thut ton tm kim theo chiu rng Thng tin mi. Thut ton ti u by kin song song
8 |Page
So snh cc gii thut song song Metaheuristic trong vic gii bi ton TSP
Tng quan
Bi vit ny so snh hiu qu ca mt vi gii thut metaheuristic trong vic gii bi ton ngi du lch. Cc m hnh song song ha da trn MPI c s dng nh gi cho cc gii thut GA (gentetic algorithm) ,SA (simulated annealing), ACO ( Ant Colony Optimization). Cc kt qu nh gi da trn hiu qu song song ha ca cc m hnh song song cho cng 1 gii thut v gia cc gii thut khc nhau. Keyword : parallel metaheuristic , gentetic algorithm , simulated annealing, ant colony optimization , MPI , TSP , speedup.
Vi phc tp tnh ton cao ca cc bi ton ti u t hp cng nh i hi v mt thi gian , vic gii cc bi ton ny yu cu cn phi c nhng ci t song song ha hiu qu ca cc gii thut gii quyt chng. Song song ha cc gii thut metaheuristic phi t c 2 yu cu : a dng ha khm ph c nhiu vng trong khng gian tm kim v tng tc tm kim . Nhiu m hnh song song hoi c xut cho nhiu metaheuristic. ACO v GA u l cc cch tip cn da trn tp c th v v vy kh t nhin cho vic x l song song . Tuy nhin SA th vn mang tnh tun t v rt chm cho cc bi ton vi khng gian tm kim ln nhng vn c mt vi k thut song song ha c th c p dng tng tc tm kim. Bi vit ny so snh hiu qu song song ha ca cc m hnh song song cho mt vi gii thut metaheuristic cho vic tm kim li gin gn ti u ca bi tan TSP. Cc m hnh song song c xut cho gii thut n kin, luyn thp v gii thut di truyn. M hnh thc nghim dng MPI v mt vi bi ton trong th vin TSPLIB.
10 | P a g e
Hnh 1
nh ngha 1.2. a th v hng G=(V,E) bao gm V l tp cc nh, v E l h cc cp khng c th t gm hai phn t khc nhau ca V gi l cc cnh. Hai cnh e 1 v e2 c gi l cnh lp nu chng cng tng ng vi mt cp nh. nh ngha 1.3. n th c hng G=(V,E) bao gm V l tp cc nh, v E l tp cc cp c th t gm hai phn t khc nhau ca V gi l cc cung.
11 | P a g e
nh ngha 1.4. a th c hng G=(V,E) bao gm V l tp cc nh, v E l h cc cp c th t gm hai phn t khc nhau ca V gi l cc cung. Hai cung e 1 v e2 c gi l cung lp nu chng cng tng ng vi mt cp nh.
Hnh 2
Hai loi th c bn: a) th v hng(6 nh, 9 cnh). b) th c hng(5 nh, 7 cung). nh ngha 1.5. th hn hp G=(V, E, A ) bao gm V l tp cc nh, E l tp cc cnh (E) v A l tp cc cung (A ) ca th.
Hnh 3
th hn hp(6 nh 5 cnh, 4 cung) S nh ca th G l s phn t trong V. Chng ta c th coi cc th v hng v c hng l cc trng hp ring ca th hn hp G=(V, E, A) khi m A = hoc E=.
12 | P a g e
1.1.1.
Cc thut ng c bn
nh ngha 1.6. Hai nh u v v ca th v hng G c gi l k nhau nu (u,v) l cnh ca th G. Nu e=(u,v) l cnh ca th th chng ta ni cnh ny l lin thuc vi hai nh u v v, hoc cng ni l cnh e l ni nh u v nh v, ng thi cc nh u v v s c gi l cc nh u cu cnh (u,v). c th bit c bao nhiu cnh lin thuc vi mt nh, chng ta a vo nh ngha sau nh ngha 1.7. Chng ta gi bc ca nh v trong th v hng l s cnh lin thuc vi n v s k hiu l deg(v). nh l 1.1. Gi s G=(V,E) l th v hng vi m cnh. Khi
2m = deg(v)
vV
H qu 1.1. Trong th v hng, s nh bc l(ngha l c bc l s l) l mt s chn nh ngha 1.8. Nu e=(u,v) l cung ca th c hng G th chng ta ni hai nh u v v l k nhau, v ni cung (u,v) ni nh u v nh v hoc cng ni cung ny l i ra khi nh u v i vo nh v. nh u (v) s c gi l nh u (cui) ca cung (u,v) nh ngha 1.9. Chng ta gi bn bc ra (bn bc vo) ca nh v trong th c hng l s cung ca th i ra khi n (i vo n) v k hiu l deg + (v)(deg (v)) nh l 1.2. Gi s G=(V,E) l th c hng. Khi
deg
vV
Tng t nh trn , chng ta xt cc thut ng c bn cho th hn hp Quy c. K hiu vi S l mt tp hp th #(S) hay |S| l s phn t ca tp S. Cho th hn hp G =(V,E,A). Nu e=(u,v) thuc E, th chng ta ni cnh e k vi nh u, v v. Nu e=(u,v) thuc A, th chng ta ni cung e k vi nh u, v v. nh ngha 1.10. Cho th hn hp G=(V, E, A). K hiu deg(v) l bc ca nh v trong th. Gi tr ca deg(v) c tnh theo cng thc sau:
13 | P a g e
deg(v)= #(cc cnh k vi nh v)+ # (cc cung k vi nh v) nh ngha 1.11. Chng ta gi bn bc ra( bn bc vo) ca nh v trong th hn hp G l s cung ca th i ra khi n (i vo n) v k hiu l indegree(v) (outdegree(v)). 1.1.2. ng i, chu trnh v th lin thng
nh ngha 1.12. ng i di n t nh u n nh v, trong n l s nguyn dng, trn th v hng G=(V,E) l dy x0,x1,..,xn-1,xn trong u=x0 , v= xn , (xi,xi+1) E, i = 0,1,2,,n-1. ng i ni trn cn c th biu din di dng dy cc cnh: (x0, x1), (x1, x2), , (xn-1, xn). nh u gi l nh u, cn nh v gi l nh cui ca ng i. ng i c nh u trng vi nh cui (tc l u=v) c gi l chu trnh. ng i hay chu trnh c gi l n nu nh khng c cnh no b lp li nh ngha 1.13. ng i di n t nh u n nh v, trong n l s nguyn dng, trn th c hng G=(V, A) l dy x0,x1,..,xn-1,xn trong u=x0 , v= xn , (xi,xi+1) A, i = 0,1,2,,n-1. ng i ni trn cn c th biu din di dng dy cc cung: (x0, x1), (x1, x2), , (xn-1, xn). nh u gi l nh u, cn nh v gi l nh cui ca ng i. ng i c nh u trng vi nh cui (tc l u=v) c gi l chu trnh. ng i hay chu trnh c gi l n nu nh khng c cung no b lp li nh ngha 1.14. ng i di n t nh u n nh v, trong n l s nguyn dng, trn th hn hp G=(V, E, A) l dy x0,x1,..,xn-1,xn trong u=x0 , v= xn , (xi,xi+1) E, hoc (xi,xi+1) A, i = 0,1,2,,n-1.
ng i ni trn cn c th biu din di dng dy cc cnh, cung: (x0, x1), (x1, x2), , (xn-1, xn).
14 | P a g e
nh u gi l nh u, cn nh v gi l nh cui ca ng i. ng i c nh u trng vi nh cui (tc l u=v) c gi l chu trnh. ng i hay chu trnh c gi l n nu nh khng c cnh hay cung no b lp li. nh ngha 1.15. th v hng G=(V, E) c gi l lin thng nu lun tm c ng i gia hai nh bt k ca n. nh ngha 1.16. Chng ta gi th con ca th G=(V, E) l th H=(W, F), trong W V v F E. Trong trng hp th l khng lin thng, n s r ra thnh mt s th con lin thng i mt khng c nh chung. Nhng th con lin thng nh vy chng ta s gi l cc thnh phn lin thng ca th . nh ngha 1.17. th c hng G=(V, A) c gi l lin thng mnh nu lun tm c ng i gia hai nh bt k ca n. nh ngha 1.18. th c hng G=(V, A) c gi l lin thng yu nu th v hng tng ng vi n l th v hng lin thng. R rng nu th l lin thng mnh th cng l lin thng yu nhng iu ngc li l khng lun ng. 1.1.3. Chu trnh Euler
nh ngha 1.19. Chu trnh n trong G i qua mi cnh ca n mt ln c gi l chu trnh Euler. ng i n trong G i qua mi cnh ca n mt ln c gi l ng i Euler. th c gi l th Euler nu n c chu trnh Euler, v gi l th na Euler nu n c ng i Euler. R rng mi th Euler lun l na Euler, nhng iu ngc li khng lun ng. nh l 1.4. th v hng lin thng G l th Euler khi v ch khi mi nh ca G u c bc chn. H qu 1.2. th lin thng G l na Euler khi v ch khi n c khng qu 2 nh bc l. nh l 1.5. th c hng lin thng mnh l th Euler khi v ch khi
deg + (v) = deg (v), v V
15 | P a g e
Trn y chng ta m t iu kin cn v th v hng v c hng l th Euler. iu kin cn v th hn hp l th Euler l kh phc tp v s c trnh by trong phn bi ton ngi a th Trung Hoa trn th hn hp. 1.1.4. Chu trnh Hamilton
Trong ton hc, ngnh l thuyt th, mt ng i Hamilton l mt ng i trong th v hng i qua tt c cc nh ca th, mi nh ng mt ln. Mt Chu trnh Hamilton l mt ng i Hamilton sau i qua tt c cc nh ca th th tr v nh xut pht. Mt th c chu trnh Hamilton c gi l th Hamilton, th c ng i Hamilton c gi l th na Hamilton. Bi ton tm ng i v chu trnh nh vy c gi l bi ton Hamilton. Bi ton Hamilton l NP y . Tn gi ng i v chu trnh Hamilton l gi theo tn ca William Rowan Hamilton .
1.1.1.1
nh l Bondy-Chvtal
Cho th G c n nh, bao ng cl(G) c to ra t G bng cch b sung cho mi cp nh khng k nhau u v v vi degree(v) + degree(u) n mt cnh mi uv.
1.1.1.2
nh l Bondy-Chvtal (1972)
1.1.1.3
nh l Dirac (1952)
1.1.1.4
nh l Ore (1960)
16 | P a g e
1.1.5.
th c trng s
th c s dng gii cc bi ton trong nhiu lnh vc khc nhau. Chng hn, th c s dng xc nh cc mch vng trong vn gii tch mch in. Chng ta c th xc nh xem hai my tnh trong mng c th trao i thng tin vi nhau c hay khng. Khi , th c s dng biu din mng truyn thng vi cc nh l cc nt mng, cc cnh, cc cung l cc ng truyn d liu gia cc nt mng. th c th dng biu din cc ng i trong mt vng: cc nh tng ng vi cc ng 3, ng 4, cn cc cnh, cc cung tng ng l cc ng i 2 chiu v ng i 1 chiu. cu trc th c th biu din c cc bi ton thc t ngi ta a vo khi nim th c trng s, trn mi cnh hay mi cung c gn mt trng s th hin chi ph cho vic thc hin mt mc ch no trn cnh hay trn cung. nh ngha 1.20. Chng ta k hiu th c trng s l b 4 G=(V, E, A, w), trong , w l hm trng s w: E A R , R: tp s thc, ngoi ra cn c th k hiu w bng c hoc weight, cost. Cho S l mt tp con ca E A, khi chng ta k hiu w (S)=w(s)| s S l gi tr trng s ca tp S. 1.1.6. Cc cu trc d liu biu din th
C nhiu cch khc nhau lu tr cc th trong my tnh. S dng cu trc d liu no th ty theo cu trc ca th v thut ton dng thao tc trn th . Trn l thuyt, ngi ta c th phn bit gia cc cu trc danh sch v cc cu trc ma trn. Tuy nhin, trong cc ng dng c th, cu trc tt nht thng l kt hp ca c hai. Ngi ta hay dng cc cu trc danh sch cho cc th tha (sparse graph), do chng i hi t b nh. Trong khi , cc cu trc ma trn cho php truy nhp d liu nhanh hn, nhng li cn lng b nh ln nu th c kch thc ln.
1.1.1.5
Danh sch lin thuc (Incidence list) - Mi nh c mt danh sch cc cnh ni vi nh . Cc cnh ca th c c th c lu trong mt danh sch ring (c th ci t bng mng (array) hoc danh sch lin kt ng (linked list)), trong mi phn t ghi thng tin v mt cnh, bao gm: cp nh m
17 | P a g e
cnh ni (cp ny s c th t nu th c hng), trng s v cc d liu khc. Danh sch lin thuc ca mi nh s chiu ti v tr ca cc cnh tng ng ti danh sch cnh ny.
Danh sch k (Adjacency list) - Mi nh ca th c mt danh sch cc nh k n (ngha l c mt cnh ni t nh ny n mi nh ). Trong th v hng, cu trc ny c th gy trng lp. Chng hn nu nh 3 nm trong danh sch ca nh 2 th nh 2 cng phi c trong danh sch ca nh 3. Lp trnh vin c th chn cch s dng phn khng gian tha, hoc c th lit k cc quan h k cnh ch mt ln. Biu din d liu ny thun li cho vic t mt nh duy nht tm mi nh c ni vi n, do cc nh ny c lit k tng minh.
1.1.1.6
Cc cu trc ma trn
Ma trn lin thuc (Incidence matrix) - th c biu din bng mt ma trn [bij] kch thc p q, trong p l s nh v q l s cnh, bij = 1 cha d liu v quan h gia nh vi v cnh xj. n gin nht: bij = 1 nu nh vi l mt trong 2 u ca cnh xj, bng 0 trong cc trng hp khc.
Ma trn k (Adjaceny matrix) - mt ma trn N N, trong N l s nh ca th. Nu c mt cnh no ni nh vivi nh vj th phn t Mi,j bng 1, nu khng, n c gi tr 0. Cu trc ny to thun li cho vic tm cc th con v o cc th. Ma trn dn np (Admittance matrix) hoc ma trn Kirchhoff (Kirchhoff matrix) hay ma trn Laplace (Laplacian matrix) - c nh ngha l kt qu thu c khi ly ma trn bc (degree matrix) tr i ma trn k. Do , ma trn ny cha thng tin c v quan h k (c cnh ni hay khng) gia cc nh ln
Thi gian tnh tt nht: l thi gian tnh ti thiu cn thit thc hin thut ton vi mi b d liu u vo kch thc n.
18 | P a g e
Thi gian tnh ti nht: l thi gian tnh ti a cn thit thc hin thut ton vi mi b d liu u vo c kch thc n Thi gian tnh trung bnh: l thi gian tnh cn thit thc hin thut ton trn mt tp hu hn cc b d liu u vo c kch thc n. Thi gian tnh trung bnh c tnh theo cng thc sau: Thi gian tnh trung bnh=(Tng thi gian tnh tt c cc b d liu c th )/ S b d liu. nh ngha .Bi ton quyt nh l bi ton m u ra ch c th l yes hoc no(ng/sai, 0/1). i vi mt bi ton quyt nh, c nhng b d liu vo cho ra cu tr li(u ra) l yes, chng ta gi y l b d liu yes, nhng cng c nhng b d liu vo cho ra cu tr li l no, chng ta gi nhng b d liu ny l b d liu no. 1.1.2 Bng chng ngn gn d kim tra
Rt nhiu cc bi ton quyt nh c mt c im chung, l xc nhn cu tr li yes i vi b d liu vo yes ca chng, chng ta c th a ra bng chng ngn gn d kim tra xc nhn cu tr li yes cho b d liu vo yes . Tnh ngn gn d kim tra m ch vic thi gian kim tra a ra kt qu ch mt thi gian a thc. V d v nhng bi ton quyt nh kiu ny rt nhiu, sau y l mt s v d: Bi ton kim tra tnh hp s: C phi s n l hp s?, xc nhn cu tr li yes cho u vo n, chng ta c th a ra mt c s b (1<b<n) ca n. kim tra xem b c phi l c s ca n chng ta c th thc hin php chia n cho b sau thi gian a thc. Trong v d ny , b l bng chng ngn gn (v b<n) v d kim tra (c thut ton a thc kim tra b ng l c s ca n khng). i vi bi ton Hamilton, xc nhn cu tr li l yes cho th cho G, chng ta c th a ra mt chu trnh Hamilton ca th: v1, v2, v3......vn, v1 Vic kim tra dy nh ni trn c l chu trnh Hamilton ca th cho hay khng c th thc hin sau thi gian a thc. Khi chng ta ni dy nh ni
19 | P a g e
trn l bng chng ngn gn d kim tra xc nhn cu tr li yes ca bi ton Hamilton. i vi bi ton v tnh chp nhn c ca biu thc Bun, xc nhn cu tr li yes i vi mt biu thc cho, chng ta ch cn a ra mt b gi tr cc bin s m ti biu thc nhn gi tr true. Vic tnh gi tr ca biu thc ti mt b gi tr c th thc hin sau thi gian a thc. Mt cch tng t, c th a ra khi nim bng chng ngn gn d kim tra xc nhn cu tr li no. i vi mt s bi ton, vic a ra bng chng ngn gn d kim tra xc nhn cu tr li no l d hn so vi vic a ra bng chng ngn gn xc nh cu tr li l yes. 1.1.3 Khi nim quy dn
nh ngha . Gi s chng ta c hai bi ton quyt nh A v B. Chng ta ni A c th quy dn v B nu nh sau mt thi gian tnh a thc nu tn ti mt thut ton thi gian a thc R cho php bin i b d liu x ca A thnh b d liu vo R (x) ca B sao cho x l b d liu yes ca A khi v ch khi R(x) l d liu vo yes ca B. Nu A quy dn v c B sau thi gian a thc v B c th gii c sau thi gian a thc th A cng c th gii c sau thi gian a thc.
1.1.4
Lp bi ton P.
nh ngha. Ta Chng ta gi P l lp cc bi ton c th gii c trong thi gian a thc, NP l lp cc bi ton quyt nh m xc nh cu tr li yes ca n chng ta c th a ra cc bng chng ngn gn d kim tra, co-NP l lp cc bi ton quyt nh m xc nh cu tr li no ca n chng ta c th a ra bng chng ngn gn d kim tra. V d: Bi ton cy khung nh nht gii c nh thut ton Prim vi thi gian 0(n 2) thuc lp bi ton P. 1.1.5 Lp bi ton NP.
nh ngha. Ta gi NP l lp cc bi ton quyt nh m xc nhn cu tr li yes ca n ta c th a ra bng chng ngn gn d kim tra.
20 | P a g e
V d: Bi ton kim tra tnh hp s: C phi n l hp s khng?, xc nhn cu tr li yes cho u vo n ta c th a ra mt c s b (1< b < n) ca n. kim tra xem b c phi l c s ca n hay khng ta c th thc hin php chia n cho b sau thi gian a thc. Trong v d ny d thy b l bng chng ngn gn (b<n) v d kim tra (c thut ton thi gian tnh a thc kim tra xem b c l c s ca n). 1.1.6 Lp bi ton Co-NP.
nh ngha. Ta gi Co-NP l lp cc bi ton quyt nh m xc nhn cu tr li no ca n ta c th a ra bng chng ngn gn d kim tra. V d: Bi ton kim tra tnh nguyn t: C phi n l s nguyn t khng?, a ra bng chng ngn gn d kim tra xc nhn cu tr li no cho u vo n ta c th a ra mt c s b ca n. 1.1.7 Lp bi ton NP-y (NP-Complete).
nh ngha. Mt bi ton quyt nh A c gi l NP-y (NP-Complete) nu nh: A l mt bi ton trong NP. Mi bi ton trong NP u c th quy dn v A.
B . Gi s bi ton A l NP-y , bi ton B thuc NP, v bi ton A qui dn c v bi ton B. Khi bi ton B cng l NP-y 1.1.8 Lp bi ton NP- kh (NP-Hard).
Mt cch ngn gn c th hiu bi ton NP-kh l bi ton m khng c thut ton thi gian tnh a thc gii n tr khi P = NP, m ch c cc thut ton gii trong thi gian hm m. Sau y l nh ngha chnh thc ca bi ton NP-kh. nh ngha. Mt bi ton A c gi l NP- kh (NP-hard) nu nh s tn ti thut ton a thc gii n ko theo s tn ti thut ton a thc gii mi bi ton trong NP. Mt s bi ton NP-kh tiu biu nh: 1. Bi ton b cc i (MaxClique): Cho mt th v hng G = (V, E). V l tp cc nh, E l tp cc cnh tng ng cc nh trong V. Cn tm b ln nht ca G. B l tp cc nh trong th m i mt c cnh nivi nhau (l mt th con y trong th G). Bi ton tp c lp (Independent set): Cho th v hng G = (V, E) v s nguyn K, hi c th tm c tp c lp S vi |S| K. Tp c lp l tp cc nh trong th m chng i mt khng c cnh ni vi nhau. Bi ton ph nh (Vertex cover): Ta gi mt ph nh ca th v hng G = (V, E) l mt tp con cc nh ca th S V sao cho mi cnh
2.
3.
21 | P a g e
ca th c t nht mt u mt trong S. Bi ton t ra l: Cho th v hng G = (V, E) v s nguyn k. Hi G c ph nh vi kch thc k hay khng? Mt cch khng hnh thc, c th ni rng nu ta c th gii c mt cch hiu qu mt bi ton NP-kh c th, th ta cng c th gii hiu qu bt k bi ton trong NP bng cch s dng thut ton gii bi ton NP-kh nh mt chng trnh con. T nh ngha bi ton NP-kh c th suy ra rng mi bi ton NP-y u l NP-kh. Tuy nhin mt bi ton NP-kh khng nht thit phi l NP-y . Cng t b nu trn, ta c th suy ra rng chng minh mt bi ton A no l NP-kh, ta ch cn ch ra php qui dn mt bi ton bit l NP-kh v n. T phn trnh by trn, ta thy c rt nhiu bi ton ng dng quan trng thuc vo lp NP-kh, v v th kh hy vng xy dng c thut ton ng hiu qu gii chng. Do , mt trong nhng hng pht trin thut ton gii cc bi ton nh vy l xy dng cc thut ton gn ng. Sau y l bc tranh phn lp cc bi ton nu trn.
Hnh 4
S l mt tp hp gm cc phn t tho mn mt tnh cht no vi mt hm mc tiu trn S: f: S R. Chng ta ni bi ton ti u trn S da theo hm f l tm mt phn t trong S tho mn mt tiu chi no , thng thng l tm cc tr (cc i hoc cc tiu) ca hm f. S c gi l tp xc nh hoc khng gian tm kim ca bi ton ti u. Thng thng chng ta c cc bi ton m phi tm gi tr ti u ca mt hm no trn khng gian tm kim l cc b d liu vo c th c. Tuy nhin c nhiu bi ton m vic tm ra gi tr ti u, phn t ti u tng ng vi gi tr ti u l mt vic cc k kh khn v hin ti cha tn ti thi gian tnh a thc gii bi ton . Tt nhin c th gii c bi ton nu nh chng ta thc hin chin lc vt cn l xc nh c tt c cc gi tr hm f trn cc phn t ca tp S. Tuy nhin chin lc ny khng tt v mt thi gian nu nh khng gian S c s phn t l hm m hoc giai tha. V d nu tp S l tp cc hon v ca 1,n th s phn t ca tp S l n!. Con s ny thc s l ln khng khip v vic thc thi n l bt kh thi. Khi m vic tm cc li gii ti u l bt kh thi th ngi ta quan tm n cc li gii gn ti u m chng ta gi l thut ton xp x. Gi s chng ta ang lm vic trn mt bi ton ti u, mi gii php tim nng mang mt chi ph dng, v chng ta mun gii php gn ti u. Gi s rng mt bi ton cn tm ra li gii vi chi ph l f* l gi tr ti u c kch thc u vo n, chng ta ni rng mt li gii ca bi ton l f l mt li gii xp x c cn t s l p(n)>1 nu nh chng ta c: max (f/f*, f*/f) p(n) Thng thng cc thut ton xp x c p dng tm ra cc li gii c cn xp x p(n) thng c gi tr p(n) = p l hng s. Tuy nhin vn c nhiu bi ton kh n mc p(n) ph thuc vo n. Gi s chng ta ang i mt vi cc yu cu ti u l cc tiu ho hoc cc i ho hm chi ph f. Cng vic ca cc nh ton hc l tm ra nhng thut ton thi gian tnh a thc nhm gim gi tr ca p hay p(n) n gn gi tr 1 cng tt- ngha l gi tr chng ta thu c rt gn gi tr ti u. Tt nhin khi gi tr f* qu ln th f cng cch kh xa so vi f* nhng xt v mt t l th vn nm trong cn chng ta ang xt.
23 | P a g e
Chng ta ni mt thut ton i vi bi ton c t s l P nu nh vi mi u vo sau mt thi gian tnh a thc chng ta thu c mt li gii f m so vi li gii ti u f* chng ta c max (f/f*, f*/f) p. i vi bi ton cc tiu ha ta ch cn f/f* p. i vi bi ton cc i ho th ch cn f*/f p.
24 | P a g e
25 | P a g e
Gerhard Reinelt cng b th vin TSPLIB vo nm 1991, l mt tp cc th hin ca bi ton TSP vi nhiu kh khc nhau, v c s dng bi nhiu nhm nghin cu khc nhau so snh kt qu. Nm 2005, Cook v nhng ngi khc tnh c di ti u cho chu trnh vi th hin ca bi ton TSP ln ti 33,810 thnh ph , c ly ra t bi ton xy dng layout cho microchip, cho ti nay vn l th hin ln nht trong cc th hin TSPLIB .Nhiu th hin khc vi hng triu thnh ph , li gii tm c c th chng minh nm sai khc 1% so vi li gii ti u.
Hnh 5
TSP c th c m hnh nh mt th , cc nh ca th tng ng vi cc thnh ph v cc cnh th tng ng vi ng ni gia cc thnh ph, chiu di ca mt cnh tng ng vi khoang cch gia 2 thnh ph. Mt ng i trong bi ton TSP l mt chu trnh Hamilton trn th v mt li gii ti u ca bi ton l chu trnh Hamilton ngn nht. Thng th th l th y , v vy mi cp cnh u c ni bi cc cnh. y l bc n gin ha bi ton v vic tm chu trnh Hamilton trong mt th y l d. Cc bi ton m khng phi 2 thnh ph no cng c ni vi nhau c th c chuyn i thnh th y bng cch thm nhng cnh c di ln gia cch thnh ph ny , nhng cnh s khng xut hin trong chu trnh ti u.
Trong bi ton bt i xng , khong cch t thnh ph ny n thnh ph khc khng nht thit phi bng khong cch theo hng ngc li, thm ch co th khng c kt ni theo chiu ngc li. V vy graph biu din bi ton bt i xng l th c hng. Ly v d m hnh ng mt chiu trong giao thng chng hn. Vi khong cch l metric Trong bi ton metric TSP khong cch gia cc thnh ph phi tha mn iu kin ca bt ng thc tam gic .iu ny c th pht biu rng ng ni trc tip t A n B khng bao gi di hn ng i t A ti B m qua C trung gian
Nhng chiu di cnh ny nh ngha mt metric trong tp cc nh . Khi cc thnh ph c xem nh nhng im trn tm hnh, nhiu hm khong cch t nhin l cc metric v d nh :
Trong bi ton Euclidian TSP khong cch gia 2 thnh ph l khong cch Euclide gia hai im tng ng. Trong bi ton Rectilinear TSP khong cch gia 2 thnh ph l tng hai ta x v y ca chng. Metric ny thng c gi l khong cch Manhattan hay cityblock metric. Trong maximum metric, khong cch gia 2 thnh ph l max ca chnh lch ta x v y ca chng.
Hai metric cui xut hin trong vic nh hng mt my m o tp cc h trong mch in. Manhattan metric tng ng ti my cn chnh ta th nht ri ti ta kia, v vy thi gian di chuyn ti mt im mi l tng c 2 hng di chuyn. Maximum metric tng ng vi my m chnh c 2 ta cng 1 lc v vy thi gian di chuyn ti mt im mi quyt nh bi di chuyn di hn. Vi khong cch khng l metric Khong cch khng tha mn bt ng thc tam gic pht sinh trong nhiu bi ton nh tuyn. V d trong mt kiu vn ti , nh du lch bng my bay c th nhanh hn mc d khong cch di chuyn l xa hn.
28 | P a g e
Rt nhiu gii thut branch-and-bound, c th s dng gii cc bi ton TSP vi khong 40-60 thnh ph. Cc gii thut ci thin dn dn s dng k thut ghi nh li ca linear programming. C th lm vic tt cho khong 200 thnh ph. Thc hin branch-and-bound v cut cho cc bi ton c th , y l phng thc s dng gii quyt cc bi ton vi s lng ln thnh ph. Cch tip cn ny ang gi k lc hin ti gii quyt c bi ton TSP vi 85,900 thnh ph.
Li gii chnh xc cho bi ton vi 15,112 thnh ph c t TSPLIB c tm ra nm 2001 s dng phng thc lt ct xut bi George Dantzig, Ray Fulkerson, v Selmer Johnson vo nm 1954, da trn linear programming. Qu trnh tnh ton c thc hin trong mng my tnh gm 110 b vi x l ti i hc Rice University v Princeton University. Tng thi gian tnh ton tng ng vi 22.6 nm trong mt my n vi x l tc 500 MHz. Vo thng 5-2004, bi ton ngi du lch thm tt c 24,978 thnh ph thy in c gii quyt : on ng ngn nht vo khong 72,500 kilomet c tm thy v c chng minh rng khng c ng i no ngn hn. Vo thng 3- 2005, bi ton ngi du lch vi 33,810 im trong 1 mch in c gii quyt s dung cng c Concorde TSP Solver: on ng ti u di 66,048,945 n v c tm thy v c chng minh khng c ng i no ngn hn tng khi lng tnh ton mt khong 15.7 nm CPU (Cook et al. 2006). Vo thng 4 nm 2006 mt bi ton vi 85,900 im cng c gii quyt bi Concorde TSP Solver, v mt khong 136 nm CPU .
29 | P a g e
Heuristic v cc gii thut xp x Rt nhiu heuristics v gii thut xp x, c th a ra nhanh chng li gii tt c xut. Cc phng thc hin i c th tm li gii cho bi ton cc ln (hng triu thnh ph) trong khong thi gian chp nhn c vi li gii xp x ch khc 2-3% so vi li gii ti u. Mt vi kiu heuristic c tm ra.
1.9.1.1
Heuristics xy dng
Gii thut lng ging gn nht nearest neighbour (NN) (hay cn gi l gii thut tham lam greedy algorithm) cho ngi du lch chn thnh ph gn nht cha thm trong ln di chuyn tip theo. Gii thut ny nhanh chng a ra mt ng i ngn v hiu qu . Cho khong N thnh ph phn b ngu nhiu trn mt phng trung bnh gii thut ny a ra li gii c chiu di xp x 1.25 * ln chiu di ca ng i ti u. Tuy nhin, c nhiu cch sp xp c bit cc thnh ph lm cho gii thut NN a ra ng i ti t nht (Gutin, Yeo, and Zverovich, 2002). iu ny ng cho c bi ton TSP i xng v bt i xng (Gutin and Yeo, 2007). Gn y mt heuristic mi c a ra ,Match Twice and Stitch (MTS) (Kahng, Reda 2004. MTS cho thy tnh hiu qu hn hn so vi nhng heuristic xy dng hin ti . MTS thc hin hai ln khp tun t , m ln khp th 2 c thc hin sau khi xa tt c cc cnh ca ln khp th nht, a ra tp tt c cc chu trnh. Sau chu trnh c ng li a ra ng i cui cng..
1.9.1.2
Ci tin tng bc
K thut chuyn cp hay '2-opt' bao gm vic lp li vic xa 2 cnh v thay chng bng hai cnh khc ni on to bi cnh b xa to thnh ng di ngn hn. y l trng hp c bit ca phng thc k-opt.
k-opt heuristic
Ly mt ng i v xa k cnh i mt khng c im chung. Xy ng li ng i t nhng mnh cn li khng c hai mnh ng i no li vi nhau (khng ni hai im u cui ca 2 mnh vi nhau s to thnh ng i khp kn). iu ny lm n gin habi ton TSP thnh bi ton n gin hn rt nhiu. Mi im u cui c th c ni ti 2k 2 im khc c th: trong s 2k tng s im u cui c th, tr ra hai im u cui ca mnh ang xem xt . Bi ton n gin ha 2k thnh ph TSP c th gii s
30 | P a g e
dng brute force tm t hp tt nht ca cc mnh ban u. K thut k-opt l trng hp ring ca k thut V-opt hay variable-opt . K thut ph bin ca k-opt l 3-opt, c gii thiu bi Shen Lin ca Bell Labs vo nm 1965. C mt trng hp c bit ca 3-opt khi m cch cnh l c th khng nht thit khng c im chung (hai trong s cc cnh k vi nhau). Trong thc t, c th t c nhng pht trin ng k ca k thut 2-opt khng nht thit phi s dng 3-opt bgn cch gii hn 3-changes thnh trn hp ring vi hai cnh xa i ni vi nhau. K thut ny c gi l 2.5-opt nm gia 2-opt v 3-opt, hiu theo c 2 ngha ca cht lng li gii t c v thi gian tm c li gii.
V'-opt heuristic
K thut variable-opt method ging nh , nhng l s tng qut ha ca k-opt k thut. Trong khi k thut k-opt xa i mt s long c nh (k) cnh t ng i ban u k thut variable-opt khng xa i mt s lng cnh c nh. Thay v vy n pht trin tp ny khi qu trnh tm kim tip tc. Phng thc ni ting trong gia nh ny l phng thc Lin-Kernighan . Shen Lin v Brian Kernighan ln u tin a ra phng thc ca h nm 1972 v n l heuris tic ng tin cy nht cho vic gii bi ton ngi du lch trong sut hai thp k . Nhng k thut tin tin hn c pht trin ti Bell Labs cui nhng nm 1980 bi David Johnson v i nghin cu ca ng. Nhng phng thc ny , i khi c gi l Lin-Kernighan-Johnson xy dng trn phng thc LinKernighan , thm tng t tabu search v evolutionary computing. K thut c s LinKernighan technique mang li kt qu c m bo t nht l bn so vi 3-opt. Phng thc Lin-Kernighan-Johnson tnh mt ng i Lin-Kernighan , v sau xo trn ng i bng cch t bin (xa t nht 4 cnh v ni li ng i bng cch khc , sau thc v-opt trn ng i mi ). Qu trnh t bin thng di chuyn ng i ra khi cc b a phng ( local minimum ). K thut V-opt c xem nh mt trong s nhng heuristic mnh cho bi ton v c th gii quyt cc trng hp c bit, nh bi ton chu trnh Hamilton v nhng bi ton TSP khng phi metric m nhng heuristic khc khng gii quyt c.
kh nng truy cp nhanh vo b nh ring ca n v truy cp vo b nh ca nt khc thng qua mng giao tip, thng l mng giao tip c tc cao. D liu c trao i gia cc nt l cc gi tin c truyn trn mng giao tip. My tnh song song b nh dng chung, nhiu b x l dng chung mt khng gian b nh bng mt bt bus b nh tc cao. Khng gian b nh dng chung cho php cc b x l trao i v chia s vic truy cp d liu mt cch hiu qu. S lng b x l dng trong m hnh b nh dng chung l c gii hn nh. L do l s lng d liu c truyn ti qua bus b nh n cc b x l l c gii hn. Th h tip theo ca my tnh song song hin nay s dng kt hp gia kin trc b nh phn tn v b nh dng chung. Mi nt l mt nhm cc b x l dng chung b nh v cc nt c kt ni bng mt mng giao tip tc cao.
d liu. Trong song song ha cng vic, bi ton c phn chia thnh mt s lng ln cc nhim v nh hn v cc cng vic nh c gn cho cc b x l mt cch ph hp. Cc b x l s kt thc nhanh chng mt cng vic v c gn cho cng vic tip theo. Song song ha cng vic c thc hin trn kin trc client-server. Cc nhim v c cp pht cho mt nhm cc tin trnh phc v bng mt tin trnh chnh. Kin trc client-server c th thc hin hu nh tt c cc kiu chng trnh.
i ln trong thi gian thc hin, bn phi thc hin mt vi phng php gii quyt vn ny.
1.19 MPI
MPI c coi nh l mt chun thc hin ca m hnh truyn gi tin trong tnh ton song song. Qu trnh tnh ton song song bao gm mt s lng tin trnh, mi tin trnh lm vic vi mt b d liu c b. Mi tin trnh c cc bin cc b, v khng c c ch no mt tin trnh c th truy cp trc tip vo b nh ca mt tin trnh khc. Trao i d liu gia cc tin trnh c thc hin bng cch truyn gi tin, l phng tin duy nht thc hin gi v nhn d liu gia cc tin trnh. Ch rng m hnh bao gm cc tin trnh, trn nguyn tc n khng cn phi chy trn cc b x l khc nhau. L do chnh khin m hnh ny tr nn hu dng v n thc s ph bin. V bn cht, mi kiu tnh ton song song u c th thc hin trn m hnh truyn gi tin. Thm vo , m hnh ny:
34 | P a g e
- C th thc hin trn nhiu nn tng khc nhau, t kin trc nhiu b x l dng chung b nh n trm lm vic thm ch l mt my n b x l. - Cho php qun l d liu v tin trnh chi tit hn so vi ng dng song song theo m hnh b nh dng chung. Hn na chng trnh c th to ra mt hiu nng x dng cao hn.
1.21 Mc ch ca MPI
Mc ch chnh ca MPI l cung cp th vin nh km chng trnh ngun Chng trnh MPI c th dch v chy nh nhau trn bt k nn tng no. - Cho php thc thi mt cch c hiu qu trong nhiu kin trc. MPI cng cung cp mt s ln chc nng: cc kiu trao i d liu khc nhau, cc tin trnh c bit tp hp cc php x l, v cho php ngi dng t nh ngha giao thc truyn. - H tr cc kin trc song song khng ng nht. Mt s ci khng c trong chun MPI -1 l: - C ch chnh xc khi u mt chng trnh MPI. Thng thng, n ph thuc vo nn tng ca chng trnh v bn s cn tra cu cc ti liu ring bit bit cch lm nh th no.
35 | P a g e
- Qun l tin trnh ng, l s thay i s lng tin trnh khi chng trnh ang chy. - G li. - Vo-ra song song (Parallel I/O).
36 | P a g e
Gii thut di truyn l mt k thut ca khoa hc my tnh nhm tm kim gii php thch hp cho cc bi ton ti u t hp (combinatorial optimization). Gii thut di truyn l mt phn ngnh ca gii thut tin ha vn dng cc nguyn l ca tin ha nh di truyn, t bin, chn lc t nhin, v trao i cho. Gii thut di truyn thng c ng dng nhm s dng ngn ng my tnh m phng qu trnh tin ho ca mt tp hp nhng i din tru tng (gi l nhng nhim sc th) ca cc gii php c th (gi l nhng c th) cho bi ton ti u ha vn . Tp hp ny s tin trin theo hng chn lc nhng gii php tt hn. Thng thng, nhng gii php c th hin di dng nh phn vi nhng chui 0 v 1, nhng li mang nhiu thng tin m ha khc nhau. Qu trnh tin ha xy ra t mt tp hp nhng c th hon ton ngu nhin tt c cc th h. Trong tng th h, tnh thch nghi ca tp hp ny c c lng, nhiu c th c chn lc nh hng t tp hp hin thi (da vo th trng), c sa i (bng t bin hoc t hp li) hnh thnh mt tp hp mi. Tp hp ny s tip tc c chn lc lp i lp li trong cc th h k tip ca gii thut.
Nh ni trn, GA l mt thnh phn ca EC- mt lnh vc c coi l c tc pht trin nhanh ca tr tu nhn to. EC c chia ra thnh 5 nhm : Gii thut di truyn (Genetic Algorithm - GA): Da vo qu trnh di truyn trong t nhin ci tin li gii qua cc th h bt ngun t mt tp cc li gii ban u. Quy hoch tin ho (Evolutionary Programming -EP): Da vo quy lut tin ho, tm phng php lin hp kh nng gii quyt trn vn mt bi ton t mt lp cc phng php gii quyt c mt s phn ca bi ton. Cc chin lc tin ho ( Evolutionary Strategies -ES): Da trn mt s chin lc ban u, tin ho to ra nhng chin lc mi ph hp vi mi trng thc t mt cch tt nht. Lp trnh di truyn (Genetic Programming -GP): M rng gii thut di truyn trong lnh vc cc chng trnh ca my tnh. Mc ch ca n l sinh ra mt
37 | P a g e
cch t ng cc chng trnh my tnh gii quyt mt cch ti u mt vn c th. Cc h thng phn loi (Classifier Systems- CS): Cc GA c bit c dng trong vic hc my v vic pht hin cc quy tc trong cc h da trn cc quy tc. Gii thut di truyn cng nh cc thut ton tin ho u c hnh thnh da trn mt quan nim c coi l mt tin ph hp vi thc t khch quan. l quan nim "Qu trnh tin ho t nhin l qu trnh hon ho nht, hp l nht v t n mang tnh ti u". Qu trnh tin ho th hin tnh ti u ch th h sau bao gi cng tt hn th h trc. Qu trnh pht trin ca gii thut di truyn c th c ch ra qua cc mc thi gian sau : 1960 : tng u tin v Tnh ton tin ho c Rechenberg gii thiu trong cng trnh "Evolution Strategies" (Cc chin lc tin ho). tng ny sau c nhiu nh nghin cu pht trin. 1975 : Gii thut gen do John Holland pht minh v c pht trin bi ng cng vi cc ng nghip v nhng sinh vin. Cun sch "Adaption in Natural and Artificial Systems" (S thch nghi trong cc h t nhin v nhn to) xut bn nm 1975 tng hp cc kt qu ca qu trnh nghin cu v pht trin . 1992 : John Koza dng GA xy dng cc chng trnh gii quyt mt s bi ton v gi phng php ny l " lp trnh gen". Ngy nay gii thut di truyn cng tr nn quan trng, c bit l trong lnh vc ti u ho, mt lnh vc c nhiu bi ton th v, c ng dng nhiu trong thc tin nhng thng kh v cha c gii thut hiu qu gii .
Mt c th trong gii thut di truyn, biu din mt gii php ca bi ton. Tuy nhin khng ging vi trong t nhin, mt c th c nhiu nhim sc th (NST),c 1 th gi l th n bi ,cn nu c nhiu th l th a bi, y gii hn trong gii thut di truyn ta quan nim mt c th c mt nhim sc th. Do khi nim c th v nhim sc th trong gii thut di truyn coi nh l tng ng. Mt NST c to thnh t nhiu gen, mi gen c th c cc gi tr khc nhau quy nh mt tnh trng no . Trong GA, mt gen c coi nh mt phn t trong chui NST.
38 | P a g e
4.1.3
Qun th
Qun th l mt tp hp cc c th c cng mt s c im no y. Trong gii thut di truyn ta quan nim qun th l mt tp cc li gii ca mt bi ton. 4.1.4 Cc ton t di truyn
1.24.1.1 Chn la
Trong t nhin, qu trnh chn lc v u tranh sinh tn lm thay i cc c th trong qun th. Nhng c th tt, thch nghi c vi iu kin sng th c kh nng u tranh ln hn, do c th tn ti v sinh sn. Cc c th khng thch nghi c vi iu kin sng th dn mt i. Da vo nguyn l ca qu trnh chn lc v u tranh sinh tn trong t nhin, chn la cc c th trong GA chnh l cch chn cc c th c thch nghi tt a vo th h tip theo hoc cho lai ghp, vi mc ch l sinh ra cc c th mi tt hn. C nhiu cch la chn nhng cui cng u nhm p ng mc tiu l cc c th tt s c kh nng c chn cao hn.
1.24.1.3 t bin
t bin l mt s bin i ti mt ( hay mt s ) gen ca nhim sc th ban u to ra mt nhim sc th mi. t bin c xc sut xy ra thp hn lai ghp. t bin c th to ra mt c th mi tt hn hoc xu hn c th ban u. Tuy nhin trong gii thut di truyn th ta lun mun to ra nhng php t bin cho php ci thin li gii qua tng th h.
39 | P a g e
Hnh 6
1. [Bt u ] Nhn cc tham s cho thut ton. 2. [Khi to ] Sinh ngu nhin mt qun th gm n c th ( l n li gii cho bi ton) 3. [Qun th mi ] To qun th mi bng cch lp li cc bc sau cho n khi qun th mi hon thnh a.[Thch nghi] c lng thch nghi eval(x) ca mi c th. b.[Kim tra ] Kim tra iu kin kt thc gii thut. c.[Chn lc] Chn hai c th b m t qun th c theo thch nghi ca chng (c th c thch nghi cng cao th cng c nhiu kh nng c chn) d.[Lai ghp] Vi mt xc sut lai ghp c chn, lai ghp hai c th b m to ra mt c th mi. e.[t bin] Vi mt xc sut t bin c chn, bin i c th mi
40 | P a g e
5. [Chn kt qu] Nu iu kin dng c tha mn th thut ton kt thc v tr v li gii tt nht trong qun th hin ti
1.26 Cc tham s ca GA
Xc sut lai ghp Xc sut lai ghp cho bit tnh thng xuyn ca vic lai ghp to ra th h mi c thc hin nh th no. Nu xc sut lai ghp l pc , khi kh nng mt c th c lai ghp l pc. Nu khng thc hin lai ghp, con sinh ra s ging hon ton b m. Nu c lai ghp, con sinh ra s c mt phn ging b v mt phn ging m. Xc sut t bin Xc sut t bin cho bit tnh thng xuyn ca vic cc gen ca NST thay i nh th no. Nu xc sut t bin l pm, khi kh nng mi gen ca mt NST bt k b t bin l pm. Tc dng ca ton t t bin l ngn nga gii thut di truyn ri vo tnh trng cc tr a phng, tuy nhin nu thc hin t bin vi xc sut qu cao s bin gii thut di truyn thnh gii thut tm kim ngu nhin. Kch thc qun th Kch thc qun th cho bit c bao nhiu c th trong mt qun th trong mi th h). Cc nghin cu v cc th nghim cho thy kch thc qun th khng nn qu b cng nh khng qu ln. Nu c qu t c th th s lm gim khng gian tm kim ca gii thut v d ri vo cc cc b a phng, nh vy s d xy ra trng hp b qua cc li gii tt. Tuy nhin nu c qu nhiu c th cng s lm cho gii thut chy chm i, nh hng n hiu qu tnh ton ca gii thut. Cc nghin cu cng ch ra khng c li khi tng kch thc qun th ln qu mt gii hn cho php.
M ho nh phn Trong tt c cc phng php m ha th phng php m ho nh phn l phng php m ho nhim sc th n gin v ra i sm nht. Trong m ho nh phn, mi nhim sc th l mt chui nh phn, mi bit trong n c th biu din mt c tnh ca li gii. V d: hai nhim sc th 1 v 2 c chiu di l 15. Nhim sc th 1: 110110010011011 Nhim sc th 2: 110111100001111 V d: Trong bi ton ci ti, biu din mt cch xp vo ti, ta s dng mt chui nh phn c kch thc bng s vt, mi bit tng ng vi cc vt s c hai gi tr: gi tr 0 nu vt khng c cho vo ti v gi tr 1 nu vt c cho vo ti. M ho nh phn tuy l ph bin nhng n c mt nhc im l c th to ra khng gian m ho ln hn so vi khng gian gi tr ca nhim sc th, hn na c th xy ra trng hp cc ton t lai ghp v t bin to ra cc c th khng nm trong khng gian tm kim v i hi phi c nhng phng php sa cha lm c th to ra nm trong khng gian tm kim. Do , vi nhiu bi ton th biu din nh phn l khng hu hiu, in hnh l bi ton TSP. M ho hon v M ho hon v c th c s dng trong cc bi ton lin quan n th t nh bi ton du lch hay bi ton lp lch. Trong m ho hon v, mi nhim sc th l mt chui cc s biu din mt trnh t. V d : Nhim sc th 1: 1 5 4 3 2 6 7 9 8 Nhim sc th 2: 9 1 7 3 8 5 6 4 2 M ho hon v ph hp cho cc bi ton lin quan n th t. i vi cc bi ton ny, vic thao tc trn cc nhim sc th chnh l hon v cc s trong chui lm thay i trnh t ca n. V d: Trong bi ton ngi du lch, biu din mt cch i ca ngi du lch th dng mt nhim sc th m trnh t cc s trong chui cho bit th t cc thnh ph m ngi du lch i qua. M ho theo gi tr M ho trc tip theo gi tr c th c dng trong cc bi ton s dng gi tr phc tp nh trong s thc. Trong , mi nhim sc th l mt chui cc gi tr. Cc gi tr c th l bt c ci g lin quan n bi ton, t s nguyn, s thc, k t cho n cc i tng phc tp hn. V d:
42 | P a g e
Nhim sc th 1: 1.23 5.32 0.34 2.98 3.54 Nhim sc th 2: (back), (back), (right), (forward), (left) M ho theo gi tr thng dng cho cc bi ton c bit. Trong cch m ho ny ta thng phi pht trin cc ton t t bin v lai ghp cho ph hp vi tng bi ton.
pop _ size i =1
f (v )
i i
C ch la chn theo bnh xe Roulet c thc hin bng cch quay bnh xe Roulet N ln. Mi ln chn mt nhim sc th t qun th hin hnh vo qun th mi bng cch sau : Pht sinh ngu nhin mt s r trong khong [0,1].
43 | P a g e
Nu r < q1 th chn nhim sc th v1; ngc li th chn nhim sc th th i ( 2 i pop_size ) sao cho qi-1 r qi. Vi c ch la chn nh th ny th c mt s nhim sc th s c chn nhiu ln. iu ny ph hp vi l thuyt lc : Cc nhim sc th tt nht th c nhiu bn sao, nhim sc th trung bnh th khng i , nhim sc th km th cht i [11]. La chn xp hng C ch la chn xp hng c m t nh sau: Sp xp cc nhim sc th trong qun th theo thch nghi t thp n cao. t li thch nghi cho qun th sp xp theo kiu: nhim sc th th nht c thch nghi l 1, NST th hai c thch nghi l 2, .v.v., NST th pop_size c thch nghi l pop_size. Theo phng php ny vic mt NST c chn nhiu ln nh trong la chn theo kiu bnh xe Roulet gim i. Nhng n c th dn n s hi t chm v NST c thch nghi cao cng khng khc my so vi cc NST khc. La chn theo c ch ly mu ngu nhin C ch la chn: Biu din xc sut chn cc NST ln trn mt ng thng. t N im chn ln ng thng. Cc im chn ny cch nhau 1/ N, im u tin t ngu nhin trong khong [0,1/N] Vi mt im chn, NST gn vi n nht v bn phi s c chn. Phng php ny c c im l cc im chn c phn b u trn trc s, do s gn vi im xng ng c chn. La chn tranh u C ch la chn : Ly mt s NST trong qun th, NST no c thch nghi cao nht c chn. Lp li thao tc trn N ln.
M ho nh phn
Lai ghp hai im ct : Hai im ct c chn . T u cho n im ct th nht c sao chp t cha, t im ct th nht n im ct th hai sao chp t m v phn cn li sao chp t cha. Lai ghp ng nht : C mt mt n sao chp l mt chui nh phn c chiu di bng chiu di NST. Xy dng NST mi: Duyt qua mt n, bit c gi tr mt th sao chp gen ti v tr t NST cha sang con, bit c gi tr 0 th sao chp t m. Mt n c pht sinh ngu nhin i vi tng cp cha m. Lai ghp s hc: NST con c to thnh bng cch thc hin mt php ton logic no nh AND, OR, vi cp NST b m.
M ho hon v
5.32 5.30
0.34 0.34
2.98 3.00
3.54 3.54
46 | P a g e
Np li ngu nhin To ra s NST mi t hn kch thc qun th v thay th mt cch ngu nhin cc NST th h trc bng NST th h sau. Np li theo m hnh c th u t To ra s NST mi t hn kch thc qun th v thay th chng cho cc b m c thch nghi thp. Nhn xt v cc chin lc np li : Np li hon ton : l chin lc n gin nht. Mi NST ch tn ti trong mt th h, sang th h tip theo s c thay mi hon ton. Nh vy s xy ra trng hp l cc NST tt s khng c gi li, do chin lc ny khng phi l chin lc ph hp cho vic ci thin li gii qua cc th h. Np li theo m hnh c th u t : c coi l chin lc ti u. Cc NST tt s sng st qua nhiu th h. Qua mi th h, s c mt s lng nht nh cc NST ti b thay th. Tuy chin lc khng kim tra cc NST con chu np vo c tt hn b m b loi i hay khng nhng chc chn l nhng NST con chu np vo nu l ti th s b loi trong th h tip. Nh vy n vn m bo qua nhiu th h th tnh cht ca qun th s c ci thin dn dn.
Gii thut GA c p dng ch yu vo cc bi ton c phc tp tnh ton cao v thng thuc lp bi ton NP kh v vi tnh cht tun t ca gii thut (th h sau ph thuc vo th h trc ) v vy lm gim tc thc hin ca gii thut. Khi kch thc bi ton tng ln v khng gian tm kim ngy cng ln th gii thut GA tun t khng p ng c yu cu v mt thi gian. V vy i hi phi song song ha gii thut GA trn nhiu my lm tng tc cng nh hiu qu chy ca gii thut. Hin nay c hai kiu chnh v thc hin song song cc thut ton di truyn c s dng: kiu a qun th c trao i dn s v kiu n qun th. GA song song a qun th kh s dng hn bi v chng c iu khin bi nhiu tham s hn v kh xc nh tc ng ca chng n cht lng ca gii php tm c. Ngc li, s tnh ton trong m hnh GA song song n qun th l mt GA tun t, v do mi bin bit trong mt GA tun t c th p dng mt cch trc tip vo m hnh GA ny. Phn tip theo s gii thiu v gii thut, phn tch v nh gi cht lng cng nh hiu nng ca cc m hnh GA song song.
47 | P a g e
48 | P a g e
Hnh 7
49 | P a g e
Trong m hnh ny, b x l chnh s phi lu tr ton b dn s. Cc b x l khc ch lu tr mt phn dn s tng ng m chng phi tnh thch nghi. Do m hnh ny khng th m rng kh nng tnh ton vi bi ton c kch thc ln. Do cc b x l khc b x l chnh ch thc hin tnh thch nghi nn tc ca gii thut ch thc s c ci thin vi cc bi ton c phc tp ca hm tnh thch nghi l ln, n thm ch cn ti hn nu vic truyn thng gia hai tin trnh chm hn vic tnh hm thch nghi. 4.1.7 M hnh GA song song a qun th phn tn
V c bn, n bao gm nhiu GA thc hin cc ton t sinh sn ghp cho t bin theo vng lp, nhng mi mt ln lp GA trao i mt s thnh phn. S di c ny c iu khin bi mt s tham s: ch di c n, tn s di c, v s lng thnh phn di c (t l di c). Tht s kh khn d on kt qu chy ca GA a qun th, bi v cc tham s ca chng khng c tc dng tuyn tnh n hiu nng v cht lng ca gii php tm c. Tuy nhin, tt c cc tham s c gi tr gii hn ln nht v nh nht, v nghin cu GA song song chng ta dng gi tr cc tr, chng ta c th c s hiu bit su hn v tc ng ca cc tham s. GA song song n dn s phn tn tng ng vi trng hp bin ca GA song song a qun th. Trong c hai gii thut, mi b x l thc hin chu k sinh sn- ghp cho- t bin, v c s trao i cc thnh phn. Cc bc trao i trong qu trnh sinh sn v ghp cho ging s di c gia cc qun th. Giao thc trao i ca gii thut c m t trong phn trn l kt ni y (mi mt b x l trao i vi tt c cc b x l khc ), l cn trn ca s kt ni. Hn th na, chia dn s thnh P qun th bng nhau tng ng vi t l di c ti a c th, v khi s giao tip thc hin trong mi mt th h, tn s di c c thit lp vi gi tr ln nht. Tuy nhin, gii thut n dn s phn tn c nhiu giao tip trong mt th h v l im khc c bn vi GA song song a qun th, gii thut ch c nhiu nht mt ln di c trong mi th h. Trong GA song song a qun th, di c thc hin sau (hoc trc) chu k sinh sn- ghp cho t bin. iu ny c ngha l s ti kt hp ch l mt phn ca dn s, v s tm kim c thin hng tm kim trong mt phn ca khng gian tm kim. Trong phm vi hiu bit ca chng ta, cha c mt nghin cu no v thin hng ny, nhng n c th khng c nhiu ngha nu di c thc hin thng xuyn trong mi th h. Mt im khc na l trong gii thut a qun th, di c v cc thnh phn thay th c thc hin theo nhiu cch khc nhau. Thng thng, thnh phn di c l thnh phn tt nht trong mt dn s, hoc c chn ngu nhin. Tng t, thnh phn di c n mt qun th, chng c th thay th ngu nghin cc thnh phn ang tn ti hoc thay th thnh phn ti nht. Mi cch la chn s tc ng n s sinh sn, tr trng hp la chn di c ngu nhin v thay th ngu nhin.
50 | P a g e
51 | P a g e
Mt cch l thuyt ton b qun th GA c phn chia thnh mt tp cc qun th nh, mi qun th nh ny c gi l mt o . Mt cch khc th c nhiu bi ton nh hn tch bit c thc thi mt cch ng thi . Cc cc th thng xuyn di c gia cc o v cc lng ging ca chng , mc d nhng o ny thng xuyn tin ha mt cch c lp trong phn ln qu trnh chy gii thut. V vaayj cc ton t (la chn, t bin, lai ghp) c thc hin ring bit trong tng o, iu c ngha l m o c th tm kim trong nhng khng gian tm kim khc nhau trong ton th khng gian tm kim. Mi o cng c th c nhng gi tr tham s khc nhau. M hnh phn tn ny yu cu cn c mt chin lc di c ph hp, cc tham s chnh trong chin lc di c bao gm :
Tn sut di c.
L s bc tin ha thc hin mi o ri thc hin di c. Tn sut di c ln s dn n vic thng tin gi nhn ln v c th lm gim tc thc hin ca gii thut v thao tc truyn tin l chm hn nhiu so vi thao tc tnh ton tin ha mi o, ngc li tn sut di c nh s lm gim cht lng ca gii thut. Vic di c cng c th thc hin theo xc sut PA c ngha l sau mi bc tin ho cc c th s c di c theo mt xc sut no c nh ngha trc nh mt tham s ca gii thut song song
T l di c.
Tham s ny xc nh s lng c th s c han chuyn trong mi ln di c. Gi tr ca tham s ny c th l phn trm ca kch thc qun th hay mt gi tr c th
La chn v thay th
Tham s ny quyt nh cch chn ng vin tin hnh di c v c th no s b thay th bi cc cc th di c n.
Topology.
Tham s ny nh ngha cc lng ging ca mi o, v d cc o c th gi v nhn cc c th cho cc o lng ging ca mnh.
52 | P a g e
Hnh 8
Hnh 9
53 | P a g e
Cc thut ton kin ln u tin c gii thiu bi Dorigo v cc cng s nh l cch tip cn a tc t ti cc vn v ti u t hp kh, nh bi ton ngi du lch (TSP), bi ton ngi a th. Hin nay s lng cc ng dng cng ngy cng tng v cc nh khoa hc ng dng n vo rt nhiu cc vn ti u ri rc. Cc ng dng
54 | P a g e
gn y c th k n nh cc bi ton lp lch, t mu th, nh hng trong mng truyn thng, v.v Cc thut ton kin l cc thut ton da vo s quan st cc by kin thc. Kin l loi c th sng by n. Chng giao tip vi nhau thng qua mi m chng li trn hnh trnh m chng i qua. Mi kin khi i qua mt on ng s li trn on mt cht m chng ta gi l mi. S lng mi s tng ln khi c nhiu kin cng i qua. Cc con kin khc s tm ng da vo mt mi trn ng, mt mi cng ln th chng cng c xu hng chn. Da vo hnh vi tm kim ny m n kn tm c ng i ngn nht t t n ngun thc n v sau quay tr t ca mnh. Sau y l v d v lung i ca n kin thc t
a. Kin i theo ng thng gia A v E b. Khi c chng ngi vt kin s chn hng i, c hai hng vi kh nng kin s chn l nh nhau. c. Trn ng ngn hn th nhiu mi (pheromone) hn Hnh 1
55 | P a g e
Hnh 2 Xem hnh 2a l gii thch r tnh hung trong hnh 1b. Gi s khong cch DH=BH=DB qua C v =1, C l im nm gia B v D(hnh 2a). By gi chng ta xem xt iu g xy ra ti nhng khong thi gian ri rc: t=0, 1, 2 Gi nh rng 30 con kin mi i t A n B, 30 con t E n D, mi kin di chuyn vi tc mt n v thi gian v khi di chuyn kin ti thi im t mt vt pheromone vi nng l 1. n gin chng ta xt lng pheromone bay hi hon ton v lin tc trong khong thi gian (t+1, t+2). Ti thi im t=0, th khng c vt mi no trn cnh v c 30 kin B, 30 D. Vic la chn ng i ca chng ta ngu nhin do , trung bnh t mi nt c 15 con kin s i n H v 15 con s i n C (hnh 2b) Ti thi im t=1, 30 con kin mi i t A n B, lc ny n s chn hng n C hoc hng n H. Ti hng n H c vt mi 15 do 15 con kin i t B n H, ti hng n C c vt mi 30 do 15 kin i t B n D v 15 con i t D n B thng qua C (hnh 2c). Do kh nng kin hng n chn ng n C, do s kin mong mun i n C s gp i s kin i n H (20 con n C v 10 con n H). Tng t nh vy cho 30 con kin mi i t D n B. Qu trnh s lin tc cho n khi tt c kin s chn ng i ngn nht.
56 | P a g e
Trn y chng ta m t hnh vi tm kim ca by kin thc.Sau y , chng ta s tm hiu su hn v cc thut ton kin. Thut ton ti u by kin (ACO) nghin cu cc h thng nhn to da vo hnh vi tm kim ca by kin thc v c s dng gii quyt cc vn v ti u ri rc.Thut ton by kin siu tm kim(ACO meta_heuristic) ln u tin c Dorigo, Di Caro v Gambardella xut vo nm 1999. Metaheuristic l mt tp cc khi nim v thut ton c s dng xc nh cc phng thc tm kim thch hp cho mt tp cc vn khc nhau. Hay ni cch khc, mt siu tm kim ( meta-heuristic) c th coi l mt phng thc tm kim a nng. ACO l mt meta-heuristic, trong mt tp cc con kin nhn to phi hp tm kim cc gii php tt cho cc vn v ti u ri rc. S phi hp l yu t ci li ca cc thut ton ACO. Cc con kin nhn to lin lc vi nhau thng qua trung gian m ta thng gi l mi. Cc thut ton ACO c s dng gii quyt cc vn v ti u t hp tnh v ng. Cc vn tnh l cc vn m cc c tnh ca vn l khng thay i trong sut qu trnh gii quyt vn . Cn cc vn ng th ngc li l mt hm cc tham s m gi tr ca n l ng hay thay i trong qu trnh gii quyt vn , v d bi ton ngi a th l mt vn dynamic problem H thng ACO ln u tin c Marco Dorigo gii thiu trong lun vn ca mnh vo nm 1992, v c gi l H thng kin (Ant System, hay AS). AS l kt qu ca vic nghin cu trn hng tip cn tr tu my tnh nhm ti u t hp m Dorigo c hng dn Politecnico di milano vi s hp tc ca Alberto Colorni v Vittorio Maniezzo. AS ban u c p dng cho bi ton ngi du lch (TSP) v QAP Cng vo nm 1992, ti hi ngh s sng nhn to ln u tin chu u , Dorigo v cc cng s cng b bi: s ti u c phn b bi n kin. Tip theo ti hi ngh quc t th hai v gii quyt cc vn song song trong t nhin H Lan (1992), ng v cc cng s cng b bi: nghin cu v cc c tnh ca mt gii thut kin. K t nm 1995 Dorigo, Gambardella v Sttzle pht trin cc s AS khc nhau. Dorigo v Gambardella xut H thng by kin (Ant Colony System, hay ACS) trong khi Sttzle and Hoos xut MAX-MIN Ant System (MMAS). Tt c u
57 | P a g e
p dng cho bi ton ngi du lch i xng hay khng i xng v cho kt qu m mn. Dorigo, Gambardella and Sttzle cng xut nhng phin bn lai ca ACO vi tm kim a phong. Vo nm 1995, L.M. Gambardella v M. Dorigo xut h thng Ant-Q, l mt cch tip cn hc tng cng cho cho bi ton TSP.V n c p dng trong Hc My. Tip , vo nm 1996, trong bi bo cng ngh ca mnh ti Bruxelles M. Dorigo v L.M. Gambardella cng b h thng Ant Conoly System. y l h thng cp n cch hc phi hp p dng cho bi ton TSP . Cng trong nm 1996 ny, T. Sttzle v H. H. Hoos xut ht thng MaxMin Ant System . y l mt h thng ci tin h thng AntSystem ban u v c nh gi l h thng tnh ton trong tng lai. Sau , vo nm 1997, G. Di Caro v M. Dorigo xut h thng AntNet. y l cch tip cn v nh hng s thch nghi. V phin bn cui cng ca h thng AntNet v iu khin mng truyn thng c cng b vo nm 1998. Cng trong nm 1997, h thng Rank-based Ant System, mt h thng ci tin h thng kin ban u v nghin cu h thng tnh ton c xut bi B. Bullnheimer, R. F. Hartl v C. Strauss. Phin bn cui cng ca h thng ny c cng b vo nm 1999. Vo nm 2001, C. Blum, A. Roli, v M. Dorigo cho cng b v h thng kin mi l Hyper Cube ACO. Phin bn m rng tip c cng b vo nm 2004. Hu ht cc nghin cu gn y v ACO tp trung vo vic pht trin cc thut ton bin th lm tng hiu nng tnh ton ca thut ton Ant System ban u. Trn y l s lc chung v cc thut ton kin, mc tip theo s m t v s chung ca thut ton kin. S chung ca thut ton by kin Procedure ACO Initial(); While (!K dng) do
58 | P a g e
ConstructSolutions(); LocalSearch(); /*Tu , c th c hoc khng UpdateTrails(); End; End; trong : K dng (tc l iu kin dng) l iu kin t c khi thut ton trng thi kt thc. Vi bi ton ngi a th th K dng l iu kin t c khi s vng lp ca thut ton = s vng lp ln nht do ngi dng t nh ngha hoc l tt c n kin u i theo mt ng (tc l ng i ngn nht). ConstrucSolutions() l hm xy dng mt gii php c th theo phng php siu tm kim(meta-heuristic), vi bi ton ngi a th th l hm xy dng chu trnh cho mi kin . UpdateTrails() l hm cp nht mi cho hnh trnh m kin i qua. LocalSearch() l hm tm kim a phng, gip tm ra ti u cc b.
59 | P a g e
Hnh 3. S chung ca thut ton by kin l s chung ca thut ton by kin, mc tip theo s i su vo m t thut ton by kin n gin cho bi ton ngi a th Trung Hoa trn th hn hp.
5.1.2
Trc khi ni v ni dung thut ton by kin ta i tm hiu v n kin trong t nhin, xem cc c im v cch hot ng ca n kin t nhin. T c th a ra cc c im cn thit, tc ng ti thut ton by kin.
60 | P a g e
n kin t nhin: L mt loi c t chc cao, mi con kin khi di chuyn s li mt lng thng tin pheromone trn mt t. y l phng tin nh du v n kin trao i thng tin khi tm kim thc n. Khi i tm kim thc n: Sau khi tm thy ngun thc n, th mi con kin s tm ra ng i ca n i t t ti ngun thc n. Chng s giao tip trao i thng tin vi nhau, sau mt thi gian c n kin gn nh tm ra v i theo con ng ngn nht t t ti ngun thc n. Sau khi nghin cu cho thy c ch hot ng ca n kin t nhin trong qu trnh tm ung i ngn nht t t ti ngun thc n da trn cc nguyn tc sau: ng i ngn nht c xc nh thng qua cc thng tin v Pheromone, l mt loi ha cht m cc con kin dng trao i thng tin vi nhau. Khi di chuyn th mi con kin s li mt lng Pheromone trn ng i m n i qua. Trong qu trnh di chuyn tm ng i, cc con kin s c nh hng bi cc thng tin pheromone c li trn ng i. Mi con kin di chuyn mt cch ngu nhin khi khng c thng tin v pheromone trn on ng i. Cc ng i c lng pheromone ln th xc sut c chn cng cao, ngc li cc on ng c lng pheromone thp th xc sut c chn l b. T vic nghin cu c ch hot ng ca n kin t nhin cho ra i thut ton by kin. Mt cch khng chnh thc c th ni thut ton by kin l mt by kin nhn to gii bi ton a ra. H thng Ant Colony Thut ton by kin: L mt n kin nhn to (Artificial Ants) m phng cc hot ng ca n kin t nhin. Tt nhin l c mt s thay i, iu chnh so vi n kin t nhin tng tnh hiu qu ca thut ton. Trong hot ng chnh ca cc con kin nhn to l tm ng i da vo lng thng tin Pheromone li trn mi on ng. Chi tit v hot ng ca n kin nhn to: Bi ton cn gii s c a v dng mt th y vi cc rng buc ca bi ton c th hin bng cc cng thc ton hc. Vic gii bi ton t ta c s a v l tm mt ng i (hoc tp cc nh) tha mn cc rng buc ca bi ton. Cc nguyn tc sau c a ra: Thng tin pheromone c tnh ton v t trn mi on ng. Nt ban u cho ng i ca mi con kin c chn mt cch ngu nhin. ng i c la chn da trn cc nguyn tc sau: Da vo thng tin pheromone c trn cc on ng tnh xc sut ca cc on tip theo c chn vo lm ng i ca con kin.
61 | P a g e
Xc sut ln hn cho on ng i c nhiu lng pheromone c t hn. V cc ng i c lng thng tin pheromone b s c xc sut c chn thp hn.
Con kin tip tc vic tm ng i cho ti khi hon thnh mt ng i ca n (tha mn iu kin dng ca con kin). Mt ng i hon chnh c gi l mt li gii (solution) cho bi ton t ra. Cc li gii s c phn tch, so snh v nh gi tm phng n ti u nht c th. l li gii ti u ca bi ton. Sau khi con tt c kin trong n hon thnh li gii ca n th s tin hnh cp nht thng tin pheromone cho cc cung. S lng ca pheromone s c tnh ton v iu chnh tm c phng n ti u tt hn. Cc li gii tt hn s c khi lng pheromone ln hn t trn cc cung c i qua. Ngc li cc li gii ti hn s c khi lng pheromone b hn. Xc sut cao hn cho mt con kin chn ng i c pheromone ln. Qu trnh lp cho n khi phn ln kin trong n kin chn cng mt ng i (phng n hi t ca li gii).
M gi cho thut ton Ant colony: Procedure AntColonyAlgorithm B1: Khi to cc thng tin Pheromone cho cc ng i B2: Do while (Cha tha mn iu kin dng) B3: Do until (Mi Ant hon thnh mt ng i) B4: Cp nht thng tin pheromone cc b (Local trail update) B5: End Do B6: Phn tch cc li gii thu c (Analyze solution) B7: Cp nht thng tin pheromone ton cc (Global trail update) B8: End Do End Procedure i vi thut ton ACO, s hi t c m bo tuy nhin tc v thi gian th khng bit trc, thng s dng gii quyt cc vn ti thiu v gi thnh. Thng cc bi ton trc khi c gii bng thut ton ACO phi c bin i a v dng th y c trng s. Bao gm cc nt v cc cung khng nh hng.
62 | P a g e
Sau khi i bin i bi ton v dng ph hp mi p dng thut ton ACO gii. Trn th ny cc con kin s i xy dng cc li gii cho bi ton. Sau y l m hnh c th hn v thut ton ACO. M t v thut ton ACO vi vic thc hin song song hot ng ca cc con kin. 1 Procedure ACO_Metaheuristic 2 parameter_initialization 3 while (termination_criterion_not_satisfied) 4 schedule_activities 5 ants_generation_and_activity ( ) 6 pheromone_evaporation ( ) 7 daemon_actions ( ) {optional} 8 end schedule_activities 9 end while 10 end Procedure 1 Procedure ants_generation_and_activity ( ) 2 repeat in parallel for k=1 to m (number_of_ants) 3 new_ant (k) 4 end repeat in parallel 5 end Procedure 1 Procedure new_ant (ant_id) 2 initialize_ant (ant_id) 3 L = update_ant_memory ( ) 4 While (current_state target_state) 5 P = compute_transition_probabilities (A , L , ) 6 next_state = apply_ant_decision_policy (P , ) 7 move_to_next_state (next_state) If (on_line_step-by-step-pheromone_update) 8 deposit_pheromone_on_the_visited_edge ( ) end if 9 L = update-internal_state ( ) 10 end while if (online_delayed_pheromone_update) 11 for each visited edge 12 deposit_pheromone_on_the_visited_edge ( ) 13 end for end if 14 release_ant_resources (ant_id) 15 end Procedure
63 | P a g e
Trong th tc ants_generation_and_activity() l th tc chnh, c bn ca gii thut. Th tc ny cng vic chnh gm: To v khi to cc thng s cho n kin. Vi mi con kin trong n s tin hnh xy dng mt li gii cho bi ton khi cha tha mn iu kin dng. Ngoi ra c hai th tc ph thm vo l: Pheromone_evaporation(): L tc ng ca mi trng lm gim thng tin pheromone theo thi gian. Th tc ny trnh b tc trong tm kim v cho php n kin m rng khng gian tm kim. Daemon_action(): L th tc h tr thm v khng gp trong thc t (khng c n kin t nhin). L mt th tc iu chnh cc thng s khi cn thit lm tng tnh hiu qu ca thut ton. V d: Th tc tm kim cc b, th tc khi to li cc thng tin pheromone khi gp b tc trong tm kim.
c pht trin bi Dorigo, Maniezzo v Colorni nm 1991, l thut ton ACO u tin. Ban u c 3 bin th khc nhau l: AS-Density, AS-Quantity v AS-Cycle khc nhau bi cch thc cp nht thng tin Pheromone. Trong : AS-Density: Th n kin s t thm pheromone trong qu trnh xy dng li gii (online step-by-step pheromone update), lng pheromone cp nht l mt hng s. AS-Quantity: Th n kin s t thm pheromone trong qu trnh xy dng li gii (online step-by-step pheromone update), lng pheromone cp nht l ph thuc vo mong mun (thng tin heuristic) vi on ng i qua ij. AS-Cycle: Thng tin pheromone s c cp nht khi li gii hon thnh (online delayed pheromone update). y l m hnh cho kt qu tt nht v c coi nh l thut ton AS. Nh vy theo m hnh ca AS-cycle th pheromone s cp nht khi tt c con kin hon thnh li gii ca mnh.Vic cp nht pheromone c tin hnh nh sau:
64 | P a g e
Vi trong khong (0,1) l tc bay hi ca pherromone. Tip theo mi con kin trong n s t thm mt lng thng tin pheromone, lng pheromone ny l hm ca cht lng li gii m con kin xy dng.
k rs rs + rs , ars Sk .
Trong :
k rs = f ( C (Sk ) ) .
Ban u AS khng s dng daemon action, tuy nhin s cng tt hn nu thm vo mt th tc tm kim cc b lm tng cht lng ca li gii. Cn phng trnh xc nh nt tip theo trong qu trnh xy dng li gii ca con kin nh sau:
. rs rs , s N k (r ) k prs = k , . ru uN r ru tri l i. 0,
Tm tt v thut ton ny nh sau: 1 Procedure new_ant (ant_id) 2 k = ant_id ; r = generate_initial_state ; S k = r Lk = r 3 4 while (current-state target_state) rs ] .[ rs ] [ k 5 for each s N k (r) do prs = uN [ ru ] .[ ru ]
k r
6 7 8 9 10
end while { the pheromone_evaporation ( ) procedure triggers and evaporates pheromone in every edge ars : rs = ( 1 p ) . rs } for each edge ars S k do
rs = rs + f ( C ( S k ) )
11 12
65 | P a g e
13 end for 14 release_ant_resources (ant_id) 15 end Procedure. 5.1.4 Thut ton Ant Colony System(ACS)
Pht trin t thut ton AS vi mt s ci thin nh sau: S dng mt lut khc cho vic di chuyn, gi l pseudo-random proportional rule. Gi k l con kin ang ng ti nt r. q0 l mt tham s, v mt gi tr ngu nhin q. Trong gi tr ca q v q0 l trong khong (0,1). Nt s tip theo c chn di chuyn kin k ti c chn nh sau: If q qo :
k prs
1, = 0,
tri l i.
else ( q > qo ) :
k prs = 0,
uN
rs . rs
k r
ru . ru
, s N k (r )
tri l i.
C Daemon action, thc hin vic cp nht pheromone ch duy nht vi li gii Sglobal-best. Cp nht theo cng thc nh sau:
rs (1 p ). rs , ars S global best , rs rs + p . f (C ( S global best )), ars S global best .
Trong l mt tham s gim pheromone th hai sau . Cn chn l mt tham s rt b (nh l ngng di ca pheromone). Tm tt v thut ton ny nh sau: 1 Procedure new_ant (ant_id) 2 k = ant_id ; r = generate_initial_state ; S k = r Lk = r 3 4 while (current-state target_state) 5 for each s N k (r ) do compute brs = rs .rs
66 | P a g e
u Nk ( r )
brs bru
1 Procedure daemon_actions 2 for each Sk do local_search ( S k ) {optional} Scurrent best = best_solution ( S k ) 3 4 if (better ( Scurrent best , S global best )) S global best = Scurrent best 5 6 end if 7 for each edge ars S global best do { the pheromone_evaporation ( ) procedure triggers and evaporates pheromone in every edge ars : rs = ( 1 p ) . rs } rs = rs + p . f ( C ( S global best ) ) 8 9 end for 10 end Procedure. 5.1.5 Thut ton MaxMin Ant System(MMAS)
c pht trin bi Stutzle v Hooss vo nm 1996, c m rng ln t h thng AS. Mt s c im c m rng t h thng AS nh sau. Ging nh ACS, MMAS thc hin offline pheromone trail update, tc l sau khi ton b kin trong n hon thnh li gii th vic cp nht c tin hnh
67 | P a g e
cho li gii ti u. u tin thc hin bay hi bt thng tin pheromone (pheromone evaporation) trn tt c cc cnh.
rs ( 1 ) . rs
Sau ch c cc cnh thuc li gii tt nht c cp nht thng tin pheromone rs rs + f ( C ( Sbest ) ) , ars Sbest . Thng thng trong MMAS cc li gii c tinh chnh bng cch ti u cc b (local optimizer) trc khi cp nht thng tin pheromone. Mt ci tin quan trng trong h thng MMAS l vic thm vo gii hn cn trn v di ca thng tin Pheromone ( max v min ), iu gip trnh hi t ti im ti u cc b. Khi to tt c thng s Pheromone gi tr cn trn u tin vic khai ph khng gian tm kim. Cn trn max thng c chn l gi tr ln nht m Pheromone c th t c vng lp cui cng.
* max = 1/( p . C ( S * )).
Trong S l li gii ti u, bi v li gii ti u khng bit trc nn thng thng c thay th bi Sglobal-best trong tnh ton. Cch chn cn di min , thng thng ngi ta chn min tha mn theo t l gia cn trn v cn di max / min = 2n. Do tnh min = max / 2n. T l ny phi chn khng nn qu cao, bi v khi xc sut chn ng i c mc Pheromone thp l qu nh. Mt khc nu chn t l ny qu ln th xc sut chn ng i co Pheromone cao l gn vi xc sut chn ng i c mc Pheromone thp. Khi khi to thng tin pheromone cho cc thnh phn th tt c nhn gi tr ln nht c th ca Pheromone l max nhm tng cng vic khai ph khng gian tm kim. Mt ch trong h thng MMAS l khi xy ra hi t cc b th c c ch khi to li thng tin pheromone cho cc nt v gi tr khi to li l max . 1 Procedure daemon_actions 2 for each Sk do local_search ( S k ) Scurrent best = best_solution ( S k ) 3 4 if (best ( Scurrent best , S global best )) S global best = Scurrent best 5 6 end if Sbest = decision ( S global best , Scurrent best ) 7
68 | P a g e
8 for each edge ars Sbest do rs = rs + f ( C ( Sbest ) ) 9 10 if ( rs < min ) rs = min 11 end for 12 if (stagnation_condition) 13 for each edge ars do rs = max 14 end if 15 end Procedure 5.1.6 Thut ton Rank-Based Ant System(RBAS)
y cng l mt thut ton c m rng pht trin t h thng AS a ra bi Bullnheimer, Hartl v Strauss vo nm 1997. Thut ton ny a vo tng xp hng cho cc li gii khi thc hin cp nht pheromone. C th nh sau: u tin, m con kin c xp hng theo th t gim dn da theo cht lng li gii m n thu c. V d: (S 1, S2, Sm-1, Sm) trong S1 l phng n tt nht. Pheromone ch c t thm trn cc cung ca -1 con kin c li gii tt nht. Lng pheromone cng ph thuc trc tip vo th hng sp xp ca con kin. Cc on ng i ca li gii tt nht c nhn thm mt lng pheromone ph thuc vo cht lng li gii. Cc cng thc nh sau:
gb rank rs rs + . rs + rs .
Trong V
gb rs =
tri l i.
rank rs
Tm tt th tc cp nht pheromone ca thut ton ny: 1 Procedure daemon_actions 2 for each Sk do local_search ( S k ) {optional} 3 rank ( S1 ,..., S m ) in decreasing order of solution
69 | P a g e
4 5 6 7 8 9 10 11 12
quality into ( S1 ,..., Sm ) ' if (best ( S1 , S global best )) S global best = S1' end if for =1 to 1 do ' for each edge ars S do
'
'
' rs = rs + ( ). f C ( S )
)
)
end for end for for each edge ars S global best do
5.1.7
Thut ton c a ra bi Cordon vo nm 1999. Thut ton ny bao gm mt thut ton m rng khc ca AS l MMAS (v lut di chuyn v vic bay hi ca pheromone). Bn cnh trong thut ton ny cn quan tm ti ca vic ti u cc b mt cch h thng nng cao cht lng li gii ca con kin. Trong thut ton BWAS c 3 daemon action thm vo gm c: u tin, p dng lut c tn best-worst pheromone update tng cng pheromone trn cc on ng i qua bi li gii tt nht ton cc (global best solution). Thm vo lut ny s pht nhng cnh ca li gii ti nht trong ln lp Scurrent-worst. p dng Pheromone trail mutation i theo cc hng khc nhau trong qu trnh tm kim. BWAS c c ch khi to li thng tin pheromone khi thut ton b nh tr, bng cch thit lp pheromone trail cho tt c cc thnh phn bng .
M hnh th tc Daemon action ca thut ton BWAS nh sau: 1 Procedure daemon_actions 2 for each Sk do local_search ( S k ) Scurrent best = best_solution ( S k ) 3 4 if (best ( Scurrent best , S global best )) S global best = Scurrent best 5
70 | P a g e
6 7 8 9 10 11
end for
threshold =
sum | S globad best |
Scurrent worst = worst _ solution ( S k ) 12 13 for each edge ars Scurrent worst and ars S global best do rs = (1 p ). rs 14 15 end for mut = mut ( it , threshold ) 16 17 for each nt / component r {1,..., l} do 18 z = generate_random_value_in_[0,1] 19 if ( z < = Pm ) 20 s = generate_random_value_in_[1,, 1] 21 a = generate_random_value_in_[0,1] 22 if (a = 0) rs = rs + mut 23 else rs = rs mut 24 end if 25 end for 26 if (stagnation_condition) 27 for each ars do rs = 0 28 end if 29 end Procedure
Mc ny ch a ra 5 m hnh thut ton ACO pht trin t h thng Ant System. Nhng ch l mt s cc dng tiu biu ca thut ton ACO, cn tn ti rt nhiu cc bin th khc. V trong n s p dng thut ton theo m hnh h thng MMAS gii bi ton CPMP. M hnh thut ton MMAS l mt trong cc thut ton hiu qu nht ca cc thut ton by kin.
b x l khc nhau , cc b x l mnh c th nhn nhiu kin, cc b x l yu hn s nhn t kin hn. Vic phn chia nh vy s lm tng hiu sut ca gii thut,tuy nhin khi ti bc cp nhp ma trn mi cc b x l cn phi trao i d liu vi nhau, ty vo thng tin c trao i v m hnh cc b x l m ta c cc kiu thut ton song song khc nhau v cc tham s khc nhau cho gii thut. All-to-all topology:Cc cm kin gi thng tin ti tt c cc cm kin khc (Directed or undirected) ring topology: trong m hnh directed ring colony cm kin (z +1 mod p ) + 1 l hng xm ca cm i cho tt c cc cm kin v trong m hnh undirected ring colony cm kin (i - 1 mod p ) + 1 l hng xm ca cm kin i cho tt c cc cm kin. Hypercube topology: M hnh ny yu cu c p = 2^k cm kin v mi cm kin I l hng xm vi cm kin j nu v ch nu kiu biu din nh phn ca i v j ch khc nhau 1 bit. V vy mi cm kin ch c k hng xm. Random topology:Trong m hnh ny cc hng xm ca mi cm kin c inh ngha mt cch ngu nhin trong mi bc trao i thng tin .C nhiu phng thc xc nh hng xm ngu nhin trong trng hp ny
Cng c th phn bit cc gii thut vi nhau bng loi thng tin gi nhn qua mi bc lp.
Li gii: Trong chin thut ny cc li gii t tm ra s c gi i ti cc cm kin khc .c nhiu kiu li gii c th c gi i Kin: Li gii ca mt con kin t ln lp ny c gi ti cm kin khc, thng thng y l li gii ca con kin tt nht Li gii ton cc tt nht. Li gii tt nht ca cc cm kin c gi i cho tt c cc cm kin Li gii ca hng xm tt nht . Li gii tt nht ca cc cm kin c gi ti cc hng xm Li gii cc b tt nht. Li gii cc b tt nht c gi i ti cc hng xm
72 | P a g e
73 | P a g e
74 | P a g e
Begin
While (not frozen) do Randomly initialize energy and temperature ( Ea To) Eold=Eo Repeat: Generate a new state with En,, - AE= E d Enew if ( AE < O ) E o u = Enew Else Eold = Enew with probability of e-''T
End
75 | P a g e
Song song ha t c bng cch ny rt n gin, tng l chia d liu ca bi ton thnh cc tp con v gn mi phn vo mt b x l khc nhau. Nu c mt khng gian tm kim thay cho d liu th tng s c p dng cho khng gian tm kim 6.1.2 M hnh chy nhiu ln
tng ca phng php ny l tt c cc b x l u cng gii bi ton v sau kt qu cu chng c so snh tm ra li gii tt nht
76 | P a g e
6.1.3
Phn quan trng trong gii thut SA lin quan ti vic song song ha l phn li ca gii thut, ni m khng gian tm kim c khm ph ti trng thi cn bng. Trong qu trnh , gii thut th nhiu trng thi c th c ca khng gian tm kim mt mc nhit . Mt khi trng thi cn bng c thit lp, nhit c gim mc tip theo. Cc di chuyn qu trnh ny hnh thnh mt chui markov .Trong kiu song song ha ny, chui markov c hnh thnh dc theo tin trnh khm ph ti trng thi cn bng v cc bc di chuyn trong chui markov th c phn u ra cc b x l.
77 | P a g e
[6] [7]
[8]
M. Dorigo, V. Maniezzo & A. Colorni: Ant System . IEEE Transactions on Systems, Man, and Cybernetics-Part B, 26(1):29-41,1996 M. Dorigo, Optimization, Learning and Natural Algorithms: Elitist Ant System , 1992 L.M. Gambardella and M. Dorigo xut: Ant-Q , Proceedings of ML-95, Twelfth International Conference on Machine Learning, Tahoe City, CA, A. Prieditis and S. Russell (Eds.), Morgan Kaufmann, 252-260,1995 M. Dorigo & L.M. Gambardella: xut. Ant Colony System, IEEE Transactions on Evolutionary Computation, 1(1):53-66,1997 B. Bullnheimer, R. F. Hartl and C. Strauss, A New Rank Based Version of the Ant System: A Computational Study. Central European Journal for Operations Research and Economics, 7(1):25-38, 1999 S.M. Hedetniemi, S.T. Hedetniemi, D.P. Jacobs, P.K. Srimani. Self-stabilizing Algorithms for Minimal Dominating Sets and Maximal Independent Sets, 2001 Dr. Franz Rothlauf. Representations for Genetic and Evolutionary algorithms, Daniel Ashlock. Evolutionary Computation for Modeling and ptimization, 2005 David E. Goldberg. Genetic Algorithm in Search, Optimization, and Machine Learnin, Addison Wesley, 1989. David E. Goldberg. The parameter-less genetic algorithm in practice, 2003 Kumara Sastry, David Goldberg. Genetic Algorithm Philippe Gigu`ere, David Goldberg. Population sizing, 1998 Yaser Alkhalifah, Roger L. Wainwright. A Genetic Algorithm Applied to Graph Problems Involving Subsets of Vertices Geetali Vidyarthi, Alioune Ngom, Ivan Stojmenovi. Combinatorial Evolutionary Methods in WirelessMobile Computing, 2005 Erick Cant-Paz. A survey of genetic algorithms,1997
Erick Cant-Paz. Designing efficient master slave, Erick Cant-Paz. Designing-scalable-multi-population,1998 Erick Cant-Paz. Distributed pamistic population,1999 Zbigniew Skolicki. An Analysis of Island Models in Evolutionary Computation, Erick Cant-Paz. Migration policies and takeover,1999 Peter S. Pacheco. A Users guide to MPI, 1998 Nguyn c Ngha. Gio trnh Phn tch v thit k thut ton, H Ni, 2003. Nguyn c Ngha. Gio trnh Nhp mn tnh ton khoa hc, H Ni, 2002. Nguyn c Ngha. Ti u ha: quy hoch tuyn tnh v ri rc, Nh xut bn Gio Dc, 1999.
79 | P a g e