1. Trang chủ
  2. » Tất cả

Giải thuật di truyền và áp dụng cho bài toán chiếc ba lô loại 2

12 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 12
Dung lượng 0,96 MB

Nội dung

Ket-noi.com kho tài liệu miễn phí I Giới thiệu chung II Giải thuật gene Các khái niệm Cấu trúc GAs III Áp dụng thuật toán gene vào toán Knapsack 02 Mơ tả tốn Phương án giải toán IV Ưu nhược điểm 11 Ưu điểm 11 Nhược điểm 11 V Kết luận 11 Tài liệu tham khảo: 12 Ket-noi.com kho tài liệu miễn phí I Giới thiệu chung Xuất phát từ khái niệm lý thuyết Darwin tồn thích hợp John Holland đưa lần vào năm 1975 Thuật toán gene (GAs – Genetic Algorithms) thuật tốn tìm kiếm, chọn lựa giải pháp tối ưu để giải toán khác dựa mơ chế tiến hố tự nhiên Trong thể sinh vật, gene liên kết với theo cấu trúc dạng chuỗi gọi nhiễm sắc thể (Chromosomes), đặc trưng co lồi định sống cịn thể Trong tự nhiên lồi muốn tồn phải thích nghi với mơi trường, thể sống thích nghi với mơi trường tốt tồn phát triển, ngược lại với lồi khơng thích nghi với mơi trường sống bị đào loại bỏ tuyệt chủng Môi trường tự nhiên thay đổi nên cấu trúc nhiễm sắc thể thay đổi để thích nghi với mơi trường nên hệ sau ln có độ thích nghi cao hệ trước Dựa vào nhà khoa học máy tính xây dựng nên mơi trường giải thuật tìm kiếm dựa sở chọn lọc tự nhiên quy luật tiến hoá, gọi giải thuật gene Năm 1989, Goldberg khác chủ yếu GAs phương pháp tối ưu truyền thống sau: - GAs sử dụng theo xác suất, khơng phải theo định, để tìm kiếm quy tắc - GAs sử dụng thông tin từ hàm mục tiêu, không sư dụng thông tin biết khác - Đăc trưng GAs sử dụng mã hố tập hợp biến định, khơng phải biến định thân - Những tìm kiếm GAs xuất phát từ tập hợp biến định quần thể, tập hợp biến định riêng lẻ Ket-noi.com kho tài liệu miễn phí II Giải thuật gene Các khái niệm - - - - - - Nhiễm sắc thể (Chromosomes): o Trong GAs cá thể mã hoá cấu trúc liệu mô tả cấu trúc gen cá thể đó, ta gọi nhiễm sắc thể Chúng đại diện cho không gian giải pháp ứng cử viên Nhiễm sắc thể mã hoá nhị phân, hoán vị, giá trị mã hoá o Đối với tốn ba lơ loại 2, ta sử dụng mã hoá giá trị Quần thể (Population): o Là tập hợp cá thể, tiến hoá từ hệ tới hệ khác phụ thuộc vào thích nghi cá thể Thế hệ (Generation): o GAs làm việc cá thể nhiều quần thể, quần thể ứng với giai đoạn phát triển gọi hệ Hàm thích nghi (Fitness function): o GAs yêu cầu hàm thích nghi để chứa điểm cá thể cộng đồng Từ tính toán giải pháp mã hoá nắm cách mà chúng giải vấn đề Kỳ vọng (Hope): o Hy vọng hế hệ sinh chứa lời giải tốt cho toán Toán tử tái sinh (Reproduction) hay toán tử chọn lọn (Selection): o Các cá thể tốt chọn lọc để đưa vào hệ sau dựa hàm thích nghi Tốn tử lại ghép (Crossover): o Hai cá thể cha mẹ trao đổi Gen để tạo cá thể Toán tử đột biến (Mutation): o Một cá thể thay đổi số Gen không theo quy luật để tạo hệ Ket-noi.com kho tài liệu miễn phí Cấu trúc GAs Step 0: Initialization (Khởi tạo) Cài đặt hàm Step 1: Selection (Lựa chọn) Procedure GA begin Step 2: Crossover (Lai ghép) t := ; initialize P(t) ; evaluate P(t) ; Step 3: Mutation (Đột biến) while (not termination-condition) begin t := t + ; Step 4: Evaluation (Đánh giá) select P(t) from P(t-1) ; alter P(t) ; evaluate P(t) ; end; end; Không thoả mãn Step 5: Termination test (Kiểm tra) Thoả mãn Step 6: End (Kết thúc) Ket-noi.com kho tài liệu miễn phí a Mã hố (Encoding) - Mã hố nhị phân (Binary Encoding – BE): o Là kiểu mã hố thơng dụng vì: nghiên cứu thuật tốn Gen sử dụng kiểu mã hóa đơn giản o Trong BE, nhiễm sắc thể chuỗi bits - or o NST A 101100101100101011100101 o NST B 111111100000110000011111 o Các mã hóa thường khơng tự nhiên cho nhiều toán sai sau thự phép toán lai ghép đột biến - Mã hoá hốn vị (Permutation Encoding – PE): o Có thể sử dụng để giải tốn có thứ tự như: Người bán hàng o Trong PE, tất NST chuỗi số biểu diễn vị trí dãy o NST A o NST B o PEđược sử dụng tốn có thứ tự Trong vài trường hợp, việc hiệu chỉnh lai ghép đột biến phải thực để tạo NST phù hợp - Mã hoá giá trị (Value Encoding – VE): o Được sử dụng tốn mà việc mã hóa nhị phân khó thực (Như tốn knapsack 02) o Trong VE nhiễm sắc thể chuỗi giá trị nhận dạng tùy thuộc vào toán cụ thể o NST A 1.2324 5.3243 0.4556 2.3293 2.4545 o NST B ABDJEIFJDHDIERJFDLDFLFEGT o NST C (back), (back), (right), (forward), (left) o Với kiểu mã hóa thường phải xây dựng số phép lai ghép đột biến cho tóan cụ thể - Mã hố dạng (Tree Encoding – TE): o TE thường sử dụng toán biểu thức suy luận o Trong TE, NST gồm đối tượng hàm câu lệnh ngôn ngữ lập trình o TE thường dùng bìa tóan suy luận cấu trúc biểu diễn o Các phép lai ghép đột biến kiểu mã hóa tương đối dễ thực Ket-noi.com kho tài liệu miễn phí b c - d - Khởi tạo quần thể Thường chọn random dựa vào yêu cầu tốn Hàm thích nghi Hàm thích nghi định nghĩa tiêu chuẩn để xếp hạng giả thuyết tiềm ẩn để chọn lọc chúng theo xác suất để đưa vào quần thể hệ Mỗi tốn có hàm thích nghi riêng Chọn lọc Các nhiễm sắc thể chọn từ quần thể cha cho lai ghép (crossover) Theo thuyết tiến hoá Darwin cá thể tốt họn để lai ghép Có nhiều phương pháp lựa chọn như: o Roulette Wheel Selection:  Nhiễm sắc thể chọn thông qua độ thích nghi chúng  Nhiễm sắc thể tốt (mang hàm ý xác suất) chọn  Minh họa phương pháp chọn:  Đặt NST lên roulette wheel  Kích thước đoạn roulete wheel tương ứng với giá trị hàm thích nghi  Một bi lăn roulette wheel NST nơi dừng lại lựa chọn  NST với giá trị thích nghi lớn chọn nhiều  Tiến trình mơ tả thuật tốn sau:  [Tính tổng] Tính tổng S giá trị thích nghi tất cá thể quần thể  [Lựa chọn] Chọn ngẫu nhiên giá trị r đoạn (0,S)  [Vòng lặp] Với giá trị ngẫu nhiên r chọn, tương ứng với thể hình thành S cá thể chọn cho hệ Ket-noi.com kho tài liệu miễn phí o Rank Selection:  Roulette Wheel Selection có vấn đề có khác lớn độ thích nghi  Ví dụ: NST tốt có độ thích nghi 90% NST khác hội lựa chọn  Rank selection tính hạng quần thể sau NST nhận lại giá trị thích nghi định nghĩa hạng chúng  NST tồi có độ thích nghi 1, NST tồi thứ hai etc NST tốt có độ thích nghi N (Số nhiễm sắc thể quần thể)  Trạng thái thay đổi sau độ thích nghi thay đổi hạng cá thể  Bây tất NST có số ngẫu nhiên để lựa chọn Situation before ranking (graph of fitnesses) Situation after ranking (graph of order numbers) o Elitism:  Khi tạo quần thể crossover mutation, làm cá thể tốt  Phương pháp Elitism cho phép copy cá thể tốt (hoặc vài cá thể tốt) sang quần thể  Thành phần lại quần thể tạo từ cách khác  Phương pháp Elitism tăng tốc cho GA, ngăn khơng làm cá thể tốt o Steady-State Selection  Trong tất hệ có vài NST tốt (Với độ thích nghi cao) chọn để tạo NST  Một vài NST tồi (với độ thích nghi thấp) bị xóa bỏ NST thay chỗ chúng  Phần lại quần thể tạo hệ o Boltzman selection o … Ket-noi.com kho tài liệu miễn phí e Lai ghép đột biến - Đây phép toán thuật toán gen Sự hình thành luật GAs phụ thuộc nhiều vào phép toán - Kiểu thể toán tử phụ thuộc vào kiểu mã hóa phụ thuộc vào tốn - Có nhiều cách để thực việc lai ghép đột biến: Các chuỗi ban đầu Các cá thể Lai ghép điểm đơn: 11101001000 11101010101 00001010101 00001001000 11101001000 11001011000 00001010101 00101000101 11101001000 10001000100 00001010101 01101011001 11101001000 11101011000 Lai ghép điểm kép: Lai ghép đồng nhất: Đột biến điểm: f Tiêu chuẩn kết thúc - Thuật toán dừng quần thể hội tụ, i.e cá thể tốt quần thể giống với kết mong muốn - Kết thúc số hệ sinh đạt đến số vòng lặp xác định trước - Kết thúc thể trở lên giống - Kết thúc cá thể tốt quần thể không thay đổi theo thời gian Ket-noi.com kho tài liệu miễn phí III Áp dụng thuật toán gene vào toán Knapsack 02 Mơ tả tốn • Đơn vị đ/c chuẩn bị hành qn • Ngồi qn dụng bắt buộc phải mang theo, đ/c phải chọn số vật dụng khác phải mang theo để phục vụ sinh hoạt • Tuy nhiên balo đ/c có hạn để khối lượng k Giả sử đồ dùng có khối lượng w giá trị sử dụng c, vật có nhiều số lượng chọn nhiều lần • Đ/c phải chọn đồ để bỏ vào balo cho không vượt khối lượng k giá trị sử dụng c cho lớn Phương án giải toán a Mã hoá: Đối với tốn knapsack 02, vật chọn nhiều lần nên ta dùng mã hoá giá trị cho nhiễm sắc thể – VD: Có đoạn gen: 0498392 • Số có nghĩa vật chọn lần • Số thứ có nghĩa vật chọn lần • … b Khởi tạo quần thể Sau mã hoá ta quần thể với gen ngẫu nhiên nên có cá thể khơng thoả mãn yêu cầu đề khối lượng Những cá thể thoả mãn giữ lại tạo thành quần thể Quần thể dung để chọn lọc lai ghép Ket-noi.com kho tài liệu miễn phí c Hàm thích nghi Hàm thích nghi xây dựng tổng khối lượng cá thể Sau chọn cá thể ta tính khối lượng dựa số lần chọn vật khối lượng vật – Nếu tổng khối lượng lớn khả chứa balo cá thể bị loại bỏ – Nếu tổng khối lượng nhỏ sức chứa balo ta tiếp tục thuật tốn – Nếu số cá thể cịn lại số cá thể giới hạn quần thể ta tiếp tục lai ghép cá thể bố mẹ đủ cá thể thoả mãn cho quần thể d Lựa chọn cá thể Theo yêu cầu toán ta sử dụng phương pháp chọn Elitism Phương pháp cho phép copy cá tốt sang quần thể Những cá thể lại chọn theo phương pháp khác Để đánh giá cá thể tốt hay không ta cần hàm đánh giá, hàm đánh giá trả giá trị tổng giá trị balo sau chọn vật Các cá thể có giá trị cao lưu lại e Lai ghép Là phép tốn thuật tốn Gen Có nhiều cách để lai ghép phụ thuộc vào cách mã hoá Với cách mã hoá giá trị, ta sử dụng cách lai ghép: Cắt đoạn Gen cá thể a ghép vào đoạn gen cá thể b Sau lần lai ghép ta phải kiểm tra hàm thích nghi, lấy cá thể thoả mã hàm thích nghi Đối với tốn này, ta lấy tỉ lệ lai ghép mặc định 80% f Đột biến Đối với toán mã hoá theo giá trị ta cộng trừ số từ giá trị chọn cá thể đột biến Về tỉ lệ đột biến: Nếu ta chọn tỉ lệ cao kết khó hội tụ Cịn q thấp có khả ảnh hưởng đến tốn Trong chương trình, ta lấy tỉ lệ đột biến mặc định 1% 10 Ket-noi.com kho tài liệu miễn phí g Điều kiện dừng Nếu đủ thời gian ta cho thuật toán chạy đến cá thể không thay đổi theo thời gian cá thể sinh giống hệt Nếu khơng có đủ thời gian ta lấy kết tốt thời gian chạy thuật toán để làm lời giải cho toán Trong chương trình, tơi để mặc định chạy 1000 lần dừng thuật toán IV Ưu nhược điểm - - V Ưu điểm GAs có khả chạy song song Ít bị rơi vào cực trị địa phương (Giải đột biến) Với cách mã hoá thay đổi hàm thích nghi Khi có thuật toán gene bản, cần viết nhiễm sắc thể để xử lý toán khác Nhược điểm Thời gian tính tốn chậm thuật tốn khác Q trình tính tốn kết thúc lúc nào, khơng có kế hoạch trước Giống tiến hoá tự nhiên, cha mẹ tốt chưa sinh tốt Nên dùng giải thuật gene để giải toán giữ lại cá thể tốt quần thể chưa sau lai ghép sinh cá thể tốt Kết luận Thuật toán gene thuật toán tối ưu hiệu quả, mơ tiến hố tự nhiên Thuật tốn có ưu điểm mà thuật tốn tìm kiếm khác thường mắc phải giảm thiểu khả rơi vào khoảng nghiệm cục tốn Trong q trình nghiên cứu cịn nhiều thiếu xót, kính mong thầy nhận xét bổ sung cho em để em hồn thiện kiến thức Em xin chân thành cảm ơn !!! 11 Ket-noi.com kho tài liệu miễn phí Tài liệu tham khảo: o Bài 3-2: Slide trí tuệ nhân tạo – TS.Ngô Hữu Phúc o Và số tài liệu khác webside: www.123doc.vn 12 ... Được sử dụng toán mà việc mã hóa nhị phân khó thực (Như toán knapsack 02) o Trong VE nhiễm sắc thể chuỗi giá trị nhận dạng tùy thuộc vào toán cụ thể o NST A 1 .23 24 5. 324 3 0.4556 2. 329 3 2. 4545... cộng đồng Từ tính tốn giải pháp mã hố nắm cách mà chúng giải vấn đề Kỳ vọng (Hope): o Hy vọng hế hệ sinh chứa lời giải tốt cho toán Toán tử tái sinh (Reproduction) hay toán tử chọn lọn (Selection):... nhiễm sắc thể Chúng đại di? ??n cho không gian giải pháp ứng cử viên Nhiễm sắc thể mã hoá nhị phân, hoán vị, giá trị mã hoá o Đối với toán ba lơ loại 2, ta sử dụng mã hố giá trị Quần thể (Population):

Ngày đăng: 27/02/2023, 17:48

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN