T NG QUAN BÀI OÁN IU & H U OÁN
4.4.3. Th ut toán tìm k im chim tu hú
Ý 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 toán CSA d a theo ba quy lu t và đ c phát bi u nh sau:
1. M i chim tu hú đ m t tr ng t i m t th i đi m vào m t t b t k đ c ch n tr c trong các t ch ban đ u.
2. Tr ng t t nh t v i ch t l ng s đ c truy n l i cho th h sau.
3. S t chim ch là c đ nh; tr ng đ c đ b i chim tu hú b chim ch phát hi n v i m t xác su t Pa n m trong kho ng [0, 1], trong tr ng h p này chim ch b tr ng chim tu hú đi ho c b t và làm m t t m i.
Ch t l ng c a tr ng t ng ng v i hàm m c tiêu c a bài toán. Trong tr ng h p áp d ng vào bài toán t i u có th hi u thu t toán CSA nh sau:
- M i tr ng trong t đ i di n cho m t l i gi i và tr ng chim tu hú đ i di n cho l i gi i m i.
- M c tiêu là s d ng l i gi i m i t t h n (tr ng chim tu hú) thay th cho l i gi i không t t.
4.4.3.2. Gi i thu t CSA
1. Nh n các tham s cho bài toán. 2. Kh i t o n t ch ban đ u.
3. T o m t tr ng ng u nhiên b ng phép Lévy flights. - ánh giá ch t l ng c a tr ng m i t o.
- Ch n 1 t ng u nhiên th j trong n t ban đ u. - N u Fi¬ > Fj thì thay t j b ng l i gi i m i. - M t ph n nh Pa t x u đ c b và xây m i. - Gi l i nh ng l i gi i t t nh t.
- S p x p l i các l i gi i t t và tìm l i gi i t t nh t trong t t c .
CH NG 5
THU T TOÁN MOTH-FLAME OPTIMIZATION 5.1. Gi i thi u
B m đêm hay ngài là m t loài côn trùng có m i quan h ch t ch đ n loài b m, c hai đ u thu c b cánh v y. B m đêm chi m ph n l n s ch ng lo i loài trong b này, ng i ta cho r ng có kho ng 150.000 đ n 250.000 loài b m đêm khác nhau (kho ng g p m i l n so v i s l ng các loài b m ngày), v i hàng ngàn loài ch a đ c mô t .
Chúng có hai giai đo n phát tri n quan tr ng trong đ i đó là: côn trùng và tr ng thành. u trùng s phát tri n thành b m đêm sau khi chui ra kh i kén.
5.1.1. nh h ng ngang c a b m đêm
Có m t s th t thú v v loài b m đêm đó là ph ng pháp đ nh h ng đ c bi t c a chúng vào ban đêm đó là chúng đã đ c ti n hóa đ bay trong đêm d a vào ánh sáng t m t tr ng.
Các con b m s d ng m t c ch g i là đ nh h ng ngang cho vi c đi u h ng này. Theo ph ng pháp này thì m t con b m đêm s đ nh h ng đ ng bay b ng cách duy trì m t góc không đ i đ i v i m t tr ng.
ây là m t c ch hi u qu đ di chuy n m t quãng đ ng dài theo m t đ ng th ng. Hình bên d i s cho th y m t mô hình khái quát v đ nh h ng ngang:
Do m t tr ng n m r t xa so v i nh ng con b m đêm nên c ch này s luôn giúp chúng bay theo đ ng th ng.
Ph ng pháp t ng t c ng đ c con ng i s d ng khi đ nh h ng. Gi s m t tr ng phía Nam và m t ng i mu n đi v phía ông thì anh ta s gi sao cho m t tr ng luôn n m bên trái khi anh ta di chuy n và th là anh ta có th di chuy n v phía
ông theo m t đ ng th ng.
5.1.2. H n ch vi c đ nh h ng ngang c a b m đêm
M c dù ph ng pháp này r t hi u qu nh ng chúng ta v n hay th y nh ng con b m đêm bay l n xung quanh nh ng ng n đèn. Trên th c t nguyên nhân c a nh ng hành vi trên đó là nh ng con b m đêm đã b l a b i ngu n ánh sáng nhân t o c a con ng i.
Khi b m đêm nhìn th y ánh sáng nhân t o c a con ng i thì chúng v n c g ng duy trì m t góc không đ i v i ngu n sáng đ bay theo đ ng th ng. Tuy nhiên so v i m t tr ng thì kho ng cách t ánh sáng t ng n l a r t g n nên k t qu là nh ng con b m đêm thay vì bay theo đ ng th ng s bay theo đ ng xo n c, đi u này ch ng nh ng không giúp cho vi c đ nh h ng mà còn có th gây ra cái ch t cho chúng.
Hình bên d i s mô hình hóa đi m b t l i c a c ch đ nh h ng ngang.
Hình 5.1.2 B m đêm b thu hút b i ng n l a - i m b t l i c a đ nh h ng ngang Chúng ta có th quan sát trong hình là đ ng bay c a nh ng con b m đêm cu i cùng s h i t v phía c a ngu n sáng.
Hành vi này đã đ c mô hình hóa toán h c và đ c đ xu t thành m t thu t toán t i u g i là thu t toán Moth-Flame Optimization (MFO).
5.2. Thu t toán MFO
5.2.1. B m đêm và ng n l a trong thu t toán MFO
Trong thu t toán MFO quy c gi đ nh r ng các m c tiêu là b m đêm và bi n là v trí c a b m đêm trong không gian.Chính vì v y, b m đêm có th bay trong không gian t m t chi u đ n đa chi u v i vi c thay đ i vect v trí.
Thu t toán MFO là thu t toán d a trên qu n th , do đó đàn b m đêm đ c mô t trong ma tr n sau:
Trong đó n là s l ng b m đêm và d là s l ng bi n c a bài toán (kích th c bài toán).
Ma tr n l u tr l i nh ng giá tr t i u t ng ng v i v trí c a các con b m đêm nh sau:
Trong đó giá tr t i u là giá tr đ c tr v c a hàm m c tiêu (fitness function) c a t ng con b m. Vector v trí (ví d nh là hàng đ u c a ma tr n M) s đ c tính toán trong hàm m c tiêu và k t qu sau khi đ c tính toán s đ c l u l i t ng ng v i t ng con b m đêm (ví d nh là OM1 trong ma tr n OM).
M t thành ph n quan tr ng khác trong ph ng pháp này chính là nh ng ng n l a.Chúng ta s xây d ng m t ma tr n cho chúng t ng t nh ma tr n cho nh ng con b m đêm nh sau:
Ma tr n l u tr các giá tr t i u t ng ng đ i v i các ng n l a nh sau:
C b m đêm và ng n l a đ u là nh ng gi i pháp. i m khác bi t gi a chúng là cách chúng ta x lí và c p nh t giá tr c a sau m i vòng l p. B m đêm là tác nhân tìm ki m th c t trong không gian, trong khi đó ng n l a đ i di n cho v trí t t nh t mà b m đêm có th đ t đ c, hay nói cách khác thì ng n l a chính là m c tiêu hay đích đ n mà nh ng con b m đêm tìm ki m trong không gian (hay giá tr t i u c n tìm c a bài toán).
5.2.2. Xây d ng thu t toán MFO
Thu t toán MFO là t p h p c a ba ph n t liên quan đ n v n đ t i u hóa và đ c đ nh ngh a nh sau:
Trong đó I là hàm t o ra qu n th b m đêm ng u nhiên và các giá tr t i u t ng ng c a chúng. Mô hình ph ng pháp c a ch c n ng này nh sau:
Hàm P là hàm có ch c n ng chính giúp di chuy n nh ng con b m đêm xung quang không gian tìm ki m. Hàm này có đ u vào là ma tr n M và tr v ma tr n M m i đã đ c c p nh t.
Hàm T s tr v giá tr true n u đi u ki n d ng đ c th a mãn ho c s tr v giá tr false n u đi u ki n d ng không đ c th a mãn.
V i các hàm I, P, T thì thu t toán MFO v c b n có th đ c đ nh ngh a nh sau:
M = I();
while T ( M ) is equal to false
M = P(M );
Hàm I t o ra các giá tr ban đ u và tính toán các giá tr theo hàm m c tiêu. B t kì phân ph i ng u nhiên nào c ng có th đ c s d ng trong hàm này, ví d nh sau:
for i = 1: n for j = 1: d M (i , j ) = (ub (i ) − lb (i )) * rand () + lb ( i ); end end OM = FitnessFunction ( M );
Trong đó các hàm ub và lb là các ma tr n giá tr gi i h n trên và gi i h n d i c a các bi n.
ub = [ub1 , ub2 , ub3 ,.., ubn −1 , ubn]
lb = [lb1 , lb2 , lb3 ,.., lbn −1 , lbn]
Sau khi kh i t o giá tr đ u thì hàm P s đ c l p đi l p l i cho đ n khi hàm T tr v giá tr true. Hàm P là hàm ch c n ng chính và có nhi m v di chuy n nh ng con b m đêm xung quanh không gian tìm ki m. Nh đã đ c đ c p trên, c m h ng cho ph ng pháp này chính là đ nh h ng ngang, đ mô hình hóa hành vi này chúng ta có th c p nh t v trí c a m i con b m đ i v i ng n l a b ng ph ng trình sau:
Trong đó thì Mi là con b m th i, Fj là ng n l a th j, và S là m t hàm xo n c. Chúng ta dùng thu t toán xo n c logarit đ làm c ch c p nh t cho các con b m và t t nhiên c ng có th có th dùng các thu t toán xo n c khác mi n là nó th a mãn các n i dung sau đây:
- i m b t đ u c a đ ng xo n c nên b t đ u t v trí c a con b m đêm. - i m k t thúc c a đ ng xo n c ph i là v trí c a ng n l a.
- Bi n đ ng c a ph m vi xo n c không đ c v t quá không gian tìm ki m. C n c vào nh ng đi u trên chúng ta đ nh ngh a m t đ ng xo n c d ng logarit cho thu t toán MFO nh sau:
(5.2.1)
Trong đó Di là kho ng cách t con b m th i đ n ng n l a th j, b là h ng s dùng đ xác đ nh hình d ng c a đ ng xo n c logarit, và t là s có giá tr ng u nhiên trong đo n [-1;1].
(5.2.2)
Trong đó là con b m th , là ng n l a th j, là kho ng cách t con b m th i đ n ng n l a th j.
Chúng ta có th th y trong ph ng trình , mô
ph ng đ ng bay c a loài b m đêm, v trí ti p theo c a con b m đ c xác đ nh d a vào ng n l a và tham s t trong ph ng trình này xác đ nh v trí ti p theo c a con b m đêm so v i ng n l a (t = -1 là v trí g n nh t so v i ng n l a, t = 1 hi n th v trí xa nh t). Do đó m t hình siêu elip gi đ nh có th đ c xây d ng xung quang ng n l a theo m i h ng và v trí ti p theo c a con b m đêm s n m trong không gian này. Chuy n đ ng xo n c là thành ph n chính c a ph ng pháp này vì nó ch ra cách mà nh ng con b m đêm có th c p nh t v trí c a chúng xung quanh ng n l a.
Ph ng trình xo n c c ng cho phép m t con b m có th bay quanh ng n l a và nó không nh t thi t ph i n m trong không gian gi a chúng vì v y vi c th m dò và khai thác không gian tìm ki m có th đ c đ m b o. Vòng xo n c logarit, không gian xung quanh ng n l a, và v trí ng v i các giá tr t khác nhau trên đ ng cong đ c minh h a
hình sau:
Hình 5.2.1 Mô hình xo n c, không gian tìm ki m và v trí ng v i tham s t
Hình sau s cho ta th y m t mô hình khái quát c a vi c c p nh t v trí c a m t con b m đêm xung quanh m t ng n l a.
Hình 5.2.2 M t s v trí xung quanh ng n l a mà b m đêm có th di chuy n đ n - Trong đó tr c d c ch hi n th m t ph n t kích th c (m t bi n/ tham s c a bài
toán đ c nêu ra) trong khi ph ng pháp này có th gi i quy t nhi u bi n c a bài toán.
- Nh ng đ ng màu đen nét đ t là nh ng v trí có th đ c ch n làm v trí ti p theo c a con b m, ví trí hi n t i c a con b m là đ ng màu xanh n m ngang và v trí ng n l a là đ ng màu xanh lá n m ngang.
- Trong hình ta có th th y rõ ràng r ng con b m đang khám phá và khai thác không gian tìm ki m xung quanh ng n l a theo m t chi u và vi c th m dò x y ra khi v trí ti p theo n m ngoài vùng lân c n c a ng n l a và chúng ta có th th y chúng đ c dán nhãn là các m i tên 1, 3 và 4.
- Vi c khai thác x y ra khi v trí ti p theo c a con b m n m trong vùng lân c n c a ng n l a và nó đ c đánh d u b ng m i tên s 2. Có m t s đi m thú v trong mô hình này nh sau:
M t con b m đêm có th h i t đ n b t k đi m nào trong vùng lân c n c a ng n l a b ng cách thay đ i giá tr t.
Giá tr t càng th p thì v trí c a con b m càng g n so v i ng n l a.
T n su t c p nh t v trí c hai phía c a ng n l a càng t ng khi con b m đêm đ n càng g n ng n l a.
Ph ng pháp c p nh t v trí đ c đ xu t trên có th đ m b o vi c khai khác không gian xung quanh ng n l a m t cách hi u qu .
gia t ng xác su t tìm ra các l i gi i t t h n chúng ta có th xem xét đ n các l i gi i t i u đã thu đ c đ i v i ng n l a. Do đó trong ma tr n F luôn bao g m n l i gi i