Tải bản đầy đủ (.pdf) (107 trang)

Giải thuật di truyền đa mục tiêu giải bài toán khung nhỏ nhất với đường kính bị chặn

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.61 MB, 107 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
--------------------------------------

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
ĐƯỜNG KÍNH BỊ CHẶN

NGÀNH: TỐN TIN ỨNG DỤNG

PHẠM THẢO

Người hướng dẫn khoa học
PGS.TS. NGUYỄN THANH THUỶ

HÀ NỘI - 2009


Giải thuật di truyền đa mục tiêu

MỤC LỤC
LỜI CẢM ƠN ........................................................................................................ 5
DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT .................................................. 6
DANH MỤC CÁC BẢNG..................................................................................... 7
DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ ................................................................ 8
DANH MỤC CÁC THUẬT NGỮ TIẾNG ANH................................................ 10
PHẦN MỞ ĐẦU .................................................................................................. 11
CHƢƠNG I. GIẢI THUẬT DI TRUYỀN ĐA MỤC TIÊU ............................... 14
1.1



Giải thuật di truyền. ................................................................................. 14

1.1.1

Giới thiệu 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 niệm cơ bản. ...................................................................... 15

1.1.4

Sơ đồ giải thuật di truyền – Mô tả hoạt động ................................... 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ể ban đầu và chọn lọc cá thể .................................. 21

1.1.7

Chiến lƣợc nạp lại quần thể .............................................................. 24


1.1.8

Điề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ấn đề tối ƣu hóa đa mục tiêu. ................................................................ 28

1.2.1

Mục đích ........................................................................................... 28

1.2.2

Vấn đề tối ƣu hóa đa mục tiêu. ......................................................... 29

1.2.3

Định nghĩa 1: Bài toán tối ƣu đa mục tiêu........................................ 29

1.2.4

Định nghĩa 2: Tập khả thi. ................................................................ 30

1.2.5


Định nghĩa 3: Quan hệ giữa hai véc tơ mục tiêu .............................. 30

1.2.6

Định nghĩa 4: Thống trị Pareto ......................................................... 31

1.2.7

Định nghĩa 5: Tối ƣu Pareto ............................................................. 31

1.2.8

Định nghĩa 6: Các tập và các mặt không thống trị ........................... 32

1.2.9

Định nghĩa 7: Tập tối ƣu Pareto ....................................................... 33

Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 1


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn

1.3

Giải thuật di truyền cho tối ƣu đa mục tiêu. ............................................ 34


1.3.1

Giới thiệu .......................................................................................... 34

1.3.2

Sơ đồ chung cho giải thuật di truyền đa mục tiêu ............................ 37

1.3.3

Các thành phần chính trong giải thuật .............................................. 39

CHƢƠNG II. BÀI TỐN CÂY KHUNG NHỎ NHẤT VỚI ĐƢỜNG KÍNH BỊ
CHẶN................................................................................................................... 44
2.1

Các khái niệm cơ sở................................................................................. 44

2.1.1

Đồ thị ................................................................................................ 44

2.1.2

Đƣờng đi và chu trình ....................................................................... 44

2.1.3

Cây .................................................................................................... 45


2.2

Bài toán Cây khung của đồ thị................................................................. 46

2.3

Bài tốn Cây khung nhỏ nhất với đƣờng kính bị chặn ............................ 47

2.4

Ứng dụng của bài toán cây khung nhỏ nhất với đƣờng kính bị chặn ...... 48

2.4.1

Bài tốn xây dựng hệ thống đƣờng 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ệ phục hồi thông tin ........................................... 50

CHƢƠNG III. XÂY DỰNG 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 ĐƢỜNG KÍNH BỊ CHẶN ........ 52

3.1 Giải thuật di truyền đơn mục tiêu RGH cho bài tốn cây khung nhỏ nhất
với đƣờng kính bị chặn. .................................................................................... 52
3.1.1

Giới thiệu .......................................................................................... 52

3.1.2

Sơ đồ thuật toán ................................................................................ 53

3.1.3

Khởi tạo quần thể.............................................................................. 55

3.1.4

Lựa chọn 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

Phạm Thảo – Đảm bảo toán học cho máy tính và hệ thống tính tốn

Page 2


Giải thuật di truyền đa mục tiêu

3.1.9

Đột biến tối ƣu hóa cây con .............................................................. 63

3.2 Giải thuật di truyền đa mục tiêu SPEA1 cho bài toán cây khung nhỏ nhất
với đƣờng kính bị chặn ..................................................................................... 64
3.2.1

Giới thiệu .......................................................................................... 64

3.2.2

Sơ đồ thuật toán SPEA 1 .................................................................. 66

3.2.3

Sơ đồ tạo thế hệ tiếp theo từ thế hệ hiện thời ................................... 67

3.2.4


Tính độ thích nghi............................................................................. 68

3.2.5

Lƣợc bớt phần tử tập Pareto bằng phƣơng pháp ghép cụm.............. 71

3.2.6

Đánh giá thuật toán SPEA 1 ............................................................. 74

3.3 Giải thuật di truyền đa mục tiêu SPEA 2 cải tiến giải thuật SPEA cho bài
toán cây khung nhỏ nhất với đƣờng kính bị chặn ............................................. 75
3.3.1

Một số cải tiến trong SPEA 2 ........................................................... 75

3.3.2

Sơ đồ thuật toán SPEA 2 .................................................................. 76

3.3.3

SPEA 2 tính độ thích nghi ................................................................ 79

3.3.4

SPEA 2 Lựa chọn môi trƣờng .......................................................... 82

CHƢƠNG IV. CÀI ĐẶT VÀ KẾT QUẢ THỬ NGHIỆM ................................. 85

4.1

Kết quả cài đặt và thử nghiệm thuật toán RGH ....................................... 85

4.1.1

Cài đặt RGH ..................................................................................... 85

4.1.2

Một số cải tiến trong cài đặt thuật toán ............................................ 87

4.2

Kết quả cài đặt và thử nghiệm SPEA 1 ................................................... 89

4.2.1

Cài đặt SPEA 1 ................................................................................. 89

4.2.2

Sơ đồ lớp cài đặt ............................................................................... 91

4.3

Kết quả cài đặt và thử nghiệm SPEA 2 ................................................... 94

4.3.1


Cài đặt SPEA 2 ................................................................................. 94

4.3.2

Sơ đồ lớp cài đặt ............................................................................... 94

4.3.3

Môt tả một số hàm so sánh với SPEAI............................................. 95

4.4

Các bƣớc hoạt động của chƣơng trình ..................................................... 97

4.4.1

Chọn bộ dữ liệu cần kiểm thử .......................................................... 97

4.4.2

Chọn tham số đầu vào ...................................................................... 97

Phạm Thảo – Đảm bảo toán học cho máy tính và hệ thống tính tốn

Page 3


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn

4.4.3


Biểu diễn dữ liệu đầu vào ................................................................. 98

4.4.4

Khởi tạo quần thể.............................................................................. 98

4.4.5

Lặp tạo thế hệ mới thông qua lai ghép và đột biến. ......................... 99

4.4.6

Kết quả với bộ dữ liệu ...................................................................... 99

4.4.7

Kết quả với dữ liệu thử nghiệm 500 điểm bộ 1 với D = 6 ............. 100

4.4.8

Kết quả với dữ liệu thử nghiệm 500 điểm bộ 1 với D = 5 ............. 100

4.4.9

Kết quả thu đƣợc ............................................................................ 101

KẾT LUẬN ........................................................................................................ 102
KIẾN 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
quần thể. .......................................................................................................... 105

Phạm Thảo – Đảm bảo toán học cho máy tính và hệ thống tính tốn

Page 4


Giải thuật di truyền đa mục tiêu

LỜI CẢM ƠN

Tôi xin chân thành cảm ơn PGS.TS. NGUYỄN THANH THUỶ đã tận
tình hƣớng dẫn và giúp đỡ để tơi hồn thành luận văn.
Tôi xin cảm ơn Thầy giáo, cô giáo đã giảng dạy giúp đỡ tơi trong suốt q
trình học tập nâng cao trình độ kiến thức tại trƣờng ĐHBK Hà Nội.
Tơi xin cảm ơn ThS Huỳnh Thị Thanh Bình đã giúp đỡ tơi tiếp cận bài
tốn cây khung nhỏ nhất với đƣờng kính bị chặn.
Tơi xin chân thành cảm ơn gia đình, bạn bè và đồng nghiệp đã giúp đỡ và
tạo điều kiện tốt nhất cho tơi trong suốt q trình học tập và nghiên cứu để hồn
thành luận văn.
Tơi xin chân thành cảm ơn.
Hà Nội, ngày 20 tháng 04 năm 2009
Học viên

Phạm Thảo

Phạm Thảo – Đảm bảo toán học cho máy tính và hệ thống tính tốn


Page 5


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn

DANH 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

Giải thuật di truyền

EC

Evolutionary Computing

Tính tốn tiến hóa

MOP

SOP

BDMST


Multiobjective Optimization
Problem
Single object Optimization
Problem

Vấn đề tối ƣu hóa đa mục tiêu
Vấn đề tối ƣu hoá đơn mục tiêu

Bounded Diameter Minimum

Cây khung nhỏ nhất với đƣờng

Spanning Tree

kính bị chặn
Tên một thuật toán xây dựng

OTTC

One Time Tree Construction

cây đƣợc đƣa ra bởi Deo, and
Gupta

RGH
SPEA 1

SPEA 2

MP


Random Greedy Heuristics

Tìm kiếm tham lam ngẫu nhiên

The Strength Pareto

Giải thuật tiến hóa Strength

Evolutionary Algorithm

Pareto

Improving the Strength Pareto
Evolutionary Algorithm
Mating Pool

Phiên bản cải tiến của SPEA 1
Tập trung gian chứa các cá thể
chuẩn bị lai ghép, đột biến.

Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 6


Giải thuật di truyền đa mục tiêu

DANH MỤC CÁC BẢNG
STT


Mã bảng

Tên bảng

1

Bảng 3.1

Bảng mô tả sơ đồ tổng thể thuật tốn RGH

2

Bảng 3.2

Bảng mơ tả từng bƣớc khởi tạo quần thể

3

Bảng 3.3

Bảng mơ tả các bƣớc thuật tốn kết hợp giữa các cá thể.

4

Bảng 3.4

Bảng mô tả sơ đồ tổng thể thuật tốn SPEA 1

5


Bảng 3.5

Bảng mơ tả tạo thế hệ tiếp theo của SPEA 1

6

Bảng 3.6

Bảng mô tả thuật tốn tính độ thích nghi của cá thể

7

Bảng 3.7

8

Bảng 3.8

Bảng mơ tả thuật tốn cho việc lƣợc bớt phần tử từ tập
Pareto
Bảng mơ tả các bƣớc thuật tốn SPEA 2

Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 7


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn


DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ
STT Mã hình

Tên hình

1.

Hình 1.1

Sơ đồ chung của giải thuật di truyền

2.

Hình 1.2

Chiến lƣợc nạp lại hồn tồn

3.

Hình 1.3

Chiến lƣợc nạp lại ngẫu nhiên

4.

Hình 1.4

Chiến lƣợc nạp lại theo mơ hình cá thể ƣu tú.

5


Hình 1.5

Ví dụ minh hoạ về tối ƣu Pareto

6

Hình 1.6

7

Hình 1.7

Lịch sử phát triển của giải thuật di truyền đa mục tiêu

8

Hình 1.8

Tập và mặt Pareto

9

Hình 1.9

Phƣơng pháp đánh giá lựa chọn cá thể

10

Hình 1.10


Sơ đồ chung cho tiến hóa

11

Hình 1.11

Các phƣơng pháp tính độ thích nghi

12

Hình 1.12

Phƣơng pháp duy trì sự đa dạng.

13

Hình 1.13

Phƣơng pháp duy trì các cá thể tốt

14

Hình 2.1

Đồ thị vơ hƣớng liên thơng có trọng số G

15

Hình 2.2


Cây với tâm và đƣờng kính với cùng bộ số liệu 20 đỉnh

16

Hình 2.3

Cây khung T của đồ thị với trọng số

17

Hình 3.1

Sơ đồ tổng thể thuật tốn RGH

18

Hình 3.2

Sơ đồ thuật tốn khởi tạo quần thể

Hình 3.3

Sơ đồ thuật toán lựa chọn cá thể theo phƣơng pháp đấu loại

Hình 3.4

Sơ đồ thuật tốn lai ghép giữa các cá thể

Hình 3.5


Sơ đồ mơ tả thuật tốn SPEA1

Hình 3.6

Sơ đồ tạo thế hệ tiếp theo của SPEA 1

Hình 3.7

Sơ đồ mô tả loại bớt phần tử theo phân cụm

Hình 3.8

Điểm yếu của SPEA 1

19

20

Minh hoạ các tập kết quả tối ƣu địa phƣơng và các tập kết quả
tối ƣu tồn bộ trong khơng gian mục tiêu

Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 8


Giải thuật di truyền đa mục tiêu

21


Hình 3.8
Hình 3.11.

Hình 3.12

Hình 4.1

Sơ đồ thuật tốn SPEA 2

So sánh lƣợc đồ tính độ thích nghi trong SPEA và SPEA 2
cho bài tốn cực đại hóa với hai mục tiêu

.

Biểu diễn phƣơng pháp loại bỏ các phần tử không bị thống trị
trong trƣờng hợp số lƣợng phần tử vƣợt quá cỡ của tập

Sơ đồ lớp cho quản lý dữ liệu danh sách đỉnh, danh sách
cạnh

Hình 4.2

Sơ đồ lớp cho quản lý dữ liệu Nhiễm sắc thể và quần thể

Hình 4.3

Sơ đồ lớp cho quản lý dữ liệu và xử lý qua các thế hệ

Hình 4.4


Sơ đồ lớp cho quản lý dữ liệu đầu vào

Hình 4.5

Sơ đồ lớp mơ tả dữ liệu thành viên sử dụng trong SPEA 1

26

Hình 4.6

Sơ đồ lớp mơ tả phƣơng thức sử dụng trong SPEA 1

27

Hình 4.7

Sơ đồ lớp mô tả dữ liệu thành viên sử dụng trong SPEA 2

Hình 4.8

Giao diện đầu vào dữ liệu kiểm thử

Hình 4.9

Giao diện chọn tham số kiểm thử

Hình 4.10

Giao diện biểu diễn điểm dữ liệu đầu vào


Hình 4.11

Giao diện biểu diễn cá thể khởi tạo quần thể

Hình 4.12

Giao diện biểu diễn quá trình lai ghép

Hình 4.13

Giao diện biểu diễn kết quả tốt nhất hiện tại

Hình 4.14

Giao diện kết quả tốt nhất với bộ dữ liệu 500 điểm với D=6

Hình 4.15

Giao diện kết quả tốt nhất với bộ dữ liệu 500 điểm với D=5

Hình 4.16

Giao diện lai ghép với bộ dữ liệu 500 điểm với D=5

24

Phạm Thảo – Đảm bảo toán học cho máy tính và hệ thống tính tốn

Page 9



Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn

DANH MỤC CÁC THUẬT NGỮ TIẾNG ANH
STT Thuật ngữ

Nghĩa tiếng việt

1

Dominate

Thống trị

2

NonDominate

Không thống trị

3

Chromosome

Nhiễm sắc thể

4

Selection


Chọn lọc

5

CrossOver

Lai ghép

6

Mutation

Đột biến

7

Fitness

Độ thích nghi

8

Recombination

Lai ghép

9

Clustering


Phân cụm

10

Fitness Assignment

Tính độ thích nghi

11

Environmental Selection

Lựa chọn mơi trƣờng

Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 10


Giải thuật di truyền đa mục tiêu

PHẦN MỞ ĐẦU
Lời nói đầu
Giải thuật di truyền (Genentic Algorithm - GA) là một phần của tính tốn
tiến hóa (Evolutionary Computing), một lĩnh vực đang phát triển rất nhanh của
Trí tuệ nhân tạo.
Bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn là một bài tốn NP
khó và là bài tốn tối ƣu có nhiều ứng dụng thực tế, đã có nhiều cơng trình
nghiên cứu để giải bài tốn này.

Tuy nhiên, hiện nay số lƣợng cơng trình áp dụng giải thuật di truyền đa
mục tiêu để giải bài tốn này cịn hạn chế.
Mục đích, đối tƣợng và nội dung luận văn
Tê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ất với đường kính bị chặn.
Các nội dung luận văn đã thực hiện đƣợc bao gồm:
 Nghiên cứu giải thuật di truyền, bài toán đa mục tiêu, giải thuật di truyền
đa mục tiêu.
 Nghiên cứu bài toán cây khung nhỏ nhất với đƣờng kính bị chặn.
 Xây dựng giải pháp sử dụng giải thuật di truyền tiến hoá tìm kiếm tham
lam ngẫu nhiên (Random Greedy Heuristics Evolutionary Algorithm RGH) áp dụng giải bài toán đặt ra và đã đề xuất một số cải tiến khi cài đặt
RGH để cải thiện tốc độ tính tốn.
 Nghiên cứu bài tốn đa mục tiêu và giải thuật di truyền để giải bài tốn
này thuộc lớp này. Tìm hiểu chi tiết các bƣớc giải thuật di truyền đa mục
Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính toán

Page 11


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn

tiêu (SPEA1 và SPEA 2) giải bài toán cây khung nhỏ nhất với đƣờng kính
bị chặn.
 Kết quả các thử nghiệm trên dạng đồ thị Euclid và non-Euclid với các
tham số chuẩn đã có.
 Đánh giá các kết quả thu đƣợc và định hƣớng nghiên cứu tiếp theo.
Với nội dung và mục đích nhƣ trên, luận văn gồm 4 chƣơng với nội dung
nhƣ sau:
Chương 1: Giải thuật di truyền đa mục tiêu. Chương này tập trung giới
thiệu các vấn đề sau: Giới thiệu giải thuật di truyền, lịch sử phát triển, các khái

niệm cơ bản, sơ đồ thuật toán chung và các thành, các ứng dụng của giải thuật
di truyền. Chương này cũng giới thiệu vấn đề tối ưu đa mụ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 được giới thiệu.
Chương 2: Bài toán cây khung nhỏ nhất với đường kính bị chặn.
Chương này giớ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…, phát biểu bài tốn cây khung nhỏ nhất, cây khung nhỏ nhất với
đườ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ất với đường kính bị chặn. Chương này tập
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
Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 12


Giải thuật di truyền đa mục tiêu

gồ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 tiến đã thực hiệ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ền đƣợc áp
dụng để giải các bài tốn khó (ví dụ các bài tốn thuộc lớp các bài tốn NP khó),
máy học và có thể đƣợc sử dụng nhƣ là một công cụ để cải tiến chƣơng trình qua

các bƣớc thực hiện. Bài tốn cây khung là bài tốn có ý nghĩa thực tế rất lớn
trong lĩnh vực thiết kế mạng truyền thông, thiết kế mạng phân tán.

Phạm Thảo – Đảm bảo toán học cho máy tính và hệ thống tính tốn

Page 13


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn

CHƢƠ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
Giải thuật di truyền (Genentic Algorithm_GA) là một phần của tính tốn
tiến hóa (Evolutionary Computing), một lĩnh vực đang phát triển rất nhanh của
Trí tuệ nhân tạo.
GA dựa trên những ý tƣởng cơ bản trong học thuyết của Darwin về sự tiến
hóa. Nói một cách đơn giản, bài tốn đƣợc giải quyết bằng q trình tiến hóa,
đƣa ra kết quả tốt nhất hay cá thể khỏe nhất, chúng là các lời giải đƣợc tiến hóa.
GA mơ phỏng q 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 thƣờng đƣợc dùng trong các
bài toán tối ƣu, lớp các bài tốn NP khó. Đó là lớp bài tốn rất hay, nhƣng
thƣờng rất khó tìm ra lời giải tối ƣu với các giải thuật cổ điển vét cạn trong
không gian tìm kiếm.
Giải thuật di truyền là một phƣơng pháp giải tối ƣu dựa trên chọn 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 của bài tốn.
Mỗi nhiễm sắc thể (NST) có nhiều gen, mỗi gen quy định một trạng thái
của nhiễm sắc thể.
Quần thể là một tập hợp các cá thể cạnh tranh với nhau.

Thế hệ là các cá thể trong quần thể ở trong cùng một giai đoạn.
Hàm thích nghi là một hàm thực dƣơng, xác định độ thích nghi (độ phù
hợp) của cá thể trong môi trƣờng.

Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 14


Giải thuật di truyền đa mục tiêu

1.1.2 Lịch sử phát triển giải thuật di truyền.
Tính tốn tiến hóa đƣợc I.Rechenberg giới thiệu vào những năm 1960
trong cơng trình “Evolution Stragies” (Những chiến lƣợc tiến hóa). Ý tƣởng của
ơng đã đƣợc các nhà khoa học nghiên cứu phát triến tiếp.
Giải thuật di truyền do John Holland phát minh và đƣợc ông phát triển
cùng với các đồ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ản năm 1975 đã
tổng hợp các kết quả của quá trình nghiên cứu và phát triển đó.
Năm 1992, John Koza đã dùng GA để xây dựng các chƣơng trình giải
quyết một số bài tốn và gọi phƣơng pháp này là "Genetic Programming" (GP).
Năm 1996, thƣ viện các hàm C++ cho GA (GALib) đã đƣợc Mathew Wall,
Viện khoa học Massachussets (Massachusetts Institute of Technology) đƣa ra.
Đây là các công cụ sử dụng giải thuật di truyền cho tối ƣu hố các chƣơng trình
có sử dụng sự biểu 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ọng, đặc biệt là trong
lĩnh vực tối ƣu hố, một lĩnh vực có nhiều bài toán thú vị, đƣợc ứng dụng nhiều
trong thực tiễn nhƣng thƣờng khó và chƣa có giải thuật hiệu quả để giải.

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ể (Chromosome) hay còn gọi là cá thể. Các sinh vật sống đều
cấu tạo từ các tế bào và tất cả các tế bào này đều bao gồm một tập hợp các nhiếm
sắc thể giống nhau. Các NST này là một chuỗi các ADN, quy định đặc tính của
cả cá thể. Mỗi NST bao gồm rất nhiều GEN, mỗi gen quy định một trạng thái
nào đó. Trong bài toán tối ƣu, cá thể tƣơng ứng với một lời giải tiềm tàng.

Phạm Thảo – Đảm bảo toán học cho máy tính và hệ thống tính tốn

Page 15


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn

1.1.3.2 Quần thể
Quần thể (Population) trong tự nhiên là một tập hợp các cá thể có cùng
một số đặc điểm nào đấy. Trong giải thuật di truyền ta quan niệm quần thể là
một tập các lời giải tiềm tàng của một bài tốn.
1.1.3.3 Chọn lọc
Trong tự nhiên, q trình chọn lọc (Selection) và đấu tranh sinh tồn đã
làm thay đổi các cá thể trong quần thể. Những cá thể tốt, thích nghi đƣợc với
điều kiện sống thì có khả năng đấu tranh lớn hơn, do đó có thể tồn tại và sinh
sản. Các cá thể khơng thích nghi đƣợc với điều kiện sống thì dần mất đi. Dựa
vào nguyên lý của quá trình chọn lọc và đấu tranh sinh tồn trong tự nhiên, chọn
lựa các cá thể trong GA chính là cách chọn các cá thể có độ thích nghi tốt để đƣa
vào thế hệ tiếp theo hoặc để cho lai ghép, với mục đích là sinh ra các cá thể mới
tốt hơn. Tuy nhiên, quá trình chọn lọc mang rất nhiều yếu tố ngẫu nhiên. Có
nhiều cách để lựa chọn nhƣng cuối cùng đều nhằm đáp ứng mục tiêu là các cá
thể tốt sẽ có khả năng đƣợc chọn cao hơn.
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ền, lai ghép đƣợ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ẹ nào đó để sinh ra
một lời giải mới mà có đặc tính mong muốn là tốt hơn thế hệ cha mẹ. Đây là một
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ến đổi tại một (hay một số) gen của NST
ban đầu để tạo ra một NST mới. Đột biến có thể tạo ra một cá thể mới tốt hơn
hoặc xấu hơn cá thể ban đầu. Tuy nhiên, trong giải thuật di truyền thì ta ln
muốn tạo ra những phép đột biến cho phép cải thiện lời giải qua từng thế hệ. Đột
biến cũng mang tính chất ngẫu nhiên.
Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 16


Giải thuật di truyền đa mục tiêu

1.1.3.6 Hàm thích nghi
Trong tự nhiên, chỉ có những cá thể nào thích nghi đƣợc với mơi trƣờng
thì mới tồn tại, khơng nó sẽ bị diệt vong. GA đƣa ra khái niệm hàm thích nghi
(Fitness Function) hay hàm sức khỏe để đánh giá một cá thể hay một lời giải, so
với các cá thể khác. Từ đó mới có thể chọn lựa đƣợc các lời giải tốt cho các thế
hệ sau. Hàm thích nghi cũng là một tiêu chí đánh giá mức độ tiến hóa của quần
thể.
1.1.3.7 Khơng gian tìm kiếm
Khi muốn giải quyết một vấn đề nào đó bằng tìm kiếm, đầu tiên ta phải
xác định khơng gian tìm kiếm. Khơng gian tìm kiếm bao gồm tất cả các đối
tƣợng mà ta cần quan tâm tìm kiếm.
Khi giải một bài tốn, chúng ta thƣờng tìm một số lời giải đƣợc xem là tốt

nhất. Không gian của tất cả các lời giải khả thi đƣợc gọi là khơng gian tìm kiếm
(hay khơng gian trạng thái). Mỗi một điể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ềm tàng đƣợc đánh dấu bằng giá trị hay
sức khỏe của nó trong bài tốn. Với GA, ta tìm kiếm lời giải tốt nhất trong số rất
nhiều các lời giải tiềm tàng.
Tìm kiếm một lời giải tƣơng ứng với việc tìm một giá trị cực nào đó (lớn
nhất hoặc nhỏ nhất) trong khơng gian tìm kiếm. Đơi khi khơng gian tìm kiếm là
rất tốt, nhƣng chỉ 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 những điểm khác trong q trình tiến hóa.
Vấn đề là việc tìm kiếm rất phức tạp. Ta sẽ tìm lời giải ở đâu và bắt đầu từ
đâu. Có rất nhiều cách để tìm lời giải thích hợp, nhƣng những phƣơng pháp này
có thể khơng cần phải đƣa ra lời giải tốt nhất nhƣ các giải thuật leo đồ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)

Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 17


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn

1.1.4 Sơ đồ giải thuật di truyền – Mô tả hoạt động
GA dựa trên cơ sở các ý tƣởng Thuyết tiến hóa của Darwin. Lời giải của
một bài tốn đƣợc giải bằng GA sử dụng q trình tiến hóa.
Giải thuật bắt đầu bằng một tập các lời giải, đƣợc biểu diễn bằng các NST,
gọi là Quần Thể. Các lời giải này đƣợc lấy ra và sử dụng để tạo nên quần thể
mới, với một mong muốn quần thể mới sẽ tốt hơn quần thể cũ. Những lời giải
đƣợc chọn từ quần thể mới hay thế hệ con cháu theo độ thích nghi. Chúng càng
thích nghi cao, chúng càng có nhiều cơ hội để tái sinh sản.

Số lượng cá thể: Population Size.
Với mỗi một cá thể:
Số lượng gen: Genome size
Khởi tạo ngẫu nhiên

Giải thuật di truyền

Thuật toán quay bánh xe để lựa chọn phần tử
đem đi lai ghép

Sinh số ngẫu nhiên
nằm trong khoảng 0- TotalFitness

1. Với mỗi Cá thể, tính độ thích nghi; Tính tổng độ
thích nghi của cả quần thể
2. Sắp xếp các cá thể giảm dần theo độ thích nghi.
3. Lập bảng tính dồn độ thích nghi của các cá thể
trong quần thể.

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

Sử dụng thuật tố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


TẠO THẾ HỆ MỚI

Lựa chọn hàm thích nghi

Tạo các cá thể và thêm vào danh sách quần thể

Đầ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ả

Đánh giá quần thể hiện thời;

Nếu giữ lại cá
thể tốt nhất

Trả ra vị trí phần
tử được lựa chọn

Y Lấy ra cá thể tốt nhất ở thế hệ trước
đang ở cuối danh sách

Y

Thuật toán lai ghép 2 cá thể tạo cá thể
mới

Tạo thế hệ mới

Lấy 2 con trong quần thể (Sử dụng thuật toán quay
bánh xe để lấy ra 2 vị trí của 2 cá thể trong quần thể)


Đánh giá quần thể hiện thời;

Sinh xác suất lai ghép (Sinh ngẫu nhiên)

Nếu ghi ra file

Y

Ghi ra file

Nếu nhỏ hơn xác
suất lai ghép

Y

Tìm vị trí lai ghép

Giũ ngun phần đầu, ghép phần đi

Đem lai ghép tạo
ra 2 cá thể mới

Thuật toán đột biến 1 cá thể
Đột biến cá thể 1
Đột biến cá thể 2

I = i+2

iThêm cá thể 1 vào danh sách

Thêm cá thể 2 vào danh sách

i> Số lần tạo
quần thể
Đưa ra kết quả tốt
nhất

Với mỗi Gen trong NST

ii> Cỡ quần thể
Thiết lập biến lưu quần thể mới

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)

Hình 1.1. Sơ đồ chung của giải thuật di truyền
Với các khái niệm đƣợc giới thiệu ở trên, giải thuật di truyền đƣợc mô tả nhƣ
sau:

Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 18


Giải thuật di truyền đa mục tiêu

1. [Begin] Sinh ngẫu nhiên một quần thể gồm n cá thể (là n lời giải cho bài

tốn).
2. [Thích nghi] Ƣớc lƣợng độ thích nghi eval(x) của mỗi cá thể x trong quần
thể.
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:
a. [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).
b. [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.
c. [Đột biến] Với một xác suất đột biến đƣợc chọn, biến đổ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] Nếu điều kiện dừng đƣợc thỗ mãn thì thuật tố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 lại bƣớc 2.
Ta thấy rằng, cứ sau một bƣớc lặp t, ta lại tạo đƣợc một quần thể mới P(t)
từ P(t-1), hay một tập các lời giải tiềm tàng cho bài toán. Sau mỗi bƣớc lặp, các
cá thể mới đƣợc sinh ra ta không thể biết trƣớc đƣợc, nó sinh ra hồn tồn ngẫu
nhiên, ngẫu nhiên từ khi tạo quần thể ban đầu, cho đến ngẫu nhiên chọn lọc các
cá thể bố mẹ mang đi lai ghép, ngẫu nhiên cả trong quá trình lai ghép gen, cho
đến đột biến gen. Nó hồn tồn giống nhƣ một q trình tiến hóa trong tự nhiên.

Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 19


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn


Với nguyên tắc chung của GA rất khái quát nhƣ vậy, cần quan tâm đến
các tham số và sự sắp đặt mà từ đó ta có thể áp dụng để giải nhiều các bài toán
khác nhau.
NST đƣợc tạo ra nhƣ thế nào và mã hóa chúng nhƣ thế nào?
Lựa chọn cha mẹ để lai ghép nhƣ thế nào? Có nhiều cách khác nhau để
lựa chọn, nhƣng ý tƣởng chủ đạo luôn là chọn những bố mẹ tốt hơn
với hi vọng sinh ra con cái cũng sẽ tốt hơn.
Sự chọn lựa các gen để đột biến cũng là một vấn đề phải quan tâm. Đột
biến không phải lúc nào cũng mang lại kết quả tốt, thậm chí cịn mang lại kết quả
ngƣợc lại.

1.1.5 Các tham số của giải thuật di truyền.
1.1.5.1 Kích thƣớc quần thể
Kích thƣớc quần thể cho biết có bao nhiêu cá thể trong một quần thể
(trong một thế hệ). Nhiều khi kích thƣớc q lớn cũng khơng thể cải thiện đƣợc
hiệu suất tìm ra nghiệm. Qua các nghiên cứu cũng nhƣ các thử nghiệm đã cho
thấy kích thƣớc quần thể không nên quá bé cũng không nên q lớn. Nếu có q
ít cá thể, ít có khả năng thực hiện lai giống và chỉ một phần nhỏ khơng gian tìm
kiếm đƣợc dùng. Làm nhƣ vậy sẽ dễ xảy ra trƣờng hợp bỏ qua các lời giải tốt,
các thế hệ sẽ thối hóa dần theo q trình. Nhƣng q nhiều cá thể cũng khơng
tốt vì GA sẽ chạy chậm đi, ảnh hƣởng đến hiệu quả của giải thuật. Các nghiên
cứu cũng đã chỉ ra khơng có lợi khi tăng kích thƣớc quần thể lên quá một giới
hạn cho phép. Ngồi ra, chất lƣợng lời giải cịn phụ thuộc vào phƣơng pháp mã
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
chậm.

Phạm Thảo – Đảm bảo toán học cho máy tính và hệ thống tính tốn

Page 20



Giải thuật di truyền đa mục tiêu

1.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ới đƣợc thực hiện
thƣờng xuyên nhƣ thế nào. Xác suất lai ghép là pc , khi đó khả năng để một cá
thể đƣợc lai ghép là pc. Nếu không thực hiện lai ghép, con sinh ra sẽ giống hoàn
toàn bố mẹ. Nếu đƣợc lai ghép, con sinh ra sẽ có một phần giống bố và một phần
giống mẹ. Nếu xác xuất lai ghép pc = 100% thì tất cả con sinh ra là do lai ghép,
còn nếu pc = 0%, toàn bộ thế hệ mới là sự sao chép chính xác thế hệ cũ.
1.1.5.3 Xác suất đột biến
Xác suất đột biến cho biết các gen của nhiễm sắc thể thay đổi thƣờng
xuyên nhƣ thế nào. Xác suất đột biến là pm, khả năng để mỗi gen của một NST
bất kỳ bị đột biến là pm. Nếu pm = 100%, toàn bộ NST đều bị đột biến, nếu pm =
0%, khơng gen nào thay đổi. Tốn tử đột biến có tác dụng ngăn ngừa giải thuật
di truyền rơi vào tình trạng cực trị địa phƣơng. Tuy nhiên nếu thực hiện đột biến
với xác suất quá cao sẽ biến 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ể là bƣớc đầu tiên của bài toán theo GA. Quần thể ban
đầu thƣờng đƣợc sinh ra một cách ngẫu nhiên, bao gồm các lời giải ngẫu nhiên
thỏa mãn các điều kiện của bài tốn nhƣng ta chƣa biết chắc đƣợc liệu nó có phải
là lời giải tối ƣu hay khơng. Tùy thuộc vào bài tốn khác nhau mà ta có các cách
khởi tạo quần thể khác nhau. Cũng nhƣ trong tự nhiên, nếu chất lƣợng của quần
thể ban đầu càng tốt, ta càng hi vọng các thế hệ sau sẽ ngày càng tốt hơn. Do đó,
khi tính tốn giải thuật để tạo quần thể ban đầu, chúng ta cố gằng tìm những cách
có thể đƣa ra những lời giải tiềm tàng chấp nhận đƣợc. Đối với bài toán đồ thị và
cây, để tìm đồ thị hay cây có trọng số nhỏ nhất, các cá thể xuất phát cũng nên có

trọng số đủ nhỏ.
Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 21


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn

1.1.6.2 Hàm thích nghi
Theo các nghiên cứu và các thử nghiệm của nhiều nhà nghiên cứu về giải
thuật di truyền thì hàm thích nghi là một trong hai yếu tố quan trọng nhất quyết
định sự thành công hay thất bại của GA. Hàm thích nghi đƣợc xây dựng sao cho
giá trị thích nghi phải phản ánh đƣợc giá trị thực của NST trong việc đáp ứng
yêu cầu của bài tốn. Hàm thích nghi càng tốt thì cá thể càng có khả năng di
truyền cao. Trong các bài tốn về cây khung nhỏ nhất thì hàm thích nghi sẽ là
hàm tính tổng trọng số các cạnh trên các cây khung. Trong bài tốn tìm giá trị
min của một hàm, thì hàm thích nghi chính là giá trị hàm tại các điểm đang xét.
Trong bài tốn tìm hàm từ dữ liệu cho trƣớc thì hàm thích nghi tính giá trị của
các lời giải tiềm tàng tại các giá trị đầu vào. Nếu nó càng gần với các giá trị đầu
ra của đầu bài thì lời giải càng tốt.
1.1.6.3 Chọn lọc
Theo cơ chế di truyền, thế hệ P(t) sẽ sinh ra thế hệ sau P(t+1). Có nhiều
cách để lựa chọn các cá thể từ một quần thể. Sau đây sẽ giới thiệu một số cơ chế
hay áp dụng. Để tiện mô tả các cơ chế lựa chọn ta đƣa ra một số kí hiệu sau:
 Cách biểu diễn các NST thứ i là vi
 Hàm tính độ thích nghi của NST vi là f(vi).
 Kích thƣớc quần thể là pop_size.
 Số NST cần chọn là N.

Có nhiều phƣơng pháp lựa chọn: Lựa chọn theo phƣơng pháp quay bánh

xe, lựa chọn theo phƣơng pháp đấu loại, lựa chọn theo cơ chế lấy mẫu ngẫu
nhiên.
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 k cá thể từ quần thể đem ra đấu loại.
Trong k cá thể đó, tìm cá thể có độ thích nghi tốt nhất. Sơ đồ chi tiết thuật tốn
này đƣợc trình bày ở Hình 3.3 trong chƣơng 3.
Phạm Thảo – Đảm bảo toán học cho máy tính và hệ thống tính tốn

Page 22


Giải thuật di truyền đa mục tiêu

1.1.6.5 Chọn lọc theo vịng quay Roulette
Phục vụ q trình chọn lọc có các thơng số sau :
Tính tổng độ thích nghi của quần thể :
quần thể.

, N là dân số của

 Tính xác suất chọn pi cho mỗi cá thể vi :
 Tính vị trí xác suất qi của mỗi cá thể :
Cơ chế lựa chọn theo bánh xe Roulette đƣợc thực hiện bằng cách quay
bánh xe Roulette N lần nhằm tạo N vị trí chọn ngẫu nhiên. Mỗi lần quay để chọn
cá thể sẽ tiến hành nhƣ sau:
Sinh một giá trị ngẫu nhiên r nằm trong khoảng (0,1]. Nếu r q1 thì cá thể
v1 đƣợc chọn, ngƣợc lại thì chọn cá thể thứ i (2 i N) sao cho qi-1 < r qi .
Ta có thể hình dung cơ chế này nhƣ sau: Có một hình trịn đƣợc chia làm
N phần, mỗi phần hình quạt sẽ tƣơng ứng với một cá thể. Độ lớn của hình quạt
đó tỉ lệ với độ thích nghi của cá thể. Sau đó ta sẽ sinh một vị trí ngẫu nhiên nằm

trên đƣờng trịn. Vị trí này nằm trên hình quạt nào thì cá thể tƣơng ứng với hình
quạt đó sẽ đƣợc lựa chọn.
Rõ ràng phƣơng pháp này thỏa mãn tính chất xác suất đƣợc chọn tỉ lệ với
độ thích nghi. Hơn nữa, phƣơng pháp chọn lọc Roulette này cho phép một cá thể
có thể đƣợc chọn nhiều lần.
Phƣơng pháp chọn lọc Roulette hoạt động tốt khi quần thể có kích thƣớc
lớn, với quần thể có kích thƣớc nhỏ thì do số lần thực hiện vịng quay nhỏ nên sự
phân bố của các số ngẫu nhiên sinh ra sẽ không đƣợc đều.
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ể đều đã đƣợc xác định độ thích nghi và đƣợc sắp xếp
ngẫu nhiên. Ta cũng hình dung quần thể nhƣ là một hình trịn đƣợc chia làm N
phần tƣơng ứng với N cá thể, độ lớn của các phần cũng tƣơng ứng tỉ lệ với độ
thích nghi của các cá thể.
Ta lại hình dung ở ngay bên ngồi hình trịn đó có một vịng trịn bao
quanh, trên vịng trịn bao này có N điểm chia phân bố cách đều nhau. Ta “quay”
Phạm Thảo – Đảm bảo toán học cho máy tính và hệ thống tính tốn

Page 23


Giải bài tốn cây khung nhỏ nhất với đƣờng kính bị chặn

vò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
trịn bên trong. Khi đó N điể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 chọn k lần nếu phần hình quạt
tƣơng ứng với nó có k điểm chia chỉ vào.
Phƣơng pháp lựa chọn trên tỏ ra khá hay khi thỏa mãn điều kiện cơ bản
của chọn lọc là ngẫu nhiên và xác suất chọn tỉ lệ với độ thích nghi. Ngồ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 đƣợc
nhƣợc điểm của phƣơng pháp vòng quay Roulette đối với những quần thể kích

thƣớc dân số nhỏ.
Tuy nhiên nó vẫn có hạn chế là áp lực chọn lọc sẽ giảm sau một vài thế hệ
do sự khác biệt trong độ thích nghi giữa các cá thể bị thu hẹp.

1.1.7 Chiến lƣợc nạp lại quần thể
1.1.7.1 Nạp lại hoàn toàn.
Tạo ra số NST mới bằng kích thƣớc quần thể và quần thể mới bao gồm
tồn các NST mới này, khơng có NST nào của thế hệ trƣớc.
Lai ghép

Gen n-1: p cá thể

Child n: p cá thể

Nạp hồn tồn

Gen n-1: p cá thể

Hình 1.2: Chiến lƣợc nạp lại hoàn toàn
Nạp lại hoàn toàn: là chiến lƣợc đơn giản nhất. Mỗi NST chỉ tồn tại
trong một thế hệ, sang thế hệ tiếp theo sẽ đƣợc thay mới hoàn toàn. Nhƣ vậy sẽ
xảy ra trƣờng hợp là các NST tốt sẽ không đƣợc giữ lại, do đó chiến lƣợc này
khơng phải là chiến lƣợc phù hợp cho việc cải thiện lời giải qua các thế hệ.

Phạm Thảo – Đảm bảo tốn học cho máy tính và hệ thống tính tốn

Page 24



×