Tải bản đầy đủ (.docx) (37 trang)

Tiểu luận môn CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG GIẢI THUẬT DI TRUYỀN VÀ ỨNG DỤNG

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 (689.21 KB, 37 trang )

CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
ĐẠI HỌC QUỐC GIA TP.HCM
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
Đề tài:
GIẢI THUẬT DI TRUYỀN VÀ ỨNG DỤNG
GVHD:GS. TSKH. Hoàng Văn Kiếm
HVTH: Nguyễn Hữu Phước
MSHV: CH1301107
TP HCM, tháng 10 năm 2014
Nguyễn Hữu Phước CH1301107 Trang 1
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
LỜI NÓI ĐẦU
Ngày nay, cùng với sự phát triển mạnh mẽ của khoa học và công nghệ thì
khối lượng tri thức thu thập được ngày càng khổng lồ và cần phải được xử lý một
cách chính xác, nhanh và hiệu quả để phục vụ cho các hoạt động của xã hội.
Cũng chính từ đó, đòi hỏi phải có nhiều phương pháp (giải pháp) để giải quyết
được nhiều yêu cầu hay nhiều vấn đề đặt ra trong đời sống hàng ngày như công
tác lập lịch, tìm đường đi ngắn nhất trên bản đồ giao thông, so khớp đồ thị để ứng
dụng vào các lĩnh vực như hóa học, sinh học, điện tử, … hay nhiều vấn đề khác
đã và đang hình thành.
Những vấn đề trên đều gần giũi với đời sống hàng ngày và được nhiều nhà
nghiên cứu tìm hiểu, xây dựng nhiều giải pháp giải quyết khác nhau, tuy nhiên
vẫn chưa đạt được mong muốn vì còn một số hạn chế nhất định, ví dụ như độ
phức tạp của thuật toán quá lớn hoặc thời gian, hiệu quả chưa cao, …
Qua môn học, đặc biệt là sau quá tìm hiểu để hoàn thành bài thu hoạch do
thầy GS TSKH.Hoàng Kiếm hướng dẫn, em nhận thấy môn học này rất bổ ích
và đem lại nhiều kiến thức mới. Chúng em xin chân thành cảm ơn thầy!
Nguyễn Hữu Phước CH1301107 Trang 2
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
MỤC LỤC


Nguyễn Hữu Phước CH1301107 Trang 3
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
CHƯƠNG I: GIẢI THUẬT DI TRUYỀN
1 Tổng quan về thuật giải di truyền
Thuật giải di truyền là một kỹ thuật của khoa học máy tính được dùng để tìm
kiếm lời giải cho các bài toán tối ưu tổ hợp hay các bài toán chưa có thuật toán
để tìm chính xác lời giải. Thuật giải di truyền sử dụng ngôn ngữ máy tính để mô
phỏng lại quá trình tiến hóa tự nhiên của một tập các đối tượng trừu tượng (gọi là
quần thể). Mỗi đối tượng trừu tượng (gọi là các nhiễm sắc thể) đại diện cho một
giải pháp khả dĩ (gọi là cá thể) của bài toán tối ưu hóa. Ngoài ra, mỗi giải pháp
thường liên quan đến nhiều yếu tố, gọi là các biến. Vì thế, các nhiễm sắc thể
tương ứng cũng gồm nhiều phần tử, mỗi phần tử được gọi là một gen.
Tập các giải pháp này sẽ tiến triển theo hướng chọn lọc những giải pháp tốt
hơn. Việc xác định giải pháp nào tốt hơn được thực hiện bởi một hàm gọi là hàm
mục tiêu hoặc hàm thích nghi. Các giải pháp tốt được kết hợp với nhau với hi
vọng sẽ tạo ra các giải pháp tốt hơn.
Quá trình tiến hóa bắt đầu từ một tập các cá thể ngẫu nhiên, và do đó, hầu hết
chúng không phải là các lời giải tốt. Qua từng thế hệ, độ thích nghi của từng cá
thể được xác định. Các cá thể được chọn lọc theo cách có định hướng (chọn cá
thể tốt theo độ thích nghi) từ tập hiện thời. Sau đó, các cá thể này được biến đổi
bằng cách lai ghép hay đột biến để tạo ra các cá thể mới. Việc này được thực hiện
lặp đi lặp lại qua các thế hệ tiếp theo và cuối cùng, giải thuật cho ra lời giải tối ưu
hoặc gần tối ưu.
Một thuật giải di truyền có thể chia ra làm 5 bước, được mô tả qua thủ tục sau:
procedure GeneticAlgorithms
begin
T = 0; // Thế hệ thứ T
Khởi tạo quần thể P(T);
Đánh giá độ thích nghi cho các cá thể trong P(T);
while (not Điều_Kiện_Kết_Thúc) do

Nguyễn Hữu Phước CH1301107 Trang 4
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
begin
T = T + 1;
Chọn lọc P(T) từ P(T-1);
Kết hợp các cá thể (bằng lai ghép & đột biến) trong P(T);
Đánh giá độ thích nghi cho các cá thể trong P(T);
end
end
Các toán tử và kỹ thuật được áp dụng trong thủ tục trên sẽ được mô tả chi tiết
hơn trong các phần tiếp theo.
2 Các thao tác cơ bản
Để giải một bài toán tối ưu bằng cách áp dụng thuật giải di truyền, ta thường
phải giải quyết 5 vấn đề:
• Biểu diễn di truyền hay chọn cách mã hóa các lời giải của bài toán
• Phát sinh quần thể ban đầu P(0).
• Chọn hàm đánh giá để xác định mức độ thích nghi của lời giải
• Áp dụng các toán tử di truyền (lai ghép, đột biến) để tạo ra các cá thể mới
• Xác định các tham số đầu vào của thuật giải. Chẳng hạn như kích thước
quần thể, xác suất lai ghép, xác suất đột biến,…
2.1Mã hóa
Mã hóa là việc xác định cách thức biểu diễn di truyền đối với lời giải của bài
toán. Việc mã hóa phụ thuộc nhiều vào từng bài toán cụ thể. Một số cách biểu
diễn thông dụng:
• Biểu diễn nhị phân: mỗi nhiễm sắc thể là một dãy số nhị phân. Mỗi gen có
thể được mã hóa nhờ một số lượng bit nào đó.
• Biểu diễn theo số tự nhiên: mỗi nhiễm sắc thể là một dãy các số tự nhiên.
Phương pháp này được dùng nhiều trong các bài toán tối ưu tổ hợp hay
hoán vị.
• Biểu diễn số dấu chấm động: Mỗi gen trong nhiễm sắc thể được mã hóa

bởi một số ở dạng dấu chấm động. Cách biểu diễn này giải quyết được
Nguyễn Hữu Phước CH1301107 Trang 5
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
một số nhược điểm của biểu diễn nhị phân và biểu diễn được miền giá trị
lớn.
• Một số cách khác: Biểu diễn số ở hệ Octal (hay Hexa), biểu diễn bởi chuỗi
ký tự, hay kết hợp các dạng trên.
Cách biểu
diễn
Nhị phân Số tự nhiên Số thực Cách khác
Nhiễm sắc
thể
100011011
010101010
123459876
679218345
5.5 2.3 7.1
4.0
3.1 1.9 2.5
5.6
2314506 (Octal)
ABCDE (Hexa /
chuỗi)
Hình 1. Một số cách biểu diễn nhiễm sắc thể
2.2Phát sinh quần thể ban đầu
Thông thường, việc khởi tạo các cá thể trong quần thể ở thế hệ đầu tiên là
phát sinh ngẫu nhiên và/hoặc có thêm một số ràng buộc (chẳng hạn sinh ra một
hoán vị). Do đó, hầu hết chúng có độ thích nghi thấp hay không phải là lời giải
tối ưu. Trong một số trường hợp, việc phát sinh ngẫu nhiên có thể làm quá trình
tiến hóa chậm (chẳng hạn như với bài toán người du lịch).

Một cách khởi tạo khác cũng hay được áp dụng, đó là sử dụng phương pháp
tham lam (greedy). Tùy vào đặc trưng của từng bài toán cụ thể, ta có thể phát
sinh ra các cá thể sao cho có khả năng gần với lời giải nhất có thể. Ví dụ, với bài
toán người du lịch, tại gen thứ k, ta chọn đỉnh gần nhất với đỉnh trong gen thứ k-
1 và chưa được chọn.
2.3Hàm đánh giá và hàm thích nghi
Trong hầu hết các bài toán áp dụng thuật giải di truyền, ta quy về việc tối ưu
cực đại (hoặc cực tiểu) một hàm một hoặc nhiều biến. Khi đó, độ tốt của cá thể là
giá trị hàm tương ứng của cá thể đó. Như vậy, nếu chọn một cá thể là nghiệm của
bài toán thì cá thể càng tốt khi giá trị hàm càng gần với giá trị tối ưu (cực đại
hoặc cực tiểu) càng tốt. Hàm để đánh giá độ tốt của cá thể hay lời giải gọi là hàm
mục tiêu.
Tuy nhiên, để chọn lọc các cá thể di truyền cho thế hệ tiếp theo, ta cần phải
biến đổi hàm mục tiêu sang hàm thích nghi. Điều này cũng tương tự như trong tự
Nguyễn Hữu Phước CH1301107 Trang 6
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
nhiên, các cá thể thích nghi tốt với môi trường sống sẽ được bảo tồn cho thế hệ
kế tiếp.
Độ thích nghi của cá thể được định nghĩa là khả năng cá thể đó được chọn lọc
vào thế hệ sau hoặc được chọn cho việc lai ghép, tạo ra cá thể mới.
Hàm mục tiêu là cơ sở để đánh giá độ thích nghi của các cá thể. Việc ánh xạ
từ hàm mục tiêu sang hàm thích nghi tùy thuộc vào mục đích của bài toán thực
tế.
2.4Các toán tử di truyền
Chọn lọc là quá trình chọn một cách ngẫu nhiên các cặp cá thể trong quần thể
để thực hiện việc lai tạo ra cá thể con cho thế hệ sau. Mục đích của chọn lọc là
chú trọng vào các cá thể có độ thích nghi cao với hi vọng rằng, các con của
chúng sẽ có độ thích nghi cao hơn nữa. Một số cơ chế chọn lọc thường được áp
dụng:
• Chọn lọc theo vòng Roulette (Roulette wheel selection)

• Chọn lọc cạnh tranh (Tournament selection)
• Chọn lọc thứ tự (Rank selection)
• Elitism selection
Lai ghép là quá trình lấy hai giải pháp bố - mẹ và sinh ra con của chúng. Sau
quá trình chọn lọc (sinh sản), quần thể được làm giàu bởi các cá thể tốt hơn. Lai
ghép tạo ra bản sao của các cá thể tốt chứ không tạo ra các cá thể mới vì lai ghép
chỉ sao chép giá trị gen giữa cặp cá thể bố - mẹ để tạo ra cá thể con. Toán tử lai
ghép được áp dụng vào tổ hợp sinh sản với hi vọng tạo ra được thế hệ con tốt
hơn.
Nguyễn Hữu Phước CH1301107 Trang 7
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
a. Lai ghép đa điểm b. Lai ghép đồng nhất c. Lai ghép thứ tự
Hình 2. Một số kiểu lai ghép
Các kỹ thuật lai ghép thường được áp dụng:
• Lai ghép một điểm (Single-point Crossover)
• Lai ghép đa điểm (Multi-point Crossover)
• Lai ghép đồng nhất (Uniform Crossover)
• Lai ghép chu trình (CX – Cycle Crossover)
• Lai ghép thứ tự (OX – Ordered Crossover)
• Lai ghép so khớp từng phần (PMX – Partially Matched Crossover)
Đột biến là thay đổi một cách ngẫu nhiên giá trị của một hoặc vài gen trong
nhiễm sắc thể. Nếu lai ghép được xem là khám phá các giải pháp hiện thời để tìm
ra các giải pháp tốt hơn thì đột biến được cho là để giúp thăm dò toàn bộ không
gian tìm kiếm. Đột biến được xem như một toán tử nền tảng để duy trì tính đa
dạng di truyền trong quần thể. Đột biến giúp thoát khỏi cái bẫy của cực tiểu cục
bộ và duy trì tính đa dạng trong quần thể.
Có nhiều dạng đột biến khác nhau tùy thuộc vào cách mã hóa hay biểu diễn
của nhiễm sắc thể. Sau đây là một số kỹ thuật đột biến thường dùng:
• Đột biến đảo bit (Flipping): Thay thế giá trị của gen bằng một giá trị khác
• Đột biến đổi chổ (Interchanging): Hoán vị giá trị của hai gen

• Đột biến đảo ngược (Reversing): Đảo ngược một đoạn gen trong nhiễm
sắc thể.
Flipping Interchanging Reversing
Parent 1 0 0 1 0 1 0 0 0 1 0 0 1 0 1 0 0 0 1 0 0 1 0 1 00 0
Child 1 1 0 1 0 0 0 0 1 1 0 1 1 0 0 0 0 0 1 0 0 0 0 1 0 1 0
Hình 3. Một số dạng đột biến
2.5Các tham số của thuật giải
Kích thước quần thể (PopSize) là số lượng cá thể trong mỗi thế hệ tiến hóa.
Giá trị của nó phụ thuộc vào sự phức tạp của từng bài toán cụ thể. Kích thước
quần thể lớn có thể giúp khám phá nhanh toàn bộ không gian tìm kiếm. Tuy
nhiên, nó yêu cầu chi phí cho việc tính toán, bộ nhớ và cả thời gian thực thi.
Trong thực tế, giá trị này thường được chọn là 100.
Nguyễn Hữu Phước CH1301107 Trang 8
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
Xác suất lai ghép (p
c
) là tham số mô tả mức độ thường xuyên mà phép lai
ghép được thực hiện. Nếu p
c
= 100% thì mọi cá thể con đều được tạo ra từ việc
lai ghép. Điều này đôi khi là không tốt vì chúng ta muốn lưu giữ một phần của
quần thể trước nhằm duy trì tính đa dạng của quần thể. Nếu p
c
= 0% thì thế hệ
sau chỉ là bản sao y nguyên của thế hệ trước, có nghĩa là không có sự tiến hóa. Số
lượng cá thể tham gia vào quá trình lai ghép là: p
c
* PopSize.
Xác suất đột biến (p
m

) là tham số quyết định mức độ thường xuyên mà các
phần tử của nhiễm sắc thể bị đột biến. Đột biến ngăn thuật giải di truyền rơi vào
cực trị cục bộ. Giá trị này càng lớn thì càng nhiều cá thể bị biến đổi làm mất tính
ổn định của quần thể. Số lượng gen bị đột biến trong toàn bộ quần thể sẽ là: p
m
*
PopSize * kích thước nhiễm sắc thể.
3 Các toán tử và kỹ thuật di truyền nâng cao
Phần trên hệ thống lại một cách khái quát các khái niệm và một số kỹ thuật di
truyền cơ bản: sinh sản, lai ghép và đột biến. Chúng hoạt động tốt trong nhiều bài
toán thực tế. Tuy nhiên, để cải thiện sức mạnh của thuật giải di truyền, chúng ta
cần có các kỹ thuật và toán tử phức tạp hơn để biểu diễn được hầu hết các kiểu
hình tự nhiên.
Trong phần này, chúng tôi trình bày một số kỹ thuật biểu diễn mức thấp như
thể trội, thể lưỡng bội và các toán tử đảo, sao chép, xóa bỏ, chia tách. Các toán tử
cấp cao như sự thích nghi môi trường sống (niche), sự hình thành loài
(speciation) và các kỹ thuật tối ưu nhiều mục tiêu cũng được khảo sát chi tiết.
Đây cũng chính là phần chính của báo cáo.
3.1Thể lưỡng bội (Diploidy), thể trội (Dominicance) và thể khuyết
(Abeyance)
Trong các phần trên, chúng ta chỉ xem xét các kiểu hình đơn giản nhất tồn tại
trong tự nhiên, đó là nhiễm sắc thể đơn bội. Một nhiễm sắc thể đơn bội chỉ chứa
một tập các gen nghĩa là một alen chiếm giữ một vị trí. Tự nhiên chứa đựng
nhiều tổ chức đơn bội, nhưng hầu hết chúng có dạng sống không phức tạp.
Khi tự nhiên muốn kiến tạo(xây dựng) một dạng sống phức tạp hơn hay dạng
sống động vật, một cấu trúc nhiễm sắc thể phức tạp hơn là cần thiết, đó là nhiễm
Nguyễn Hữu Phước CH1301107 Trang 9
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
sắc thể lưỡng bội hoặc nhiễm sắc thể kép. Ở dạng lưỡng bội, một kiểu gen chứa
một hoặc nhiều cặp nhiễm sắc thể, mỗi cặp chứa thông tin cho cùng một chức

năng.
Xét cấu trúc nhiễm sắc thể lưỡng bội sau, với các kí tự khác nhau đại diện cho
các alen khác nhau (giá trị chức năng gen khác nhau):
P q r s t
P Q R S t
Alen đại diện cho thuộc tính của một gen cụ thể. Mỗi vị trí của một kí tự đại
diện cho một alen. Các kí tự viết hoa và viết thường được đưa ra ở trên đại diện
cho các alen thay thế (alternative) tại mỗi vị trí. Trước tiên, trong tự nhiên mỗi
alen biểu thị các thuộc tính kiểu hình khác nhau. Chẳng hạn, Q có thể biểu diễn
cho gen tóc xám và q có thể là gen tóc đen. Như vậy, một cặp (Q, q) mô tả một
chức năng, vì thế, cần phải có cách để quyết định xem giá trị nào được chọn bởi
vì chẳng hạn, kiểu hình không thể cùng lúc tóc xám và tóc đen.
Một cách tiếp cận để loại bỏ xung đột dư thừa này là thông qua một cơ chế
gọi là gen trội. Tại một vị trí, một alen (gọi là gen trội) sẽ được ưu tiên hơn một
alen thay thế khác (gọi là gen lặn). Có thể nói rằng, một alen là trội nếu nó được
biểu hiện khi đi cặp với một vài alen khác. Biểu hiện nghĩa là nó xuất hiện trong
các kiểu hình.
Trong ví dụ trên, nếu giả sử tất cả các kí tự hoa là trội và tất cả các kí tự
thường là lặn thì kiểu hình được biểu thị của nhiễm sắc thể ví dụ trên sẽ là:
P q r S t
→ P Q R S t (gen được biểu hiện lên kiểu
hình)
p Q R S t
Gen trội luôn luôn được biểu hiện và gen lặn chỉ biểu hiện khi nó đi cặp với
cùng một gen lặn. Gen trội được biểu thị trong các phần tử dị hợp (Pp  P) hoặc
đồng hợp (SS  S) và gen lặn được biểu thị chỉ khi là đồng hợp lặn (tt  t).
Nguyễn Hữu Phước CH1301107 Trang 10
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
Do đó trội là một toán tử di truyền được sử dụng để tính toán kiểu hình các
giá trị alen có thể tại một vị trí gen.

Nhiễm sắc thể lưỡng bội cung cấp sự thuận lợi cho các cá thể khi môi trường
thay đổi qua một khoảng thời gian. Việc có 2 gene cho phép hai giải pháp khác
nhau được nhớ (ghi lại) và chuyển qua cho con cháu. Một trong những gen này là
trội (nghĩa là nó sẽ biểu hiện lên kiểu hình), trong khi những gen khác là lặn.
Nếu điều kiện môi trường thay đổi, sự trội có thể hoán chuyển, do đó một gen
khác sẽ là trội. Sự hoán chuyển này có thể xảy ra nhanh hơn mức có thể nếu cơ
chế tiến hóa phải thay đổi gen. Cơ chế này là lý tưởng nếu môi trường chuyển
giữa hai trạng thái (chẳng hạn kỷ băng hà và không phải kỷ băng hà). Thuận lợi
chính của lưỡng bội là nó cho phép sự đa dạng rộng lớn hơn của các alen được
giữ lại trong quần thể so với đơn bội. Hiện tại thì có hại nhưng tiềm năng là các
alen hữu dụng có thể vẫn được duy trì, nhưng ở trạng thái lặn.
Trong thuật giải di truyền, lưỡng bội có thể hữu ích trong các ứng dụng trực
tuyến, các hệ thống có thể chuyển giữa các trạng thái khác nhau. Lưỡng bội
chiếm một vị trí quan trọng trong thuật giải di truyền. Ngoài việc mang hai lần
thông tin di truyền, nhiễm sắc thể phải mang thông tin trội.
3.2Thể đa bội (Multiploid)
Một thuật giải di truyền đa bội kết hợp một vài ứng viên (candidates) cho mỗi
gen trong một kiểu gen duy nhất, và sử dụng một vài cơ chế dạng trội để quyết
định gen nào sẽ được kích hoạt trong kiểu hình.
Trong tự nhiên, chúng ta tìm thấy nhiều tổ hợp có kiểu gen đa bội, các tổ hợp
này chứa nhiều bộ nhiễm sắc thể với một số cơ chế để xác định gen nào được
biểu hiện, nghĩa là trội tại một vị trí gen nào đó. Cơ chế này chủ yếu là nâng cao
tính đa dạng của quần thể, các gen hiện tại chưa được sử dụng vẫn còn là loại gen
đa bội, chưa được biểu hiện, nhưng được bảo vệ khỏi sự tuyệt chủng cho đến khi
chúng trở nên hữu ích trong các thế hệ sau.
Một kiểu gen đa bội, thể hiện trong hình 4.a, một nhiễm sắc thể có p=3 thành
phần, mỗi thành phần có chiều dài L và tương tự như một nhiễm sắc thể đơn bội.
Để xác định gen nào được biểu hiện lên kiểu hình, ta dùng một mặt nạ, chỉ ra gen
Nguyễn Hữu Phước CH1301107 Trang 11
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG

của thành phần nào trong p thành phần là trội tại một vị trí cụ thể trong nhiễm sắc
thể. Thông tin này được giải mã thành kiểu hình như sau:
Hình 4.a. Đa bội loại 1 (multiploid type 1)
Hình 4.b. Đa bội loại 2 (multiploid type 2)
Một giá trị alen a tại điểm i trong mặt nạ biểu thị rằng gen thứ i trong thành
phần ứng với chỉ số a trở thành gen thứ i trong kiểu hình. Chiều dài của mặt nạ
có thể ngắn hơn chiều dài của nhiễm sắc thể, như hình 4.b.
Trong hình 4.b, nếu chiều dài của mặt nạ là m và nhiễm sắc thể có chiều dài
L, một gen tại vị trí “i” trong mặt nạ với giá trị là “a” chỉ ra rằng tập L/m gen liên
tục thứ i trong thành phần thứ a của nhiễm sắc thể là trội.
3.3Một số toán tử vi mô tái thiết lập thứ tự
3.3.1 Toán tử đảo (inversion)
Đảo là toán tử một ngôi, một trong các toán tử di truyền thực hiện việc tái sắp
xếp thứ tự. Toán tử đảo ngược là cơ chế tự nhiên chủ yếu để tái mã hóa một vấn
đề. Trong toán tử đảo ngược, hai điểm đánh dấu và chiều dài của nhiễm sắc thể
được cho trước, đoạn nhiễm sắc thể giữa hai điểm đánh dấu bị cắt và đảo ngược.
Để rõ ràng hơn, ta xét hai nhiễm sắc thể có chiều dài 8, hai điểm đánh dấu được
chọn ngẫu nhiên (là 2 và 6) như sau:
Nguyễn Hữu Phước CH1301107 Trang 12
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
Sử dụng toán tử đảo, ta có kết quả:
Toán tử đảo có thể sử dụng như một toán tử đột biến. Nó có một số biến thể sau:
• Đảo tuyến tính
• Đảo tuyến tính + cuối
• Đảo liên tục
• Đảo khối
Đảo tuyến tính là phép đảo như đã thấy ở ví dụ trên. Đảo tuyến tính+ cuối là
đảo tuyến tính với xác suất được chỉ ra là 0.75. Khi đảo tuyến tính không được
thực hiện, đảo cuối có thể được thực hiện với xác suất 0.125 tại đầu trái hoặc đầu
phải của chuỗi. Đảo tuyến tính + cuối khác đảo tuyến tính ở việc phá vỡ các alen

gần trung tâm của chuỗi và các alen nằm ở cuối chuỗi một cách không cân đối.
Trong chế độ đảo liên tục, phép đảo được áp dụng với một xác suất đảo cụ thể P
i
,
đối với mỗi cá thể mới khi nó được tạo. Trong chế độ đảo khối một nửa quần thể
mới được tạo được trải qua việc đảo đồng nhất.
3.3.2 Chia tách và dịch chuyển
Xét quá trình hình thành giao tử khi có nhiều hơn một cặp nhiễm sắc thể
trong kiểu gen. Khi nó hình thành một giao tử, ta chọn ngẫu nhiên một trong mỗi
nhiễm sắc thể đơn bội. Quá trình chọn lọc ngẫu nhiên này được gọi là sự chia
tách – phá vỡ mọi liên kết tồn tại giữa các gen trên các nhiễm sắc thể khác nhau.
Nó cho thấy rằng, sự chia tách khai thác cách tổ chức phù hợp của các nhiễm sắc
thể và quan trọng là chú ý vào cách mà nhiễm sắc thể được tổ chức theo một
cách thích hợp. Toán tử dịch chuyển được sử dụng cho mục đích này. Toán tử
dịch chuyển có thể được xem như một toán tử lai ghép liên nhiễm sắc thể. Toán
tử này được thực thi bằng cách nối các alen với tên các gen của chúng, để có thể
Nguyễn Hữu Phước CH1301107 Trang 13
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
xác định ý nghĩa của chúng khi chúng được xáo trộn từ nhiễm sắc thể này sang
nhiễm sắc thể khác bởi toán tử dịch chuyển.
3.3.3 Nhân bản và xóa
Có một cặp toán tử mức thấp khác thực hiện việc tìm kiếm theo thuật giải di
truyền. Sự sao chép trong nội bộ nhiễm sắc thể thực hiện bằng cách nhân bản
một gen nào đó và đặt nó cùng với tổ tiên của nó lên nhiễm sắc thể. Việc xóa
bằng cách loại bỏ một gen trùng khỏi nhiễm sắc thể. Tỷ lệ đột biến có thể được
điều khiển một cách hiệu quả bởi các toán tử này. Khi tỷ lệ đột biến không đổi và
nhân bản trong nhiễm sắc thể tạo ra k bản sao của một gen nào đó thì xác suất đột
biến hiệu quả cho gen này được nhân với k. Mặt khác, khi việc xóa xảy ra, tỷ lệ
đột biến hiệu quả cũng giảm.
3.3.4 Xác định giới tính (Sexual Determination)

Ban đầu, trong sơ đồ kết cặp, ta được phép kết cặp bất kỳ hai cá thể nào và
kết quả di truyền tạo ra được chia sao cho chúng bảo đảm một kiểu gen có khả
năng sống được (viable genotype). Xác định giới tính được xử lý khác nhau trong
các loài khác nhau. Tuy nhiên, chỉ cần xét ví dụ trên con người là đủ để hiểu về
sự xác định giới tính. Giới tính được xác định trong một người bởi một trong 23
cặp nhiễm sắc thể của người. Nữ có hai nhiễm sắc thể đều là X và nam có hai
nhiễm sắc thể khác nhau là X và Y. Trong quá trình hình thành giao tử
(gametogenesis process), nam giới hình thành tinh trùng (mang nhiễm sắc thể X
hoặc Y) và nữ giới sở hữu trứng (mang nhiễm sắc thể X).
Lúc thụ tinh, nhiễm sắc thể X sinh bởi người nữ được kết hợp với nhiễm sắc
thể X hoặc Y sinh ra bởi người nam. Vì thế, phương pháp xác định giới tính trên
người rất đơn giản. Chiến lược tương tự cũng được áp dụng để xác định giới tính
trong tìm kiếm theo thuật giải di truyền. Sự thiết lập giới tính khác nhau chia một
loài thành 2 hay nhiều nhóm một cách có hiệu quả. Điều này cho phép chuyên
biệt hóa nam và nữ, do đó, kèm theo một loạt các hành vi cần thiết cho sự sống
một cách rộng rãi hơn với một quần thể cạnh tranh duy nhất. Các nghiên cứu
theo sự xác định giới tính và sự khác nhau về tìm kiếm thuật giải di truyền nhân
tạo vẫn còn đang tiếp diễn.
Nguyễn Hữu Phước CH1301107 Trang 14
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
Khi tổ hợp các toán tử lai và toán tử đảo, ta thiết lập được một số phép lai có
thể tái thiết lập trật tự các gen. Ba phép lai theo dạng này được sử dụng nhiều
trong các bài toán thực tế là: lai so khớp từng phần (PMX), lai thứ tự (OX) và lai
chu trình (CX).
3.3.5 Phép lai so khớp từng phần (Partially Matched Crossover – PMX)
Trong lai so khớp từng phần, hai chuỗi được sắp hàng, và hai điểm lai được
chọn ngẫu nhiên giống nhau dọc theo chiều dài của chuỗi. Hai điểm lai cho một
chọn lọc khớp được dùng để tác động thông qua toán tử trao đổi vị trí – vị trí.
Xét 2 nhiễm sắc thể:
Hai điểm lai được chọn ngẫu nhiên, quá trình lai PMX thực hiện thay đổi vị

trí. Giữa các điểm lai, các gen được hoán đổi, nghĩa là gen 3 và 2, gen 6 và 7, gen
5 và 9 thay đổi vị trí. Đây là ánh xạ từ mẹ B qua bố A. Bây giờ ánh xạ từ bố A
qua mẹ B, gen 7 và 6, gen 9 và 5, gen 2 và 3 thay đổi vị trí cho nhau. Do đó sau
khi thực hiện PMX, con cháu sinh ra là:
Mỗi con cháu chứa thông tin có thứ tự một cách từng phần được quyết định
bởi cha mẹ của chúng. PMX có thể được áp dụng cho các bài toán biểu diễn hoán
vị.
3.3.6 Lai ghép thứ tự (Ordered crossover – OX)
Lai OX bắt đầu theo cách tương tự như PMX. Nhưng thay vì sử dụng trao đổi
điểm – điểm như PMX, lai OX áp dụng chuyển động trượt để lấp đầy các vị trí
trống bên trái bằng cách chuyển các vị trí ánh xạ.
Xét cặp nhiễm sắc thể cha mẹ sau:
Nguyễn Hữu Phước CH1301107 Trang 15
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
Khi ánh xạ từ mẹ B sang bố A, vị trí 3,6, và 5 trống
Những lỗ trống này bây giờ được lấp bằng một chuyển động trượt bắt đầu với
điểm lai thứ hai
Những lỗ trống này sau đó được lấp bằng phiên so khớp lấy từ bố A. Do đó,
qua việc thực hiện hành động này, con cháu được sinh ra bằng lai OX như sau:
Từ ví dụ trên, chúng ta có thể thấy rằng PMX hướng tới khía cạnh vị trí tuyệt
đối trong khi OX hướng tới khía cạnh vị trí tương đối.
3.3.7 Lai chu trình (Cycle crossover - CX)
Lai CX thực hiện tổ hợp lại dưới các ràng buộc mà mỗi gen xuất phát từ cha
hoặc mẹ. Mỗi cá thể con được tạo dựa trên vị trí, giá trị của cha mẹ thứ nhất và
cha mẹ thứ hai.
Xét cặp nhiễm sắc thể bố mẹ sau:
Parent A: 1 2 3 4 5 6 7 8 9
Parent B: 4 1 2 8 7 6 9 3 5
Ta sẽ tạo ra nhiễm sắc thể con A bằng cách lấy phần tử đầu tiên trong Parent A.
Child A: 1 - - - - - - - -

Tiếp tục xác định giá trị các gen tiếp theo cho Child A bằng cách so khớp với giá
trị gen tại Parent B. Chẳng hạn, gen thứ nhất của Parent B có giá trị là 4, giá trị
này nằm tại vị trí 4 trong Parent A nên Child A sẽ là:
Nguyễn Hữu Phước CH1301107 Trang 16
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
Child A: 1 - - 4 - - - - -
Tương tự, gen tại vị trí thứ 4 của Parent B có giá là 8, giá trị này nằm tại vị trí 8
trong Parent A nên Child A sẽ là:
Child A: 1 - - 4 - - - 8 -
Tiếp tục thực hiện theo cách này, cho đến khi hoàn thành 1 chu trình, tức là quay
trở lại một gen đã chọn.
Child A: 1 - 3 4 - - - 8 -
Child A: 1 2 3 4 - - - 8 -
Sau đó, các giá trị còn lại được lấy từ Parent B, ta được Child A như sau
Child A: 1 2 3 4 7 6 9 8 5
Thực hiện tương tự các bước trên để tạo con B, ta được:
Child B: 4 1 2 8 5 6 7 3 9
3.4Vùng thích nghi (Niche) và sự hình thành loài (Speciation)
Vấn đề muôn thuở của thuật toán di truyền là hội tụ sớm. Nghĩa là, một kiểu
gen không tối ưu kiểm soát quần thể kết quả trong đó mỗi cá thể hoặc giống hệt
nhau hoặc rất giống nhau. Hậu quả là quần thể sẽ không đủ đa dạng cho sự tiến
hóa xa hơn.
Nếu đơn giản chỉ tăng kích thước quần thể sẽ không đủ để tránh vấn đề trên,
vì bất cứ sự gia tăng quần thể nào sẽ phải chịu chi phí gấp đôi và cần nhiều thế hệ
hơn nữa để bài toán hướng đến giải pháp tối ưu.
Như vậy, thuật giải di truyền đối mặt với một vấn đề khó khăn. Đó là làm thế
nào để quần thể có thể hội tụ về một giải pháp mà vẫn duy trì tính đa dạng.
Những toán tử di truyền gây ra hội tụ - như phép lai hay sinh sản - phải được
thay đổi bằng cách nào đó.
Một hạn chế khác đối với thuật giải di truyền đó là thời gian tham gia vào

việc dẫn xuất ra một giải pháp. Nó không giống như những phương pháp khác
như là mạng neural, tìm kiếm leo đồi, các phương pháp dựa trên luật v.v , thuật
Nguyễn Hữu Phước CH1301107 Trang 17
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
giải di truyền nặng về mặt ngẫu nhiên và không đảm bảo sẽ hướng đến kết quả
trong một thời gian xác định. Việc xảy ra một tỉ lệ lớn những lần chạy mà không
tìm ra giải pháp tối ưu là bình thường đối với thuật giải di truyền.
Để giải quyết vấn đề này, người ta đề xuất hai khái niệm, đó là vùng thích
nghi và loài. Trong nhiều bài toán thực tế, hai khái niệm này giải quyết đáng kể
các khó khăn đã được nêu ở trên.
3.4.1 Vùng thích nghi và sự hình thành loài trong các bài toán đa phương
thức
Giả sử hàm thích nghi là đa phương thức (multimodal), nghĩa là hàm có nhiều
đỉnh cực trị. Khi đó, thuật giải di truyền sẽ có xu hướng hội tụ đến một trong các
đỉnh, đặt biệt là nếu một trong các đỉnh tối ưu hơn so với những đỉnh còn lại.
Hình 5. Đồ thị của một hàm đa phương thức
Tuy nhiên, người ta thường muốn xác định sự hội tụ các đỉnh cùng lúc. Một
vùng thích nghi (niche) có thể được xem như là một trong các đỉnh và một loài là
tập hợp các thành viên của quần thể phù hợp nhất với vùng thích nghi đó hay tập
các cá thể tương đồng hội tụ cùng nhau tại đỉnh đó. Khi đó, chúng ta muốn thuật
giải di truyền tạo ra một quần thể con ổn định (loài) phù hợp với các vùng thích
nghi
Đối với dạng bài toán này, thuật giải di truyền thường gặp hai vấn đề. Đầu
tiên là sự phân phối các cá thể không đồng đều trên các đỉnh của không gian giải
pháp. Thứ hai đặt ra là bố mẹ của những loài khác nhau - nghĩa là, từ những môi
Nguyễn Hữu Phước CH1301107 Trang 18
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
trường thích nghi khác nhau - có xu hướng sản sinh cá thể con không tồn tại
được. Và như vậy, các bố mẹ từ các vùng thích nghi khác nhau không được
khuyến khích cặp đôi. Hai kỹ thuật sau có thể được dùng để giải quyết các khó

khăn trên.
Hình 6. Việc kết cặp bố mẹ ở 2 vùng thích nghi khác nhau có thể dẫn đến việc
tạo ra một con không tồn tại được (gọi là cá thể chết).
Lấn áp (Crowding)
Vấn đề đầu tiên - ngăn chặn 1 kiểu gen duy nhất chiếm cả quần thể - được
giải quyết bằng cách đảm bảo rằng 1 cá thể mới sẽ thay thế một trong nhữg kiểu
gen tương đồng của nó. Crowding cố gắng duy trì quần thể cân bằng. Cơ chế cho
sự thay thế này khá là đơn giản: chọn ngẫu nhiên CF cá thể và thông qua tính
toán khoảng cách hamming, quyết định cá thể thay thế thích hợp.
Ưu điểm của Crowding là đánh giá được các cá thể khi lựa chọn nạn nhân
thay thế, CF thường là 2 hoặc 3. Việc thay thế các cá thể tương đồng đóng vai trò
ngăn chặn lại một kiểu gen chiếm lĩnh toàn bộ quần thể, mặt khác, cho phép các
vùng ít thích nghi có thể hình thành bên trong quần thể chính
Crowding không tạo ra các vùng thích nghi một cách rõ ràng, cũng không cố
gắng khuyến khích chúng mà chỉ cho phép chúng hình thành.
Sharing
Một cách tiếp cận khác được thông qua trong sơ đồ Sharing, trong đó cá thể
bên trong quần thể sử dụng việc chia sẻ các tài nguyên hạn chế, vì chúng cố gắng
thích nghi.
Nguyễn Hữu Phước CH1301107 Trang 19
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
Theo cách tương tự như Crowding, sự chiếm lĩnh của quần thể bởi kiểu gen
duy nhất không được khuyến khích bằng cách thay thế các cá thể tương đồng
nhau trong phần đông quần thể. Tuy nhiên Sharing không đơn giản là tính toán
như Crowding. Và một vấn đề rất cụ thể phải biết trước là có bao nhiêu đỉnh
trong không gian giải pháp.
Sharing khuyến khích sự hình thành các vùng thích nghi và ngăn chặn viễn
cảnh không tốt của những cá thể từ những vùng thích nghi khác nhau kết cặp để
tạo ra cá thể con bằng cách sử dụng hình thức giao phối giới hạn.
Xác định hàm Sharing dựa trên sự tương đồng

Hoặc dựa trên tương đồng kiểu hình (giá trị được mã hóa) thay vì kiểu gen
Hai nhiễm sắc càng tương đồng, chúng càng phải chia sẻ giá trị thích nghi. Mỗi
nhiễm sắc thể x có một hệ số tính toán cho nó
Share factor (x) = Sum over y in population share (similarity (x,y))
Giá trị thích nghi của nhiễm sắc thể sẽ được tính lại bằng cách chia giá trị thích
nghi ban đầu cho hệ số chia sẻ của nó
New fitness (x) = fitness (x)/share factor (x).
Sharing được xem là hiệu quả hơn trong nhóm hàm đa phương thức
(multimodal). Mặt khác, Sharing tích cực phát triển nên vùng thích nghi mới, do
đó phân phối các cá thể qua tất cả các đỉnh trong không gian. Crowding đơn giản
hơn Sharing, cả trong tính toán và thực hiện.
Nguyễn Hữu Phước CH1301107 Trang 20
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
3.4.2 Vùng thích nghi và sự hình thành loài trong bài toán đơn phương
thức
Phương pháp tiếp cận bài toán đơn phương thức (Unimodal) liên quan đến
vùng thích nghi cố gắng duy trì một quần thể cân bằng, hoặc thông qua giới hạn
việc sinh sản để ngăn chặn sự kết hợp các cặp bố mẹ không tương thích hoặc
thông qua các phương pháp thay thế làm cản trở việc chiếm lĩnh một quần thể
bởi một kiểu gen duy nhất.
Một số phương pháp không sử dụng vùng thích nghi hoàn toàn mà bắt chước
hoạt động của nó ở một mức độ nào đó. Có nhiều phương pháp thay thế bảo đảm
rằng các cá thể mới sinh ra đủ khác so với phần còn lại của quần thể trước khi
cho phép chúng gia nhập quần thể, chẳng hạn như thuật giải di truyền Clone
Prevention, Steady State (SSGA). Cũng có một số sơ đồ chọn lọc đặc biệt hoạt
động theo cách tương tự như sinh sản có giới hạn được mô tả trên đây, trong đó,
cha mẹ được phép thực hiện sự kết đôi chỉ khi chúng thỏa một tiêu chí nhất định.
Sinh sản có giới hạn cho phép sự tiến hóa của các vùng thích nghi khác nhau. Do
đó, cho phép mỗi vùng thích nghi phát huy một số ảnh hưởng lên quá trình tiến
hóa.

Clone prevention và SSGA hoạt động tương tự như Crowding, trong đó, trước
khi một cá thể được phép nhập vào quần thể, nó được so sánh với các cá thể khác
để xác minh tính duy nhất của nó. Trong khi mỗi lần, Crowding chỉ xem xét một
vài cá thể, các phương pháp mới này bảo đảm tính duy nhất bằng cách so sánh cá
thể mới với mọi cá thể khác trong quần thể. Giống như Crowding, chúng không
cố gắng tạo các vùng thích nghi hay loài (species) rõ ràng mà cố ngăn chặn sự
chi phối lên quần thể bởi một hình thái duy nhất.
Không may, cả hai phương pháp này có chi phí cao vì việc so sánh các cá thể
là việc khá tốn kém.
Ngăn chặn sự loạn luân (Incest prevention)
Incest prevention cố mai mối (matchmake) cặp bố mẹ với ý định các con của
chúng sẽ lấy các gen tốt nhất từ bố mẹ chúng. Đó là kết hợp các bố mẹ khác nhau
Nguyễn Hữu Phước CH1301107 Trang 21
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
sao cho tính đa dạng được giữ trong quần thể và vì vậy cho phép tiếp tục tiến
hóa.
Khi một quần thể tiến hóa, các cá thể càng trở nên tương tự nhau hơn và vì
vậy, khó mà tìm được cặp bố mẹ phù hợp hơn. Để tránh tình huống không có cặp
bố mẹ như vậy trong quần thể, cần một tập ngưỡng khác – có thể nới lỏng nếu có
sự khó khăn trong việc chọn bố mẹ.
Hình 7. Đồ thị của một hàm đơn phương thức
Mã giả cho thuật toán chọn cặp bố mẹ
SET THRESHOLD
REPEAT
FOREACH INDIVIDUAL DO
TEST INDIVIDUAL
ENTER PARENT POPULATION
IF NO-NEW-PARENTS THEN
LOWER THRESHOLD
FOREACH INDIVIDUAL DO

REPEAT
SELECT PARENTS
UNTIL DIFFERENT ( )
UNTIL END-CRITERION REACHED OR THRESHOLD=0
Ngay sau khi một cá thể được kiểm tra, nó cố gắng gia nhập vào quần thể bố
mẹ như được mô tả ở trên, bước này chỉ thành công nếu cá thể thích nghi hơn so
Nguyễn Hữu Phước CH1301107 Trang 22
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
với thành viên ít thích nghi nhất trong quần thể bố mẹ. Sau khi mọi cá thể mới
được kiểm tra, một kiểm tra để xem liệu quần thể bố mẹ có bị thay đổi. Một quần
thể không bị thay đổi sẽ dẫn đến một ngưỡng khác (bằng cách giảm ngưỡng cũ).
Hàm DIFFERENT() đơn giản tính toán khoảng cách giữa các cặp bố mẹ và
bảo đảm rằng, nếu chúng là hạt giống sinh sản thì độ khác nhau sẽ trên ngưỡng.
Thuật toán Pygmy
Mặc dù incest prevention tránh được chi phí cho clone prevention, vẫn còn
chi phí cho việc tìm các cặp thỏa mãn mỗi khi giao phối (kết cặp). Để giảm chi
phí càng nhiều càng tốt như các phương pháp khác, thuật toán Pygmy được đề
xuất – không tính rõ độ khác nhau giữa cặp bố mẹ mà chỉ cho thấy rằng các cặp
bố mẹ mà nó chọn là khác nhau.
Thuật toán Pygmy thường được dùng trong các bài toán với hai hay nhiều yêu
cầu, chẳng hạn: sự phát triển của các giải pháp cần phải đạt cả hai tiêu chí là hiệu
quả và nhanh. Các vùng thích nghi được dùng bởi hai hàm thích nghi riêng biệt,
vì thế, tạo ra hai hình thái (loài). Các cá thể từ mỗi loài sau đó được coi như có
các giới tính khác biệt và khi cặp bố mẹ được chọn cho việc tạo một cá thể mới,
chúng được rút ra từ mỗi loài với ý định là mỗi bố mẹ phát huy áp lực từ hàm
thích nghi của mình.
Thông thường, có một hàm thích nghi chính cho biết tính hiệu quả và một cho
yêu cầu thứ cấp. Các cá thể hiệu quả cao sẽ gia nhập vùng thích nghi đầu tiên,
các cá thể không thích hợp với vùng thích nghi này trải qua một kiểm tra độ thích
nghi thứ hai – đơn giản là hàm thích nghi ban đầu được sửa đổi để bao gồm các

yêu cầu phụ. Các cá thể này sau đó cố gắng gia nhập vào vùng thích nghi thứ hai
và nếu không hoàn thành việc này, các cá thể có liên quan sẽ bị chết sớm.
Việc sử dụng 2 vùng thích nghi duy trì một quần thể cân bằng và bảo đảm
rằng các cá thể phù hợp với các yêu cầu sẽ được sinh ra. Sau đây là mã giả của
thuật toán Pygmy.
REPEAT
FOR EACH INDIVIDUAL DO
Nguyễn Hữu Phước CH1301107 Trang 23
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
TEST INDIVIDUALWITH MAIN FITNESS FUNCTION
ENTER PARENT POPULATION #1
IF UNSUCCESSFUL
TEST INDIVIDUALWITH SECONDARY FITNESS
FUNCTION
ENTER PARENT POPULATION #2
FOR EACH INDIVIDUAL DO
SELECT PARENT FROM POPULATION #1
SELECT PARENT FROM POPULATION #2
CREATE NEW INDIVIDUAL
UNTIL END-CRITERION REACHED
Mỗi vùng thích nghi được thực hiện nhằm duy trì các cá thể trong một không
gian giải pháp. Dĩ nhiên, cũng có khả năng một con nào đó thừa hưởng những
đặc điểm tồi tệ nhất của bố mẹ chúng. Những đứa con này sẽ được bỏ qua bởi
thuật toán Pygmy nhưng bố mẹ chúng vẫn tồn tại được – vì chúng có khả năng
sinh ra các con tốt nên được duy trì.
Hạn chế kết cặp (Restricted Mating)
Mục đích của hạn chế việc kết cặp là khuyến khích sự hình thành loài và giảm
khả năng sinh sản chết (the production of lethals). Một cá thể chết (lethal) là một
con của cặp bố mẹ từ hai vùng thích nghi khác nhau. Mặc dù mỗi bố mẹ đều có
độ thích nghi cao nhưng sự kết hợp các nhiễm sắc thể của chúng có thể không

thích hợp nếu nó rơi vào thung lũng giữa hai đỉnh cực đại như hình 6.
Về mặt lý thuyết, nếu có hai bố mẹ tương tự nhau (nghĩa là từ cùng một
niche) được giao phối thì các con cái sẽ tương tự nhau. Tuy nhiên, điều này phụ
thuộc nhiều vào sơ đồ mã hóa – đặc biệt là sự tồn tại của các khối kiến trúc và
tính lấn át gen (epistasis). Theo lẽ thường của các toán tử lai ghép và đột biến ,
cặp bố mẹ tương đương về kiểu gen sẽ luôn sinh ra các con có cùng kiểu gen.
Nhưng trong một nhiễm sắc thể có tính lấn át gen cao, không có điều gì đảm bảo
Nguyễn Hữu Phước CH1301107 Trang 24
CÔNG NGHỆ TRI THỨC VÀ ỨNG DỤNG
rằng các con này không có độ thích nghi thấp, nghĩa là chúng dễ chết (lethal). Sự
tương tự về kiểu gen không bảo đảm sự tương tự về kiểu hình. Điều này ảnh
hưởng tới giới hạn của việc sử dụng kết cặp có giới hạn.
3.5Tối ưu hóa đa mục tiêu
Các bài toán tối hóa đa mục tiêu nhận được sự quan tâm của nhiều nhà nghiên
cứu từ đầu những năm 1960. Trong bài toán tối ưu hóa đa mục tiêu, các hàm đa
mục tiêu cần được tối ưu hóa đồng thời. Trong trường hợp nhiều mục tiêu, không
nhất thiết phải có giải pháp tối ưu nhất đối với mọi mục tiêu vì sự khác biệt giữa
các mục tiêu. Một giải pháp có thể là tốt nhất đối với mục tiêu này nhưng lại tệ
nhất đối với mục tiêu khác. Do đó, thường tồn tại một tập hợp các giải pháp cho
trường hợp nhiều mục tiêu mà không thể so sánh một cách đơn giản với các giải
pháp khác. Với các giải pháp như vậy - được gọi là các giải pháp tối ưu Pareto
hay các giải pháp không trội (non-dominated) – sự cải thiện là không thể trong
các hàm mục tiêu nếu như không hy sinh ít nhất một trong các hàm mục tiêu
khác.
Như vậy, bằng cách dùng khái niệm về tối ưu Pareto, ta có thể tìm thấy một
tập giải pháp thỏa hiệp (compromise) tối ưu giữa các mục tiêu mâu thuẫn nhau.
Tối ưu Pareto là một khái niệm được dùng trong kinh tế, lý thuyết game, … Một
giải pháp tối ưu Pareto là giải pháp không nổi trội hơn các giải pháp khác, nghĩa
là không thể cải thiện mục tiêu nào đó mà không có sự suy giảm trong một hay
nhiều mục tiêu khác.

Vấn đề chính trong việc giải các bài toán tối ưu đa mục tiêu dùng thuật giải di
truyền là làm thế nào để xác định giá trị thích nghi của các cá thể theo nhiều mục
tiêu.
3.6Tối ưu tổ hợp
Có một lượng lớn các bài toán thuộc dạng tối ưu tổ hợp với các đặc trưng và
thuộc tính khác nhau. Mặc dù các vấn đề này hơi khác, chúng có thể được mô tả
theo một trong các loại sau:
• Xác định một hoán vị của một số mục liên quan tới bài toán
• Xác định một tổ hợp các mục
• Xác định cả hoán vị và tổ hợp các mục
Nguyễn Hữu Phước CH1301107 Trang 25

×