Trang 1 --- LUẬN VĂN THẠC SỸ KHOA HỌCGIẢI THUẬT DI TRUYỀN ĐA MỤC TIÊU GIẢI BÀI TỐN CÂY KHUNG NHỎ NHẤT VỚI ĐƯỜNG KÍNH BỊ CHẶNNGÀNH: TOÁN TIN ỨNG DỤNGPHẠM THẢONgười hướng dẫn khoa họcPGS.T
Trang 1-
LUẬN VĂN THẠC SỸ KHOA HỌC
GIẢI THUẬT DI TRUYỀN ĐA MỤC TIÊU GIẢI BÀI TOÁN CÂY KHUNG NHỎ NHẤT VỚI
Trang 2M C L CỤ Ụ
L I C 5
DANH MC CÁC KÝ HI U, CH VIT T T 6
DANH MC CÁC B NG 7
DANH MC CÁC HÌNH VTH 8
DANH MC CÁC THU T NG TING ANH 10
PHN M U 11
I THU T DI TRUY C TIÊU 14
1.1 Gii thu t di truy n 14
1.1.1 Gii thiu gi i thu t di truy n 14
1.1.2 L ch s phát tri n gi i thu t di truy n 15
1.1.3 Các khái nin 15
1.1.4 gii thu t di truy n Mô t hong 18
1.1.5 Các tham s c a gi i thu t di truy n 20
1.1.6 Kh i t o qu n th u và ch n l c cá th 21
1.1.7 Chic np l i qu n th 24
1.1.8 u ki n d ng c a GA 26
1.1.9 ng d ng c a gi i thu t di truy n 27
1.2 V t c tiêu 28
1.2.1 M 28
1.2.2 V t c tiêu 29
1.2.3 c tiêu 29
1.2.4 p kh thi 30
1.2.5 gic tiêu 30
1.2.6 ng tr Pareto 31
1.2.7 31
1.2.8 p và các m t không th ng tr 32
1.2.9 p t 33
Trang 31.3 Gii thu t di truy n cho t c tiêu 34
1.3.1 Gii thiu 34
1.3.2 chung cho gi i thu t di truy c tiêu 37
1.3.3 Các thành ph n chính trong gi i thu t 39
NH T V NG KÍNH B CHN 44
2.1 Các khái ni 44
2.1.1 th 44
2.1.2 chu trình 44
2.1.3 Cây 45
2.2 Bài toán Cây khung c th 46
2.3 Bài toán Cây khung nh nh t v ng kính b ch 47 n 2.4 ng d ng c a bài toán cây khung nh nh t v ng kính b ch 48 n 2.4.1 Bài toán xây d ng h thng s t 48
2.4.2 Bài toán n i m ng máy tính 48
2.4.3 Thi t k h phân tán 49
2.4.4 Nén bitmap trong h phc hi thông tin 50
NG GI I THUT DI TRUY C TIÊU GII BÀI TOÁN CÂY KHUNG NH NHT VNG KÍNH B CH 52 N 3.1 Gii thu t di truy c tiêu RGH cho bài toán cây khung nh nht vng kính b chn 52
3.1.1 Gii thiu 52
3.1.2 thu t toán 53
3.1.3 Kh i t o qu n th 55
3.1.4 La chn cá th theo thu t toán Tournament 58
3.1.5 K t h p các cá th 58
3.1.6 t bi n xóa c nh 62
3.1.7 t bi n chuy n tâm 63
3.1.8 t bi n thay th c nh tham lam 63
Trang 43.1.9 t bi n t 63
3.2 Gii thu t di truy c tiêu SPEA1 cho bài toán cây khung nh nht vng kính b ch 64 n 3.2.1 Gii thiu 64
3.2.2 thu t toán SPEA 1 66
3.2.3 o th h p theo t t ti th hi h n th i 67
3.2.4 thích nghi 68
3.2.5 c bt ph n t t p Pareto b m 71
3.2.6 t toán SPEA 1 74
3.3 Gii thu t di truy c tiêu SPEA 2 c i ti n gi i thu t SPEA cho bài toán cây khung nh nh ng kính b t v ch 75 n 3.3.1 M t s c i ti n trong SPEA 2 75
3.3.2 thu t toán SPEA 2 76
3.3.3 thích nghi 79
3.3.4 SPEA 2 La chng 82
T VÀ K T QU TH NGHI M 85
4.1 K t qu t và th nghi m thu t toán RGH 85
4.1.1 t RGH 85
4.1.2 M t s c i ti t thu t toán 87
4.2 K t qu t và th nghi m SPEA 1 89
4.2.1 t SPEA 1 89
4.2.2 t 91 l 4.3 Kt qu t và th nghi m SPEA 2 94
4.3.1 t SPEA 2 94
4.3.2 t 94 l 4.3.3 Môt t m t s hàm so sánh v i SPEAI 95
4.4 c hong c 97
4.4.1 Chn b d u c n ki m th li 97
4.4.2 Chn tham s u vào 97
Trang 54.4.3 Biu di n d liu vào 98
4.4.4 Kh i t o qu n th 98
4.4.5 L p t o th h m t bi n 99
4.4.6 K t qu v i b d u li 99
4.4.7 K t qu v i d liu th nghi m b 1 v i D = 6 100
4.4.8 K t qu v i d liu th nghi m b 1 v i D = 5 100
4.4.9 K t qu c 101
K T LU N 102
KIN NGH VÀ NH NG K T QU NGHIÊN C U TI P THEO 103
TÀI LI U THAM KH O 104
PH L C 105
Ph l c 1 Tính giá tr thích nghi c a các cá th trong t p Pareto và cá th trong qun th 105
Trang 6Tôi xin chân thành c b n ng nghi p và
tu ki n t t nh t cho tôi trong su t quá trình h c t p và nghiên c hoàn thành lu
Tôi xin chân thành c
Hà N
H c viên
Phm Th o
Trang 7DANH M C CÁC KÝ HI U, CH Ụ Ệ Ữ VIẾ T T T Ắ
Chữ viế ắ t t t Viết đầy đủ Ý nghĩa
GA Genetic Algorithm Gii thu t di truy n
EC Evolutionary Computing Tính toán ti n hóa
MOP Multiobjective Optimization
Problem V c tiêu t
SOP Single object Optimization
Problem V n t i u hoá n m c êu ti
BDMST Bounded Diameter Minimum
Spanning Tree
Cây khung nh nh t v ng kính b chn
OTTC One Time Tree Construction
Tên m t thu t toán xây d ng
i Deo, and Gupta
RGH Random Greedy Heuristics T ìm kim tham lam ng u nhiên
SPEA 1 The Strength Pareto
Evolutionary Algorithm
Gii thu t ti n hóa Strength Pareto
SPEA 2 Improving the Strength Pareto
Evolutionary Algorithm Phiên b n c i ti n c a SPEA 1
MP Mating Pool T p trung gian ch áca c cá th
chu n b lai gh ép bin t
Trang 8DANH M C CÁC B Ụ Ả NG
STT Mã bảng Tên bảng
1 B ng 3.1 B ng mô t t ng th thu t to RGH án
2 B ng 3.2 B ng mô t t c kh o qu n thi t
3 B ng 3.3 B ng mô t c thu t toán k t h p gi a các cá th
4 B ng 3.4 B ng mô t t ng th thu t toán SPEA 1
5 B ng 3.5 Bng mô t t o th h p theo c a SPEA 1 ti
6 B ng 3.6 Bng mô t thu t toán thích nghi c a cá th
7 B ng 3.7 Bng mô t thu t toán cho vi c c b t ph n t t t p
Pareto
8 B ng 3.8 Bng mô t c thu t toán SPEA 2
Trang 9DANH M C CÁC HÌNH V Ụ Ẽ, ĐỒ THỊ
STT Mã hình Tên hình
1 Hình 1.1 chung c a gi i thu t di truy n
2 Hình 1.2 Chic n p l i hoàn toàn
3 Hình 1.3 Chic n p l i ngu nhiên
4 Hình 1.4 Chic n p l i theo mô hình cá th
5 Hình 1.5 Ví d minh ho v t
6 Hình 1.6 Minh ho các t p k t qu t p k t qu
t trong không gian mc tiêu
7 Hình 1.7 Lch s phát tri n c a gi i thut di truyc tiêu
Hình 3.3 thu t toán l a ch n cá th theo u lo i
19 Hình 3.4 thu t toán lai gh gi ép a các cá th
Hình 3.5 mô t thu t toán SPEA1
20 Hình 3.6 t o th h ti p theo c a SPEA 1
Hình 3.7 mô t lo i b t ph n t theo phân c m
Hình 3.8 m y u ca SPEA 1
Trang 1021 Hình 3.8 thu t toán SPEA 2
Hình 3.11 thích nghi trong SPEA và SPEA 2
cho bài toán ci hóa vi hai m c tiêu
Hình 3.12 Biu di i b các ph n t ông b kh th ng tr
ng h p s ng ph n t t quá c c a t p
Hình 4.1 l p cho qu n lý d linh, danh sách
cnhHình 4.2 l p cho qu n lý d u Nhi m s c th và qu n th li Hình 4.3 l p cho qu n lý d u và x qua các th h li lý
24 Hình 4.4 l p cho qu n lý d liu vào
Hình 4.5 l p mô t d u thành viên s d ng trong SPEA 1 li
26 Hình 4.6 l p mô t c s d ng trong SPEA 1
27 Hình 4.7 l p mô t d u thành viên s d ng trong SPEA 2 li
Hình 4.8 Giao di n u v d u ào li kim th
Hình 4.9 Giao di n chn tham s ki m th
Hình 4.10 Giao di n biu di n i m d u u v li ào
Hình 4.11 Giao di n biu di n cá th kh qun i t o th
Hình 4.12 Giao di n biu di n á ình lai gh qu tr ép
Hình 4.13 Giao di n biu di n k t qu t t nh t hi n ti
Hình 4.14 Giao di n k t qu tt nh t v i b d u 500 i m v i D=6 li Hình 4.15 Giao di n k t qu tt nh t v i b d u 500 i m v i D=5 li Hình 4.16 Giao di n lai gh v i b d u 500 i m v i D=5 ép li
Trang 11DANH M C CÁC THU T Ụ Ậ NGỮ TIẾNG ANH
STT Thu t ậ ngữ Ngh a ĩ tiếng việt
10 Fitness Assignment Tính thích nghi
11 Environmental Selection La chng
Trang 12PHẦ N M Ở ĐẦ U
Lời nói đầu
Gii thu t di truy n ( Genentic Algorithm - GA) là mt ph n c a tính toán
tin hóa (Evolutionary Computing), m n r t nhanh ca Trí tu nhân t o
Bài toán cây khung nh nh t v ng kính b chn là m t bài toán NPkhó và là bài toán t u ng d ng th c t , u công trình nghiên c gi i bài toán này
Tuy nhiên, hi n nay s ng công trình áp d ng gi i thu t di truy
mgii bài toán này c h n òn ch
Mục đích, đối tƣợng và n i dung lu ộ ận văn
tài: Giải thu t di truy ậ ền đa mụ c tiêu gi i bài toán cây khung nh ả ỏ
nhấ ới đườ t v ng kính b ị chặ n.
Các n i dung luc hic bao g m:
Nghiên c u gi i thu t di truy n, b ài toán a m c êu, ti gii thu t di truy n
c tiêu
Nghiên c u bài toán cây khung nh nh t v ng kính b chn
Xây d ng gi i pháp s d ng gi i thu t di truy n ti n á t ho ìm kim tham lam ng u nhiê (Random Greedy Heuristics Evolutionary Algorithm - n RGH) dáp ng gi ài toán i b t ra và xut m t s c i n khi c t ti ài RGH c i thi n t c tính toán
Nghiên c u b ài toán a m c êu và ti gii thu t di truy gi ài toáni b
n thu c l p này ày ìm hiT u chi ti t c ác gic i thu t di truy n c
Trang 13tiêu (SPEA1 và SPEA 2) gii bài toán cây khung nh nh t v ng kính
di truy n Ch ng n c ề ươ ày ũng giớ i thi u v ệ ấn đề ối ưu đa mụ t c tiêu Giớ i thi u gi ệ ải thu t di truy ậ ền cho bài toán đa mụ c tiêu và ng d ng c a gi i thu t di truy n ứ ụ ủ ả ậ ề
c ũng đượ giớ c i thi u ệ
Chương 2: Bài toán cây khung nh ỏ nhấ ới đườ t v ng kính b ị chặ n Chương này g ớ i i thi u các n i dung sau: M t s khái ni ệ ộ ộ ố ệm cơ sở ề v cây, chu trình đường đi…, p hát bi u bài toán cây khung nh ể ỏ nhấ t, cây khung nh ỏ nhấ ới t v đường kính b ị chặ n, các ứng d ng c ụ ủa bài toán
Chương 3: Xây d ng gi i thu t di truy n và gi i thu t di truy ự ả ậ ề ả ậ ền đa mụ c tiêu gi i bài toán cây khung nh ả ỏ nhấ ới đườ t v ng kính b ị chặ Chương này tập n trung vào vi c mô t t ệ ả ừng bướ c c a các gi i thu ủ ả ật đã sử ụ d ng bao g m: gi ồ ải thu t di truy n t ậ ề ìm kiế m tham lam ng u ẫ nhi n ê RGH, gi i thu t di truy ả ậ ền đa mụ c tiêu SPEA 1 và SPEA 2 V i m i thu t toán bao g m các m ớ ỗ ậ ồ ục: Sơ đồ ổ t ng th ể hoạt độ ng c a thu ủ ật toán và sơ đồ chi ti t trong mỗi bước củ ế a thu t toán ậ
Chương 4: Cài đặ t và k t qu th c nghi m: Chương này mô tả quá trình ế ả ự ệ
cài đặ t và th nghi m c a t ử ệ ủ ừng chương trình theo các giả i thu ật đã sử ụ d ng bao
Trang 14g m: gi i thu t di truy ồ ả ậ ền đơn mụ c tiêu RGH, gi i thu t di truy ả ậ ền đa mụ c tiêu SPEA 1 và SPEA 2 V i m ớ ỗi chương trình, mô tả các vi c: Bi ệ ểu đồ ớ l p mô t ả lưu
tr ữ và ho ạt độ ng c a thu t toán, các giao di n th c hi ủ ậ ệ ự ện chương trình, tr ình b ày
m t s c i n ộ ố ả tiế đã thự hiệ c n,các k t qu ế ả thu được và đánh giá kế t qu ả thu đượ c
Ý nghĩa khoa họ c và th c ti n c ự ễ ủ a đề tài: Gi i thu t di truy c áp
dgii các bài toán khó (ví d các bài toán thu c l p các bài toán NP khó), máy h c và có th c s d t công c c i ti
c th c hi n Bài toán cây khung là bài toán có ý ng n c t r t l
c thi t k m ng truy n thông, thi t k m ng phân tán
Trang 15CHƯƠNG I GIẢ I THU T DI TRUY Ậ ỀN ĐA MỤ C TIÊU
1.1 Giả i thu t di truy n ậ ề
1.1.1 Giới thi u gi i thu t di truy n ệ ả ậ ề
Gii thu t di truy n (Genentic Algorithm_GA) là m t ph n c a tính toán
ti n hóa ( Evolutionary Computing), mn r t nhanh c a Trí tu nhân t o
GA d a ên nh tr ng ng c b n trong h c thuy t c a Darwin v s tin hóa Nói mgi , n c gi i quy t b ng quá trình ti n hóa,
t qu t t nh t hay cá th khe nh t, úng là các l i gi ch c ti n hóa
GA mô ph ng quá trình ti n hóa t nhiên: K ế thừ a và đấu tranh sinh t n ồ
c i ti n các th h trong không gian l i gi i GA c dùng trong các bài toán t l p các bài toán NP khó ó là l p bài toán r t hay,
ng r t khó tìm ra l i gi i t i các gi i thu t c n vét c n trong không gian tìm ki m
Gii thu t di truy n là m i t a trên chn l c t nhiên và di truy n
Nhi m s c th là m t cá th ng v i l i gi i ca bài toán
M i nhi m s c th (NST) có nhi u gen, m nh m t tr ng thái
Trang 161.1.2 L ch s phát tri n gi ị ử ể ải thu t di truy n ậ ề
Tính toán ti n hóaế c I.Rechenberg gi i thi u vào nh
Evolution Stragiesng chic ting c a
c các nhà khoa h c nghiên c u phát tri n ti p
Giải thu t di truy n ậ ề c ông phát tri n cùng v ng nghi p Cu n sách " Adaption in Natural and Artificial Systems" (S thích nghi trong c ác h t nhiên và nhân t o) xu t b
t ng h p các k t qu c a quá trình nghiên c u và phát tri
GA xây d i quy t m t s bài toán và gGenetic Programming" (GP)
n các hàm C++ cho GA (GALibc Mathew Wall,
Vin khoa h c Massachussets (Massachusetts Institute of Technology)
s d ng gi i thu t di truy n cho t
có s d ng s biu di n hay các toán t di truy n
Ngày nay gi i thu t di truy n càng tr nên quan tr c bi t là trong
c t c có nhi u bài toán thú v c ng d ng nhi u trong th c ti i thu t hi u qu gii
1.1.3 Các khái ni ệ m cơ bản.
1.1.3.1 Nhiễm sắc thể
Nhi m s c th (Chrom ome) hay còn g i là cá th Các sinh v t s os u
c u t o t c t cá bào và t t c các t u bao g m m t t p h p các nhi m
s c th ging nhau Các NST này là m t chu c tính ca
c cá th M i NST bao g m r t nhi u GEN, m nh m t tr ng thái
Trong bài toán t ng v i m t l i gi i ti m tàng
Trang 171.1.3.2 Quần thể
Qun th (Population) trong t nhiên là m t t p h p các cá th có cùng
m t s y Trong gi i thu t di truy n ta quan ni m quầ n th là ể
l a các cá th ong tr GA chính là cách ch n các cá th thích nghi t vào th h p theo ho ti c cho lai ghép, v i m i mt n l c mang r t nhi u y u t ng u nhiên Có nhi l a ch i u nhng m c tiêu là các cá th t t s có kh c ch
1.1.3.4 Lai ghép
Lai ghép (CrossOver) trong t nhiên là s k t h p các tính tr ng c a b
m sinh ra th h con Trong gi i thu t di truy c coi là m t s
t h p l i các tính ch t (thành ph n) trong hai l i gi i cha m sinh ra
m t l i gi i m c tính mong mu n là t h cha mt quá trình x y ra ch y u trong gi i thu t di truy n
1.1.3.5 Đột biến
t bi n (Mutation) là m t s bi i t i m t (hay m t s ) gen c a NST
t o ra m t NST m t bi n có th t o ra m t cá th m i t hoc x u Tuy nhiên, trong gi i thu t di truy n thì ta luôn mu n t o ra nht bi n cho phép c i thi n l i gi i qua t ng th h t bit ng u nhiên
Trang 181.1.3.6 Hàm thích nghi
Trong t nhiên, ch có nh ng cá th c vng thì m i t n t i, không nó s b dit vong GA m hàm thích nghi (Fitn s Function) hay hàm s c khes giá m t cá th hay m t l i gi i, so
v i các cá th khác T i có th ch n l c các l i gi i t t cho các th
h n hóa c a quti n th
1.1.3.7 Không gian tìm kiếm
Khi mu n gi i quy t m t v nào ng tìm kiu tiên ta phi
nh không gian tìm ki m Không gian tìm ki m bao g m t t c i
ng mà ta c n quan tâm tìm ki m
Khi gi i m ng tìm m t s l i gi c xem là tt nht Không gian c a t t c các l i gi i kh c g i là không gian tìm ki m (hay không gian tr ng thái) M i m m trong không gian tìm ki m bi u di n cho m t l i gi i ti m tàng M i l i gi i ti u b ng giá tr hay
s c kh e c a nó trong bài toán V i GA, ta tìm kim l i gi i t t nh t trong s r t nhiu các l i gi i ti m tàng
Tìm ki m m t l i gi ng v i vi c tìm m t giá tr c lớn
nh ấ t ho c nh ất) trong không gian tìm ki ặ ỏ nh m là
r t t là m t s Trong ti n trình s d ng GA, quá trình tìm ki m l i gi i s sinh ra nhm khác trong quá trình ti n hóa
V là vi c tìm ki m r t ph c t p Ta s tìm l i gi i u t
t nhi tìm l i gi i thích h p
có th không c n ph i gi i t t nh t i thu i (hill climbing ,) tìm ki m tabu ( tabu search), mô ph ng tôi luy n ( simulated annealing) và gi i thu t di truy n (genetic algorithm)
Trang 191.1.4 Sơ đồ giả i thu t di truyậ ề n – Mô t ả hoạt động
GA d a ên c s các ý tr ng Thuy t ti n hóaế ế c a Darwin L i gi i c a mc gi i b ng GA s d ng quá trình ti n hóa
Gii thu t b u b ng m t t p các l i gi c bi u di n b ng các NST,
g i là Quần Th ể Các l i gi c l y ra và s d o nên qu n th t
m i, v i m t mong mu n qu n th m i s t n th ng l i gi i
c ch n t qu n th m i hay th h thích nghi Chúng càng thích nghi cao, chúng càng có nhi tái sinh sn
Khoi tao tham so dau vao:
Xác suất lai ghép Xác suất đột biến
Cỡ quần thể Số lần tạo Kích thước nhiễm sắc th
Lựa chọn hàm thích nghi
Đưa ra kết quả tốt nhất
Tạo các cá thể và thêm vào danh sách quần thể
Đánh giá quần thể hiện thời;
Số lượng cá thể: Population Size.
i<Số lần tạo quần thể i> Số lần tạo
quần thể
Tạo thế hệ mới
Đánh giá quần thể hiện thời;
Nếu ghi ra file Y Ghi ra file
TẠO THẾ HỆ MỚI
Đầu vào là quần thể hiện thời Tạo một quần thể mới rỗng để chứa kết quả Nếu giữ lại cá thể tốt nhất
Lấy ra cá thể tốt nhất ở thế hệ trước đang ở cuối danh sách Y
Y
Thiết lập biến lưu quần thể mới
i<Cỡ quần thể i> Cỡ quần thể
Lấy con trong quần thể Sử dụng thuật toán quay 2 ( bánh xe để lấy ra vị trí của cá thể trong quần thể 2 2 )
Sinh xác suất lai ghép Sinh ngẫu nhiên ( ) Nếu nhỏ hơn xác suất lai ghép Y Đem lai ghép tạo ra 2 cá thể mới
Đột biến cá thể 1 Đột biến cá thể 2 Thêm cá thể 1 vào danh sách Thêm cá thể 2 vào danh sách
Thuật toán đột biến cá thể 1
Sinh số ngẫu nhiên nằm trong khoảng 0- TotalFitness
Sử dụng thuật toán tìm kiếm nhị phân để tìm vị trí của phần tử có giá trị nhỏ nhất lớn hơn giá trị ngẫu nhiên sinh ra
Trả ra vị trí phần
tử được lựa chọn
Giải thuật di truyền
Tìm vị trí lai ghép Giũ nguyên phần đầu ghép phần đuôi ,
Với mỗi Gen trong NST Sinh một số ngẫu nhiên nếu nhỏ hơn tỷ lệ đột biến thì đột biến gen đó Nếu đột biến Giá trị Gen đó , = ½( Giá trị Gen +
Số ngẫu nhiên mới)
chung ca gi i thu t di truy n
V i các khái ni c gi i thi u trên, gi i thu t di truy c mô t sau:
Trang 201 [Begin] Sinh ng u nhiên m t qu n th g m n cá th (là l i gi cho bài n i toán)
2 [Thích nghi thích nghi eval x) c a m i cá th trong qu( x n th
3 [Quần th m i ể ớ] T o qu n th m i b ng cách l p l n khi qun th m i hoàn thành:
a [Chọ ọn l c] Ch n hai cá th b m t qun th thích nghi
c a chúng (cá th thích nghi càng cao thì càng có nhi u kh c chn)
b [Lai ghép] V i m t xác su c ch n, lai ghép hai cá th
b m t o ra m t cá th m i
c [Đột bi n] V i m t xác suế t bic ch n, bi i cá th m i
d [Chấp nh n] Thay con m i vào qu n th ậ
4 [Thay thế ] S d ng qu n th m i cho quá trình ti p theo c a thu t toán
5 [Thử nghi mệ ] Nu ki n d c thoã 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
6 [Vòng l pặ ] Quay lc 2
Ta th y r ng, c sau m p tc l , ta l i t c m t qu n th m i P t( )
t ( 1), hay m t t p các l i gi i ti m tàng cho bài toán Sau m P t- c l p, các
cá th m c sinh ra ta không th bic, nó sinh ra hoàn toàn ngu nhiên, ng u nhiên t khi t o qu n th n ng u nhiên ch n l c các
cá th b m u nhiên c trong quá trình lai ghép gen, cho
t bi n gen Nó hoàn toàn git quá trình ti n hóa trong t nhiên
Trang 21V i nguyên t c chung c a GA r y, cn các tham s và s s t mà t áp dgii nhi u các bài toán khác nhau
ít cá th ít có kh , c hi n lai gi ng và ch m t ph n nh không gian tìm kic dùng Làm nh v y s d x ng h p b qua các l i gi i t t, các th h s thoái hóa d hiu cá th
t t vì GA ch s y chn hi u qu c a gi i thu t Các nghiên
c ra không có lc qu n th lên quá m t gi i
h n cho phép Ngoài ra, ch ng l i gi i còn ph thu hóa N u cá th ít có th d b thoái hoá N u cá th nhi u làm cho GA ch y chm
Trang 221.1.5.2 Xác suất lai ghép
Xác su t lai ghép cho bi t vi c lai ghép t o ra th h m c th c hi n
nào Xác su t lai ghép là p c m t cá th c lai ghép là p c N u không th c hi n lai ghép, con sinh ra s ging hoàn toàn b m Nc lai ghép, con sinh ra s có m t ph n gi ng b và m t ph n ging m N u xác xu t lai ghép p c = 100 thì t t c con sinh ra là do lai ghép, %
còn nu p c = 0 toàn b h m i là s sao chép chính xác th h %, th
di truyng c c tr Tuy nhiên n u th c hi t bin
v i xác su t quá cao s bin gi i thu t di truy n thành gi i thu t tìm ki m ng u nhiên
1.1.6 Khở ại t o qu n th ầ ể ban đầu và ch n l c cá th ọ ọ ể
1.1.6.1 Khởi tạo quần thể
Kh i t o qu n th u tiên c a bài toán theo GA Qu n th ban
c sinh ra m t cách ng u nhiên, bao g m các l i gi i ng u nhiên tha mãn các u ki n c t chc liu nó có ph i
là l i gi i t ông Tùy thu c vào bài toán khác nhau mà ta có các cách kh i t o qu n th nhiên, n u ch ng c a qu n th u càng t t, ta càng hi v ng các th h sau s ngày càng t khi tính toán gi i thu t o qu n th u, chúng ta c g ng tìm nh ng cách
có th ng l i gi i ti m tàng ch p nh i v và th
th hay cây có tr ng s nh nh t, các cá th xu trng s nh
Trang 23ra c a u bài thì l i gi i càng t t.
1.1.6.3 Chọn lọc
di truy n, th h ( ) s P t sinh ra th h sau ( 1) Có nhi P t+ u
l a ch n các cá th t m t qu n th gi i thi u m t s hay áp d ti n mô t l a cht s kí hi u sau:
1.1.6.4 Chọn lọc theo phương pháp đấu loại Tournament
Nguyên t c chung: Ch n ng u nhiên cá th t k qun th u loi.Trong cá th k thích nghi t t nh chi ti t thu t toán
c trình bày
Trang 241.1.6.5 Chọn lọc theo vòng quay Roulette
Ph c v quá trình chn l c có các thông s sau :
Tính t thích nghi c a qu n th : , N là dân s c a qun th
Sinh m t giá tr ngu nhiên n m trong kho ng (0,1] Nr u r q1 thì cá th
v1 c ch c l i thì ch n cá th th i (2 i N ) sao cho q i-1 < r q i
Ta có th c chia làm
N phn, m i ph n hình qu t s ng v i m t cá th l n c a hình qu t
l v thích nghi c a cá th sinh m t v trí ng u nhiên n m
ng tròn V trí này n m trên hình qu t nào thì cá th ng v i hình qu c l a chn
1.1.6.6 Chọn lọc theo cơ chế lấy mẫu toàn phần ngẫu nhiên
Gi s các cá th c s p x p ngn th c chia làm N
phng vi N cá th n c a các ph l ng t l v thích nghi ca các cá th
Ta l i hình dung t vòng tròn bao quanh, trên vòng tròn bao này có N m chia phân b
Trang 25vòng tròn bao này nh m t o ra m t v trí ng u nhiên c a nó bao xung quanh hình
N m chia trên vòng tròn bao s ch vào các ph n hình qu t c a hình tròn bên trong M t cá th s c chn k l n n u ph n hình qu t
ng v i nó có k m chia ch vào
a ch n trên t ra khá hay khi th u kin
c a ch n l c là ng u nhiên và xác su t ch n t l v thích nghi Ngoài ra nó còn có thêm tính ch t là không thiên v (Unbiased), cho phép kh c ph c
Hình 1.2: Chic np l i hoàn toàn
N p l i hoàn toànạ ạ : là chi n nh t M i NST ch t n t i trong m t th h , sang th h p theo s ti c thay my s
xng h p là các NST t t s c gi l c này không ph i là chi c phù h p cho vi c ci thi n l i gi i qua các th h
Trang 261.1.7.2 Nạp lại ngẫu nhiên
T o ra s NST m c qu n th và thay th m t cách ng u nhiên các NST th trc b h ng NST th h sau:
c b ng hai th h
1.1.7.3 Nạp lại theo mô hình cá thể ƣu tú
T o ra s NST m c qu n th và thay th chúng cho các
b m thích nghi th p
Trang 27Hình 1.4 Chic np l i theo mô hình cá th
N p l i theo mô hình cá th ạ ạ ể ƣu túc coi là chi c tNST t t s s ng sót qua nhi u th h Qua m i th h , s có m t s ng nhnh các NST t i b thay th Tuy chi c không ki m tra các NST con cháu n p vào có t m b loc chn
là nhng NST con cháu n p vào n u là t i thì s b lo i trong th h p ti
ki m soát không ph c t p
K t thúc t nhiên: ế ự n m t th h ho các con trong th h t d ng gi i thu t
Trang 28 ki m soát ph c t không bi t chính xác khi nào k t thúc gi i thu t.
u ki n c a bài toán mà ta s ch n m t trong hai u ki n
d ng c a gi i thu t
1.1.9 Ứng d ng c a gi i thu t di truy n ụ ủ ả ậ ề
1.1.9.1 Đặc điểm
Gii thu t di truy m n i b t sau :
(1) Gi i thu t di truy n tìm ki m nhi m tt lúc Các toán t di truy n s i thông tin giy, kh
k t thúc t i m m cc tr gim b t
(2) Gi i thu t di truy n ch làm vi c v i các NST là mã c a các l i gi i
i m t GA có s c n i cách bi u di n NST là có gi i thu t cho m t bài toán m i
(3) Gi i thu t di truy n ch c phc v quá trình tìm ki m ch i các thông tin b khác tr
n trong gi i thu t di truy n d a trên kh
h p tính ng u nhiên trong quá trình x lý
Trang 29th c s d c i ti th c áp d ng trong các
c sau:
Các h phi tuy ng phng - li u
Các bài toán t th nh t b ràng bu c
Quy ho ch chi c
Tìm d ng c a các ph n t Protein
i du l ch và l p th i gian bi u
Thi t k m v ph n ki n trúc l n ph n tr ng s
Thi t l p qu i máy
1.2.1 M ục đích
H u h t các bài toán trong t u có m t vài mc tiêu (th m chí là
t nhau) c n ph i th a mãn Nhi u bài toán trong s c gii quy t b ng t c tiêu b ng cách chuy i t t c các mc tiêu ngo i tr m t m c tiêu thành các ràng bu c Trong khi bài toán t
m t m c tiêu khó
t m t t p các s k t h c bit qu t ng kt qu này là tt qu nào khác trong không gian tìm ki m mà t t c các mn
Trang 301.2.2 V ấn đề ối ƣu hóa đa mục tiêu t
V t c tiêu (Multiobjective Optimization Problem
c g i là v t n (multicrieria optimization), tc thi (multiperformance) ho
1.2.3 Định nghĩa 1: Bài toán tối ƣu đa mục tiêu
M t bài toán t ộ ối ưu đa mụ c tiêu t ng quát bao g m m t t ổ ồ ộ ậ p g m n tham s ồ ố (các bi n quy ế ết đị nh), m t t ộ ập g m k hàm m c tiêu và m t t p g m m ràng bu ồ ụ ộ ậ ồ ộc Các hàm m c tiêu và các ràng bu c là các hàm c ụ ộ ủ a các bi n quy ế ết đị nh M ụ c đích tối ưu hoá là:
Trang 31Trong tc tiêu, t p kh c s p x p hoàn toàn theo hàm
m c tiêu : cho hai k t qu f thì hoc hoc
M tìm ra k t qu (hay các k t qu cho ra giá tr c ) a fi c Tuy nhiên, khi xem x m t vài m c tiêu b bao hàmét , i: M t cách
1.2.5 Định nghĩa 3: Quan hệ ữa hai véc tơ mụ gi c tiêu
Cho b t k ấ ỳ hai véc tơ mụ c tiêu u và v,
n ếu
n ếu
Trang 32Các quan h ệ ≤ và < đượ c đ ịnh nghĩa tương tự
V i nh ngh a n , n u có ày B > C, C > D th qu ì k t là B > D Tuy nhiên, khi so sánh và , cB E ng kh ông th n r ói ng t t h n, khi và M c dù k t qu c k t h p v i ì r E th h n nh ng nó l i cung c p hi u n ng th p h n k t
Các định nghĩa đố ớ i v i bài toán c c ti u hoá ự ể tương tự
1.2.7 Định nghĩa 5: ối ƣu Pareto T
M t v ộ éc tơ quyết định đượ c g i là không th ng tr ọ ố ị hơn đố ớ ập i v i t
N u nó rõ ràng trong ph m vi ng c nh mà t ế ạ ữ ả ập A là có nghĩa, nó rấ ễ ị t d b
b ỏ sót Hơn nữa x đượ c g i là tối ưu Pareto nếu x là không th ng tr ọ ố ị đố ớ i v i X f
Trang 33Hình 1.5 Ví d minh ho v t
Trong hình 1 , c i.5 ác m tr ng th hi n c k ác t qu t i u P eto Ch ar úng
không quan tâm t i nh ng c ái khác i u n rõ ràng t o nên s ày kh biác t ính ch
i v i c b ác ài toán i u n m c êu: không có m t k t t ti qu t i u n m c tiêu n mà m t t p c k t ào ác qu t i c tho m Không có k ãn t qu n àotrong s c k t ác qu ác nh nà c x là t t h n nh ng qu khác kh k t n u ông
có c ông tin u tiên hác th c bao gm í d(v vi c s p x p c m c êu) ác ti
Tính toàn v n c a c k t ác qu t i u Parc g i là t p t i u P eto; ar
c v t m c êu t ng ác éc ti ng t o ành mth t c hay mt t i u P eto ar
1.2.8 Định nghĩa 6: Các t p và các m t không th ng tr ậ ặ ố ị
L ấy Hàm p(A) sinh ra t ập các véc tơ không thố ng tr trong A: ị
p(A) = {a ϵ A | a không th ng tr ố ị đố ớ i v i A} (1.6)
T p p(A) là t p không th ng tr i v i A, t ậ ậ ố ị đố ớ ập các véc tơ mục tiêu tương
ứ ng f(p(A)) là m t không th ng tr i v ặ ố ị đố ới A Hơn nữ a, t p X ậ p = p(X f ) đượ c g i là t p t ọ ậ ối ưu Pareto và tậ p Y p = f(X p ) được coi như là mặ ối ưu t t Pareto
Trang 34Hình 1.6 Minh ho các t p k t qu t p k t qu t
toàn b trong không gian m c tiêu
T p t i u P eto bao g m c k t ar ác qu t i u to b Tuy nhiên, vì v i àn
c b ác ài toán u t i n m c ê SOPs c ti u ng có th u phc t i a ng c ái
mà t o ành m t t p ông th ng tr trong ph m vi vùng lân c n x th kh ác nh i u
n t ng ày ng ác khái ni v i c m v c t p t i u P eto ác ar toàn b và c c b
c gii thi u b i Deb (1998, 1999a):
1.2.9 Định nghĩa : ậ ối ƣu7 T p t Pareto
Xét m t t ộ ập các véc tơ quyết đị nh
1 T ập A đượ c bi u di ể ễn như là mộ ậ ối ưu cụ t t p t c b n u ộ ế
(1.7)
Trong đó là m t khoảng cách metric tương ứng và ộ
2 T ập A đượ c g i là m t t ọ ộ ập ối ưu Pareto toàn bộ ế t n u
Trang 35S khỏc bi t gi a t c b và toàn b c hỡnh dung trong hỡnh 1.6
t t o thành m t m t t ng nột li n
mụ t m t t c bquyc k t h p v i nhau sau cựng là khụng thng tr c c b c cho là khụng ti vỡ k t qu cú liờn quan vm A thng tr b t k k t qu nào trong chỳng Cu i cựng, chỳ ý
r ng t p t khụng nh t thi t ph i ch a t t c cỏc kt qu t Pareto và tp k t qu t p t c b
1.3 Giả i thu t di truy n cho t ậ ề ối ƣu đa mụ c tiờu
1.3.1 Giới thi u ệ
Tính toán tiến hóa đ-ợc áp dụng cho bài toán tối -u đa mục tiêu objective evolutionary algorithms) đã đ-ợc đề cập và thử nghiệm từ năm 1984 bởi David Schaffer và trình bày trong sách của David Goldberg năm 1989 Sau
(multi-đó nhiều nhà nghiên cứu đã phát triển các phiên bản khác nhau sử dụng tính toán tiến hóa giải bài toán tối -u đa mục tiêu Một số cách tiếp cận đáng chú ý gồm: MOGA (Multi-objective Optimization GA) của Fonseca và Fleming sử dụng một thủ tục phân lớp tính trội, xếp hạng các cá thể của quần thể theo tính trội của nó trong quần thể; SPEA (Strength Pareto Approach) của Zitzler và Thiele duy trì một tập các cá thể -u tú trong quần thể sau mỗi lần tạo sinh và NSGA (Non-dominaled Sorting Genetic Algorithm) của Srinivas và Deb dựa trên thủ tục xếp hạng không trội và dùng hàm chia sẻ
Trang 36Hình 1.7 Lch s phát tri n c a gi i thu t di tr uyc tiêu
M p c n bài toán tti c tiêu, các hàm k t h p các m c tiêu sang m t m c tiêu, h c hi
v c t c tiêu mà t p trung vào vi c x p x t gi
Trang 37Nói m t cách g c t o ra các thu t toán tìm ki m ngu nhiên bao g m 3 ph n:
Làm vi c trong không gian nh cha k t qu quan tâm hi n th i
c ch ra a ch n trong hình 1.9
a ch n cá th
n này, c n phân bi t gi a l a ch n giao ph i v i l a ch n
ng (environmental) L a ch n giao ph ng t i m t mong mu n m t
k t qu t i m t vài giá tr ng th c hi n trong d ng ng u nhiên Trái l i, l a ch nh nh ng k t qu và
t o m gi trong b nh trong Module bii th c hi n m t t p k t qu và
si có h thng ho c ng u nhiên các k t qu theo m t th t t o k t qu tim tàng ti, m c l p c a m t t ngu nhiên bao bc liên ti p nhau: l a ch n lai ghép, bi i và l a ch ng; Vòng l p này
có th l p cho t i m t mi n giá tr k t qu y
Trang 38b n c a t c tiêu và gi i thu t ti c gi i thi u, và m t vài khái
nim v các thu chi thích nghi, gi i thi u ng
và vgi l i các cá th t t trong quá trình tính toán
M t gi i thu t di truy n c tiêu c t ch c thành ba c:
Trang 39th, m vt quynh, tuy nhiên, m t cá th không ph i là m v t quyt
a nó d a trên bi u di n x p x
Quá trình ch n cá th ng bao g m 2 chi c: tính thích nghi và t p trung gian lai ghép Trong chi u tiên, các cá th trong qu n th hi n t ng, nh m t giá tr phân b thích nghi, ph n ánh ch ng c, t p trung gian các cá th c t o ng u nhiên t qun th theo giá tr c a hàm thích nghi Tng s d ng m u ch n t qun th và m t v i giá tr thích nghi t t nh c sao ch ép qun th trung gian Th t c này lp ln khi qu n th ung gian tr y
R bic áp d ng vào qun th trung gian Vi các thu t toán ti ng s d ng hai thao t : lai gh và t ác ép bi nToán t lai gh ép thc hin m t s thao t ê các cha và t o ra m t s ác tr n ng cá th con n c b ng cách k t h p các thành ph n c b c theo
tin hóa t nhiên, án to t lai gh ép c thc hi n theo xác xu t lai ghép n ào Toán t t bi i cá th v i m i nh t l t bi n Chú ý r ng
i táng ng u nhiên, mt vài cá th trong qu thn trung gian có th không b ng bch là sao ch m t cép ách n gi n k t qu c
Cui cùng, l a ch nh nh ng các th c a qu n th và
i trong qu n th hình thành qu n th m i y là m t cách khách quan k t h p c hai t nh vi c ch n cá th t t nh t s ng sót
D các khái ni m trên, ti n hóa t c mô ph ng b i quá trình lp nh ch ra trong hình 1.10 y:
Trang 40Lai ghép
0011 1011
chung cho ti n hóa
u tiên, kh i t o qu n th c t o ng u nhiên, theo th t ho
m xu t phát c a quá trình ti n hóa Sau l p l i m t lo thích nghi, l a ch n, lai gh / ho ép và t bi n
c th c hi n m t s l n nh nh Qu trá ình l p t o ra th h m i s d ng
l i sau m t s c x nác hoc c khi th h sau không c i n so v i ti th
h c Theo , cá th t t nh t trong qu n th cui gi i thu t di truy n
1.3.3 Các thành ph n chính trong gi i thu t ầ ả ậ
1.3.3.1 Tính độ thích nghi và chọn lọc
Hai m c n c b trong thi t k ng d n vi ng t i quá trình tìm ki m t p Pareto và gi m t t ng ca các k t qu không th ng tr
Mu tiên là có quan h chính v i l a ch n lai gh , nói m t cách ép
c th là v c a phân b giá tr thích nghi trong t c Mc
hai t p trung vi c l a ch n cách t o qu n th tránh vi c qun th ch