Thể hiện các giả thuyết

Một phần của tài liệu CNTT1002 (Trang 30 - 32)

Các giả thuyết trong GAs thường ñược thể hiện dưới dạng chuỗi các bit, ñể chúng có thể dễ dàng ñược thực hiện bởi các toán tử di truyền là ñột biếnlai ghép. Các giả

thuyết ñược thể hiện bởi chuỗi bit này có thể khá phức tạp. Ví dụ, tập các luật if-then có thể dễ dàng ñược thể hiện theo cách này, bằng cách chọn một cách thức mã hóa các luật

ñể phân bố các chuỗi con riêng cho mỗi ñiều kiện trước và ñiều kiện sau của luật.

ðể thấy các luật if-then có thểñược mã hóa bằng các chuỗi bit như thế nào, trước tiên hãy xem chúng ta có thể sử dụng chuỗi bit như thế nào ñể mô tả ràng buộc trên giá trị của thuộc tính ñơn. Lấy một ví dụ, hãy xem xét thuộc tính Outlook, thuộc tính này có thể lấy bất kì giá trị nào trong ba giá trị: Sunny, Overcast hoặc Rain. Một cách rõ ràng ñể thể

http://etrithuc.vn

hiện ràng buộc cho Outlook là dùng một chuỗi bit có chiều dài 3, mỗi vị trí bit tương ứng với một trong ba giá trị có thể của nó. ðặt giá trị 1 ở một vài vị trí ñể chỉ ra rằng thuộc tính ñược phép lấy giá trị tương ứng. Ví dụ, chuỗi 010 thể hiện ràng buộc Outlook phải lấy giá trị thứ hai trong các giá trị này, hay là Outlook = Overcast. Một cách tương tự, chuỗi 011 thể hiện ràng buộc tổng quát hơn là cho phép hai giá trị có thể, hay là Outlook

= Overcast Rain. Chú ý 111 thể hiện ràng buộc có thể tổng quát nhất, chỉ ra rằng chúng ta không quan tâm giá trị nào trong các giá trị có thể của nó mà thuộc tính giữ.

ðưa ra phương pháp này ñể thể hiện các ràng buộc trên thuộc tính ñơn, các liên kết của các ràng buộc trên nhiều thuộc tính có thể dễ dàng ñược thể hiện bằng cách nối các chuỗi bit tương ứng. Ví dụ, xem xét thuộc tính thứ hai, Wind có thể lấy giá trị Strong

hoặc Weak. ðiều kiện trước của luật chẳng hạn như:

Có thểñược biểu diễn bởi chuỗi bit có chiều dài là 5 sau:

Outlook Wind

011 10

Các ñiều kiện sau của luật (chẳng hạn như PlayTennis = yes) có thể ñược thể hiện theo kiểu tương tự. Vì vậy, toàn bộ luật có thể ñược mô tả bởi móc nối các chuỗi bit mô tả các ñiều kiện ñầu, cùng với chuỗi bit mô tảñiều kiện sau của luật. Ví dụ, luật

IFWind = StrongTHENPlayTennis = yes

sẽñược thể hiện bởi chuỗi:

Outlook Wind PlayTennis

111 10 10

ở ñây 3 bit ñầu tiên mô tả ràng buộc “không quan tâm” trên Outlook , hai bit kế tiếp mô tả ràng buộc trên Wind, và hai bit cuối cùng mô tảñiều kiện sau của luật (ởñây chúng ta giả sử PlayTennis có thể lấy giá trị Yes hoặc No). Chú ý chuỗi bit thể hiện luật chứa một chuỗi con cho mỗi thuộc tính trong không gian giả thuyết, thậm chí thuộc tính không

http://etrithuc.vn

bị ràng buộc bởi các ñiều kiện trước. ðiều này tạo ra một chuỗi bit có chiều dài cốñịnh

ñể thể hiện các luật, trong ñó các chuỗi con ở các vị trí cụ thể mô tả các ràng buộc trên các thuộc tính cụ thể. ðưa ra cách thể hiện này cho các luật ñơn, chúng ta có thể thể hiện tập các luật bằng cách móc nối các thể hiện chuỗi bit của các luật riêng biệt.

Trong thiết kế mã hóa chuỗi bit cho một vài không gian giả thuyết, thật là hữu ích ñể

sắp xếp cho mọi chuỗi bit tuân thủ theo cú pháp ñể thể hiện một giả thuyết ñược ñịnh nghĩa tốt. ðể mô tả, chú ý cách mã hóa luật ở ñoạn trên, chuỗi bit 111 10 11 thể hiện luật có ñiều kiện trước không ràng buộc thuộc tính mục tiêu PlayTennis. Nếu tránh xem xét giả thuyết này, chúng ta có thể mượn một cách mã hóa khác (ví dụ phân bố chỉ một bit cho ñiều kiện sau ñể chỉ ñịnh giá trị là Yes hoặc No), thay ñổi các toán tử di truyền ñể

tránh một cách tường minh việc xây dựng các chuỗi bit như thế, hoặc ñơn giản gán một

ñộ thích nghi rất thấp cho các chuỗi bit như vậy.

Một phần của tài liệu CNTT1002 (Trang 30 - 32)