Giải thuật kiến song song giải bài toán cây khung nhỏ nhất có bậc bị chặn

8 76 0
Giải thuật kiến song song giải bài toán cây khung nhỏ nhất có bậc bị chặn

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

Thông tin tài liệu

Bài viết đề xuất giải thuật tối ưu hóa đàn kiến song song tìm cây khung nhỏ nhất có bậc bị chặn trên đồ thị có số đỉnh tương đối lớn.

JOURNAL OF SCIENCE OF HNUE Educational Sci., 2015, Vol 60, No 7A, pp 53-60 This paper is available online at http://stdb.hnue.edu.vn DOI: 10.18173/2354-1075.2015-0052 GIẢI THUẬT KIẾN SONG SONG GIẢI BÀI TỐN CÂY KHUNG NHỎ NHẤT CĨ BẬC BỊ CHẶN Bùi Thị Thủy, Phạm Thị Lan Khoa Công nghệ thông tin, Trường Đại học Sư phạm Hà Nội Tóm tắt Cho đồ thị G = (V, E) liên thơng, có trọng số số nguyên dương d Cây khung có bậc bị chặn G khung đỉnh có bậc nhỏ d Bài tốn tìm khung nhỏ có bậc bị chặn đồ thị cho trước chứng minh tốn NP - khó Trong báo này, đề xuất giải thuật tối ưu hóa đàn kiến song song tìm khung nhỏ có bậc bị chặn đồ thị có số đỉnh tương đối lớn Từ khóa: Giải thuật kiến, khung tối ưu có bậc bị chặn, chiến lược song song, tốn Np - khó, thuật tốn song song Mở đầu Bài tốn khung nhỏ có bậc bị chặn (Degree – Constrained Minimum Spanning Tree (DCMST)) nghiên cứu lần tác giả Deo Hakimi [2] Bài toán phát biểu sau: Input: Cho trước đồ thị G = (V, E) với |V | = n, cạnh gán trọng số số nguyên dương d Question: Có tồn hay không khung nhỏ T G thỏa mãn điều kiện đỉnh T có bậc khơng vượt q d Có thể phát biểu lại toán dạng tối ưu sau: Cho đồ thị G = (V, E) có n đỉnh, m cạnh cij > trọng số cạnh eij Giả sử Xij = cij , eij ∈ E 0, eij ∈ E (1.1) Với số d nguyên dương, xác định giá trị nhỏ biểu thức sau: WT = cij Xij (1.2) i,j∈V,i=j Ngày nhận bài: 20/7/2015 Ngày nhận đăng: 20/11/2015 Liên hệ: Bùi Thị Thủy, e-mail: btthuy@hnue.edu.vn 53 Bùi Thị Thủy, Phạm Thị Lan Trong Xij ≤ d với i ∈ V (1.3) Xij ≥ với i ∈ V (1.4) Xij ≤ |N | − với ∀N ⊆ V (1.5) j∈V,i=j j∈V,i=j i=j Bài tốn có nhiều ứng dụng đời sống Một số ứng dụng quan trọng kể đến thiết kế tối ưu mạng máy tính, viễn thơng, thiết kế mạch tích hợp, mạng lượng, mạng lưới giao thông, thiết kế hệ thống thủy lợi [3, 10] Xác định khung nhỏ có bậc bị chặn chứng minh tốn NP-khó [2, 13] Đã có nhiều giải thuật metaheuristic giới thiệu để giải tốn giải thuật tiến hóa [9], giải thuật di truyền [1], giải thuật đàn kiến [11, 12, 13] Tuy giải thuật đàn kiến sử dụng để giải toán DCMST dừng lại thuật toán tuần tự, chưa có thuật tốn song song Trong báo này, chúng tơi sử dụng giải thuật tối ưu hóa đàn kiến để giải tốn theo hướng song song hóa với mơ hình song song khác nhằm tối ưu hóa kết tăng tốc tính tốn Để chứng tỏ hiệu thuật toán song song so với tuần tự, cài đặt thực nghiệm Kết nhận cho thấy mơ hình song song hiệu mơ hình 2.1 Nội dung nghiên cứu Giải thuật tối ưu hóa đàn kiến (Ant Colony Optimization - ACO) Trong khoa học máy tính, giải thuật tối ưu hóa đàn kiến (Ant Colony Optimization – ACO) mơ hình cho việc thiết kế giải thuật tìm kiếm siêu kinh nghiệm (metaheuristic) để giải toán tối ưu tổ hợp quy việc tìm kiếm đường tốt đồ thị Giải thuật thành viên họ giải thuật đàn kiến phương pháp tri thức bầy đàn (swarm intelligence) Phương pháp hướng tiếp cận mẻ để giải toán dựa hành xử xã hội lồi vật, có loài kiến Từ đàn kiến tự nhiên đến giải thuật ACO Kiến lồi trùng có tính chất xã hội Chúng sống thành đàn tự nhiên chúng có tác động qua lại với Trong trình di chuyển từ tổ tới nguồn thức ăn, kiến có để lại mặt đất chất hóa học tiết từ thể chúng Chất hóa học gọi mùi kiến (pheromone) Nếu khơng có mùi kiến sẵn có đường đi, kiến di chuyển ngẫu nhiên Nhưng có mặt mùi kiến, chúng có xu hướng di chuyển theo mùi Trên thực tế nghiên cứu nhà sinh học theo thuyết tự nhiên, kiến thích đường đánh dấu nhiều mùi kiến Con đường có nồng độ mùi cao xác suất kiến chọn để qua lớn Vì mùi kiến chất hóa học nên bị bay theo thời gian [6] Tuy nhiên, số nhà nghiên cứu sinh học mùi bền nên bay khơng ảnh hưởng nhiều đến đường ngắn Theo chế kiến sau vài lần di chuyển tìm đường tốt tới nguồn thức ăn Con đường ngắn đường có độ mùi lớn có nhiều kiến Dựa hoạt động tìm kiếm thức ăn đàn kiến tự nhiên, Marco Dorigo xây dựng giải thuật đàn kiến Trong giải thuật, đàn kiến tự nhiên mô hình hóa thành đàn kiến 54 Giải thuật kiến song song giải tốn khung nhỏ có bậc bị chặn nhân tạo, mùi kiến tự nhiên thay mùi nhân tạo Ý tưởng ACO đàn kiến nhân tạo xây dựng lời giải cho toán việc hoạt động đồ thị Mỗi cạnh đồ thị gắn thơng tin cho phép dự đốn xem cạnh có kiến lựa chọn để qua hay không [8] Thơng tin gọi thơng tin hướng dẫn kiến di chuyển bao gồm: • Thơng tin kinh nghiệm: giới hạn kinh nghiệm di chuyển từ đỉnh i tới đỉnh j, gắn với cạnh eij kí hiệu ηij Thông tin kinh nghiệm không thay đổi kiến suốt q trình chạy thuật tốn • Thơng tin mùi kiến nhân tạo: kí hiệu τij cho cạnh eij Đây mùi kiến nhân tạo ứng với kiến nhân tạo, có tác dụng việc tính xác suất để lựa chọn đường cho kiến Thông tin bị thay đổi suốt trình thực giải thuật Như vậy, từ đàn kiến tự nhiên đến giải thuật ACO trình xây dựng mơ hình giải thuật tìm kiếm đường tối ưu dựa hoạt động tìm kiếm thức ăn đàn kiến Nhân tố giải thuật ACO đàn kiến nhân tạo với tham số mùi kiến, bay mùi kiến chế lựa chọn đường dựa nồng độ mùi hương Giải thuật ACO - Metaheuristic Giải thuật ACO hoạt động dựa tương tác lẫn ba thủ tục sau đây: xây dựng lời giải kiến (ConstructAntsSolutions), cập nhật vệt mùi (UpdatePheromones) hành động chung (daemon actions) [12] • ConstructAntsSolutions cho phép kiến nhân tạo di chuyển đồng thời không đồng qua trạng thái liền kề toán Sự di chuyển theo tập quy tắc dựa thông tin kinh nghiệm thơng tin mùi kiến để hướng dẫn tìm kiếm Qua di chuyển đồ thị, kiến xây dựng lời giải cho tốn Trong q trình xây dựng lời giải, kiến giải phóng mùi lại lần qua cạnh Mùi kiến góp phần hướng dẫn tìm kiếm cho kiến sau • UpdatePheromones q trình vệt mùi bị thay đổi Giá trị vệt mùi tăng lên giảm Vệt mùi tăng giá trị kiến để lại mùi thành phần đường qua Trường hợp ngược lại bay mùi kiến tự nhiên Thực tế ta thấy, việc để lại mùi đường kiến qua làm tăng thêm khả mà đường lựa chọn nhiều kiến khác, điều có tác dụng tạo đường tốt sử dụng lại kiến sau Ngược lại, bay mùi kiến ngăn chặn hội tụ nhanh giải thuật tới vùng gần điểm cực thuận cho phép kiến khảo sát khơng gian tìm kiếm • Daemon actions sử dụng để cài đặt hoạt động chung, hoạt động không thực thi kiến riêng lẻ Những hoạt động hoạt hóa thủ tục tối ưu hóa cục hay góp nhặt thông tin cục Giải thuật ACO – metaheuristic viết giả mã sau: Procedure ACO – Metaheuristic; ScheduleActivities ConstructAntsSolutions; UpdatePheromones; DaemonActions; End – ScheduleActivities End – Procedure; 55 Bùi Thị Thủy, Phạm Thị Lan Như vậy, ý tưởng giải thuật ACO – Metaheuristic lặp lại mối quan hệ lẫn ba thành phần bao gồm: hoạt động đàn kiến, cập nhật vệt mùi hoạt động khác Ngày nay, có nhiều cài đặt thành cơng giải thuật ACO áp dụng để giải nhiều toán tối ưu tổ hợp khác 2.2 Giải thuật ACO giải toán khung nhỏ có bậc bị chặn 2.2.1 Khung ACO Ý tưởng việc áp dụng ACO vào tốn khung nhỏ có bậc bị chặn (DCMST) tóm tắt sau: trước tiên xác định khung có bậc bị chặn (Degree – Constrained Spanning tree, d – ST), sau dựa d – ST này, xác định khung nhỏ có bậc bị chặn Dựa ý tưởng đó, ta có khung ACO thiết kế sau: Cho đồ thị liên thơng, vơ hướng, có trọng số G = (V, E) Một đàn kiến có số lượng kiến m = |V | Tại bước lặp thuật toán, kiến xây dựng cho riêng d – ST Trong trình xây dựng d – ST, kiến sử dụng tập cạnh E để phục vụ cho việc xây dựng lời giải Hàm mục tiêu f trả tổng trọng số của khung có bậc bị chặn Sk tìm kiến k Gọi wij trọng số cạnh eij τij nồng độ mùi cạnh eij Giá trị khởi tạo cho nồng độ mùi cạnh τ0 = 10−6 Giải thuật ACO mô tả qua số bước lặp sau: Đàn kiến nhân tạo mAnts có số lượng |V | khởi tạo đỉnh cách ngẫu nhiên (mỗi đỉnh) Mỗi kiến k xây dựng d – ST hợp lệ Nó ln chứa danh sách Jk cạnh mà qua Tại bước r vòng lặp thứ t, kiến k lựa chọn cạnh mà chưa qua Cạnh chọn cạnh liên thuộc với d – ST xây dựng bước r − 1, tất nhiên thêm cạnh vào ta thu d – ST hợp lệ Xác suất lựa chọn cạnh sau:  β α   [τeij (t)] [ηeij ] , ∀l ∈ J (e ), η = eij k ij α β wij (2.1) pkeij = l∈Jk [τel (t)] [ηel ]  0, ngược lại Trong đó: wij = wij wij > 0, nếuwij = (2.2) Với α β hai tham số dương chi phối ảnh hưởng tương ứng nồng độ mùi trọng số cạnh eij tới định kiến ηij = w1ij Sau kiến hoàn thành d – ST, giá trị mùi cập nhật lại theo công thức sau: mAnts τeij (t+1) = (1 − ρ)τeij (t) + △τek ij k=1 (2.3) Trong đó: △τekij = ρτ0 cập nhật cục 56 (2.4) Giải thuật kiến song song giải toán khung nhỏ có bậc bị chặn Hoặc △τekij = Q Lbg eij ∈ d − ST bg 0, ngược lại cập nhật toàn cục (2.5) Với ρ hệ số bay hơi, Lgb trọng số khung có bậc bị chặn nhỏ tồn cục d − ST gb , Q số nguyên dương Kí hiệu thuật tốn ACO ACOSE 2.2.2 Khung ACO song song Hình Mơ hình ACOR Về bản, bước khung giải thuật song song giống với khung tuần tự, khác chỗ: việc thực giải thuật tiến hành đồng thời xử lí khác nhau, xử lí giao tiếp với qua mạng liên kết tạo thành hệ thống song song với nhớ phân tán Mỗi xử lí đảm nhận cơng việc tìm kiếm khung nhỏ có bậc bị chặn nhóm kiến (đàn kiến) Sau số bước lặp định, có hoán đổi lời giải tối ưu ma trận mùi tương ứng với lời giải tối ưu xử lí Giả sử có n xử lí, số kiến phân phát xử lí [mAnts/n] Ở đây, chúng tơi trình bày mơ hình giao tiếp mạng liên kết xử lí để hốn đổi thơng tin sau: Hình Mơ hình ACOMS Mơ hình vòng (Hình 1): Trong mơ hình này, n xử lí (n đàn kiến) kết nối với tạo thành vòng chiều Sau n đàn kiến tìm xong lời giải tối ưu riêng mình, việc hốn đổi lời giải tiến hành sau: xử lí i gửi lời giải tối ưu cho xử lí thứ [(i + 1)mod n] nhận lời giải tối ưu gửi đến từ xử lí thứ [(i − + n)mod n] Sau xử lí tiếp tục thực việc tìm kiếm Kí hiệu thuật tốn theo mơ hình ACOR 57 Bùi Thị Thủy, Phạm Thị Lan Mơ hình “Master - Slave” (Hình 2): Trong mơ hình song song này, xử lí giao tiếp với hợp tác để tìm lời giải tối ưu Một xử lí đóng vai trò Master n − xử lí lại đóng vai trò Slave Nhiệm vụ Slave tìm kiếm lời giải tối ưu riêng Sau Master làm nhiệm vụ lọc lời giải tối ưu n − lời giải tối ưu Slave quảng bá cho Slave danh tính Slave có lời giải tối ưu để Slave lại chép thơng tin lời giải tối ưu hay nói khác chép ma trận mùi hương Sau Slave tiếp tục tìm kiếm với trạng thái ma trận mùi vừa chép Kí hiệu thuật tốn theo mơ hình ACOMS 2.3 Kết thực nghiệm Chương trình thực nghiệm cài đặt ngơn ngữ C++ thực thi 04 máy tính có kết nối LAN Do tốn chưa có test chuẩn nên liệu thực nghiệm sinh ngẫu nhiên đồ thị có 40 đỉnh có số cạnh thay đổi Các kết thực thuật toán ACOSE , ACOMS ACOR thể bảng Bảng Thời gian chạy thuật toán song song Bộ Số ACOSE ACOMS ACOR liệu cạnh 410 18544 18235 18476 420 18725 18535 18691 430 18885 18720 18826 440 19124 18902 19103 450 20754 19928 20681 460 22438 20365 22452 Bảng So sánh trọng số nhỏ tìm thực ACOSE , ACOMS , ACOR Bộ Số ACOSE ACOMS ACOR liệu cạnh 410 218 226 196 420 198 202 174 430 249 235 217 440 185 201 167 450 229 218 192 460 206 213 189 Từ kết trên, chúng tơi có biểu đồ so sánh thời gian giá trị hàm mục tiêu toán thực thi thuật toán ACOSE , ACOMS , ACOR Hình Hình Hình Biểu đồ so sánh thời gian thực thi thuật toán ACOSE , ACOMS , ACOR 58 Giải thuật kiến song song giải tốn khung nhỏ có bậc bị chặn Hình Biểu đồ so sánh trọng số nhỏ tìm thực thuật toán ACOSE , ACOMS , ACOR Kết cho thấy, thuật toán kiến song song ACOMS ACOR thực thi thời gian so với thuật toán kiến ACOSE , đồng thời chúng cho lời giải tối ưu so với ACOSE Thời gian thực ACOMS ngắn trình thực vòng lặp, cơng việc chia sẻ cho xử lí Slave thực ACOR có thời gian thực thi tiệm cận với ACOSE xử lí mơ hình thực thi công việc giống ACOSE , khác ACOSE có xử lí thực ACOR có n xử lí thực sau số bước lặp định, xử lí trao đổi thơng tin cho Việc làm làm tăng không gian lời giải tìm được, từ tìm lời giải tối ưu so với ACOSE ACOMS Như vậy, mơ hình ACOMS phù hợp muốn tăng tốc thời gian giải tốn, mơ hình ACOR nên sử dụng muốn tìm kiếm lời giải tối ưu toán Kết luận Giải thuật tối ưu hóa đàn kiến (ACO) ứng dụng để giải toán tối ưu tổ hợp có tốn xác định khung nhỏ có bậc bị chặn Việc xây dựng mơ hình song song giải thuật đàn kiến giải tốn cần thiết nhằm góp phần rút ngắn thời gian giải tìm lời giải tốt cho tốn Trong báo này, chúng tơi trình bày cách tổng quan tốn Cây khung nhỏ có bậc bị chặn, giải thuật đàn kiến hai chiến lược song song giải thuật đàn kiến để giải toán Và kết thực nghiệm cho thấy hiệu hai thuật tốn song song Trong thời gian tới, chúng tơi tiếp tục thử nghiệm thuật tốn kiến theo mơ hình song song để giải tốn mơ hình thay lời giải tồi nhất, mơ hình siêu khối, Các mơ hình cài đặt thực nghiệm hệ đa xử lí phân tán với số lượng xử lí lớn 8, 16 xử lí Đồng thời, chúng tơi có cải tiến cách thức cập nhật ma trận mùi nhằm tăng tốc việc sinh lời giải hội tụ tới lời giải tối ưu TÀI LIỆU THAM KHẢO [1] G.Zhou, M Gen and T Wu A new approach to the DCMSTP using GA Proceedings of the International Conference on System, Man and Cybernetics, Vol 4, pp 2683–2688, 1996 [2] N Deo and S L Hakimi The shortest generalized Hamiltonian tree Proceeding of the 6th Annual Allerton Conference, pp 879–888, 1968 59 Bùi Thị Thủy, Phạm Thị Lan [3] Narula and C A Ho Degree Constrained Minimun Spanning Tree Computer and Operations Research, pp 239-249, 1980 [4] Marco Dorigo and V Maniezzo, A Colorni Ant System: Optimization by a colony of cooperating agents IEEE Transactions on Systems, Man, and Cybernetics – Part B, vol 26, no 1, pp 29–41, 1996 [5] Marco Dorigo and Thomas Stutzle The Ant Colony Optimization Metaheuristic: Algorithms, Applications, and Advances.Technical Report IRIDIA-2000-32, 2000 [6] Marco Dorigo and Thomas Stutzle Ant Colony Optimization.The MIT Press, pages 278–285, 2004 [7] Max Manfrin, Mauro Birattari, Thomas Stutzle and Marco Dorigo Parallel Ant Colony Optimization for the Traveling Salesman Problem 5th International Workshop ANTS 2006 proccedings, p224–234, 2006 [8] Marco Dorigo, Mauro Birattari and Thomas Stutzle Ant Conlony Optimization: Artificial Ants as a Computational Intelligence Technique Iridia - Technical report series, 2006 [9] R Raide Efficient evolution algorithm for the DCMSTP Proceedings of the 2000 Congress on Evolutionary Computation, pp 104–111, Vol.1, 2000 [10] Savelsbergh, M and T Volgenant Edge exchanges in the Degree-Constrained minimum spanning tree Computers and Operation Research, pp 341–348, 1985 [11] Thang N.Bui, Catherine M Zrncic An ant-based algorithm for finding DCMST Proceeding of the 8th annual conference on Genetic and evolution computation, pp.11–18, 2006 [12] Thang N.Bui An improved ant-based algorithm for the DCMSTP IEEE transactions on Evolutionary Computation, Vol 16, Iss 2, pp.266–278, 2011 [13] Yoon - Teck Bau, Chin - Kuan Ho and Hong - Tat Ewe Ant Colony Optimization Approaches to the Degree - constrained minimum spanning tree Journal of Information and Engineering 24, pp.1081–1094, 2008 ABSTRACT Parallel Ant Colony Optimization algorithm to solve Degree - constrained minimum spanning tree problem Let G = (V, E) denote the connected weighted undirected graph and a positive integer d A degree-constrained spanning tree of graph G is a spanning tree where each vertex in the tree has a degree of at most d The problem of finding the degree-constrained spanning tree of minimum cost in an weighted graph is called the degree-constrained minimum spanning tree (DCMST) known as NP-Hard In this study, we propose a parallel Ant Colony Optimization (ACO) algorithm which finds solution for the DCMST problem in many instances Keywords: Ant Colony Optimization, Degree - constrained minimum spanning tree, parallel strategies, NP-hard problem, parallel algorithm 60 ... gian giải tìm lời giải tốt cho toán Trong báo này, chúng tơi trình bày cách tổng quan tốn Cây khung nhỏ có bậc bị chặn, giải thuật đàn kiến hai chiến lược song song giải thuật đàn kiến để giải toán. .. thuật ACO áp dụng để giải nhiều toán tối ưu tổ hợp khác 2.2 Giải thuật ACO giải tốn khung nhỏ có bậc bị chặn 2.2.1 Khung ACO Ý tưởng việc áp dụng ACO vào toán khung nhỏ có bậc bị chặn (DCMST) tóm... xây dựng giải thuật đàn kiến Trong giải thuật, đàn kiến tự nhiên mơ hình hóa thành đàn kiến 54 Giải thuật kiến song song giải toán khung nhỏ có bậc bị chặn nhân tạo, mùi kiến tự nhiên thay mùi

Ngày đăng: 13/01/2020, 10:44

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

Tài liệu liên quan