Trong mỗi thế hệ, các cá thể sẽ được đánh giá và chọn lọc thông qua độ thích nghi của chúng.. Quá trình tiến hóa sẽ diễn ra liên tục, chỉ dừng lại khi ta có được những các thể có độ thíc
Trang 1KHOA KỸ THUẬT PHẦN MỀM
KHÓA LUẬN TỐT NGHIỆP
NGHIÊN CỨU LẬP TRÌNH TIẾN HÓA ÁP DỤNG CHO BÀI TOÁN KHÔI PHỤC ẢNH
STUDYING EVOLUTIONARY PROGRAMMING APPLIED TO IMAGE RECOVERY PROBLEMS
Giảng viên hướng dẫn: TS NGÔ THANH HÙNG
Sinh viên thực hiện: TRẦN ĐÌNH PHÚ
Lớp : CNPM01
Khóa : 01
Thành Phố Hồ Chí Minh, tháng 04 năm 2011
Trang 2KHOA KỸ THUẬT PHẦN MỀM
KHÓA LUẬN TỐT NGHIỆP
NGHIÊN CỨU LẬP TRÌNH TIẾN HÓA ÁP DỤNG CHO BÀI TOÁN KHÔI PHỤC ẢNH
STUDYING EVOLUTIONARY PROGRAMMING APPLIED TO IMAGE RECOVERY PROBLEMS
Giảng viên hướng dẫn: TS NGÔ THANH HÙNG Sinh viên thực hiện: TRẦN ĐÌNH PHÚ
Lớp : CNPM01 Khóa : 01
Thành Phố Hồ Chí Minh, tháng 04 năm 2011
Trang 3in place, the next generation is always better, more developed, more fully than previous generations Natural evolution is maintained by two basic processes: reproduction and natural selection
Like the natural evolution, the evolutionary programming (proposed by D.B Fogel) has used the search algorithms and optimization based on the principle of natural evolution: the individual does more developed, more adapted to the environment will survive, the others cannot adapt to the environment will be eliminated
Evolutionary programming imitate four basic processes in nature: crossover, mutation, reproduction and natural selection to create the best individual have a higher adaptability of our parents
Evolutionary programming is applied extensively in the field of artificial intelligence, machine learning, data exploiting, image processing,… And recently it has been combined with fuzzy logic and fuzzy set to applications in the field clustering and restore images and have achieved satisfactory results
The topic "Studying evolutionary programming applied to image recovery problems" is the subject of initial research on the evolutionary programming combined with Dunn's fuzzy c-means approach to application to image processing specifically the clustering and restore images at once problem and the subject has gotten the certain results in the clustering and restore corrupted photographs
Trang 4Lập trình tiến hóa (EP) được ứng dụng nhiều trong các lĩnh vực trí tuệ nhân tạo, máy học, khai thác dữ liệu, xử lý ảnh, Và gần đây người ta đã kết hợp EP với Logic mờ và Tập mờ để ứng dụng vào lĩnh vực phân nhóm và phục hồi ảnh và đã đạt được những kết rất khả quan
Mục tiêu chính của luận văn này là bước đầu tiên nghiên cứu và ứng dụng lập trình tiến hóa mờ vào việc xử lý ảnh Cụ thể là ứng dụng phân nhóm và phục hồi
ảnh cùng một lúc Bài toán được phát biểu như sau: có n bức ảnh của c đối tượng bị hỏng một cách ngẫu nhiên, tìm cách phục hồi lại n bức ảnh trên và phân các bức ảnh đó thành c nhóm riêng biệt
Trang 5- Lý thuyết về biểu diễn và xử lý ảnh số
- Nghiên cứu thuật toán phục hồi ảnh dựa trên thuật toán Phân nhóm tiến hóa
Luận văn này được trình bày trong 5 chương:
Chương 1: Trình bày tổng quan về Thuật toán di truyền (GA) và Lập trình tiến
Chương 5: Kết luận, tổng kết đánh giá các kết quả đã nghiên cứu được cũng
như hướng phát triển của đề tài
Trang 6ơn đến Thầy hướng dẫn đề tài TS Ngô Thanh Hùng đã nhiệt tình giảng dạy, cung cấp tài liệu, hướng dẫn, góp ý và tạo mọi điều kiện thuận lợi về mọi mặt để hoàn thành bản luận văn tốt nghiệp này
Thành Phố Hồ Chí Minh, tháng 04 năm 2011
Trần Đình Phú
Trang 7
Trang 8
Trang 9
Trang phụ bìa
Abstract
Lời mở đầu
Lời cảm ơn
Nhận xét của giảng viên hướng dẫn
Nhận xét của giảng viên phản biện
Mục lục
Danh mục các bảng biểu, sơ đồ, hình
Định nghĩa một số thuật ngữ có liên quan
Chương 1 – TỔNG QUAN VỀ GA VÀ EP
1.1 TỔNG QUAN 1
1.2 TỔNG QUAN VỀ GA 1
1.3 TỔNG QUAN VỀ EP 3
1.4 CÁC THÀNH PHẦN CƠ BẢN CỦA GA VÀ EP 5
1.4.1 Dạng nhị phân 5
1.4.1.1 Mã hóa và giải mã 5
1.4.1.2 Khởi tạo quần thể ban đầu 7
1.4.1.3 Phép chọn lọc 8
1.4.1.4 Phép lai tạo 10
1.4.1.5 Phép đột biến 12
1.4.1.6 Các thế hệ kế tiếp 13
1.4.1.7 Sự hội tụ 16
1.4.2 Dạng liên tục 17
1.4.2.1 Mã hóa tham số và hàm fitness 17
Trang 101.4.2.5 Phép đột biến 21
1.4.2.6 Sự hội tụ 22
Chương 2 – LÝ THUYẾT TẬP MỜ VÀ LOGIC MỜ 2.1 GIỚI THIỆU 25
2.2 KHÁI NIỆM TẬP MỜ 26
2.3 CÁC PHÉP TOÁN CƠ BẢN VỀ TẬP MỜ 27
2.3.1 Phép bù 27
2.3.2 Phép giao 28
2.3.3 Phép hợp 29
2.4 LOGIC MỜ 31
2.4.1 Định nghĩa mệnh đề mờ 31
2.4.2 Các phép toán cơ bản trên logic mờ 31
Chương 3 – PHÂN NHÓM VÀ PHỤC HỒI ẢNH SỐ 3.1 GIỚI THIỆU ẢNH SỐ 33
3.1.1 Biểu diễn ảnh số 34
3.1.2 Biểu diễn màu sắc 34
3.1.3 Không gian màu sắc 35
3.1.4 Các định dạng ảnh cơ bản 37
3.1.5 Phương pháp xử lí ảnh số 38
3.2 PHÂN NHÓM VÀ PHỤC HỒI ẢNH SỐ 39
3.2.1 Giới thiệu 39
3.2.2 Thuật toán phân nhóm tiến hóa mờ 40
3.2.3 Áp dụng thuật toán phân nhóm tiến hóa mờ vào việc phục hồi ảnh 41
3.2.3.1 Phát biểu bài toán 41
Trang 113.3 CÀI ĐẶT CHƯƠNG TRÌNH 45
3.3.1 Giới thiệu chương trình 45
3.3.2 Cấu trúc chương trình 45
3.3.3 Kết quả cài đặt chương trình 48
Chương 4 – THỬ NGHIỆM PHÂN NHÓM VÀ PHỤC HỒI ẢNH 4.1 THỬ NGHIỆM 4.1 50
4.2 THỬ NGHIỆM 4.2 52
4.3 THỬ NGHIỆM 4.3 54
4.4 THỬ NGHIỆM 4.4 56
Chương 5 – KẾT LUẬN 5.1 KẾT LUẬN 58
5.2 HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI 58
TÀI LIỆU THAM KHẢO 59
Trang 12Bảng 1.1: Quần thể ban đầu
Bảng 1.10: Thế hệ thứ 2 sau khi đã đột biến và tính lại hàm fitness
Bảng 3.1: Giá trị cuối cùng của µij hội tụ về 1 hoặc 0
Danh mục các sơ đồ:
Sơ đồ 1.1: Sơ đồ tổng quát của GA
Sơ đồ 1.2: Sơ đồ tổng quát của EP
Trang 13Hình 1.5: Lai tạo hai điểm
Hình 1.10: Bình đồ với 12 cá thể của thế hệ cuối cùng
Hình 1.11: Đồ thị giá trị trung bình fitness và giá trị cực tiểu trong mỗi thế hệ Hình 1.12: Bình đồ quần thể ban đầu gồm 24 cá thể được khởi tạo ngẫu nhiên Hình 1.13: Bình đồ ở thế hệ thứ 3 với 24 cá thể
Hình 1.14: Bình đồ ở thế hệ thứ 5 với 24 cá thể
Hình 1.15: Bình đồ ở thế hệ thứ 7 với 24 cá thể
Hình 1.16: Đồ thị giá trị trung bình và giá trị cực tiểu hàm fitness qua mỗi thế hệ
Hình 2.10: Hợp của hai tập mờ theo S(x,y) = x + y + x.y
Trang 14Hình 3.6: Vector màu (Color vector)
giống nhau
Hình 4.10: 20 ảnh bị hỏng bởi các đường gạch và điểm chấm khoảng 40% của 2
đối tượng có màu nền giống nhau Hình 4.11: Sự hội tụ của các giá trị trung bình fitness qua các thế hệ
Hình 4.12: Ảnh được phục hồi
Hình 4.13: 2 ảnh gốc
Hình 4.14: 20 ảnh bị hỏng bởi màu sắc ngẫu nhiên khoảng 40%
Hình 4.15: Sự hội tụ của các giá trị trung bình fitness qua các thế hệ
Hình 4.16: Ảnh được phục hồi
Trang 15- Color space: Không gian màu sắc
- Color vector: Vector màu
- Crossover: Lai tạo
- EA (Evolutionary Algorithm): Thuật toán tiến hóa
- EP (Evolutionary Programming): Lập trình tiến hóa
- ES (Evolutionary Strategies): Chiến lược tiến hóa
- Fitness: Độ thích nghi
- Fuzzy evolutionary clustering: Phân nhóm tiến hóa mờ
- Fuzzy logic: Logic mờ
- Fuzzy set: Tập mờ
- GA (Genetic Algorithm): Thuật toán di truyền
- Genotype: Kiểu gen
- Mating Pool: Tập con của một quần thể gồm các nhiễm sắc thể tốt
- One point crossover: Lai tạo một điểm
- Two point crossover: Lai tạo hai điểm
- Uniform crossover: Lai tạo đều
Trang 16CHƯƠNG 1 TỔNG QUAN VỀ LẬP TRÌNH TIẾN HÓA (EP) VÀ THUẬT TOÁN DI
TRUYỀN (GA) 1.1 TỔNG QUAN
GA và EP dựa trên nguyên lí tiến hóa của tự nhiên: “Những cá thể nào thích nghi nhất sẽ có nhiều cơ may tồn tại và phát triển”
Trong mỗi thế hệ, các cá thể sẽ được đánh giá và chọn lọc thông qua độ thích nghi của chúng Những cá thể có độ thích nghi cao sẽ được chọn để nhân giống, trong khi những cá thể có độ thích nghi kém hơn sẽ bị loại bỏ Sau khi chọn lọc, các
cá thể được kết hợp lại với nhau để cho ra thế hệ mới
Các phép toán thường được dùng trong quá trình phát sinh thế hệ kế tiếp là lai tạo và đột biến Quá trình tiến hóa sẽ diễn ra liên tục, chỉ dừng lại khi ta có được những các thể có độ thích nghi mong muốn hay điều kiện dừng định trước nào đó được thỏa
GA và EP dựa vào các điểm khác nhau của quá trình tiến hóa GA dựa vào sự biển đổi kiểu gen (genotype) đặc trưng, trong khi EP chú trọng đến tính thích ứng, cải tiến của tập các giải pháp (phenotype)
1.2 TỔNG QUAN VỀ GA
Trong GA, mỗi giải pháp của bài toán được xem như một cá thể trong tự nhiên
và được mã hóa thành một chuỗi nhị phân được gọi là một nhiễm sắc thể
Trang 17Sơ đồ tổng quát của GA:
Sơ đồ 1.1: Sơ đồ tổng quát của GA
Bắt đầu
Khởi tạo ngẫu nhiên quần thể cha mẹ ban đầu
Đánh giá độ thích nghi của từng cá thể Chọn lọc cá thể với xác suất tỉ lệ với độ thích nghi
Áp dụng toán tử lai tạo với xác suất pc
Số cá thể của quần thể con cháu đủ chưa?
Áp dụng toán tử đột biến với xác suất pm cho mỗi
cá thể của quần thể con cháu
Thay quần thể cha mẹ bởi quần thể con cháu
Điều kiện dừng được thỏa?
Kết thúc
Trang 18Như vậy, một GA điển hình bao gồm các thành phần sau:
- Mã hóa – giải mã: để chuyển đổi giữa giải pháp và nhiễm sắc thể Thông thường, các giải pháp được mã hóa thành các chuỗi bit và có chiều dài nhất định, được gọi là các gen Nhiều gen hợp lại sẽ thành một nhiễm sắc thể hay còn gọi là cá thể
- Quần thể ban đầu: là tập các cá thể hay các nhiễm sắc thể ban đầu Thường thì quần ban đầu được chọn ngẫu nhiên
- Hàm mục tiêu (fitness): xác định độ thích nghi của cá thể
- Các tham số điều khiển:
o pc: Xác suất lai tạo
o pm: Xác xuất đột biến
o p: Số cá thể trong một thế hệ P
- Các phép toán chủ yếu trên tập các nhiễm sắc thể:
o Chọn lọc: lựa chọn các cá thể có độ thích nghi tốt để chuẩn bị phát sinh con cháu Tập hợp các cá thể này được gọi là “Mating Pool”
o Lai tạo: là chuyển các chất liệu gen giữa các nhiễm sắc thể với nhau với hy vọng sẽ tạo ra các nhiễm sắc thể tốt hơn
o Đột biến: tạo ra sự đa dạng trong quần thể giúp phục hồi lại những thông tin di truyền (gen) đã mất trong quá trình lai tạo
1.3 TỔNG QUAN VỀ EP
EP cũng tương tự như GA nhưng EP chú trọng đến sự biến đổi thích ứng của tập các cá thể hơn là sự biểu diễn của kiểu gen như trong GA Sự biến đổi thích ứng này dựa vào thông tin phản hồi từ môi trường nhằm làm cho các cá thể mới cho lời giải tốt hơn
Dạng biểu diễn của các cá thể trong EP thường thay đổi tùy theo vấn đề xem xét, và thông thường là các số thực hoặc số nguyên
Để tạo ra các cá thể mới, một phép toán đột biến hoạt động trên tập các cá thể hiện tại, sao cho mỗi cá thể được đột biến thành một cá thể mới
Trang 19Dạng chính xác của phép toán đột biến tùy thuộc vào dạng biểu diễn của các cá thể Các cá thể có độ thích nghi cao hơn thì có xu hướng ít bị đột biến hơn các cá thể có độ thích nghi thấp hơn
Sơ đồ tổng quát của EP:
Sơ đồ 1.2: Sơ đồ tổng quát của EP
Bắt đầu
Khởi tạo ngẫu nhiên quần thể cha mẹ ban đầu
Đánh giá độ thích nghi của từng cá thể
Đột biến các cá thể tùy theo độ thích nghi của chúng và đưa vào quần thể con cháu
Đánh giá độ thích nghi của từng cá thể trong quần
thể con cháu
Thay quần thể cha mẹ bởi các cá thể trên
Điều kiện dừng được thỏa?
Kết thúc
Chọn một nửa các cá thể trong tổng số các cá thể của quần thể cha mẹ và con cháu có độ thích nghi
tốt nhất
Trang 201.4 CÁC THÀNH PHẦN CƠ BẢN CỦA GA VÀ EP
GA và EP có những thành phần cơ bản như sau: mã hóa – giải mã, quần thể, chọn lọc, lai tạo và đột biến Tuy nhiên tùy thuộc vào bài toán mà các thành phần của GA và EP có cách biểu diễn khác nhau Thông thường thì sẽ có 2 cách biểu diễn: dạng nhị phân và dạng liên tục
Dạng biểu diễn nhị phân sẽ gặp trở ngại với những bài toán có tham số liên tục
vì sẽ làm cho kích thước của nhiễm sắc thể rất dài và giá trị hàm fitness có độ chính xác không cao Cho nên khi gặp những bài toán này người ta thường sử dụng cách biểu diễn dạng liên lục (dạng số thực) sẽ cho giá trị hàm fitness chính xác hơn
Cá thể = [p 1 , p 2 , , p Npar ]
Trang 21Hình 1.1: Đồ thị 3D của hàm fitness quanh đỉnh Long’s Peak
Hình 1.2: Bình đồ của đồ thị hàm fitness quanh đỉnh Long’s Peak
Trang 22Mỗi cá thể được đánh giá thông qua hàm thích nghi (fitness)
Hàm thích nghi thường phức tạp trong thực tế, nên người lập trình phải quyết định chỉ giữ lại những tham số quan trọng nhất mà thôi
Ví dụ 1.2: (tiếp ví dụ 1.1)
Có thể cho f(x, y) = - cd(x, y) Trong đó cd(x, y) = cao độ tại kinh độ x, vĩ độ y Sau khi xác định được cá thể chúng ta bắt đầu mã hóa về dạng nhị phân
Ví dụ 1.3: (tiếp ví dụ 1.2)
Giả sử bản đồ địa hình trên có 128 x 128 cao điểm, thì sẽ có 128 giá trị cho mỗi
sắc thể (NST) gồm 2 gen sẽ có Nbits = 7 + 7 = 14 bits Khi đó NST = [1100011|0011001]
1.4.1.2 Khởi tạo quần thể ban đầu
Quần thể ban đầu có Nipop nhiễm sắc thể (cá thể) tạo bởi một ma trận cấp Nipop x
Nbits gồm những phần tử có giá trị được khởi tạo ngẫu nhiên từ hai số 0 và 1
Ví dụ 1.4: (tiếp ví dụ 1.3)
một ma trận cấp 24 x 14 (Nipop x Nbits) Mỗi dòng của ma trận là 1 nhiễm sắc thể
Trang 23Đầu tiên, Nipop giá trị của hàm fitness và các cá thể sẽ được sắp xếp theo thứ tự tăng dần hoặc giảm dần tùy theo bài toán min hay max Sau đó, chỉ có Npop (Npop <=
Nipop) cá thể có độ thích nghi tốt nhất được giữ lại trong mỗi vòng lập và các cá thể khác sẽ bị loại bỏ
giữ lại Ngood cá thể có độ thích nghi tốt nhất để lai tạo và Nbad cá thể còn lại sẽ bị loại bỏ để dành chỗ cho các cá thể con cháu Thông thường Ngood = Nbad = Npop / 2 Giữ lại Ngood bao nhiêu là tùy ý miễn (Ngood + Nbad = Npop) nhưng nếu giữ lại nhiều thì có khả năng những cá thể có độ thích nghi kém sẽ được truyền lại cho đời con cháu
Bảng 1.1: Quần thể ban đầu
Trang 24Ví dụ 1.5: (tiếp ví dụ 1.4)
Nipop = 24 cho quần thể ban đầu, nhưng chỉ giữ lại Npop = 12 cá thể trong mỗi lần
tạo và Nbad = 6 cá thể còn lại bị loại bỏ
Trang 251.4.1.4 Phép lai tạo
Lai tạo là việc tạo ra một hay nhiều nhiễm sắc thể con cháu từ các cặp nhiễm sắc thể cha mẹ Các cặp nhiễm sắc thể cha mẹ có thể chọn tuần tự hoặc chọn ngẫu nhiên
Có ba phương pháp lai tạo nhị phân trong GA: lai tạo một điểm (one point
crossover), lai tạo hai điểm (two point crossover), lai tạo đều (uniform crossover)
Nhưng tất cả đều xuất phát từ hai nhiễm sắc thể cha mẹ để tạo ra hai nhiễm sắc thể con cháu
- Lai tạo một điểm
Bảng 1.2: Quần thể ban đầu đã được sắp xếp
Hình 1.4: Lai tạo một điểm
Trang 26- Lai tạo hai điểm
- Lai tạo đều
Ví dụ 1.6: (tiếp ví dụ 1.5)
Ở ví dụ này ta sử dụng phép lai tạo một điểm trên cặp nhiễm sắc thể bố mẹ được
Bảng 1.3: Chứa 6 nhiễm sắc thể có độ thích nghi tốt nhất
Hình 1.5: Lai tạo hai điểm
Hình 1.6: Lai tạo đều
Trang 27về một giá trị nhất định Do đó tỉ lệ các bit bị đột biến thường chỉ nên trong khoảng
từ 1% - 5% cho mỗi lần lặp của GA
Đối với những nhiễm sắc thể nào có độ thích nghi cao (tốt) thì ta sẽ không cho đột biến, nếu không sau khi đột biến nhiễm sắc thể đó có thể trở thành xấu Do đó
Bảng 1.4: Quá trình lai tạo, tạo ra 6 nhiễm sắc thể con cháu
Hình 1.7: Phép đột biến
Trang 28thường thì cá thể có độ thích nghi cao sẽ được giữ lại cho thế hệ sau Cách làm này gọi là “Chiến lược phần tử tối ưu” và rất hay được dùng trong GA
Phép đột biến làm đa dạng hóa các nhiễm sắc thể, tạo ra nhiều cơ hội để tìm kiếm lời giải của bài toán nhanh hơn
Trang 29là -13403 Thế hệ thứ 4 có giá trị trung bình là -13676, cho bởi hình 1.9 Giá trị trung bình ngày càng nhỏ dần (lớn dần về trị tuyệt đối) qua mỗi thế hệ
Hình 1.8: Bình đồ với 12 cá thể của thế hệ thứ 2 Bảng 1.6: Thế hệ thứ 2 đã được sắp xếp
Trang 311.4.1.7 Sự hội tụ
Số các thế hệ trong GA, EP phụ thuộc vào việc một lời giải đã được tìm thấy hay số lần lặp đã qui định trước hay một điều kiện hội tụ nào đó đã được thỏa mãn Hầu hết các GA, EP đều ghi nhận lại giá trị trung bình, độ lệch chuẩn và giá trị lớn nhất hoặc nhỏ nhất của hàm fitness trong mỗi thế hệ Các giá trị này được dùng để đánh giá sự hội tụ
Hình 1.10 cho thấy các nhiễm sắc thể đã tập trung xung quanh đỉnh Long’s Peak (đỉnh có cao độ lớn nhất của bản đồ) Đỉnh Long’s Peak có độ cao thực sự là 14.255 feet (so với mặt nước biển) và kết quả của GA là 14.199 feet – đây là giá trị hội tụ
độ fitness sau 8 thế hệ
Hình 1.10: Bình đồ với 12 cá thể của thế hệ cuối cùng
Trang 321.4.2 Dạng liên tục
1.4.2.1 Mã hóa tham số - Hàm fitness
nhiễm sắc thể có Npar tham số: p1, p2, p3, …, pNpar
NST = [p1, p2, …, pNpar] (*) Trong đó mỗi tham số p1, p2, …, pNpar được biểu diễn là một số thực
Mỗi nhiễm sắc thể được đánh giá thông qua hàm fitness:
c = f(NST) = f(p1, p2, …, pNpar) (**) Các tham số trong (*) và (**) thường có các điều kiện ràng buộc
Ví dụ 1.7: xét hàm fitness sau:
c = f(x, y) = xsin(4x) + 1.1ysin(2y), với 0 ≤ x ≤ 10 và 0 ≤ y ≤ 10
Hình 1.11: Đồ thị giá trị trung bình fitness và giá trị cực
tiểu trong mỗi thế hệ
Trang 33Vì f là một hàm liên tục của hai biến x, y nên có thể chọn như sau:
NST = [x, y] với Npar = 2
Vấn đề đặt ra là tìm cực trị toàn cục của hàm số trên Bằng các phương pháp truyền thống thì khó mà tìm được cực tiểu thực sự mà chỉ tìm được các cực trị địa phương Do đó, GA thích hợp trong trường hợp này
1.4.2.2 Khởi tạo quần thể ban đầu
Giống như dạng nhị phân
Npar = 2, x, y nằm trong khoảng [0, 10]
Nipop = 48 (Chọn Nipop lớn do hàm f phức tạp)
1.4.2.3 Phép chọn lọc
Giống như dạng nhị phân
mỗi lần lặp Ta chỉ giữ lại Ngood = 12 nhiễm sắc thể tốt để lai tạo và Nbad = 12 nhiễm sắc thể xấu sẽ bị loại đi
Hình 1.12: Bình đồ quần thể ban đầu gồm 24 cá thể được khởi tạo ngẫu nhiên – biểu diễn bằng dấu ▪
Trang 35Phương pháp 1:
Chọn một hay nhiều điểm trong nhiễm sắc thể làm các điểm lai tạo Khi đó các tham số giữa các điểm lai tạo được hoán vị cho nhau giữa hai nhiễm sắc thể cha mẹ
Phương pháp 2:
của nhiễm sắc thể cha và mẹ như sau:
pme_n, pcha_n là tham số thứ n của nhiễm sắc thể mẹ, cha
Bảng 1.9: Mating Pool gồm 12 cá thể tốt nhất
NSTmẹ = [pme1, pme2, pme3, pme4, ., pmeNpar] NSTcha = [pcha1, pcha2, pcha3, pcha4, , pchaNpar]Chọn hai vị trí ngẫu nhiên: 2 và 4, ta có:
NSTmẹ = [pme1, pcha2, pcha3, pcha4, ., pmeNpar] NSTcha = [pcha1, pme2, pme3, pme4 , , pchaNpar]
pmoi = β pme_n + (1 - β) pcha_n
Trang 361.4.2.5 Phép đột biến
Giống như trong dạng biểu diễn nhị phân, tỉ lệ đột biến trong khoảng 1% -> 5% Nếu tỉ lệ lớn hơn 5% thì có khả năng nhiều nhiễm sắc thể tốt bị đột biến, làm hỏng quá trình tìm kiếm của GA