Xây dựng ý tưởng và thiết kế 1 Biểu diễn bài toán

Một phần của tài liệu Tiểu luận môn Thuật Toán và Phương Pháp Giải Quyết Vấn Đề GIẢI THUẬT DI TRUYỀN VÀ ỨNG DỤNG (Trang 33)

3.1 Biểu diễn bài toán

Một lời giải (một cách phân cụm cộng đồng) của bài toán phân cụm cộng đồng trên đồ thị có thể được biểu diễn bởi một cách chia toàn bộ đồ thị thành các phân vùng (cluster). Mỗi nút trên đồ thị sẽ được gán vào từng phân vùng phù hợp.

Để biểu diễn lời giải của bài toán, một nhiễm sắc thể được sử dụng: mỗi phần tử của nhiễm sắc thể sẽ biểu thị cho một đỉnh, chưa thông tin về phân vùng mà nút đó thuộc về.

Để thiết kế một cách biểu diễn nhiễm sắc thể dành cho một cách phân cụm, thì ta sẽ xác định những yêu cầu nào của một cách phân cụm tốt có thể được mã hóa sẵn trong lời giải, với cách mã hóa như vậy trong không gian tìm kiếm sẽ được giảm tải, tránh phải quan tâm đến những lời giải chắc chắn không chấp nhận được. Trong các cách mã hóa đã tìm ra, duy nhất một cách mã hóa có khả năng này, các cách phân cụm được mã hóa bởi cách mã hóa này sẽ có những cụm cộng đồng thỏa mãn được tính liên thông (connectness) – một tính chất của mọi tập đỉnh để được coi là một cụm cộng đồng.

Trong cách mã hóa này, mỗi nhiễm sắc thể gồm có N gen g1,g2....gN mỗi gen có thể được gán cho một giá trị a-len trong dãy {1,2....N}. các gen và a-len

gán giá trị i tức là giữa đỉnh i và đỉnh j phải có một liên kết giữa chúng, và nó sẽ ở cùng một cụm cộng đồng trong cách phân cụm mà nhiễm sắc thể mô tả. Trong thao tác giải mã một cụng cộng đồng sẽ bắt đầu sẽ có 1 đỉnh nó sẽ gia nhập các đỉnh thành viên, nếu như các đỉnh đó ở chung một cụm cộng đồng với một đỉnh nào đó đã có trong cụm cộng đồng, thao tác giải mã này đảm bảo cụm cộng đồng giữ nguyên tính liên thông qua quá trình phát triển, vì nếu cụm cộng đồng cũ có tính liên thông thì sau khi gia nhập một đỉnh mới nó vẫn liên thông vì đỉnh đó chắc chắn có một kết nối với một đỉnh đã là thành viên của cụm cộng đồng từ trước.

3.2 Hàm đánh giá dùng để tính giá trị thích nghi của các cá thể

Như đã đề cập, hàm mô đun của NewMan và Girvan là một hàm dùng để đánh giá chất lượng của một cách phân cụm, vì vậy nó thích hợp để lấy làm hàm đánh giá để sử dụng cho hệ thống.

3.3 Các thao tác chính nhằm tạo sinh ra các cá thể mới cho quần thể

Chiến lược tạo dựng một thế hệ mới cho một quần thể mới sẽ làm như sau: Có một tập cộng đồng mới G chứa tất cả các cá thể được sinh ra trong mỗi lần tạo dựng. Ghép tất cả các cá thể trong quần thể thành các cặp riêng biệt, chúng em sẽ thực hiện thao tác lai ghép, đột biến trên các cặp cá thể này. Mỗi cặp cá thể sẽ sinh ra hai cá thể con mới, hay cá thể con này sẽ được bổ sung vào G. Sau khi tất cả các cặp đã được thao tác, ta sẽ bổ sung tập G vào tập quần thể cũ, và sắp xếp lại thứ tự các cá thể theo giá trị đánh giá của mỗi cá thể.

Mỗi cá thể sẽ được gắn một giá trị gọi là xác suất lai ghép tỷ lệ thuận với ranking của nó trong quần thể, tức là một cá thể càng tốt sẽ có khả năng được phối giống càng cao.

Toán tử lai ghép

Toán tử lai ghép cần sinh ra cá thể mới, phải thỏa mãn hai điều kiện, thứ nhất có tính kế thừa tính chất của cá thể cha và mẹ, thứ hai phải tạo sự đa dạng.

Kết quả lai ghép sẽ sinh ra hai cá thể mới, mỗi cá thể sẽ kế thừa toàn bộ một cụm cộng đồng của cha (hoặc mẹ) bằng cách sao chép toàn bộ các giá trị a-len liên quan đến cụm cộng đồng của cha (hoặc mẹ) tất cả các gen còn lại sẽ sao chép toàn bộ giá trị của các gen tương ứng của mẹ (hoặc cha) các gen còn lại này có nhiệm vụ tạo nên sự khác biệt của cá thể mới so với cha (hoặc mẹ) của chúng.

Về vấn đề chọn lựa các cá thể để lai ghép, xác suất hai cá thể này được phép lai ghép sẽ là trung bình cộng của xác suất lai ghép của từng cá thể.

Nhờ vậy khả năng hai cá thể có những cụm cộng đồng tót sẽ có khả năng được lai ghép cao hơn các cá thể con sẽ nhận được cơ hội thừa kế các cụm cộng đồng tốt từ cha và mẹ của chúng, dù vẫn giữ nguyên khả năng tạo ra sự biến đổi, góp phần làm quần thể đa dạng hơn.

Toán tử đột biến

Toán tử đột biến nhằm tạo sự đa dạng cho quần thể, đưa quần thể ra khỏi vùng lồi (hoặc vùng lõm) trong miền thích nghi – tức là tránh giá trị thích nghi của các cá thể quần thể bị kẹt vào một cực đại (hoặc cực tiểu) cục bộ, làm quần thể không thể phát triển hơn được về độ thích nghi.

Vì mục đích trên của toán tử đột biến, cần tạo ra một cách đột biến ngẫu nhiên nhất, nhằm tạo ra sự đa dạn kết quả của cá thể mới sinh ra. Chúng ta sẽ chọn một sỗ ngẫu nhiên các Gen và thay đổi ngẫu nhiên giá trị A-len của nó, trong nội dung của bài toán, thì A-len này sẽ phải tượng trung cho một đỉnh mà có liên kết giữa đỉnh được tượng trưng bởi Gen đã được chọn.

Toán tử chọn lọc

Hệ thống sẽ không sử dụng toán tử chọn lọc, mọi nhiễm sắc thể sẽ được giữ lại, và các nhiễm sắc thể này sẽ bị đào thải nếu như ranking của nó trong quần thể bị đẩy xuống một ngưỡng nào đó.

Một phần của tài liệu Tiểu luận môn Thuật Toán và Phương Pháp Giải Quyết Vấn Đề GIẢI THUẬT DI TRUYỀN VÀ ỨNG DỤNG (Trang 33)