Như phát biểu ở trên, cấu trúc dữ liệu biểu diễn một cá thể cần phải mô tả theo cách mềm dẻo là hợp các phần tử lồi như trong, cần phải chỉ ra hình dạng của nó và sự phân rã thành các phần tử (factors), nhưng cũng cần tạo ra pha đánh giá nhanh và đơn giản. Biểu diễn này biến đổi theo độ dài, vì số z các phân hoạch bao gồm việc phân rã nhiễm sắc thể J không bị chặn trên; mặt khác nhắc lại biểu thức (1), số m và hình dạng nhân tử Fkj tạo nên thành phần
Ckj phụ thuộc trực tiếp vào Ck.
Vì những lý do này, một cá thể được biểu diễn bằng chuỗi gen dài tuỳ ý, mỗi gen biểu diễn một phân hoạch của phần tử cấu trúc đầu vào (xem hình IV.1). Hợp lôgic của tất cả các gen tạo nên cá thể.
Việc cài đặt đơn giản nhất bao gồm việc biểu diễn mỗi cá thể riêng với cấu trúc dữ liệu mà các trường của nó chứa toàn bộ các thông tin ở trên. Ngược lại, cấu trúc dữ liệu phân cấp phức tạp hơn được phát triển để vừa sử dụng dung lượng nhớ thấp hơn cho mỗi cá thể vừa làm dễ dàng và tăng tốc độ xác định các lời giải mới tốt hơn. Mặc dù việc quản lý cấu trúc dữ liệu này rõ ràng là phức tạp nhưng nó cho phép phát hiện phần giao nhau có thể có trong số các cá thể của quần thể. Mỗi mức phân cấp chỉ giải mã các thông tin thật
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
sự cần thiết cho mức độ đó. Ba mức phân cấp được chỉ ra trong Hình IV.1.
Mức phần tử (Factor level): Các thành phần cơ bản là các toán tử hình thái cơ sở (tức các thành phần của tập chỉ dẫn): Một số nguyên cho biết phần tử nào của tập chỉ dẫn được sử dụng, trong khi con trỏ cho phép đi theo chuỗi các phần tử.
Mức độ gen (Gen level): Một gen gồm một hay nhiều các nhân tử (factors) và ó tương ứng với một chuỗi các phép dãn của các nhân tử; một số nguyên chỉ ra gốc của phân hoạch được mô tả bởi gen, vì vậy nó chỉ ra phép dịch chuyển được yêu cầu để khớp gen lên tập các phần tử cấu trúc khởi tạo và một con trỏ xác định gen tiếp theo.
Mức độ cá thể (Individual level): Một hay nhiều gen sẽ hình thành cá thể tươngứng với một phép hợp của chuỗi các phép dãn, tương đương với việc phân rã, hoặc thông thường hơn, đối với một phần của sự phân rã. Số nguyên chỉ tổng số các gen hợp thành cá thể, con trỏ chỉ ra vị trí của gen đầu tiên của chuỗi, trong khi số chính xác gấp đôi chứa giá trị thích nghi của cá thể.
Khởi tạo quần thể
Định nghĩa 1: Tập IS là tập bao gồm M phần tử tử IS = {Fi, i=1,..,M}. Tập IS trong đa trường hợp là biểu diễn các cấu trúc hình khối hoặc các cấu trúc được chéo hoá. Việc sử dụng các cấu trúc hình khối hoặc được chéo hoá sẽ tiết kiệm được không gian lưu trữ và đồng thời giảm được số phép toán cần thực hiện trong các hệ thống đòi hỏi thao tác trên các ma trậm cỡ lớn.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Hình IV.1. Cấu trúc dữ liệu
Định nghĩa 3: Cho ảnh di truyền H. Ký hiệu
...
nHAH H (n thành phần, n≥0)
Định nghĩa 4: Cho ảnh di truyền H, OH biểu diễn gốc cuả ảnh di truyền H.
Dưới đây, B là phần tử cấu trúc đầu vào, Bi là tập con di truyền của B với gốc giống nhau và H đại diện cho bất kỳ tập di truyền nào, lồi tương ứng với tập chỉ dẫn (IS).
1 1 2 2... i i ... M M
H q F q F q F q F (10)
Nếu OFi Fi đối với mỗi Fi thuộc tập chỉ dẫn, thì OH H. Việc xử lý bắt đầu bằng cách nhận dạng mỗi phần tử của tập hợp C(B), được xác định như sau:
(h,k)
( ){H|H
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
Vì mỗi phần tử của C(B) có thể đại diện cho một gen có thể có, việc tìm kiếm này phải được xác định và vét cạn. Vì OFiFi, tập các cặp có thể
(h,k) được cho bởi tập tất cả những phần tử của B; đối với một ảnh di truyền H, nếu cặp (h,k) B H, thì H(h,k) C(B). Vì vậy, thuật toán sẽ duyệt tất cả các điểm ảnh của phần tử cấu trúc và xác định những phần tử nào có thể tạo nên chuỗi phép toán dãn nở hợp lý từ điểm ảnh đó.
Xây dựng hàm thích nghi
Hàm thích nghi f(I) được sử dụng để đánh giá mỗi cá thể I trong thuật toán tìm kiếm. Giả sử I được phân rã thành n phép hợp của các phần tử cấu trúc hình khối B B1, ,...,2Bn thì: 1 ( ) ( ) n i i f I f B với f(Bi) = (k+l) * AConst (12)
Trong đó AConst là một hằng số, đại lượng này sẽ tùy thuộc vào cỡ của ma trận đem làm dầy với ma trận cấu trúc B ban đầu, (k,l) là cỡ của ma trận Bi.
Trong cài đặt này, mỗi nhân tử bị giới hạn kích cỡ 3x3 và OFi Fi
Để đánh giá một cá thể I, ta dựa trên khái niệm hàm giá fC(I). fC(I) = f(I) nếu và chỉ nếu B = { |i= 1, 2,... } , Bi là phân hoạch chung tạo nên lời giải
I của độ dài N. Hàm như vậy phải có một số tính chất sau:
1)Đối với lời giải phù hợp thì nó bằng f(I);
2)Nó cũng được xác định cho những lời giải không phù hợp (tức là những lời giải không phủ hoàn toàn phần tử cấu trúc gốc), do vậy mở rộng không gian tìm kiếm;
3)Dễ dàng càiđặt như hàm phạt.
Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn
cầu của việc đánh giá những lời giải không phù hợp bằng cách phạt chúng đồng thời đề cao những lời giải phù hợp. Như vậy, hàm giá bao gồm hệ số phạt:
fc = af(I) + bfp(I) (13)
ở đây, a = 1 nếu và chỉ nếu Bi = B(B={Bi|i=1,2,...N)}), như phát biểu trên, ngược lại a có thể được biểu diễn bởi một phân số đối với tỉ số giữa số lượng các phần tử có mặt trong lời giải và tổng các phần tử có trong B. Qua các tham số do người sử dụng định nghĩa, hệ số b có liên hệ với kích cỡ của quần thể hiện tại, và fp là hàm phạt liên hệ với số phần trăm phủ B.
Như ta đã nói mục đích của việc xử lý là nhận được sự phân rã làm cực tiểu số các phép tính cần thiết để tính các phép dãn của một ảnh di truyền với phần tử cấu trúc B, hàm thích nghi f(I) chủ yếu được cấu tạo bởi tổng giá của mỗi phân hoạch Bj; thêm vào đó, cũng cần tính đến số phép toán hợp lôgic được yêu cầu và làm nặng lên bởi một hệ số thích hợp.