2.2.2.1. Giải thuật tổng quát cho phân cụm sử dụng giải thuật di truyền.
Begin
1. t = 0
2. Khởi tạo quần thể P(t)
3. Tính toán độ thích nghi cho P(t) 4. t = t + 1
5. Nếu kết thúc vòng lặp thì thực hiện bước 10 6. Lựa chọn P(t) từ P(t – 1)
7. Lai ghép P(t) 8. Đột biến P(t) 9. Quay lại bước 3
10. Đưa ra kết quả và dừng giải thuật
End.
2.2.2.2. Biểu diễn cá thể.
Cá nhân đại diện hoặc phép mã hóa biến đổi một trong những giải pháp có thể từ không gian giải pháp tới không gian tìm kiếm mà có thể được xử lý giải thuật di truyền. Các cá nhân là vectơ không gian giải pháp trong các hình thức của chuỗi. Một cá nhân đại diện cho một trong những giải pháp có thể cho vấn đề này. Giải thuật di truyền có thể tìm thấy giải pháp tối ưu, giải pháp tối ưu gần đúng của vấn đề sau khi áp dụng một số phép toán di truyền trên những cá nhân.
Có hai phương pháp mã hóa thường được sử dụng: mã hóa nhị phân và mã hóa số thực. Không gian tìm kiếm trong mã hóa nhị phân lớn hơn trong mã hóa số thực, tuy nhiên việc lai ghép và đột biến thuận tiện hơn. Quần thể ban đầu được khởi tạo ngẫu nhiên. Đầu tiên các trung tâm K cụm được mã hóa trong mỗi nhiễm sắc thể được khởi tạo ngẫu nhiên K lựa chọn từ không gian ban đầu. Sau đó quá trình này được lặp đi lặp lại cho các cá thể trong quần thể. Cho các cụm k và đối tượng có kích thước n tương đương với n*k vị trí trong một nhiễm sắc thể.
Ví dụ: Cho 10 điểm dữ liệu ban đầu P, P1,…, P10. Tạo quần thể gồm 4 cá thể, mỗi cá thể gồm 3 cụm.
Ta thu được quần thể với cá thể được tạo ngẫu nhiên gồm 4 cá thể sau: Cá thể 1: [P1, P3, P5]
Cá thể 2: [P2, P3, P7] Cá thể 3: [P4, P7, P9]
Cá thể 4: [P8, P10, P2]
2.2.2.3. Tính toán độ thích nghi.
Quá trình tính toán độ thích nghi gồm hai giai đoạn: Giai đoạn l, các cụm được hình thành theo các trung tâm cụm đã được mã hóa trong nhiễm sắc thể đang được xử lý. Sau khi các cụm được hình thành, các trung tâm cụm được mã hóa trong nhiễm sắc thể được thay thế bởi các điểm trung bình của các cụm tương ứng. Các hàm thích nghi được định nghĩa chẳng hạn như: f'1/, vì vậy sự tối đa hóa của hàm chức năng sẽ dẫn tới tối thiểu hóa hàm như sau:
k i i 1 i j c x i j i x z Trong đó: Ci là trọng tâm cụm thứ i xj là giá trị của phần tử j
zi là giá trị của phần tử i trong k trọng tâm cụm k là số cụm cần tạo
2.2.2.4. Phép chọn (Selection).
Quá trình lựa chọn được sử dụng để có được những giải pháp tối ưu bởi những cá nhân có độ thích nghi cao hơn. Phương pháp lựa chọn được sử dụng như cơ chế để tập trung tìm kiếm trên vùng có nhiều thuận lợi hơn trong không gian tìm kiếm.
Các kiểu thủ tục lựa chọn như sau:
Roulette Wheel Selection (lựa chọn bánh xe quay vòng).
Các nhiễm sắc thể cha mẹ có sác xuất lựa chọn dựa trên độ thích nghi của chúng. Trong quá trình này, mỗi nhiễm sắc thể chiếm một vị trí trên bánh xe quay vòng với kích thước vùng tỷ lệ với độ thích nghi của nhiễm sắc thể. Khi bánh xe quay ngẫu nhiên, nhiễm sắc thể tương ứng với các vị trí bánh xe dừng lại được lựa chọn là nhiễm sắc thể cha mẹ đầu tiên. Quá trình này được lặp đi lặp lại cho việc tìm kiếm nhiễm sắc thể cha mẹ khác. Hạn chế của lựa chọn bánh xe quay vòng là các cá nhân thích nghi có thể chiếm ưu thế cao trong quá trình lựa chọn dẫn đến giảm sự đa dạng và hội tụ sớm.
Sắp xếp các nhiễm sắc thể theo độ thích nghi và lựa chọn các nhiễm sắc thể dựa trên thứ hạng. Với quy trình này, tất cả các nhiễm sắc thể sẽ có một cơ hội tốt để được lựa chọn. Tuy nhiên, phương pháp này có thể có tốc độ hội tụ chậm hơn so với phương pháp tiếp cận bánh xe quay vòng.
Tournament selection (lựa chọn loại dần).
Một tập hợp các nhiễm sắc thể được lựa chọn ngẫu nhiên. Nhiễm sắc thể thích hợp nhất từ tập hợp được đặt vào vị trí chuẩn bị lai ghép. Quá trình này được lặp đi lặp lại cho đến khi đủ số lượng nhiễm sắc thể để thực hiện lai ghép.
Elitism.
Trong phương pháp này, nhiễm sắc thể thích hợp nhất hoặc do người dụng chỉ định một số nhiễm sắc thể đặc biệt nhất được sao chép vào quần thể mới. Các nhiễm sắc thể còn lại được lựa chọn bằng bất kỳ phép toán lựa chọn nào. Từ đó mà giải pháp tối ưu của giải thuật di truyền không bị giảm hiệu suất nhiều và có thể được cải thiện đáng kể.
2.2.2.5. Crossover (lai ghép).
Crossover là một xác suất quá trình trao đổi thông tin giữa hai nhiễm sắc thể bố mẹ để tạo ra hai nhiễm sắc thể con. Nó tăng tốc tìm kiếm sớm trong quá trình tiến hóa của một quần thể. Crossover xảy ra với một xác suất người dùng được chỉ định, được gọi là xác suất lai ghép Pc.
Một số phép toán lai ghép:
Single Point Crossover (Lai ghép tại một điểm)
Trong phương pháp này, một vị trí được lựa chọn ngẫu nhiên mà tại đó các nhiễm sắc thể cha mẹ được chia thành hai phần. Các phần của nhiễm sắc thể được trao đổi tại vị trí đó và tạo ra hai nhiễm sắc thể mới.
Nhiễm sắc thể Cha-mẹ Nhiễm sắc thể con
A: 11001010 11001011
B: 01110011 01110010
Hình 2.10. Lai ghép tại 1 điểm
Two Point Crossover (Lai ghép tại hai điểm).
Trong phương pháp này, hai vị trí được lựa chọn ngẫu nhiên. Các thành phần giữa hai cha mẹ sau đó được trao đổi để tạo ra 2 con mới.
Nhiễm sắc thể Cha-mẹ Nhiễm sắc thể con
B: 01110011 01001011
Hình 2.11. Lai ghép tại 1 điểm
Uniform Crossover (Lai ghép đồng nhất).
Trong phương pháp này, gen được sao chép từ một trong hai cha mẹ đầu tiên với xác suất thường là 0,5 làm mặt nạ sử dụng cho lai ghép. Các giá trị mới được tạo ra theo các bit được chỉ định bởi mặt nạ hoặc từ A hoặc từ B.
Mặt nạ lai ghép: 1100101 0
Nhiễm sắc thể Cha-mẹ Nhiễm sắc thể con
A: 11001010 11111011
B: 01110011 01000010
Hình 2.12. Lai ghép đồng nhất 2.2.2.6. Mutation (đột biến).
Thông thường đột biến thay đổi cấu trúc của nhiễm sắc thể bằng cách đảo bit ngẫu nhiên ở một vị trí bất kỳ. Nó thay đổi các giá trị gen tại các vị trí được lựa chọn ngẫu nhiên. Đột biến làm tăng tính đa dạng di truyền bằng cách làm cho các giải thuật phải tìm kiếm các khu vực khác với trọng tâm hiện nay. Đối với biểu diễn nhị phân của nhiễm sắc thể, một vị trí bit được đột biến bằng cách đơn giản lật giá trị của nó. Mặt khác số ô trong đoạn [0, 1] được tạo ra với phân bố đồng đều. Nếu giá trị của một gen tại vị trí v, sau khi đột biến nó trở thành.
Nếu khởi tạo quần thể được biểu diễn theo số thực thì giá trị tại một nhiễm sắc thể tại vị trí i có thể được đột biến theo cách sau:
Trong đó:
Xi: là giá trị tại một vị trí đột biến i trên nhiễm sắc thể.
rand(0, 1): lấy ngẫu nhiên một số thực nằm trong khoảng từ 0 đến 1
Các vị trí đột biến v (đối với biểu diễn cá thể là bit), i (đối với biểu diễn cá thể là số thực) có thể thực hiện đột biến ở vị trí bất kỳ và trên các cá thể thì các vị trí đột biến này không giống nhau; hoặc trên các cá thể của quần thể sẽ thống nhất đột biến ở các vị trí đã được chỉ định sẵn.
cụ thể và kinh nghiệm của người thực hiện bài toán.