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, 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 (III.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 III.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ự cần thiết cho mức độ đó. Ba mức phân cấp đƣợc chỉ ra trong Hình III.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ơ
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à
nó 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ận cỡ lớn.
Định nghĩa 2:Ký hiệu H(x,y) thay cho H{(x,y)}
Định nghĩa 3: Cho ảnh di truyền H. Ký hiệu
nH Ä H H (n thành phần, n0)
Đị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).
H = q1F1 q2F2 ... qiFi ... qMFM (III.10)
Nếu OFi Fi đối với mỗi Fi thuộc tập chỉ dẫn1, 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:
C(B)Ä HH(h,k) B đối với vài (h,k) (III.11)
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ì OFi Fi, 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
1, 2,..., n B B B thì : 1 () ( ) n i i f I f B với fB kl A() (i )*Const. (III.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.
Để đá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 {B ii | 1, 2,... }N , 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.
Hàm phạt đƣợc sử dụng trong các bài toán có ràng buộc cao, khi nhu 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:
( ) ( )
c p
f af I bf I (III.13)
ở đây, a = 1 nếu và chỉ nếuBi B B( {B ii | 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.