Các trƣờng hợp thử nghiệm và các thông số metaheuristic

Một phần của tài liệu Một số thuật toán giải bài toán phân công nhiệm vụ trong hệ thống tính toán không đồng nhất (Trang 55 - 63)

Để kiểm tra tính hiệu quả của giải pháp, xem xét một tập hợp các TSAP có độ phức tạp khác nhau. Những vấn đề thử nghiệm cho cách mô phỏng một mạng máy tính phân tán đƣợc tạo ra bằng mô hình sau đây:

Thời gian cần phải có để hoàn thành một nhiệm vụ đối với bộ xử lý chậm nhất (ti, i =1, ..., N) đã đƣợc tạo ra một cách ngẫu nhiên với giá trị từ 1 đến 10 theo một khả năng phân bổ đồng nhất. Tốc độ của các bộ vi xử lý trong hệ thống (Vj, j = 1, ..., M) cũng đã đƣợc tạo ngẫu nhiên, với giá trị từ 1 đến 5, đảm bảo có ít nhất một bộ xử lý có giá trị 1 (bộ xử lý chậm nhất). Số lƣợng tài nguyên cần thiết cho mỗi công việc (wi) đƣợc tạo ngẫu

nhiên từ một phân bố đồng đều giữa 1 đến 6. Tổng số tài nguyên sẵn có cho mỗi bộ vi xử lý (Rj, j = 1, ..., M) đã đƣợc tạo theo cách nhƣ trên và tất cả các bộ vi xử lý có cùng một nguồn tài nguyên sẵn có, tổng số tài nguyên của các bộ vi xử lý có giá trị từ 1% đến 5% tổng số tài nguyên cần thiết cho nhiệm vụ . Cuối cùng, mỗi phần tử của ma trận K là chi phí truyền thông giữa các nhiệm vụ đã đƣợc tạo ngẫu nhiên từ một phân bố đồng đều có giá trị từ 1 đến 10.

Bảng 3.1: Trường hợp thử nghiệm với 15 công việc và 5 bộ xử lý

Số công việc Tốc độ VXL Vi xử lý 1 2 2 2 5 5 3 4 3 4 4 5 5 3 1 6 5 2 7 4 4 8 4 4 9 4 3 10 4 4 11 3 1 12 4 3 13 4 5 14 3 1 15 5 2

Bảng 3.1 cho thấy các đặc điểm chính của vấn đề tạo ra. Có 15 công việc và chia cho 5 bộ vi xử lý thực hiện. Đối với vấn đề này, các thuật toán meta- heuristic đƣợc chạy để cho kết quả bằng cách sử dụng các thông số sau: GA

đƣợc chạy với kích thƣớc quần thể 𝜒 = 5000, xác xuất lai ghép đã đƣợc cố định Pc = 0,5 và xác suất đột biến là Pm = 0,2.

3.2.2. GAs cho các mục đích so sánh

Để so sánh các phƣơng pháp tiếp cận lai đã đƣợc trình bầy thì phải sử dụng hai GAs khác nhau.

GA đầu tiên là sử dụng một hàm phạt để quản lý các ràng buộc của vấn đề. Bằng cách này, việc quản lý các ràng buộc vấn đề sẽ đƣợc biết đến tốt hơn bởi các nhà nghiên cứu GA, và đã cung cấp kết quả tốt trong vấn đề tối ƣu hóa tổ hợp khác nhau với những hạn chế. GA thứ hai, ngoài chức năng hàm phạt nhƣ trên, còn thực hiện thêm một sửa chữa tối ƣu, để có đƣợc giải pháp khả thi cho vấn đề.

Tiếp theo để thay cho một biểu diễn nhị phân, trong các GA mỗi giải pháp X đƣợc mã hoá nhƣ một dãy số nguyên có chiều dài N, 𝑥 , nhƣ vậy 𝑥 i = j có nghĩa là nhiệm vụ i, i = 1, ..., N đã đƣợc gán cho vi xử lý j, j = 1, ..., M.

Lƣu ý rằng, bằng cách sử dụng phƣơng pháp mã hóa này, sẽ không có giải pháp nào là không khả thi vì các nhiệm vụ đều đƣợc gán cho các bộ vi xử lý, nhƣng chỉ vì nhiệm vụ không khả thi.

Việc quản lý các ràng buộc của vấn đề trong GA đầu tiên, chúng ta xem xét đƣợc thực hiện bằng cách giới hạn của hàm phạt cho các giải pháp với nhiệm vụ không khả thi và đặt tên cho phƣơng pháp này là GApenalty. Hàm phạt đƣợc định nghĩa là tỷ lệ thuận với số lƣợng nhiệm vụ không khả thi:

Penalty = a · numInf (3.7)

Trong đó numInf: là tƣợng trƣng của số lƣợng nhiệm vụ không khả thi và nó là hình phạt cho một nhiệm vụ không khả thi, thông thƣờng nó là một tham số để đƣợc điều chỉnh cho mỗi vấn đề.

Trong GA thứ hai, bên cạnh giới hạn của hàm phạt, thực hiện thêm một hàm sửa chữa tối ƣu cho việc quản lý các nhiệm vụ không khả thi. Gọi đây là GA cũng nhƣ là GArepair. Công việc sửa chữa tối ƣu thực hiện theo cách sau:

Repairing heuristic

Calculate the load of the processors.

𝛾= 1;

while (max. number of loops 𝛾max has not been reached) do

for (each overloaded processor j )

if 𝑥 i = j, then

𝑥 i = k, k j randomly chosen. Recalculate the load of processors.

end(for)

𝛾=𝛾 + 1;

end(while)

Các toán tử lựa chọn và lai ghép trong GA cả hai đều giống nhƣ trong cách tiếp cận lai HNNGA (xem mục 3.1.1). Toán tử đột biến bao gồm thay đổi giá trị của Ng một cách ngẫu nhiên các gen bởi một giá trị khác trong khoảng {1, ..., M}. Quá trình này đƣợc thực hiện với một xác suất Pm, bằng xác suất đột biến của một cá thể trong các thuật toán HNNGA. Phần còn lại của các tham số trong thuật toán này là:

Quần thể 𝜒= 50 cá thể, 300 thế hệ và Ng = 10. Tham số lớn nhất 𝛾𝑚𝑎𝑥 của các heuristic GArepair đã đƣợc cố định đến 20.

3.2.3. Kết quả và phân tích

Các thuật toán trên chạy 15 lần cho mỗi vấn đề, giữ cho tốt nhất, trung bình và giá trị độ lệch tiêu chuẩn đƣợc cung cấp bởi mỗi thuật toán. Các thông số của hàm chi phí đƣợc coi là 𝛼1 = 0,5 và 𝛼2 = 0,5 (xem mục 3.2). Các giá trị khác của 𝛼1 và 𝛼2 có thể tùy thuộc vào tổng số thời gian thực hiện hoặc tổng chi phí truyền thông.

Bảng 3.2 cho thấy so sánh các kết quả thu đƣợc bằng các phƣơng pháp tiếp cận HNNGA và HNNSA. Điều cần lƣu ý là trong đa số các vấn đề thì phƣơng pháp tiếp cận HNNGA tốt hơn HNNSA . Tuy nhiên, trong những vấn đề khó khăn nhất # 13 - # 15 thì HNNSA lại có đƣợc kết quả tốt hơn[4]. (adsbygoogle = window.adsbygoogle || []).push({});

Bảng 3.2: So sánh các kết quả thu được của HNNGA và HNNSA

Số trƣờng hợp

HNNGA HNNSA

Best AVg Dev Best AVg Dev

1 2101.4 2133.7 16.9 2123.3 2154.5 14.2 2 2113.3 2124.4 24.4 2127.2 2160.6 16.8 3 2090.6 2119.7 22.5 2114.3 2162.7 21.6 4 3946.5 3978.2 22.3 3975.9 4003.9 16.7 5 3780.9 3871.2 46.7 3859.4 3904.1 29.5 6 3808.6 3873.5 33.8 3876.4 3929.9 24.7 7 6166.1 6232.0 43.9 6243.9 6281.3 20.6 8 6114.2 6220.4 48.25 6186.7 6264.0 39.1 9 6161.6 6222.7 35.4 6237.5 6281.7 31.8 10 14316.3 14438.4 77.3 14378.8 14425.3 45.9 11 14219.4 14337.2 54.2 14267.5 14376.6 50.3 12 14292.8 14473.0 88.6 14357.4 14458.9 46.8 13 25880.6 26088.7 108.0 25759.5 25918.8 74.5 14 25935.6 26100.4 98.8 25879.1 26014.7 76.5 15 25763.9 26001.1 77.1 25749.8 25921.3 94.3 3.3. KẾT LUẬN

Trong chƣơng này tập trung giới thiệu hai phƣơng pháp tiếp cận lai meta-heuristic cho bài toán TSAP trong hệ thống tính toán không đồng nhất. Trong đó mỗi bộ xử lý đƣợc giới hạn số lƣợng các công việc có thể xử lý. Phƣơng pháp tiếp cận bao gồm mạng Noron- Hopfield (HNN) để quản lý các

ràng buộc của vấn đề, và sử dụng hai thuật toán tìm kiếm toàn cục khác để nâng cao chất lƣợng của giải pháp đƣợc tìm thấy, đó là: GA và SA.

Phƣơng pháp tiếp cận đã đƣợc trình bày ở trên đƣợc thử nghiệm hiệu suất trong một số trƣờng hợp, so sánh với hiệu suất của một GA cùng hàm phạt và GA với một sửa chữa kinh nghiệm. Cả phƣơng pháp lai và meta- heuristics đều cho kết quả tốt hơn GA cùng hàm phạt và GA với sửa chữa kinh nghiệm đó là giảm thiểu đƣợc hàm chi phí. Phƣơng pháp tiếp cận HNN sử dụng GA nhƣ là một thuật toán tìm kiếm toàn cục thu đƣợc kết quả tốt hơn cho phần lớn các thử nghiệm đã thực hiện, tuy nhiên cách tiếp cận HNN cùng với SA đã tìm thấy giải pháp tốt hơn trong những trƣờng hợp khó khăn nhất.

Qua các thử nghiệm đã thực hiện cho thấy rằng cả hai phƣơng pháp tiếp cận meta-heuristics là một lựa chọn phù hợp để giải quyết các TSAP trong hệ thống tính toán không đồng nhất.

KẾT LUẬN

Trong luận văn “Một số thuật toán giải bài toán phân công nhiệm vụ trong hệ thống tính toán không đồng nhất” em đã hoàn thành những nhiệm vụ sau:

1. Giới thiệu sơ lƣợc về hệ thống tính toán không đồng nhất. 2. Giới thiệu một số bài toán phân công nhiệm vụ.

3. Đã hệ thống cơ sở lý thuyết của mạng nơron, nơ ron nhân tạo, mạng nơ ron hopfiled, giải bài toán tối ƣu với mạng Hopfile, thuật giải di truyền.

4.Trình bày các tính chất đặc thù của thuật giải di truyền, các bƣớc quan trọng trong việc áp dụng thuật giải di truyền.

5.Trình bầy các phƣơng thức biến hóa của giải thuật di truyền.

6. Kết hợp cơ sở lý thuyết nêu trên vào giải quyết bài toán phân công nhiệm vụ trong hệ thống tính toán không đồng nhất.

7. Trình bày thuật toán lai ghép Mạng Noron Hopfield - Giải thuật di truyền giải bài toán phân công nhiệm vụ.

8. Trình bày thuật toán lai Mạng Noron Hopfield và mô phỏng luyện kim giải bài toán phân công nhiệm vụ.

9. Đã cài đặt thử nghiệm bài toán phân công nhiệm vụ trong hệ thống tính toán không đồng nhất trên máy tính, kết quả đạt đƣợc phản ánh chính xác những kết quả đã nghiên cứu.

Các định hướng nghiên cứu tiếp theo

Để giải quyết tốt các bài toán phân công nhiệm vụ trong hệ thống tính toán không đồng nhất thì em dự định một số hƣớng nghiên cứu tiếp theo là:

Nghiên cứu cài đặt thuật toán lai Mạng Noron Hopfield và mô phỏng luyện kim giải bài toán phân công nhiệm vụ.

Nghiên cứu cài đặt thuật toán GA cho các mục đích so sánh

Nghiên cứu phƣơng pháp lai mạng Hopfiled-thuật giải di truyền giải các bài toán phức tạp cao, không xác định.

Nghiên cứu áp dụng mạng Hopfield với cơ chế phản hồi cho lớp bài toán thỏa mãn ràng buộc và tối ƣu có ràng buộc.

TÀI LIỆU THAM KHẢO

[1]. Đặng Quang Á, Bài giảng lý thuyết độ phức tạp tính toán, tài liệu nội bộ khoa CNTT, Đại học Thái Nguyên, Hà nội, 2009.

[2]. Đặng Quang Á, ứng dụng của mạng nơ ron trong tính toán, Sách “Hệ mờ, mạng nơ ron và ứng dụng”, Chủ biên: Bùi công Cƣờng, Nguyễn Doãn Phƣớc, Nhà XBKH-KT, Hà nội, 2001, 199-211.

[3]. Hoàn Kiếm, Lê Hoàng Thái, Giải thuật di truyền, cách giải tự nhiên các bài toán trên máy tính, NXB Giáo dục, 2000.

[4]. Ali, S., Siegel, H. J., Maheswaran, M., Hensgen, D., Ali, S.: Representing task and machine heterogeneities for heterogeneous computing systems. Tamkang Journal of Science and Engineering. 3 (2000) 195–207 (adsbygoogle = window.adsbygoogle || []).push({});

[5]. Freund, R. F., Siegel, H. J.: Heterogeneous processing. In: IEEE Computer. 26 (1993) 13–17.

[6]. Jiahai Wang, Nonpositive Hopfield Neural Network with Self-Feedback andits Application to Maximum Clique Problems, Neural Information Processing – Letters and Reviews, Vol. 10, No. 10, October 2006.

[7]. Kafil M, Ahmad I. Optimal task assignment in heterogeneous distributed computing systems. IEEE Concurrency 1988.

[8]. Khuri S, Chiu T. Heuristic algorithms for the terminal assignment problem. In: Proceedings of the 1997 ACMSymposium on Applied Computing. ACM Press; 1997.

[9]. Lo VM. Heuristic algorithms for task assignment in distributed systems. IEEE Transactions on Computers.

[10]. Siegel, H. J., Dietz, H. G., Antonio, J. K.: Software support for heterogeneous computing. In: Tucker, Jr., A. B. (ed.): The Computer Science and Engineering Handbook. CRC Press, Boca Raton, FL (1997) 1886–1909 [11]. Wei Zhang and Zheng Tang, A New Algorithm Using Hopfield Neural Network with CHN for N-Queens Problem , IJCSNS International Journal of Computer Science and Network Security, VOL.9 No.4, April 2009.

Một phần của tài liệu Một số thuật toán giải bài toán phân công nhiệm vụ trong hệ thống tính toán không đồng nhất (Trang 55 - 63)