Thuật toán di truyền

Một phần của tài liệu Nghiên cứu ứng dụng thuật toán đàn kiến để giải bài toán người du lịch (Trang 31 - 34)

Thuật toán di truyền [1] là thuật toán metaheuristic, metaheuristic là một cách gọi chung cho các thuật toán heuristic trong việc giải quyết các bài toán tổ hợp khó. Metaheuristic bao gồm những chiến lược khác nhau trong việc khám phá không gian tìm kiếm bằng cách sử dụng những phương thức khác nhau và phải đạt được sự cân bằng giữa tính đa dạng và chuyên sâu của không gian tìm kiếm. Một cài đặt thành công của metaheuristic trong một bài toán tổ hợp phải cân bằng giữa sự khai thác được kinh nghiệm thu thập được trong quá trình tìm kiếm để xác định được những vùng với những lời giải có chất lượng cao gần tối ưu. Hầu hết các thuật toán metaheuristic đều lấy cảm hứng từ tự nhiên như: thuật toán luyện thép (SA), thuật toán di truyền (GA), thuật toán đàn kiến (ACO) ,…Thuật toán đàn kiến là metaheuristic dùng chiến lược của kiến trong thế giới thực để giải bài toán tối ưu. SA xuất phát từ phương thức xác suất và kỹ thuật luyện bao gồm việc nung và điều khiển àm nguội các kim loại để đạt được trạng thái năng lượng nhỏ nhất. Trong khi đó thuật toán di truyền dựa trên ý tưởng từ cơ chế di truyền trong sinh học và tiến trình tiến hóa trong cộng đồng các cá thể của một loài.

Thuật toán di truyền gồm có bốn quy luật cơ bản là lai ghép, đột biến, sinh sản và chọn lọc tự nhiên như sau:

*Quá trình lai ghép (phép lai)

Quá trình này diễn ra bằng cách ghép một hay nhiều đoạn gen từ hai nhiễm sắc thể cha-mẹ để hình thành nhiễm sắc thể mới mang đặc tính của cả cha lẫn mẹ. Phép lai này có thể mô tả như sau:

− Chọn ngẫu nhiên hai hay nhiều cá thể trong quần thể. Giả sử chuỗi nhiễm sắc thể của cha và mẹ đều có chiều dài là m.

− Tìm điểm lai bằng cách tạo ngẫu nhiên một con số từ 1 đến m-1. Như vậy, điểm lai này sẽ chia hai chuỗi nhiễm sắc thể cha-mẹ thành hai nhóm nhiễm sắc thể con là m1 và m2. Hai chuỗi nhiễm sắc thể con lúc này sẽ là m11+m22 và m21+m12.

− Đưa hai chuỗi nhiễm sắc thể con vào quần thể để tiếp tục tham gia quá trình tiến hóa

*. Quá trình đột biến (phép đột biến)

Quá trình tiến hóa được gọi là quá trình đột biến khi một hoặc một số tính trạng của con không được thừa hưởng từ hai chuỗi nhiễm sắc thể cha-mẹ. Phép đột biến xảy ra với xác suất thấp hơn rất nhiều lần so với xác suất xảy ra phép lai. Phép đột biến có thể mô tả như sau:

− Chọn ngẫu nhiên một số k từ khoảng 1 ≥ k ≥ m

− Thay đổi giá trị của gen thứ k

− Đưa nhiễm sắc thể con vào quần thể để tham gia quá trình tiến hóa tiếp theo

* Quá trình sinh sản và chọn lọc (phép tái sinh và phép chọn)

Phép tái sinh: là quá trình các cá thể được sao chép dựa trên độ thích nghi của nó. Độ thích nghi là một hàm được gán các giá trị thực cho các cá thể trong quần thể của nó. Phép tái sinh có thể mô phỏng như sau:

− Tính độ thích nghi của từng cá thể trong quần thể, lập bảng cộng dồn các giá trị thích nghi đó (theo thứ tự gán cho từng cá thể) ta được tổng độ thích nghi. Giả sử quần thể có n cá thể. Gọi độ thích nghi của cá thể thứ i là Fi, tổng dồn thứ i là Ft.Tổng độ thích nghi là Fm

− Tạo số ngẫu nhiên F có giá trị trong đoạn từ 0 đến Fm

− Chọn cá thể k đầu tiên thỏa mãn F ≥ Ft đưa vào quần thể của thế hệ mới.

* Phép chọn: là quá trình loại bỏ các cá thể xấu và để lại những cá thể tốt. Phép chọn được mô tả như sau:

− Sắp xếp quần thể theo thứ tự độ thích nghi giảm dần

− Loại bỏ các cá thể cuối dãy, chỉ để lại n cá thể tốt nhất. Sơ đồ cấu trúc thuật toán di truyền minh họa ở hình 1.12.

Hình 1.. Sơ đồ cấu trúc thuật toán di truyền

Bốn tác giả Fozia Hanif Khan, Nasiruddin Khan, Syed Inayatulla, Shaikh Tajuddin NizamiSolving với bài nghiên cứu “TSP Problem by Using Genetic Algorithm” đã trình bày thuật toán di truyền để giải quyết bài toán TSP với cách biểu diễn nhiễm sắc thể bằng một ma trận nhị phân. [22]

Sumanta Basu với bài nghiên cứu “Tabu Search Implementation on Traveling Salesman Problem and Its Variations: A Literature Survey” đã giới thiệu về cách giải bài toán TSP bằng thuật toán tìm kiếm Tabu và các mở rộng của nó. [23]

1.6. KẾT CHƯƠNG

Một phần của tài liệu Nghiên cứu ứng dụng thuật toán đàn kiến để giải bài toán người du lịch (Trang 31 - 34)

Tải bản đầy đủ (DOCX)

(78 trang)
w