Phương pháp CHC sử dụng mô hình song song để giải quyết bài toán MAXSAT

24 415 1
Phương pháp CHC sử dụng mô hình song song để giải quyết bài toán MAXSAT

Đ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ương pháp CHC sử dụng mô hình song song để giải quyết bài toán MAXSAT

1 Lời nói đầu Những năm gần đây, cùng với sự phát triển của khoa học kỹ thuật, người ta đã giải quyết được nhiều bài tốn hóc búa bằng máy tính. Nhưng bên cạnh đó, vẫn còn khá nhiều các bài tốn vẫn chưa tìm được giải thuật phù hợp để giải nó, đó là các bài tốn tối ưu, trí tuệ nhân tạo và các bài tốn xuất phát từ thực tế cuộc sống như bài tốn lập lịch, bài tốn điều khiển Robot, bài tốn người du lịch, . Đây là các bài tốn có khá nhiều ràng buộc phức tạp, khơng rõ ràng, ko gian tìm kiếm lớn. Do đó các phương pháp truyền thống như quay lui vét cạn, leo đồi, phỏng luyện thép, … tỏ ra ít hiệu quả, và người ta đã sử dụng một phương pháp khá tối ưu đó là phương pháp CHCsử dụng trong hình song song. Trong bài nghiên cứu này nhóm tác giả nghiên cứu về phương pháp CHC sử dụng hình song song để giải quyết bài tốn MAXSAT. Chúng ta sẽ thấy được sự độ tối ưu khi sử dụng hình song song so với hình tuần tự về thời gian, độ thích nghi … Trong tương lai nhóm sẽ tiếp tục phát triển đề tài nghiên cứu bằng cách sử dụng thuật tốn để giải quyết một số bài tốn khác. Nhóm tác giả xin chân thành cảm ơn sự giúp đỡ tận tình của thầy giáo Đỗ Trung Kiên đã giúp cho nhóm trong q trình thực hiện. Cuối cùng xin chúc hội nghị nghiên cứu khoa học của chúng ta thành cơng rực rỡ. Hà Nội, tháng 04 năm 2008. Nhóm tác giả. THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN 2 MỤC LỤC Chương I: Tổng quan về phương pháp CHC 3 I. Tìm hiểu chung về thuật tốn di truyền . 3 II. Tổng quan về phương pháp CHC . 3 1. Khái niệm . 3 2. Tư tưởng của thuật tốn CHC . 3 3. Sự Chọn lọc Elitist 5 4. Tránh sự giao phối gần . 6 Chương II: Xây dựng khung thuật tốn CHC . 7 I. Thiết kế khung thuật tốn CHC . 8 1. Các lớp đòi hỏi (Requires) . 9 • Lớp bài tốn (Problem) . 9 • Lớp lời giải (Solution) . 9 • Lớp tốn tử người sử dụng (Uer_Operator) . 10 • Lớp kiểm tra điều kiện dừng (StopCondition) . 10 2. Các lớp cung cấp (Provided) . 10 • Lớp thiết lập tham số đầu vào (SetUpParams) 10 • Lớp quần thể (Population) . 10 • Lớp lựa chọn (Selection) 11 • Lớp chỉ định tốn tử sử dụng (Intra_Operator): . 12 • Lớp định nghĩa giao diện tốn tử (Inter_Operator) 12 • Lớp lai ghép (Crossover) . 12 • Lớp thực thi giải thuật (Solver) 13 II. Khung thuật tốn tuần tự . 13 1. Hàm void Solver_Seq::DoStep() 13 III. Khung thuật tốn song song 15 Chương III. Sử dụng khung thuật tốn giải quyết bài tốn MAXSAT . 16 I. Đọc file cấu hình 16 II. Sử dụng khung thuật tốn giải quyết bai tốn MAXSAT 17 III. Kết quả thực nghiệm 24 1. Kết quả tuần tự . 24 2. Kết quả song song . 24 THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN 3 BÁO CÁO KHOA HỌC Đề tài:: PHƯƠNG PHÁP CHC SONG SONG Chương I: Tổng quan về phương pháp CHC I. Tìm hiểu chung về thuật tốn di truyền Giải thuật di truyền là kĩ thuật giúp giải quyết bài tốn bằng cách phỏng theo sự tiến hố và đấu tranh sinhh tồn của sinh vật trong tự nhiên theo thuyết tiến hố mn lồi của Darwin. Mục tiêu của giải thuật di truyền: giải thuật di truyền khơng đưa ra lời giải tối ưu mà là đưa ra lời giải gần đúng (tương đối tối ưu). Bản chất của thuật tốn di truyền là bài tốn tìm kiếm dựa theo qui luật của q trình tiến hố tự nhiên. Thuật tốn di truyền kết hợp sự sống sót của cấu trúc khoẻ nhất trong số các cấu trúc biểu diễn các nhiễm sắc thể (NST) với sự trao đổi thơng tin được lựa chọn ngẫu nhiên để tạo thành một thuật tốn tìm kiếm. Thuật tốn di truyền sử dụng các biểu diễn nhị phân kết hợp với sơ đồ để hình hố sự chọn lọc, lai ghép và đột biến. Ứng dụng của thuật tốn di truyền: + Trong tin học: xây dựng chương trình tin học đặc biệt như trí tuệ nhân tạo để hướng dẫn người sử dụng trong lĩnh vực giáo dục, quản trị. + Trong các cơng việc khác: Ứng dụng giải bài tốn sắp xếp thời khố biểu, điều khiển robot, bài tốn vận tải, bài tốn đồ thị… II. Tổng quan về phương pháp CHC 1. Khái niệm CHCgiải thuật di truyền phi truyền thống kết hợp chiến lược chọn lọc (dựa trên những cá thể đơn lẻ tốt nhất) để đưa ra con lai tốt nhất khác với cả cha và mẹ. 2. Tư tưởng của thuật tốn CHC THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN 4 CHC là từ viết tắt của cross – generational selection, Heterogeneous recombination, and Cat – aclysmic mutation. Giải thuật CHC được phát triển bởi Eshelman (1991) được trình bày như hình vẽ: CHC lựa chọn một trang của quần thể có kích cỡ µ (µ =50) nhưng thay vì chọn những cha mẹ tốt để tái kết hợp giống cách làm của giải thuật gi truyền, cha mẹ được chọn một cách ngẫu nhiên một cặp duy nhất và điều kiện để sinh ra con chung. Giải thuật sau đó sẽ chọn tập cá thể tốt nhất từ cha mẹ được kết hợp và quần thể con được sinh ra ở thế hệ tiếp theo. Vì vậy giải thuật CHC sẽ duy trì được quần thể tốt nhất mà được bắt gặp qua q trình tìm kiếm. THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN 5 Cha mẹ khơng được phép giao phối nếu như chúng khơng có sự khác biệt thích đáng như được xác định bởi ngưỡng giao phối liên tục giảm. Tốn tử chéo (crossover) được sử dụng bởi CHC là tốn tử HUX, với HUX là đại diện cho crossover một nửa khơng đổi. Tốn tử HUX đảm bảo chính xác một nửa của số bit khác nhau giữa cha mẹ được trao đổi để sản sinh ra con cái. CHC khơng được sử dụng các tốn tử đột biến trong trường hợp thơng thường, và thực tế cùng với những quần thể nhỏ trong CHCsự lựa chọn thế hệ giao làm cho quần thể được hội tụ nhanh chóng. Khi quần thể được hội tụ, CHC sẽ được khởi động lại từng phần bởi việc sao chép bởi thành viên tốt nhất của quần thể hiện tại sang một quần thể mới và sinh ra phần còn lại của quần thể mới với những phiên bản được biến đổi ồ ạt (35% của các bit) của thành viên tốt nhất của quần thể hiện tại. 3. Sự Chọn lọc Elitist Trong suốt sự chọn lọc cho việc sinh sản thay vì sự thiên về chọn lọc C(t) cho việc sinh sản hơn vì lợi ích của những thành viên thực hiện tốt hơn trong quần thể cha mẹ P(t-1). Mỗi thành viên của P(t-1) được sao chép thành C(t) và được ghép đơi một cách ngẫu nhiên. (Nói cách khác, C(t) đồng nhất với P(t-1) ngoại trừ khi trật tự của các cấu trúc đã bị thay đổi). Mặt khác, trong suốt giai đoạn chọn lọc sinh tồn thay vì thay thế quần thể cha mẹ cũ P(t-1) bằng quần thể con C’(t) để hình thành P(t), thế hệ con mới được tạo ra phải được cạnh tranh với các thành viên của quần thể cha mẹ P(t-1) cho sự sinh tồn - ví dụ cạnh tranh chính là thế hệ lai. Cụ thể hơn, các thành viên của P(t-1) và C’(t) được hồ trộn và được xếp hạng theo sự thích hợp, và P(t) được tạo ra bằng việc chọn lọc M tốt nhất (trong đó M là kích thước quần thể), các thành viên của quần thể được hồ trộn. (Trong các trường hợp mà một thành viên của P(t-1) và một thành việc của C’(t) có sự thích hợp giống nhau, thành viên của P(t-1) được xếp hạng cao hơn). Ta sẽ gọi thủ tục giữ lại các thành viên được xếp hạng tốt nhất của các quần thể con và quần thể cha mẹ được xáo trộn là sự chọn lọc elitist bởi vì nó đảm bảo rằng các cá thể M tốt nhất sẽ ln sống sót. Một vài sự chọn lọc sinh tồn thiên về tính thích hợp sử dụng của giải thuật di THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN 6 truyền khác - Whitley’s GENITOR (1989), Syswerda’s Steady State GA (SSSGA(1989), và Ackley’s Iterated Generic Search(IGS) (1987). CHC khác với tất cả ba loại giải thuật này trong đó việc cạnh tranh sinh tồn là thế hệ lai-thế hệ con chỉ thay thế một thành viên của quần thể cha mẹ nếu nó tốt hơn. Hơn nữa, khơng giống như ba giải tht này, CHC vận hành trong các chu kỳ thế hệ với rất nhiều bạn đời chứ khơng phải chỉ một bạn đời cho mỗi chu kỳ. Sự tin cậy duy nhất đối với sự chọn lọc sinh tồn cho sự thiên lệch của nó vì lợi ích của những cá nhân thực thi tốt hơn hơn và cũng phân biệt nó với GENITOR và SSSGA nhưng khơng phải là IGS. Cuối cùng, phương pháp được dựa trên sự xếp hạng tất yếu của việc thực hiện sự chọn lọc phân biệt nó với SSGA Và IGS nhưng khơng phải là GENITOR. 4. Tránh sự giao phối gần Sự tăng trưởng theo số mũ của các trường hợp lược đồ tốt thì có giá trị ít hơn nếu nó dẫn đến sự quy tụ còn non. Một trong những hậu quả của phép lai một nửa bit khác nhau giữa các thế hệ cha mẹ đó là sự nguy có của sự hội tụ còn non sẽ giảm đi. Thậm chí ở mỗi thế hệ thì thế hệ con cháu gần đây nhất giao phối với một trong những tổ tiên đầu tiên (con giống nhau trong mỗi lần). Nó sẽ mang các thế hệ log 2 h để quy tụ (trong vòng 1 bit) đến tổ tiên đầu tiên ở đó h là khoảng cách tín hiệu giữa các thế hệ cha mẹ đầu tiên. Mặc khác, trong trường hợp của phép lai hai điểm hai thế hệ con sẽ khác so với thế hệ cha mẹ gần nhất của nó (được đo bởi khoảng cách tín hiệu) bằng số lượng dao động từ 1 bit cho đến khơng q một nửa chiều dài của chuỗi L. Chính vì vậy, thời gian dài nhất mà nó có thể tạo ra sự quy tụ trong vòng 1 bit của tổ tiên của nó là các thế hệ log 2 h và thời gian ngắn nhất là một thế hệ. Tất nhiên, thế hệ con khơng được giao phối lại với một trong những tổ tiên xa của nó nhưng bởi vì các cá thể tốt hơn sẽ có nhiều hậu duệ hơn. Vì vậy, sẽ rất hợp lý khi một cá thế được giao phối với một trong những họ hàng gần nhất của nó. Cho đến bây giờ, điều này dẫn đến việc lai các cá thể mà chia sẻ rất nhiều Alen, sự thơng dò đối với sự tái tổ hợp nhanh chóng thối hố. Mặc dù ln ln lai một nửa những sự khác nhau( sử dụng HUX) sẽ làm chậm đi q trình này THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN 7 nhưng đơi khi các cá thể được ghép đơi lại có một vài sự khác biệt. Nếu một hay hai thế hệ con sống sót đối với sự giao phối này thì nó chắc chắn sự việc như vậy cũng sẽ xảy ra ở thế hệ kế tiếp. CHC có một cơ chế bổ sung để làm chậm lại tốc độ của sự quy tụ- một cơ chế để giúp tránh sự giao phối gần. Trong suốt thời kỳ sinh sản, mỗi thành viên của quần thể cha mẹ được chọn một cách ngẫu nhiên mà khơng thay thế và được ghép đơi cho việc giao phối. Tuy nhiên, trước khi giao phối thì khoảng cách tín hiệu giữa các thế hệ cha mẹ tiềm năng được tính tốn, và nếu một nửa khoảng cách đó ( khoảng cách tín hiệu của các thế hệ con được mong đợi từ các thế hệ cha mẹ) sẽ khơng vượt q ngưỡng khác nhau. Chúng khơng được giao phối và bị loại ra từ quần thể con.(ngưỡng khác nhau được thiết lập ở phần bắt đầu cho đến L/4). Chính vì vậy, chỉ một phần quần thể được giao phối để tạo ra thế hệ con mới trong bất kỳ thế hệ nào. Khơng có thế hệ con nào được chấp nhận vào quần thể cha mẹ ( hoặc là bởi vì khơng có bạn giao phối tiềm năng hay bởi vì khơng một thế hệ con nào tốt hơn quần thể cha mẹ), thì ngưỡng khác nhau sẽ bị giảm đi. Hậu quả của cơ chế này đó là chỉ có các quần thể cha mẹ tiềm năng và đa dạng hơn được giao phối nhưng sự đa dạng được đòi hỏi bằng ngưỡng khác nhau tự động giảm khi quần thể quy tụ một cách tự nhiên. Số lượng những con sống sót cho mỗi thế hệ sẽ được xem là thích hợp nhất trong suốt q trình tìm kiếm bởi vì khi CHC gặp khó khăn trong việc tăng tiến trình thì ngưỡng khác nhau sẽ giảm xuống nhanh hơn khoảng cách tín hiệu trung bình để có nhiều cá nhân hơn được đánh giá. Ngược lại, khi CHC được xem là dễ dàng để tạo ra thế hệ con mà sống sót thì ngưỡng khác nhau sẽ giảm ở tỷ lệ thấp hơn và số lượng các con giao phối cũng sẽ giảm. Chương II: Xây dựng khung thuật tốn CHC Việc xây dựng khung thuật tốn có ý nghĩa rất quan trọng trong q trình lập trinh. Nó cho phép nhiều người dùng khai thác hiệu quả nhất những giải thuật cũng như THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN 8 cơ sở dữ liệu nhờ những khung thuật tốn có sẵn. Một số tiểu ứng dụng của khung thuật tốn: • Hỗ trợ thiết kế tối đa và khả năng tái sử dụng code: Khung phải cung cấp cho người dùng tồn bộ kiến trúc của phương pháp giải quyết bài tốn của họ. Hơn nữa các lập trình viên có thể tái sự dụng các đoạn code đã có. Do đó người dùng chỉ cần phát triển một đoạn code nhất định cho vấn đề đó. • Tiện ích và khả năng mở rộng: Khung phải cho phép người dùng đi qua một số lượng lớn các giải thuật đã được giả quyết, các vấn đề, các hình song song đã được đưa ra. Nó có khả năng cho phép người dùng dễ dàng thêm hoặc thay đổi các đặc tính/ giải thuật mà ko cần liên quan đến các thành phần khác. Giúp cho người sau thử nghiệm bai tốn trên mơi trường song song. • Tính linh động: Khung hỗ trợ nhiều kiến trúc phần cứng và phần mềm khác nhau nên đáp ứng được một số lượng lớn người dùng. I. Thiết kế khung thuật tốn CHC Cấu trúc chung của thuật tốn CHC: 1 t = 0 2 initialize P(t) 3 evaluate structures in P(t) 4 while not end do 5 t = t + 1 6 select: C(t) = P(t-1) 7 recombine: C'(t) = 'incest prevention' + HUX(C'(t)) 8 evaluate structures in C'(t) 9 replace P(t) from C''(t) and P(t-1) 10 if convergence(P(t)) 11 diverge P(t) Khung thuật tốn gồm hai phần cơ bản là Provides và Requires. THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN 9 Lớp Provided thực thi phía bên trong khung bao hàm các thủ tục chung cho các bài tốn giải bằng giải thuật di truyền. Thơng thường đối với mỗi giải thuật thì thường có một số giải pháp, tất cả các hình tuần tự được nhóm vào lớp Solver_Seq. Các hình song song được nhóm vào các lớp Solver_Lan và Solver_Wan. Lớp Required chỉ định thơng tin liên quan đến vấn đề (bài tốn). Để cho tồn bộ khung hoạt động thì các lớp này phải được bổ xung thơng tin về bài tốn phụ thuộc . 1. Các lớp đòi hỏi (Requires) Các lớp đòi hỏi được sử dụng để lưu trữ dữ liệu cơ bản của thuật tốn. Ta có thể hình dung các lớp Requre được xây dựng giống như một cái sườn, cái mẫu, và đối với từng bài tốn cụ thể lại phải đắp thêm những thơng tin riêng của bài tốn đó cho hồn chỉnh. Nhóm các lớp Requires bao gồm các lớp sau: • Lớp bài tốn (Problem) Diễn tả thơng tin bài tốn cần giải quyết. Dưới đây là các thủ tục chính trong lớp bài tốn Trong đó: - Tốn tử chồng cout: Đưa ra các thơng số của bài tốn pbm theo luồng os. - Tốn tử chồng cin: nhận vào các thơng số của bài tốn pbm từ luồng is. • Lớp lời giải (Solution) Lớp lời giải diễn tả lời giải của bài tốn, trong q trình tiến hố, chúng ta ln duy trì một quần thể các lời giải có thể của bài tốn và áp dụng các thao tác của q trình tiến hố lời giải trên quần thể để tìm ra lời giải tối ưu cho bài tốn. Dưới đây là các thủ tục chính trong lớp lời giải: Trong đó - operator<< đưa ra các thơng số của một lời giải theo os. - operator>> nhận vào các thơng số của một lời giải theo luồng is. - char *to_String(): Chuyển nhiễm sắc thể biểu diễn lời giải thành một xâu ký tự - to_Solution(char *_cadena_) : Hàm tạo ra một đối tượng lời giải từ một xâu ký tự. THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN 10 - initialize(): Hàm khởi tạo bộ giá trị ngẫu nhiên cho các phần tử trong lời giải - fitness (): Hàm tính độ thích nghi làm cơ sở đánh giá lời giải. • Lớp tốn tử người sử dụng (Uer_Operator) Thừa kế từ lớp Intra_Operator. • Lớp kiểm tra điều kiện dừng (StopCondition) Để xác định điều kiện dừng của bài tốn, trong từng bài tốn thì điều kiện dừng sẽ khác nhau, thường căn cứ vào một hoặc một vài tham số như số thế hệ, thời gian chạy, các điều kiện đặc thù của bài tốn . 2. Các lớp cung cấp (Provided) Bao gồm các thủ tục chung cho các bài tốn giải bằng giải thuật CHC. Ta có thể hình dung các lớp loại provide giống như một thư viện, và khi giải các bài tốn chỉ việc gọi nó ra. • Lớp thiết lập tham số đầu vào (SetUpParams) Lớp này chứa các thủ tục để thiết đặt các tham số cho bài tốn như đã nêu trên và cho các tốn tử của giải thuật từ 1 file đầu vào: o independent_runs : số lần thực hiện q trình tiến hóa trong một lần thực hiện chương trình o population_size : kích thước quần thể o nb_evolution_steps : số bước tiến hóa o select_parents : phương thức lựa chọn cha o select_offsprings : phương thức lựa chọn con o combine : có kết hợp quần thể cũ hay chỉ lựa chọn từ quần thể mới. o Hàm istream& operator>> (istream& is, SetUpParams& setup) có nhiệm vụ thiết đặt các tham số cho bài tốn. Cụ thể, nó nhận vào các thơng số cấu hình từ một file dữ liệu (file này sẽ được gọi là file cấu hình), dựa vào các thơng số nhận vào này mà chương trình sẽ chọn phương pháp lựa chọn dùng trong bài tốn (trong 5 phương pháp lựa chọn đã kể trên), tham số lựa chọn dấu hiệu dừng của thuật tốn, . làm cơ sở cho cấu hình của giải thuật giải bài tốn. • Lớp quần thể (Population) Lớp này lưu trữ các thơng tin về quần thể các nhiễm sắc thể. Dưới đây là các thủ tục chính trong lớp quần thể. THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN [...]... (show_state()); Đưa ra giải pháp tốt nhất; Đưa ta Độ thích nghi tốt nhất; } III Khung thuật tốn song song - Lựa chọn hình phần cứng: Có hai hình đó là: hình phần cứng phân tán và hình phần cứng dùng chung + hình phần cứng dung chung: Ưu điểm: tốc độ nhanh Nhược điểm: giá thành cao + hình phần cứng phân tán: Ưu điểm: dễ cài đặt Nhược điểm: tốc độ chậm Vì những lý do trên ta sử dụng hình phần... II Sử dụng khung thuật tốn giải quyết bai tốn MAXSAT Để giải quyết một bài tốn bất kì trên khung CHC của bộ Mallba thì chúng ta phải đắp thêm code vào 4 lớp đối với bài tốn Mallba Bốn lớp đó là: • Problem • Solution • User_Statistics • Stop_condition_1 Đối với từng Class cụ thể ta thêm như sau Class problem và Solution nằm trong File CHC. hh để khai báo các thuộc tính và phương thức: -Ở lớp Problem... hình phần cứng phân tán để việc nói chuyện giữa các máy tính được dễ dàng Trong hình này ta sử dụng các thư viện MPI và thư viện NetStream nhằm tạo ra sự thân thiện với người sử dụng - Lựa chọn hình phần mềm: Có ba hình phần mềm: 15 THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN + hình chủ - khách (Master_slave):ở đây một bộ vi xử lý đơn duy trì việc điều khiển qua các vùng chọn và sử dụng bộ vi xử lý khác... mạng nội bộ tốc độ cao Do đó ta sẽ lựa chọn hình phần mềm là hình đảo (Island model) Trong hình này, máy chủ và máy khách có những nhiệm vụ khác nhau + Máy chủ: (mypid=0) thực hiện lệnh check_for_refresh_global_state(); + Máy khách: (mypid!=0)Thực hiện lệnh DoStep(); Chương III Sử dụng khung thuật tốn giải quyết bài tốn MAXSAT I Đọc file cấu hình 5 //số bước chạy độc lập 200 //số ước lượng... lẻ tuy nhiên giải thuật chỉ hữu ích cho một số lượng nhỏ bộ vi xử lý và một số lượng lớn thời gian, mặt khác một giao tiếp tốt làm tăng khả năng của xử lý song song + hình đảo (Island model): Trong hình này mọi bộ vi xử lý chạy giải thuật tiến hóa một cách độc lập, sử dụng các quần thể phụ riêng biệt các bộ vi xử lý hợp tác với nhau bằng việc thay đổi vị trí một cách đều đặn hình đảo đặc biệt... thể o select_parents() : Lựa chọn cha để tiến hành lai ghép, sử dụng một trong 5 phương pháp để tiến hành lựa chọn o select_offsprings() : Lựa chọn các cá thể cho quần thể mới Có hai phương pháp hoặc là chỉ lựa chọn từ quần thể mới (combine = 0) hoặc là lựa chọn từ quần thể mới và quần thể cũ (combine = 1) Hàm quan trọng nhất trong lớp này là hàm evolution(), nó để thực hiện cơng việc tiến hố quần thể... cả bài tốn o DoStep() : Thực hiện các cơng việc trong một bước tiến hố của quần thể, cập nhật lại các tham số của quần thể sau một bước tiến hố o Run () : là thủ tục thực hiện tồn bộ q trình tìm kiếm của bài tốn dựa vào các thơng tin về bài tốn, về các tham số, các điều kiện đầu vào được đọc vào từ 2 file là file cấu hình và file bài tốn II Khung thuật tốn tuần tự Sử dụng lớp bài tốn tuần tự của phương. .. mà được tạo nên từ hai phương thức chính: Setup, đọc cấu hình của tốn tử và execute, ứng dụng tốn tử • Lớp lai ghép (Crossover) Để thực hiện việc lai ghép các lời giải với nhau tạo ra các lời giải mới Dưới đây là các thủ tục chính trong lớp lai ghép Trong đó: - cross(Solution &sol1,Solution &sol2): hàm lai hai lời giải với nhau tạo ra các lời giải mới - execute(Rarray& sols) : lai ghép 2... tử áp dụng trong quần thể 0 0.8 // xác suất lai Inter-Operators // Tốn tử áp dụng giữa quần thể này và quần thể khác 16 THƯ VIỆN ĐIỆN TỬ TRỰC TUYẾN // số tốn tử, tốc độ tốn tử, số lượng cá thể, lựa chọn 0 25 5 1 3 1 5 cá thể đẻ gửi và lặp LAN-configuration 101 // làm mới trạng thái tồn bộ // 0: chạy khơng đồng bộ / 1: chạy đồng bộ 0 1 // khoảng phát sinh để chọn giải pháp từ quần thể khác II Sử dụng. .. ghép: quần thể lời giải, các thơng tin trong quần thể, • Lớp Statistics Lớp này thống kê những vết ở trạng thái hiện thời Đưa ra thứ tự vết, q trình tiến hố, chi phí tốt nhất, chi phí tổng cộng tốt nhất, giá trị trung bình,… • Lớp OperatorPool cung cấp một giao diện chung để sử dụng bất cứ tốn tử.Tốn tử này quan tâm đến những thay đổi của các giải pháp trong quần thể • Lớp thực thi giải thuật (Solver)

Ngày đăng: 27/04/2013, 21:11

Hình ảnh liên quan

được giả quyết, các vấn đề, các mơ hình song song đã được đưa ra. Nĩ cĩ khả - Phương pháp CHC sử dụng mô hình song song để giải quyết bài toán MAXSAT

c.

giả quyết, các vấn đề, các mơ hình song song đã được đưa ra. Nĩ cĩ khả Xem tại trang 8 của tài liệu.

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