T NG QUAN BÀI OÁN IU & H U OÁN
4.3.4. Các ph ng pháp tìm k im
C s c a các ph ng pháp tìm ki m là d a vào nguyên lý ti n hóa ho c các đ c tính t n t i trong t nhiên. Quá trình tìm ki m th ng ph i d a vào các cá th trong m t qu n th và k t qu tìm ki m chính là k t qu tìm ki m c a cá th tìm ra l i gi i t t nh t. 4.3.5. Các ph ng pháp lai
Là s k t h p c a hai hay nhi u ph ng pháp đ t o ra ph ng pháp m i hi u qu h n các ph ng pháp c u thành, đ c s d ng khá ph bi n trong các bài toán t i u trong h th ng đi n.
4.4. M t s ph ng pháp tìm ki m t i u (Heuristics)
Thu t toán Heuristic là các k thu t t i u hoá s d ng các ph ng pháp liên quan đ n m t s hi n t ng th c t th ng là hành vi c a con ng i hay các loài đ ng v t
trong t nhiên đ đ a ra m t l i gi i t i u g n đúng. T ng “Heuristics” b t ngu n t ch “Heuriskein” trong ti ng Hi L p có ngh a là tìm ho c khám phá. Ý t ng c b n c a h u h t các thu t toán Heuristic là th và sai, do đó thu t toán này có th s d ng cho h u h t m i v n đ , đ c bi t trong l nh v c k thu t.
Các thu t toán Heuristic th ng s t o ra các l i gi i ng u nhiên trong không gian tìm ki m và đánh giá chúng đ tìm ra l i gi i t i u. Do đó, các l i gi i đ c đ xu t b i thu t toán Heuristic có th không ph i là l i gi i t t nh t, nh ng nó là các k t qu có th ch p nh n đ c trong vi c áp d ng vào các v n đ k thu t.
Trong thu t toán Metaheuristics t “Meta” có ngh a là c p đ cao h n ho c v t tr i so v i thu t toán Heuristic. T t c các thu t toán Metaheuristics đ u s d ng các ph ng pháp th m dò c c b ho c toàn c c v i các l i gi i đ c t o ra m t cách đa d ng, phong phú b ng s ng u nhiên. M c dù các thu t toán Metaheuristics r t ph bi n không có đ nh ngh a chính xác đ c đ a ra, do đó m t s nhà nghiên c u có th s d ng hai t Heuristics và Metaheuristics t ng t nhau.
Tuy nhiên, xu h ng g n đây đ u đ t tên cho t t c các thu t toán ng u nhiên và khám phá toàn c c là Metaheuristics. Ph ng pháp t t nh t đ chuy n m t thu t toán t tìm ki m c c b thành tìm ki m toàn c c chính là s ng u nhiên. Do đó, h u h t các thu t toán Metaheuristics đ c s d ng v i các mô hình phi tuy n và t i u hoá toàn c c.
Metaheuristics có th là m t cách hi u qu đ áp d ng ph ng pháp th sai t o ra m t l i gi i có th ch p nh n đ c đ i m t s v n đ ph c t p trong th c t khi nó khó có th tìm ra m t l i gi i chính xác, b i vì m c đích c a chúng ta là tìm ra m t l i gi i đ t t, kh thi trong m t ph m vi có th ch p nh n đ c. Ý t ng là ph i có m t thu t toán hi u qu và th c t trong đó nó s luôn ho t đ ng và t o ra các l i gi i t t. Gi a nh ng l i gi i có ch t l ng đ c tìm th y chúng ta có th d ki n r ng m t trong s chúng s là l i gi i t i u, m c dù chúng ta không ch c ch n nó là l i gi i t i nh t. 4.4.1. Thu t toán di truy n (Genetic Algorithm)
Thu t toán di truy n (Genetic Algorithm) là m t quy trình tìm ki m gi i pháp t t nh t cho m t v n đ b ng cách s d ng các phép toán mô ph ng các quá trình t nhiên liên quan đ n quá trình ti n hóa .
Thu t toán di truy n đ c l p trên c s lý thuy t Darwin d a trên vi c quan sát quá trình ti n hóa trong t nhiên. Các nguyên lý c b n c a gi i thu t di truy n đ c tác gi J.H. Holland công b l n đ u tiên vào n m 1962. Sau đó, các n n t ng toán h c c a
Natural and Artificial System” c ng c a tác gi J.H. Holland. Có th nói Holland là ng i đi tiên phong nghiên c u trong l nh v c gi i thu t di truy n cùng v i nh ng tác gi Goldbeg, Beglay…
4.4.1.1. Các tính ch t c a gi i thu t di truy n
GAs là k thu t chung, giúp gi i quy t v n đ b ng cách mô ph ng s ti n hóa c a con ng i hay c a sinh v t nói chung (d a trên thuy t ti n hóa muôn loài c a Darwin), trong đi u ki n qui đ nh s n c a môi tr ng. M c tiêu c a GAs không nh m đ a ra l i gi i chính xác t i u mà là đ a ra l i gi i t ng đ i t i u.
M t cá th trong GAs s bi u di n m t gi i pháp c a bài toán. Tuy nhiên, không gi ng v i trong t nhiên là m t cá th có nhi u nhi m s c th (NST) mà đ gi i h n trong GAs, ta quan ni m m t cá th có m t NST. Do đó, khái ni m cá th và NST trong GAs coi nh là t ng đ ng.
M t NST đ c t o thành t nhi u gen, m i gen có th có các giá tr khác nhau đ quy đ nh m t tình tr ng nào đó. Trong GAs, m t gen đ c coi nh m t ph n t trong chu i NST.
M t t p h p các cá th có cùng m t s đ c đi m nào đ y đ c g i là qu n th . Trong thu t gi i di truy n, ta quan ni m qu n th là m t t p các l i gi i c a m t bài toán.
4.4.1.2. Nh ng thành ph n chính c a thu t toán di truy n
- Qu n th (Population): M t qu n th ban đ u s có nh ng cá th nh t đ nh v i nh ng đ c tính khác nhau, nh ng đ c tính này s quy đ nh kh n ng sinh s n, sinh t n, kh n ng đáp ng đi u ki n môi tr ng c a t ng cá th .
- Ch n l c t nhiên (Natural Selection): Theo th i gian nh ng cá th y u h n, không có kh n ng sinh t n s b lo i b b i nh ng tác nhân nh tranh ch p chu i th c n, môi tr ng tác đ c, b loài khác tiêu di t, … Cu i cùng s còn l i nh ng cá th có đ c tính u vi t h n s đ c gi l i - Adaptive individual.
- t bi n (Mutation): Nh chúng ta đã bi t thì m i cá th con đ c sinh ra s đ c k th a l i nh ng đ c tính c a c cha và m . Sau m t th i gian sinh s ng, m t qu n th s đ t t i gi i h n c a các c p gen c a con đ c t o nên t gen c a b m . đ t đ c t i s ti n hóa, t bi n chính là m t trong nh ng nguyên nhân chính, có vai trò đóng góp nguyên li u cho quá trình Ch n l c t nhiên.
- Ti n hóa (Evolution): Nh ng cá th đ t bi n không ph i luôn là nh ng cá th m nh m và có đ kh n ng sinh t n, Ch n l c t nhiên s ch n ra nh ng cá th đ t bi n nh ng có th thích nghi v i môi tr ng s ng t t h n nh ng cá th khác trong qu n th . Sau m t th i gian sinh s n, nh ng gen đ t bi n s chi m u th và chi m đa s trong qu n th .
4.4.1.3. L u đ gi i thu t di truy n
Hình 4.4.2 L u đ thu t toán di truy n 1. [B t đ u] Nh n các tham s cho thu t toán.
2. [Kh i t o] T o ng u nhiên m t qu n th g m n cá th (là n l i gi i cho bài toán). 3. [Qu n th m i] T o qu n th m i b ng cách l p l i các b c sau cho đ n khi qu n
th m i hoàn thành
- [Thích nghi] c l ng đ thích nghi eval(x) c a m i cá th . - [Ki m tra] Ki m tra đi u ki n k t thúc gi i thu t.
- [Ch n l c] Ch n hai cá th b m t qu n th c theo đ thích nghi c a chúng (cá th có đ thích nghi càng cao thì càng có nhi u kh n ng đ c ch n). - [Lai ghép] V i m t xác su t lai ghép đ c ch n, lai ghép hai cá th b m
đ t o ra m t cá th m i.
- [ t bi n] V i m t xác su t đ t bi n đ c ch n, bi n đ i cá th m i
4. [Ch n k t qu ] N u đi u ki n d ng đ c th a mãn thì thu t toán k t thúc và tr v l i gi i t t nh t trong qu n th hi n t i.
i u ki n d ng c b n:
- D a trên c u trúc nhi m s c th , ki m soát s gen đ c h i t , n u s gen h i t v t quá s ph n tr m nào đó c a t ng s gen, vi c tìm ki m s k t thúc.
- D a trên ý ngh a đ c bi t c a m t nhi m s c th , đo ti n b c a gi i thu t trong m t s th h cho tr c, n u ti n b này nh h n m t h ng s xác đ nh, k t thúc tìm ki m.
4.4.2. Thu t toán t i u b y sói xám (GWO): 4.4.2.1. Gi i thi u 4.4.2.1. Gi i thi u
Thu t toán GWO đ c phát tri n b i Seydali Mirjaliling cùng các đ ng s khác vào n m 2014. Thu t toán GWO là ph ng pháp tìm ki m t i u m i d a trên ý t ng t hành vi s n m i và c u trúc phân c p b y đàn c a loài sói.
Sói xám là đ ng v t có vú thu c b n th t đ c coi là đ ng v t n th t to l n và hung d , và nó là đ nh c a chu i th c n. Sói xám ch y u s ng theo b y đàn, trong m t qu n th có kích th c trung bình kho ng 5-12 con. c bi t là b y sói có m t h th ng phân c p th ng tr xã h i r t nghiêm ng t.
Hình 4.4.3 H th ng phân c p th ng tr trong b y sói xám
ng đ u nhóm là m t con đ c và m t con cái, đ c g i là sói alpha. Alpha ch y u ch u trách nhi m v vi c ra quy t đ nh v s n b t, n i ng , th i gian đ đánh th c và nhi u th khác. Quy t đ nh c a alpha đ c coi là quy t đ nh c a c nhóm nh ng c ng tôn tr ng hành v c a nhóm, ch p nh n nghe theo s đông. Sói alpha có th c l c khi mà quy t đ nh c a nó đ c c nhóm th c hi n. Sói alpha không nh t thi t ph i là thành viên m nh nh t c a nhóm nh ng t t nh t v m t qu n lý nhóm. i u này cho th y t ch c k lu t c a m t nhóm là quan tr ng h n s c m nh cá nhân c a nó.
C p đ th hai trong h th ng phân c p là sói beta. Sói beta là sói c p d i giúp alpha trong vi c ra quy t đ nh ho c các ho t đ ng khác c a nhóm. Sói beta có th là đ c ho c cái, và nó có l là ng viên t t nh t thay th alpha trong tr ng h p m t trong nh ng con sói alpha ch t ho c quá già. Sói beta tôn tr ng các alpha nh ng có th l nh
sói c p d i t t, đóng vai trò là m t c v n c a alpha và th c thi l nh cho c nhóm. Sói beta c ng c l nh c a alpha trong c nhóm và cung c p ph n h i cho alpha.
X p h ng th p nh t trong loài sói xám là sói omega. Omega đóng vai trò là th n dân trong nhóm, luôn luôn ph i nghe l nh c a t t c các sói c p trên và luôn là nh ng con sói đ c phép n cu i cùng. Sói omega không ph i là m t cá nhân quan tr ng trong nhóm, nh ng trong tr ng h p không có omega thì kh n ng chi n đ u c a nhóm s gi m và sinh ra nhi u v n đ . Qua đó, có th th y s quan tr ng c a omega và s ph c tùng c a nó giúp duy trì c u trúc th ng tr và đ m b o c c u c a nhóm. Trong m t s tr ng h p omega đóng vai trò ch m sóc và b o v sói con.
N u m t con sói không ph i là m t alpha, beta hay omega, nó đ c g i là c p d i (ho c g i là delta trong m t s tài li u). Sói delta ph i nghe theo sói alpha và beta, nh ng nó th ng tr omega và th ng đóng vai trò trinh sát, lính canh, nh ng sói già, sói đi s n và ch m sóc nhóm. Trinh sát ch u trách nhi m xem ranh gi i c a lãnh th và c nh báo cho c nhóm trong tr ng h p g p b t k nguy hi m nào. Lính canh b o v và đ m b o s an toàn c a nhóm. Sói già là nh ng con sói giàu kinh nghi m t ng là alpha ho c beta. Sói đi s n giúp alpha và beta s n b t con m i và cung c p th c ph m cho nhóm. Cu i cùng, nh ng con sói ch m sóc nhóm có trách nhi m ch m sóc cho nh ng con sói y u, b b nh, và b th ng trong đàn.
Ngoài các h th ng phân c p xã h i c a nh ng con sói, vi c s n b t theo nhóm c ng là m t hành vi xã h i thú v c a nh ng con sói xám. Các giai đo n chính c a công cu c s n b t c a b y sói đ c th hi n d i đây:
A: Theo dõi, xác đ nh v trí con m i và truy đu i.
B-D: eo bám, ti p c n và phá r i con m i cho đ n khi nó ki t s c. E: T n công con m i.
4.4.2.2. Gi i thu t GWO
1. Nh n các tham s cho bài toán.
2. Kh i t o ng u nhiên qu n th ban đ u g m n cá th (n l i gi i c a bài toán). - Kh i t o a, A và C
3. Tính toán hàm đánh giá cho m i cá th - X là cá th t t nh t - X là cá th t t th hai - X là cá th t t th ba Ti n hành c p nh t v trí c a các th tìm ki m hi n t i. C p nh t a, A và C. Ti p t c l p l i quy trình trên.
4. N u đi u ki n d ng đ c th a mãn thì thu t toán k t thúc và tr v l i gi i t t nh t trong qu n th hi n t i.
4.4.3. Thu t toán tìm ki m chim tu hú 4.4.3.1. Gi i thi u 4.4.3.1. Gi i thi u
Ý t ng c a thu t toán b t ngu n t vi c chim tu hú m ký g i con c a nó b ng cách đ tr ng vào t c a chim khác, th ng thì cùng gi ng. Tr ng c a chim tu hú có hoa v n r t gi ng nh tr ng c a chim ch trong t và sau đó chim tu hú n ra thay th chim con khác b ng cách đ y các chim con đó ra kh i t .
tr ng chim tu hú n ra thành công và đ c chim ch kia nuôi t t thì chim tu hú m ph i đ ngay khi chim ch kia làm t và tr ng ph i gi ng tr ng chim c a chim ch kia. Tr ng c a chim tu hú th ng n s m h n m t chút so v i tr ng c a chim khác trong t và đ c bi t khi n ra c ng r t gi ng chim con trong t . Chim tu hú non l n r t nhanh và theo b n n ng t nhiên, nó s đ y chim con khác ra kh i t . N u chim ch t phát hi n ra tr ng hay chim con không ph i là c a nó thì chim m ch t s h t đi ho c b t đ làm t m i.
Nhi u nghiên c u đã ch ng minh hành vi c a nhi u đ ng v t và côn trùng có đ c tính c a Lévy Flights. Lévy Flights, tên c a nhà toán h c Pháp n i ti ng Paul Pierre Lévy, là m t lo i hình b c đi ng u nhiên trong đó gia s đ c phân ph i theo quy lu t t p trung v phía sau.
Lévy flights là m t chu i Markov, sau m t s l ng l n b c đi, kho ng cách t đi m xu t phát có khuynh h ng phân b theo m t quy lu t n đ nh. c bi t có hàm phân ph i d ng lu th a u = t -1- (0< <2). G n đây, đ c tính Lévy Flights đã đ c áp d ng vào trong l nh v c t i u hoá và cho k t qu ban đ u r t kh quan.
Thu t toán CSA d a theo hành vi c a chim tu hú và đ c tính Lévy Flights.Thu t