thuật toán di truyền

17 623 0
thuật toán di truyền

Đ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

Giải thuật di truyền (GA) là một trong những mô hình tính toán phổ biến và thành công nhất trong lĩnh vực tính toán thông minh.Thuật giải di truyền, cũng như các thuật toán tiến hoá nói chung, hình thành dựa trên quan niệm cho rằng, quá trình tiến hoá tự nhiên là hoàn hảo nhất, hợp lý nhất, và tự nó đã mang tính tối ưu. Quan niệm này có thể được xem như là một tiên đề đúng, không chứng minh được, nhưng phù hợp với thực tế khách quan. Quá trình tiến hoá thể hiện tính tối ưu ở chỗ, thế hệ sau bao giờ cũng tốt hơn, phát triển hơn, hoàn thiện hơn thế hệ trước. Xuyên suốt quá trình tiến hoá tự nhiên, các thế hệ mới luôn được sinh ra để bổ xung thay thế thế hệ cũ. Cá thể nào phát triển hơn, thích ứng hơn với môi trường sẽ tồn tại, cá thể nào không thích ứng với môi trường sẽ bị đào thải. Sự thay đổi môi trường là động lực thúc đẩy quá trình tiến hoá. Ngược lại, tiến hoá cũng tác động trở lại góp phần làm thay đổi môi trường.

MỞ ĐẦU Trong năm gần đây, vấn đề tối ưu hóa kết cấu có vai trò ý nghĩa quan trọng, nhằm mục đích xác định kích thước hợp lý kết cấu sở đảm bảo đủ bền, tương ứng chi phí vật liệu thấp nhất, không cho phép giảm giá thành sản phẩm mà ảnh hưởng tốt đến tính kết cấu Giải thuật di truyền (GA) mô hình tính toán phổ biến thành công lĩnh vực tính toán thông minh.Thuật giải di truyền, thuật toán tiến hoá nói chung, hình thành dựa quan niệm cho rằng, trình tiến hoá tự nhiên hoàn hảo nhất, hợp lý nhất, tự mang tính tối ưu Quan niệm xem tiên đề đúng, không chứng minh được, phù hợp với thực tế khách quan Quá trình tiến hoá thể tính tối ưu chỗ, hệ sau tốt hơn, phát triển hơn, hoàn thiện hệ trước Xuyên suốt trình tiến hoá tự nhiên, hệ sinh để bổ xung thay thế hệ cũ Cá thể phát triển hơn, thích ứng với môi trường tồn tại, cá thể không thích ứng với môi trường bị đào thải Sự thay đổi môi trường động lực thúc đẩy trình tiến hoá Ngược lại, tiến hoá tác động trở lại góp phần làm thay đổi môi trường TỔNG QUAN VỀ TỐI ƯU HÓA I Trong lĩnh vực thiết kế kết cấu, nay, yêu cầu độ bền, độ cứng, độ ổn định, người thiết kế phải thiết kế kết cấu cho chi phí vật liệu nhỏ nhất, giá thành thấp nhất, trọng lượng toàn kết cấu bé Với yêu cầu vậy, việc tính toán kết cấu theo lý thuyết tối ưu cần thiết Các phương pháp Hai dòng phương pháp để giải toán tối ưu hóa kết cấu, lý thuyết quy hoạch toán học tiêu chuẩn tối ưu 1.1 Phương pháp quy hoạch toán học Bài toán thiết kế tối ưu phát biểu sau : Tìm tập hợp giá trị X = (x1, x2, , xn) để cho hàm số Z  f (x1, x , x n ) đạt cực trị (cực đại hay cực tiểu), đồng thời thỏa mãn điều kiện sau: g1i (x1 , x , x n )  a1i  g 2i (x1 , x , x n )  a 2i  (i   n)(1.1)  g (x , x , x )  a n ni  1i  x imin  x i  x im ax Trong đó, hàm Z gọi hàm mục tiêu, điều kiện (1.1) hệ ràng buộc gồm nhiều hàm ràng buộc Riêng toán toán tối ưu hóa kết cấu, hàm mục tiêu Z trọng lượng, giá thành , hàm ràng buộc ràng buộc độ bền, độ cứng, độ ổn định điều kiện cân v v , ximin, ximax giá trị nhỏ giá trị lớn biến thiết kế, kích thước kết cấu Khi đó, tập hợp giá trị X = (x 1, x2, … xn) thỏa mãn tất điều kiện ràng buộc gọi phương án, phương án làm hàm Z đạt cực trị (cực đại hay cực tiểu) phương án tối ưu nghiệm toán mục tiêu toán thiết kế tối ưu kết cấu tìm phương án tối ưu, tức nghiệm toán Miền tập hợp tất phương án gọi miền nghiệm hay gọi không gian biến thiết kế 1.2 Phương pháp tiêu chuẩn tối ưu Là phương pháp gián tiếp dựa phương pháp nhân tử lagrange, phương pháp có ưu điểm cho kết xác, biểu diễn toán học chặt chẽ phạm vi áp dụng chủ yếu toán có hàm buộc phương trình Với toán tối ưu hóa kết cấu phương pháp áp dụng Phân loại toán tối ưu 2.1 Phân loại theo mức độ tuyến tính * Tối ưu hóa tuyến tính: Hàm Z g ( hàm buộc) tuyến tính thường biểu diễn dạng: Z  [c j ]*[x j ]'  max(min) gi  [a ij ]*[x j ]'(; ; )b j [x lo ]  [x]  [x up ] * Tối ưu hóa phi tuyến: Có hàm g Z phi tuyến 2.2 Phân loại theo số biến * Tối ưu hóa hàm biến: có biến thiết kế * Tối ưu hóa hàm nhiều biến: có biến thiết kế 2.3 Phân loại theo điều kiện buộc * Tối ưu hóa có ràng buộc: toán có hàm mục tiêu hàm ràng buộc * Tối ưu hóa hàm nhiều biến: có hàm mục tiêu, hàm ràng buộc Thực chất toán tón tìm cực trị hàm mục tiêu 2.4 Phân loại theo tính liên tục biến thiết kế * Biến thiết kế liên tục: biến nhiệt độ, vận tốc * Biến thiết kế rời rạc: Biến diện tích tiết diện, biến mô men kháng uốn 2.5 phân loại theo tính tường minh hàm buộc * Hàm ràng buộc tường minh: Có thể lập phương trình hàm ràng buộc với biến đầu vào * Hàm ràng buộc không tường minh: Không lập hàm ràng buộc tường minh vớ c, Đặc điểm toán tối ưu hóa kết cấu Đặc điểm toán tối ưu hóa kết cấu: Tính phi tuyến: Có thể tuyến tính (Bài toán dàn, khung đơn giản) đa số phi tuyến (bài toán thanh, khung, …) Tính tường minh: Có thể tường minh (Bài toán dàn) đa số viết hàm ràng buộc tường minh Ưu nhược điểm phương pháp tối ưu kết cấu 4.1 Phương pháp tìm kiếm trực tiếp + Thuận lợi giải toán tối ưu rời rạc + Tối ưu toán tuyến tính lẫn phi tuyến + Không cần hàm buộc tường minh + Chắc chắn tìm nghiệm tối ưu toàn miền 4.2 Phương pháp đồ thị + Chỉ tối ưu tuyến tính, toán tối đa hai biến + Tìm nghiệm tối ưu toàn miền + Phải vẽ đồ thị, tối ưu kết cấu đơn giản (bài toán dàn đơn giản) + Không thể tự động hóa trình tối ưu 4.3 Phương pháp đơn hình( cải tiến từ phương pháp đồ thị) + Chỉ tối ưu tuyến tính, tối ưu hàm nhiều biến + Tìm nghiệm tối ưu toàn miền + Phải lập bảng, tối ưu kết cấu đơn giản (bài toán dàn đơn giản) + Có thể tự động hóa trình tối ưu 4.4 Phương pháp gradien + Có thể tối ưu phi tuyến, tối ưu hàm nhiều biến + Chỉ tìm tối ưu toàn miền miền nghiệm lồi (trong toán kết cấu đa số miền ngiệm không lồi) + Độ xác tốc độ tối ưu phụ thuộc nghiệm ban đầu lựa chọn 4.5 Phương pháp nhân tử Lagrange + Có thể tối ưu phi tuyến, tối ưu hàm nhiều biến + Tìm nghiệm toàn miền + Đòi hỏi hàm phải tường minh o Độ xác tối ưu thấp 4.6 Phương pháp tuyến tính hóa + Có thể tối ưu phi tuyến, tối ưu hàm nhiều biến + Tìm nghiệm toàn miền + Đòi hỏi hàm phải tường minh + Độ xác tối ưu thấp 4.7 Phương pháp sử dụng mạng trí tuệ nhân tạo (logic mờ, di truyền) + Có thể tối ưu phi tuyến, tối ưu hàm nhiều biến + Tìm nghiệm toàn miền + Không cần hàm phải tường minh + Tốc độ tối ưu không xác định được, mang tính ngẫu nhiên THUẬT TOÁN DI TRUYỀN II Khái niệm Thuật toán di truyền thuật toán tìm kiếm để giải toán tối ưu hóa dựa mô bắt chước chế chọn lọc tự nhiên chế di truyền giới sinh vật Trong di truyền học, nhiễm sắc thể tạo thành từ Gen-biểu diễn chuỗi tuyến tính, Gen kiểm soát hay nhóm đặc trưng cá thể Mỗi nhiễm sắc thể coi biểu diễn lời giải toán Trong giới tự nhiên, trình tiến hóa xảy quần thể nhiễm sắc thể Thuật toán di truyền mang nhiều đặc trưng loại thuật toán tìm kiếm ngẫu nhiên điều khác biệt kết hợp thêm đặc tính loại thuật toán tìm kiếm tất định Nó trì xử lý liên tục tập hợp (quần thể)các lời giải (các phương án có thể) không xét lần điểm không gian tìm kiếm Do mà thuật toán di truyền có nhiều ưu điểm giải toán tối ưu hóa thực tế với nhiều biến số không gian tìm kiếm thực tế phức tạp, khó mô tả công thức toán học thông thường Thuật toán di truyền thực tìm nghiệm tối ưu theo hướng cách trì tập hợp nghiệm cho phép, tạo trao đổi thông tin hướng tìm kiếm Tập hợp(quần thể) nghiệm cho phép, trải qua trình tiến hóa, tương ứng với đợt tìm kiếm(coi hệ) lại tái sinh nghiệm tương đối tốt, loại bỏ nghiệm xấu Tiêu chí để đánh giá mức độ tốt hay xấu nghiệm giá trị tương ứng với nghiệm hàm số mục tiêu Vậy hàm số mục tiêu đóng vai trò giống vai trò điều kiện môi trường khắc nghiệt giới tự nhiên Mục tiêu nghiên cứu giải thuật di truyền (GA) + Trừu tượng hóa diễn đạt xác trình thích nghi hệ thống tự nhiên + Thiết kế phần mềm hệ thống nhân tạo nhằm trì chế quan trọng hệ thống tự nhiên + Những mục tiêu dẫn đến khám phá quan trọng hệ thống khoa học tự nhiên lẫn nhân tạo + GA đời phát triển dựa trình tiến hóa tự nhiên ứng dụng thành công nhiều lĩnh vực tối ưu hóa máy học Đặc điểm chủ yếu thuật toán di truyền Thuật toán di truyền xét duyệt toàn có thể, sau cho nghiệm tương đối tốt sở so sánh giá trị hệ số thích nghi Thuật toán di truyền không để ý đến chất vật lý hay chất toán học toán mà ý đến nghiệm, đặc biệt đến dãy số đặc trưng cho nghiệm(tương ứng với khái niệm gen di truyền học) Nói cách khác thuật toán di truyền làm việc mã hóa tập tham số, thân tham số Thuật toán di truyền mang đặc điểm tìm kiếm ngẫu nhiên Thuật toán di truyền sử dụng giá trị hàm mục tiêu không dùng đạo hàm hay giá trị gần đạo hàm Trình tự áp dụng thuật toán di truyền Để giải vấn đề toán giải thuật di truyền, cần thực bước quan trọng sau: Bước 1: Chọn mô hình cho giải pháp vấn đề, chọn số đặc trưng cho toàn giải pháp (quần thể) có cho vấn đề Bước 2: Chỉ định cho giải pháp (cá thể) ký hiệu Ký hiệu dãy số 0, thuộc hệ nhị phân, hay dãy số thập phân, dãy chữ hay hỗn hợp số chữ Ký hiệu đơn giản thường dùng số nhị phân Bước 3: Tìm hàm số thích nghi cho vấn đề tính hệ số thích nghi cho giải pháp (lời giải) Bước 4: Dựa hệ số thích nghi giải pháp để thực tạo sinh (reproduction) biến hóa giải pháp Các phương thức biến hóa bao gồm: lai ghép (crossover), đột biến (mutation) Bước 5: Tính hệ số thích nghi cho giải pháp loại bỏ giải pháp để giữ lại số định giải pháp Bước 6: Nếu chưa tìm giải pháp tối ưu hay tương đối hay chưa hết kỳ hạn ấn định, trở lại bước để tìm giải pháp Bước 7: Tìm giải pháp tối ưu thời gian cho phép chấm dứt kết thúc giải thuật báo cáo kết tìm Sư khác biệt giải thuât di truyền so với giải thuật khác GA khác với tối ưu hóa thông thường giải thuật tìm kiếm khác điểm sau: • TTDT làm việc với mã hóa thông số, thân thông số • TTDT tìm kiếm từ số điểm quần thể, từ điểm • TTDT sử dụng thông tin hàm mục tiêu đạo hàm (derivatives) hay tri thức phụ khác • TTDT sử dụng luật chuyển đổi theo xác suất, luật chuyển đổi tiền định • TTDT đòi hỏi tập hợp thông số tự nhiên toán tối ưu để mã hóa thành chuỗi có chiều dài hữu hạn, dựa số hữu hạn ký tự Nội dung thuật toán di truyền Trong TTDT cá thể (hay gọi NST) mã hóa 10 chuỗi nhị phân, vị trí chuỗi nhị phân nhận hai giá trị “0” “1” Một NST GA có dạng sau:1 1 0 0 Cơ chế thuật toán di truyền đơn giản, chủ yếu chép chuỗi hoán vị phần chuỗi TTDT thuật toán tìm kiếm bắt chước theo chế chọn lọc tự nhiên tiến hóa gen di truyền Chọn lọc tự nhiên tạo mối liên kết chuỗi nhiễm sắc thể ca thể khác thực việc giải mã chuỗi nhiễm sắc thể Quá trình chọn lọc tự nhiên làm cho chuỗi nhiễm sắc thể sinh chuỗi khác Trong trình tái sinh, đột biến làm cho chuỗi nhiễm sắc thể cá thể hệ sau khác so với cá thể hệ trước Sự tổ hợp trình tạo nhiều cá thể khác lần sinh hệ sau cách kết hợp hai chuỗi nhiễm sắc thể hai cá thể lần sinh trước Những đặc điểm tiến hóa tự nhiên đưa vào để phát triển TTDT TTDT giải vấn đề tìm kiếm chuỗi nhiễm sắc thể tốt lai ghép cách xác định thông tin chuỗi nhiễm sắc thể cách mù quáng mà dạng chuỗi nhiễm sắc thể mà chúng giải quyết.Chúng cung cấp thông tin giá trị chuỗi nhiễm sắc thể có giá trị xấu lần sinh Cơ chế mã hóa hàm mục tiêu tạo thành mối liên kết thuật toán di truyền toán cần giải Một hàm mục tiêu lấy chuỗi nhiễm săcs thể đầu vào trả giá trị tượng trưng cho chuỗi nhiễm sắc thể để đánh giá vấn đề cần giải Hàm mục tiêu có vai trò tương tự môi trường sống tiến hóa tự nhiên Vấn đề tương tác cá thể với môi trường sống thể qua giá trị hàm mục tiêu cá thể TTDT phương pháp tối ưu hóa mang đặc điểm tìm kiếm ngẫu nhiên Phần tử xử lý TTDT chuỗi nhiễm sắc thể tạo 11 kết hợp nhiều chuỗi con, mà chuỗi có mã hóa thông số không gian tìm kiếm Giá trị hàm mục tiêu lớn hay nhỏ tùy theo giá trị toán;giá trị định xác xuất cá thể tham gia vào toán tử di truyền Các toán tử di truyền Trong thuật giải di truyền, cá thể liên tục sinh trình tiến hoá nhờ lai ghép hệ cha-mẹ Một cá thể mang tính trạng cha-mẹ (di truyền), mang tính trạng hoàn toàn (đột biến) Di truyền đột biến hai chế có vai trò quan trọng tiến trình tiến hoá, đột biến xảy với xác xuất nhỏ nhiều so với tượng di truyền Các thuật toán tiến hoá, có điểm khác biệt, mô ba toán tử bản: Tái sinh, lai ghép, đột biến 7.1 Toán tử tái sinh(Reproduction) Là trình mà chuỗi cá thể lựa chọn tùy thuộc vào giá trị hàm mục tiêu Toán tử xem trình chọn lọc tự nhiên Ý nghĩa: cá thể bảo lưu cho vòng tạo sinh tùy theo mức độ thích nghi Hàm mục tiêu f(i) gán cho cá thể quần thể, cá thể có có f(i) cao tức tốt Hàm mục tiêu không tuyến tính, không khả vi, không liên tục… Quá trình tái sinh(chọn lọc cha mẹ) điều khiển cách quay vòng tròn đặc biệt, vòng tròn có khe khác tương ứng với giá trị hàm mục tiêu cá thể Đây gọi chọn lọc cá thể cha mẹ vòng tròn Roulette Mỗi lần vậy, cháu chon kỹ thuật gồm bước: 12 Tính tổng giá trị mục tiêu(hệ số thích nghi) cá thể quần thể gán kết vào biến tổng thích nghi Phát sinh số ngẫu nhiên n tổng thích nghi Trả thành viên quần thể mà độ thích nghi cộng với độ thích nghi thành viên quần thể trước lớn hay n 7.2 Toán tử lai ghép Toán tử lai ghép trình tạo NST sở NST cha - mẹ cách ghép đoạn NST cha mẹ với Toán tử lai ghép gán với xác suất pc Quá trình mô tả sau: - Chọn ngẫu nhiên cặp NST (để làm cha mẹ) quần thể Giả sử, NST cha mẹ có độ dài m - Tạo số ngẫu nhiên khoảng từ đến m-1 (gọi điểm lai ghép) Điểm lai ghép chia NST cha mẹ thành hai chuỗi có độ dài m1, m2 Ví dụ Cha: 101101100 Mẹ: 000011100 Thì việc trao đổi chéo NST sau gen thứ tạo hai con: Con 1: 101111100 Con 2: 000001100 Có số dạng toán tử lai ghép như: * Lai ghép điểm (One-point Crossover) Lai ghép điểm loại lai ghép đơn giản nhất, sử dụng GA mã hoá nhị phân lẫn GA mã hoá số thực Với cặp cha mẹ X, Y vectơ m chiều ký hiệu trên, toán tử lai ghép điểm chọn ngẫu nhiên vị trí k (1 < k < m) sinh cá thể theo công thức X’ = (xi, , xk, yk+1, , ym ) Y’ = (yi, , yk, xk+1, , xm )  Lai ghép đa điểm (Multi-point Crossover) Toán tử lai ghép đa điểm mô tả sau: 13 Chọn ngẫu nhiên k điểm j1, , jk (1

Ngày đăng: 22/12/2016, 08:15

Tài liệu cùng người dùng

Tài liệu liên quan