Phát triển một số kỹ thuật trong tính toán tiến hoá

28 334 1
Phát triển một số kỹ thuật trong tính toán tiến hoá

Đ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

Phát triển một số kỹ thuật trong tính toán tiến hoá

1 BỘ GIÁO DỤC & ĐÀO TẠO VIỆN KH & CN VIỆT NAM VIỆN CÔNG NGHỆ THÔNG TIN VŨ MẠNH XUÂN PHÁT TRIỂN MỘT SỐ KỸ THUẬT TRONG TÍNH TOÁN MỀM Chuyên ngành: Bảo đảm toán học cho máy tính và hệ thống tính toán Mã số: 62.46.35.01 TÓM TẮT LUẬN ÁN TIẾN SĨ HÀ NỘI - 2007 2 Công trình được hoàn thành tại: Viện Công nghệ thông tin thuộc Viện Khoa học và Công nghệ Việt Nam Người hướng dẫn khoa học: 1. PGS.TS Nguyễn Thanh Thủy 2. PGS.TS Lương Chi Mai Phản biện 1: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Phản biện 2: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Phản biện 3: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Luận án sẽ được bảo vệ trước Hội đồng chấm luận án cấp nhà nước họp tại: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vào hồi giờ ngày tháng năm 200 Có thể tìm hiểu luận án tại: Thư viện Quốc gia Viện Công nghệ thông tin - Viện KH & CN Việt nam Khoa Khoa học Tự nhiên – Đại học Thái Nguyên 3 MỞ ĐẦU Trong thời gian gần đây, cùng với sự gia tăng mạnh mẽ cả về số lượng lẫn chất lượng các công cụ tính toán hiện đại như máy tính, nhiều lĩnh vực nghiên cứu tính toán không truyền thống cũng không ngừng phát triển. Tính toán mềm (Soft Computing) hay còn gọi là trí tuệ tính toán (Computational Intelligence) nhằm nghiên cứu các mô hình tính toán mô phỏng hoạt động của con người hay tiến hóa tự nhiên. Nói chung, tính toán mềm dựa trên các kỹ thuật cơ bản gồm: logic mờ (FL – Fuzzy Logic), mạng nơron nhân tạo (NN – Neural Network), giải thuật di truyền (GA – Genetic Algorithm) và giải thuật mô phỏng tôi luyện (SA – Simulated Annealing). Các nghiên cứu về tính toán mềm thường tập trung vào hai khía cạnh: một mặt phát triển các kỹ thuật cơ bản tạo nền tảng cho khả năng ứng dụng, mặt khác tìm cách tích hợp các kỹ thuật này nhằm nâng cao hiệu quả tính toán. Cũng như các lĩnh vực trí tuệ nhân tạo khác, tính toán mềm dành được sự quan tâm đặc biệt trong giới nghiên cứu và ứng dụng. Chỉ trong lĩnh vực tính toán tiến hóa cũng đã thu hút được nhiều tạp chí lớn, nhiều hội thảo quốc tế tổ chức hàng năm dành riêng cho chủ đề này. Ở nước ta, trí tuệ nhân tạo và tính toán mềm cũng đã và đang được những người nghiên cứu công nghệ thông tin và ứng dụng quan tâm phát triển. Các Hội thảo Quốc gia về Công nghệ thông tin và truyền thông đều có các tiểu ban chuyên về trí tuệ nhân tạo và tính toán mềm. Một số luận án tiến sĩ ở Việt Nam thời gian gần đây cũng tập trung khai thác lĩnh vực này. Các tác giả Manuel Lozano, Francisco Herrera, Natalio Krasnogor và Daniel Molina đã tổng hợp nhiều hướng nghiên cứu trong những năm gần đây (2001 – 2004) và chỉ ra xu hướng phát 4 triển các kỹ thuật tính toán mềm bằng cách tích hợp tính toán tiến hóa với kỹ thuật tìm kiếm địa phương. Nghiên cứu về tính toán mềm nói chung là một lĩnh vực rất rộng, riêng mỗi kỹ thuật cơ bản của nó cũng đã là một chủ đề lớn, vì vậy luận án chỉ đi sâu vào một mảng là “Phát triển một số kỹ thuật trong tính toán tiến hóa”. Mục tiêu của luận án là nghiên cứu vấn đề thích nghi và tự thích nghi trong tính toán tiến hóa; đề xuất các giải pháp cải tiến thuật toán và ứng dụng cơ chế thích nghi giải các bài toán tối ưu. Như vậy, đối tượng chính của luận án là các thuật toán tiến hóa bao gồm giải thuật di truyền, chiến lược tiến hóa, giải thuật mô phỏng tôi luyện, áp dụng để giải một lớp bài toán tối ưu số và ứng dụng. Phương pháp làm việc là nghiên cứu các tài liệu trong và ngoài nước về tính toán tiến hóa, trọng tâm là giải thuật di truyền; khảo sát, đề xuất một số giải pháp nhằm nâng cao hiệu quả của giải thuật, tiến hành thử nghiệm trên một số bài toán mẫu và ứng dụng các kỹ thuật này trong bài toán tối ưu đa mục tiêu thực tế. Nội dung luận án gồm ba chương không kể các phần mở đầu, kết luận. Chương một nêu khá chi tiết về giải thuật di truyền (GA) và tính toán tiến hóa nói chung. Trước hết là GA kinh điển với các toán tử di truyền cơ bản và minh họa bằng một ví dụ cụ thể. Phần kế tiếp trình bày nền tảng toán học của GA với hai nội dung chính là định lý đồ của Holland và mô hình xích Markov của GA. Giải thuật di truyền mã hóa số thực (RCGA – Real- Coded Genetic Algorithm) với các toán tử di truyền được đề cập đến một cách chi tiết. Toán tử lai ghép với nhiều dạng khác nhau kể cả các dạng lai ghép nhiều cá thể cha mẹ cũng được mô tả một cách cẩn thận. Phần này cũng nêu lên một số mô hình tiến hóa được giới thiệu trong thời gian gần đây. Phần cuối của chương đề cập đến các dạng tính toán tiến hóa khác là chiến lược tiến hóa (ES – Evolutionary Straitegy) và quy hoạch tiến hóa (EP - 5 Evolutionary Programming). Giải thuật mô phỏng tôi luyện (SA-Simulated Annealing) cũng được trình bày làm cơ sở cho việc tích hợp với các kỹ thuật khác. Chương hai tập trung trình bày các kết quả nghiên cứu của tác giả về vấn đề tự thích nghi trong giải thuật di truyền mã hóa số thực và tính toán tiến hóa nói chung. Cụ thể trong chương này đưa ra một số kết quả sau: 1) Phân tích tác động các tham số của RCGA đến sự hội tụ của giải thuật, tập trung vào tác động của kích cỡ quần thể và toán tử lai ghép. 2) Sử dụng một số hàm phân phối xác suất để điều chỉnh tham số tỷ lệ khoảng cách giữa các cá thể con sinh ra đối với cha mẹ chúng trong toán tử lai ghép. 3) Đề xuất thuật toán OAGA (Operator Adaptive Genetic Algorithm) cho phép lựa chọn thích nghi toán tử lai ghép trong quá trình tiến hóa. 4) Đề xuất thuật toán BEA (Blend Evolutionary Algorithm) tích hợp các kỹ thuật tính toán mềm giải các bài toán tối ưu số. Thuật toán này có thể xem là những đề xuất cải tiến cơ bản với toán tử lai ghép của giải thuật di truyền mã hóa số thực trong một mô hình sử dụng giải thuật di truyền (GA), chiến lược tiến hóa (ES) cùng với yếu tố nhiệt độ của giải thuật mô phỏng tôi luyện (SA). Các đề xuất trên đều đã được kiểm chứng qua một số hàm benchmark và cho kết quả tốt. Chương ba của luận án bao gồm những nghiên cứu về giải thuật di truyền đa mục tiêu và trình bày kết quả ứng dụng trong một số bài toán thuộc lĩnh vực Khí tượng thủy văn là bài toán thiết kế hồ chứa nước, bài toán phân bố dòng chảy và bài toán bốn hồ chứa. Các giải pháp đề xuất gồm: 1) Sử dụng giải thuật di truyền tìm lời giải theo các giá trị mục tiêu đã xác định trước. 6 2) Thuật toán tự xác định giá trị mục tiêu tùy theo yêu cầu bài toán căn cứ vào quần thể khởi tạo và các giá trị này được cập nhật ngay trong quá trình tiến hóa. 3) Thuật toán tối ưu từng mục tiêu, các giá trị mục tiêu được tự động cập nhật cho mỗi hàm mục tiêu theo từng giai đoạn. Có thể xem thuật toán này là dạng giải thuật di truyền với mục tiêu biến đổi theo thời gian. Các đề xuất trên được áp dụng để giải bài toán thực tế đã nêu, trong đó giải thuật di truyền sử dụng các toán tử như trình bày ở chương hai và thu được kết quả tốt hơn so với các kết quả đã được công bố trước đó. Chương 1 MỘT SỐ VẤN ĐỀ CƠ BẢN Chương này trình bày chủ yếu về giải thuật di truyền (GA), bao gồm GA kinh điển, nền tảng toán học của GA, GA mã hóa số thực (RCGA), chiến lược tiến hóa (ES) và quy hoạch tiến hóa (EP). GA kinh điển được trình bày chi tiết từ việc mã hóa, các toán tử di truyền đến mô tả tường minh trong một ví dụ cụ thể. Nền tảng toán học của GA được trình bày thông qua định lý đồ của Holland và mô hình Markov của GA dựa trên các kết quả của Rudolph và Suzuki. Phần tiếp theo trình bày giải thuật di truyền mã hóa số thực (RCGA) khá tường tận, đặc biệt là những dạng khác nhau của toán tử lai ghép. Phần cuối chương là chiến lược tiến hóa (ES), quy hoạch tiến hóa (EP) và một số dạng của giải thuật mô phỏng tôi luyện (SA). 7 Chương 2 NGHIÊN CỨU CƠ CHẾ TỰ THÍCH NGHI TRONG TÍNH TOÁN TIẾN HÓA Chương này trình bày những kết quả nghiên cứu và đề xuất một số kỹ thuật tự thích nghi trong tính toán tiến hóa. Trước tiên là khái quát về vấn đề tự thích nghi trong tính toán tiến hóa, phân tích tác động của các tham số sử dụng trong giải thuật di truyền chủ yếu là kích cỡ quần thể. Tiếp theo là nghiên cứu về toán tử lai ghép SBX, cùng với các phiên bản tính tham số điều khiển sử dụng các biến ngẫu nhiên với các phân phối xác suất khác nhau. Tiếp theo là một thuật toán đề xuất cho phép chọn lựa thích nghi toán tử lai ghép ngay trong quá trình thực hiện. Phần cuối chương là một phương pháp tích hợp giải thuật di truyền, chiến lược tiến hóa và giải thuật mô phỏng tôi luyện nhằm làm tăng hiệu quả tính toán. Các kết quả chính được trình bày trong chương hai gồm: 2.1. TỰ THÍCH NGHI TRONG TÍNH TOÁN TIẾN HÓA Phần này trình bày khái quát về vấn đề thích nghi và tự thích nghi trong tính toán tiến hóa. 2.2. TÁC ĐỘNG CỦA KÍCH CỠ QUẦN THỂ TRONG RCGA Phần này khảo sát quan hệ giữa các tham số: kích cỡ quần thể, số chiều không gian tìm kiếm, các dạng toán tử lai ghép kinh điển và các hàm mục tiêu khác nhau đến sự hội tụ của giải thuật. Nội dung chi tiết gồm: 2.2.1. Quan hệ giữa kích cỡ quần thể và số lần lặp Để khảo sát tác động của kích cỡ quần thể đến các toán tử khác và sự hội tụ của giải thuật, ta xét giải thuật chỉ sử dụng một loại toán tử lai ghép và đồ tạo sinh sau: Hai cá thể cha mẹ được chọn tiến hành lai ghép theo một 8 dạng toán tử lai ghép chọn trước. Sau đó chọn hai cá thể có giá trị hàm mục tiêu tốt nhất trong bốn cá thể (hai cha mẹ và hai con) thay thế cho hai cá thể cha mẹ ban đầu. Với các giả thiết trên, có thể rút ra kết luận: RCGA chỉ sử dụng các toán tử lai ghép kinh điển như: lai ghép một điểm, lai ghép nhiều điểm hay lai ghép mặt nạ (lai ghép đều), không sử dụng toán tử đột biến và việc tạo sinh theo chiến lược phần tử ưu tú thì tốt nhất là thực hiện M 2 bước lai ghép với M là kích cỡ quần thể. Kết quả này đã được kiểm chứng trên một số hàm benchmark, dưới đây chỉ minh họa một ví dụ. Thử nghiệm với hàm Rastringin )10)2cos(10()( 1 2 5 +−= ∑ = i n i i xxxf π với n = 30, -5.12 x i 5.12. Hàm này có rất nhiều cực trị địa phương trong miền đang xét, số cực trị này tăng theo lũy thừa khi số chiều tăng. Hình 2.12 là kết quả thực hiện chương trình. Trong đồ thị trên, trục tung là giá trị hàm mục tiêu, trục hoành ứng với các mốc lặp 1000, 2000, , 10000. Mỗi đường đồ thị biểu diễn giá trị trung bình hàm mục tiêu của quần thể ứng với kích cỡ chọn từ dưới lên là 10, 20, , 100. Kết quả phù hợp với nhận xét trên. - 100.00 200.00 300.00 400.00 500.00 600.00 1 2 3 4 5 6 7 8 9 10 Hình 2.12. Hàm Rastringin sử dụng lai ghép một điểm 9 2.2.2. Quan hệ giữa kích cỡ quần thể và số chiều không gian tìm kiếm Phần này khảo sát mối quan hệ giữa kích cỡ quần thể và số chiều không gian tìm kiếm trên các hàm khác nhau với các dạng toán tử lai ghép khác nhau. Kết quả cho thấy giá trị trung bình hàm mục tiêu của quần thể thay đổi không nhiều khi thay đổi số chiều không gian và kích cỡ quần thể. Hình 2.17 minh họa kết quả thử nghiệm với hàm Rastringin nêu trên. Trục tung chỉ giá trị trung bình hàm mục tiêu của quần thể. Trục hoành chỉ số chiều của không gian tìm kiếm biến đổi từ 10, 20, 30, 40, 50. Mỗi đường đồ thị ứng với một kích cỡ quần thể từ 10, 20, 30, 40, 50. Từ các phân tích và thử nghiệm trên, ta có thể nhận thấy kích cỡ quần thể quan hệ chủ yếu đến số lần tạo sinh, ít bị ảnh hưởng bởi hàm mục tiêu, dạng toán tử lai ghép và số chiều của không gian tìm kiếm. Hơn nữa việc chọn kích cỡ quần thể có ảnh hưởng quan trọng đến độ hội tụ của giải thuật. 2.3. ĐIỀU CHỈNH THAM SỐ CỦA TOÁN TỬ LAI GHÉP 2.3.1 Phân tích các dạng lai ghép kinh điển trong RCGA Để phân tích tác động của toán tử lai ghép, ta có thể biểu diễn các dạng khác nhau của toán tử lai ghép kinh điển bởi các phép toán đại số, cụ thể như sau: Mỗi cá thể được mã hóamột véc tơ thực n chiều; giả sử cặp cá thể cha mẹ được chọn để lai ghép là X = (x 1 , x 2 , , x m ) và Y = (y 1 , y 2 , , y m ); hai cá 0 200 400 600 800 1000 1200 1400 1600 1 2 3 4 5 Hình 2.17 Lai ghép mặt nạ với hàm Rastringin 10 thể con tạo được sau lai ghép là X’ = (x’ 1 , x’ 2 , , x’ m ) và Y’ = (y’ 1 , y’ 2 , , y’ m ). Khi đó quan hệ giữa (X’, Y’) và (X, Y) được biểu diễn bởi phép nhân ma trận: (X', Y') = (X, Y). F(a, b) trong đó       − − = BAI BIA baF ),( với A và B là các ma trận đường chéo cấp m với các phần tử trên đường chéo tương ứng là các a i và b i . Từ đó dễ dàng tính F(a,b) -1 theo công thức :       − − = − '' '' ),( 1 BAI BIA baF ở đây A' và B' là các ma trận đường chéo cấp m với các phần tử trên đường chéo tương ứng là các a' i và b' i , trong đó: 1 '; 1 ' −+ = −+ = ii i i ii i i ba a b ba b a Với cách biểu diễn trên, có thể tính xác suất để cặp phần tử (X', Y') được sinh ra từ (X, Y) thuộc một tập M trong không gian R 2m sau phép lai ghép. Dựa trên các phân tích và tính toán, có thể rút ra kết luận: Giá trị trung bình của mật độ quần thể không thay đổi qua phép lai ghép dạng "tuyến tính". 2.3.2 Điều kiện thành công của toán tử lai ghép Giả sử F Z là hàm phân phối của biến ngẫu nhiên Z với trung vị 0. Theo định lý giá trị trung bình, xác suất để biến ngẫu nhiên Z chuyển từ điểm 0 đến lân cận (z- , z+ ) của điểm z được tính bởi: P{0 (z - , z + )} = P{z - < Z < z + } [...]... ràng thuật toán mới cho kết quả tốt hơn các thuật toán sử dụng riêng lẻ Mặt khác, tư tưởng chính của thuật toán là sử dụng cả hai toán tử di truyền nhằm tăng tính đa dạng của quần thể Điều này cũng cho thấy trong các thuật toán tiến hoá, tính đa dạng của quần thể có một vai trò quan trọng Chương 3 MỘT SỐ ỨNG DỤNG TRONG BÀI TOÁN TỐI ƯU ĐA MỤC TIÊU Chương này trình bày một ứng dụng cụ thể của giải thuật. .. kỹ thuật tính toán tiến hóa trong các bài toán tối ưu số - Nghiên cứu, đề xuất một số giải pháp giải bài toán tối ưu đa mục tiêu áp dụng giải thuật di truyền với những thuật toán đề xuất trên Vận dụng kết quả này giải một số bài toán tối ưu đa mục tiêu sử dụng tài nguyên nước trong lĩnh vực khí tượng thủy văn Các kết quả nghiên cứu trên đa số đã được báo cáo trong các Hội thảo Quốc gia Một số vấn đề... 2.5 TÍCH HỢP MỘT SỐ DẠNG TÍNH TOÁN TIẾN HÓA 20 Một trong những hướng phát triển các kỹ thuật tính toán mềm là xây dựng những hệ thống lai, kết hợp các điểm mạnh của từng kỹ thuật trong một hệ thống Dựa trên nhận xét trên, tác giả đề xuất giải thuật như sau tạm gọi là BEA (Blend Evolutionary Algorithm): Bước 1) Khởi tạo quần thể ban đầu gồm M cá thể P = {X1, X2, , XM} Khởi tạo các tham số ban đầu: To,... giải thuật di truyền mã hóa số thực (RCGA) - Khảo sát chi tiết tác động của kích cỡ quần thể và toán tử lai ghép đến khả năng hội tụ của RCGA - Đề xuất phiên bản cải biên toán tử lai ghép SBX trong RCGA bằng cách sử dụng các phân phối xác suất khác nhau - Đề xuất thuật toán OAGA cho phép lựa chọn thích nghi toán tử lai ghép trong quá trình tiến hóa - Đề xuất thuật toán BEA cho phép tích hợp nhiều kỹ thuật. .. Thủy, Toán tử lai ghép nhiều cha mẹ trong giải thuật di truyền mã hoá số thực, Tạp chí “Khoa học và Công nghệ”, ĐH Thái nguyên số 2 (34), 2005, trang 40 3 Vũ Mạnh Xuân, Nguyễn Thanh Thủy, Biểu diễn toán tử lai ghép trong thuật toán di truyền mã hoá số thực, Tạp chí “Khoa học và Công nghệ”, ĐH Thái nguyên số 1 (37), tập 2, 2006, trang 52 4 Vũ Mạnh Xuân, Nguyễn Thanh Thủy, Cơ cấu lựa chọn thích nghi toán. .. 7898.2 2.3.5 SBX với một số phân phối xác suất khác 2408.6 1437.4 f5 Với kết quả nghiên cứu trên, một cách tự nhiên là hoàn toàn có thể sử dụng các biến ngẫu nhiên với phân phối xác suất khác nhau để tính hệ số tỷ lệ Thuật toán như đã nêu phần trên, ở đây chỉ thay đổi công thức (2.6) tính tham số , việc tính các cá thể con vẫn theo (2.4) và (2.5) - Phân phối chuẩn: Tính β= tùy thuộc số ngẫu nhiên x theo... THÍCH NGHI TOÁN TỬ LAI GHÉP Phần này đề xuất một cơ cấu lựa chọn thích nghi toán tử lai ghép thích hợp ngay trong quá trình tiến hóa Để tiện việc trình bày, ta xem xét trường hợp sử dụng hai toán tử lai ghép Với hai toán tử lai ghép đã được thiết kế trước, tại mỗi lần lặp, thuật toán sẽ quyết định sử dụng toán tử nào phụ thuộc vào tỷ lệ áp dụng thành công của toán tử đó hiệu LG1 và LG2 là hai toán apply... cụ thể của giải thuật di truyền trong lĩnh vực khí tượng thủy văn Phần đầu của chương này dành để giới thiệu vắn tắt giải thuật di truyền đa mục tiêu Phần kế tiếp trình bày các thuật toán đề xuất và kết quả thực nghiệm giải một số bài toán trong khí tượng thủy văn là bài toán thiết kế hồ chứa nước (Rei-Vemuri), bài toán phân bố dòng chảy và bài toán bốn hồ chứa 3.1 GIẢI THUẬT DI TRUYỀN ĐA MỤC TIÊU Phần... v[i] := 0.5*((1+ )*x[i] + (1- )*y[i]); B3) Chọn hai cá thể tốt nhất trong {x, y, u, v} thay cho cặp (x, y); Như vậy, trong toán tử này, hệ số được tính theo biến ngẫu nhiên Z có phân phối xác suất Cauchy với tham số điều khiển s = 1/k, trong đó k là số lần lặp Cũng có thể xem đây là một cách kết hợp giải thuật mô phỏng tôi luyện và toán tử lai ghép với đồ tôi luyện là Tk = 1/k Bảng 2.3 dưới đây cho... 5) Nếu Tk < Tdong hoặc số lần lặp đủ lớn thì chuyển sang Bước 6, còn nếu không quay lại Bước 2 Bước 6) Cá thể tốt nhất trong quần thể cuối cùng là lời giải cần tìm Chương trình thử nghiệm được tiến hành trên một số hàm benchmark Kết quả thực hiện được cho trong bảng 2.15 Bảng 2.15 Kết quả thử nghiệm giải thuật tích hợp BEA Hàm Giải thuật BEA Giải thuật (1+1)ES Giải thuật SA Giải thuật RCGA 21 (1) (2) . TÍCH HỢP MỘT SỐ DẠNG TÍNH TOÁN TIẾN HÓA 20 Một trong những hướng phát triển các kỹ thuật tính toán mềm là xây dựng những hệ thống lai, kết hợp các điểm mạnh của từng kỹ thuật trong một hệ thống tính toán mềm nói chung là một lĩnh vực rất rộng, riêng mỗi kỹ thuật cơ bản của nó cũng đã là một chủ đề lớn, vì vậy luận án chỉ đi sâu vào một mảng là Phát triển một số kỹ thuật trong tính toán. THÔNG TIN VŨ MẠNH XUÂN PHÁT TRIỂN MỘT SỐ KỸ THUẬT TRONG TÍNH TOÁN MỀM Chuyên ngành: Bảo đảm toán học cho máy tính và hệ thống tính toán Mã số: 62.46.35.01 TÓM TẮT LUẬN ÁN TIẾN SĨ HÀ NỘI - 2007 2 Công

Ngày đăng: 03/04/2014, 12:21

Từ khóa liên quan

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

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

Tài liệu liên quan