Bài viết này đề xuất một thuật toán rút gọn đồ thị cho bài toán SMT; đề xuất này đã được thực nghiệm trên một số bộ dữ liệu là đồ thị thưa trong hệ thống dữ liệu thực nghiệm chuẩn. Thuật toán rút gọn đồ thị đề xuất có hiệu quả rút gọn lên đến 98% đối với một số đồ thị lớn.
Kỷ yếu Hội nghị Khoa học Quốc gia lần thứ IX “Nghiên cứu ứng dụng Công nghệ thông tin (FAIR'9)”; Cần Thơ, ngày 4-5/8/2016 DOI: 10.15625/vap.2016.00079 RÚT GỌN ĐỒ THỊ CHO BÀI TOÁN CÂY STEINER NHỎ NHẤT Phan Tấn Quốc Trường Đại học Sài Gịn quocpt@sgu.edu.vn TĨM TẮT— Cây Steiner nhỏ (Steiner Minimal Tree - SMT) tốn tối ưu tổ hợp có nhiều ứng dụng quan trọng khoa học kỹ thuật; toán thuộc lớp NP-hard nghiên cứu rộng rãi Các tiếp cận giải toán SMT - dù giải hay giải gần - cơng đoạn rút gọn đồ thị quan trọng; cơng đoạn có ý nghĩa tiếp cận giải toán SMT Trong hàng chục năm qua, có hàng loạt thuật tốn rút gọn đồ thị cho toán SMT cơng bố; kết hỗ trợ tích cực cho việc giải tốn SMT với kích thước lớn Bài báo đề xuất thuật toán rút gọn đồ thị cho toán SMT kết thực nghiệm thơng tin hữu ích cho việc nghiên cứu thuật toán giải thuật tốn giải gần cho tốn SMT Từ khóa— Steiner minimal tree, graph reduction, branch and bound algorithm, exact algorithms for steiner minimal tree I GIỚI THIỆU A Một số định nghĩa Cho n điểm P1,P2,…,Pn Giả sử cần tìm mạng giao thơng nối k điểm (trong số n điểm cho) với nhau, mạng giao thông sử dụng thêm số điểm khác - số n điểm cho k điểm chọn cho tổng độ dài đoạn thẳng nối điểm nhỏ nhất; toán Steiner nhỏ Mục báo trình bày số định nghĩa tính chất liên quan Định nghĩa Cây Steiner [2] Cho G = (V(G), E(G)) đơn đồ thị vô hướng liên thơng có trọng số khơng âm cạnh; V(G) tập gồm n đỉnh, E(G) tập gồm m cạnh, w(e) trọng số cạnh e, e E(G) Cho Y tập đỉnh V(G), T qua tất đỉnh Y gọi Steiner Y Tập Y gọi tập terminal, đỉnh thuộc tập Y gọi đỉnh terminal, đỉnh thuộc T mà không thuộc tập Y gọi đỉnh Steiner Khác với toán khung, Steiner cần qua tất đỉnh thuộc tập terminal Y thêm số đỉnh khác thuộc tập V(G) Định nghĩa Chi phí Steiner [2] Cho T = (V(T), E(T)) Steiner đồ thị G, chi phí T, ký hiệu C(T), tổng trọng số cạnh thuộc T, tức ( ) ∑ ( ) ( ) Định nghĩa Cây Steiner nhỏ [2] Cho đồ thị G mô tả trên, tốn tìm Steiner có chi phí nhỏ gọi tốn Steiner nhỏ (Steiner Minimal Trees problem – SMT) SMT toán tối ưu tổ hợp lý thuyết đồ thị Trong trường hợp tổng quát, SMT chứng minh toán thuộc lớp toán NP-hard [16,18] Có hai trường hợp đặc biệt tốn SMT giải thời gian đa thức; Y=V(G) |Y|=2 (|Y| ký hiệu số lượng đỉnh tập Y): Khi Y=V tốn SMT giải thuật tốn tìm khung nhỏ nhất; chẳng hạn thuật tốn Prim, Kruskal; |Y|=2 tốn SMT giải thuật tốn tìm đường ngắn hai đỉnh; chẳng hạn thuật toán Dijkstra (để ngắn gọn, báo từ đồ thị hiểu đơn đồ thị, vô hướng, liên thơng, có trọng số khơng âm) Ví dụ: Cho đồ thị G có đỉnh 10 cạnh hình vẽ tập Y={2,8,9} Hình Đồ thị vơ hướng liên thơng có trọng số G Phan Tấn Quốc 639 Khi Steiner nhỏ tìm ứng với tập Y đồ thị G T có V(T)={2,3,4,6,8,9} E(T) = {(2,3), (3,4), (4,6), (4,8), (6,9)} minh họa hình vẽ 2; T có tập đỉnh Steiner {3,4,6} có chi phí 25 Hình Cây Steiner nhỏ tập Y đồ thị G Định lý Định lý số đỉnh Steiner [30] Cho đồ thị G tập terminal Y, Steiner T Y có p đỉnh số đỉnh Steiner T không vượt p2 Tiếp theo đưa khái niệm cạnh cầu Steiner đồ thị rút gọn Steiner để diễn đạt cho nội dung phần Định nghĩa Cạnh cầu Steiner Cho đồ thị G tập terminal Y, cạnh euv gọi cạnh cầu Steiner G loại cạnh euv tập đỉnh terminal Y không thuộc thành phần liên thông Định nghĩa Đồ thị rút gọn Steiner Cho đồ thị G tập terminal Y, G’ gọi đồ thị rút gọn Steiner G số đỉnh số cạnh G’ nhỏ số đỉnh số cạnh G G’ tồn SMT ứng với tập terminal Y đồ thị G B Ứng dụng tốn SMT Bài tốn SMT tìm thấy ứng dụng quan trọng lĩnh vực khoa học kỹ thuật; chẳng hạn tốn thiết kế mạng truyền thơng [2], tốn định tuyến VLSI [2, 8], toán liên quan đến hệ thống mạng với chi phí nhỏ [7, 32],… C Một số nghiên cứu liên quan toán SMT vấn đề đặt cần giải Do có tính khoa học tính ứng dụng rộng rãi, toán SMT thu hút quan tâm nghiên cứu liên tục, sâu rộng nhiều nhà khoa học giới hàng chục năm qua Các mơ hình tốn Steiner toán Steiner với khoảng cách Euclide (Euclidean Steiner Tree problem) [29], toán Steiner với khoảng cách chữ nhật (Rectilinear Steiner Tree problem) [14], toán Steiner cho đồ thị vơ hướng,… Hiện có hàng loạt thuật tốn giải tốn SMT đề xuất chia chúng làm bốn hướng tiếp cận sau [3, 17, 19, 22]: Hướng thứ thuật tốn tìm lời giải Chẳng hạn thuật toán quy hoạch động Dreyfus Wagner [24], thuật toán dựa phép nới lỏng lagrange Beasley [13], thuật toán nhánh cận Koch Martin [28],… Ưu điểm hướng tiếp cận tìm lời giải xác, nhược điểm hướng tiếp cận giải tốn có kích thước nhỏ Hướng tiếp cận sở quan trọng để đánh giá mức độ xác thuật tốn giải gần Việc giải toán SMT thực thách thức lớn lý thuyết tối ưu tổ hợp [4, 6, 21, 23, 26, 31] Hướng thứ hai thuật tốn tìm lời giải gần cận tỉ lệ Ưu điểm thuật tốn có đảm bảo mặt toán học theo nghĩa lời giải tìm gần cận tỉ lệ α so với lời giải tối ưu, nhược điểm thuật tốn cận tỉ lệ tìm nhiều thuật toán đề xuất thực tế thường nhiều so với chất lượng lời giải tìm nhiều thuật tốn gần khác dựa thực nghiệm Thuật tốn MST-Steiner có cận tỉ lệ (MST-Minimum Spanning Trees) [2], thuật tốn Zelikovsky-Steiner có cận tỉ lệ 11/6 [2] thuật toán điển hình hướng tiếp cận [12] Hướng thứ ba thuật toán heuristic Thuật toán heuristic kinh nghiệm riêng biệt để tìm kiếm lời giải cho toán tối ưu cụ thể Thuật toán heuristic thường tìm lời giải chấp nhận thời gian cho phép khơng lời giải tốt nhất; chí thuật tốn heuristic không hiệu loại liệu toán cụ thể Ưu điểm thuật toán heuristic cho thời gian chạy nhanh Các thuật tốn Floyd tìm đường ngắn cặp đỉnh đồ thị, thuật toán Kruskal, thuật tốn Prim để tìm khung nhỏ đồ thị, thuật toán Distance Network Heuristic Kou, Markowsky Berman [15],… xem heuristic cho tốn SMT; nhiên chi phí tìm heuristic khơng hiệu thuật tốn metaheuristic việc giải toán SMT [27] RÚT GỌN ĐỒ THỊ CHO BÀI TOÁN CÂY STEINER NHỎ NHẤT 640 Hướng thứ tư thuật toán metaheuristic Thuật toán metaheuristic sử dụng nhiều heuristic kết hợp với kỹ thuật phụ trợ nhằm khai phá khơng gian tìm kiếm; metaheuristic thuộc lớp thuật tốn tìm kiếm tối ưu Hiện có nhiều cơng trình sử dụng thuật tốn metaheuristic giải tốn SMT; chẳng hạn thuật tốn tìm kiếm tabu [5], thuật toán di truyền [1], thuật toán di truyền song song [29],… Cho đến tại, hướng tiếp cận metaheuristic cho kết tốt số thuật tốn giải gần Bài tốn SMT có hệ thống liệu thực nghiệm chuẩn [10] nhiều công bố liên quan tiến hành thực nghiệm hệ thống liệu Các đồ thị hệ thống liệu có tối đa 2500 đỉnh, 62500 cạnh Một số cơng trình cơng bố kết thực nghiệm liệu chuẩn [2, 28] Rút gọn đồ thị chủ đề nghiên cứu liên quan đến toán SMT Hầu hết đồ thị gặp thực tế ứng dụng đồ thị thưa Một số công trình liên quan tốn SMT trình bày kỹ thuật nhằm giảm thiểu kích thước đồ thị; chẳng hạn cơng trình Jeffrey H.Kingston Nicholas Paul Sheppard [11], cơng trình Thorsten Koch, Alexander Martin [28],…Trong báo này, chúng tơi đề xuất thuật tốn rút gọn đồ thị cho giải toán SMT; chúng tơi thực nghiệm thuật tốn với 18 liệu lấy hệ thống liệu thực nghiệm chuẩn Đề xuất xem bước tiền xử lý quan trọng việc giải tốn SMT II THUẬT TỐN RÚT GỌN ĐỒ THỊ CHO BÀI TOÁN CÂY STEINER Trong phần này, trước hết chúng tơi đề xuất thuật tốn rút gọn đồ thị cho toán SMT dựa số toán tính chất kinh điển lý thuyết đồ thị đng ngắn (tính chất 1), cạnh cầu Steiner (tính chất 2), phân rã đồ thị (tính chất 3) Cũng phần này, đề xuất thuật toán nhánh cận hai thuật toán heuristic giải tốn SMT A Một số tính chất rút gọn đồ thị Cho đồ thị G tập terminal Y định nghĩa 1, ý tưởng chung tính chất nhằm rút gọn đồ thị làm gia tăng đỉnh cho tập terminal (các đỉnh thuộc Steiner nhỏ cần tìm) loại bỏ đỉnh đồ thị mà chắn khơng thuộc Steiner nhỏ cần tìm; nghĩa xác định cạnh kề với cần loại bỏ Tương tự, việc gia tăng đỉnh cho tập terminal cịn thực qua việc xác định cạnh đồ thị phải thuộc Steiner nhỏ cần tìm (nghĩa hai đỉnh kề cạnh phải thuộc tập terminal) Các tính chất rút gọn đồ thị tập trung vào việc loại bỏ cạnh đồ thị mà chắn khơng thuộc Steiner nhỏ cần tìm Chất lượng thuật toán giải toán SMT phụ thuộc vào độ lớn hệ số n |Y|; mục đích thuật toán rút gọn đồ thị làm giảm thiểu tối đa hệ số n |Y| Để thuận tiện cho việc mơ tả thuật tốn ngơn ngữ mã giả, định nghĩa hai mảng chiều edge_select vertex_select để đánh dấu cạnh đỉnh có thuộc Steiner nhỏ cần tìm hay khơng Các biến mảng đồ thị ban đầu khởi tạo sau: edge_select[e]=1, e E(G) vertex_select [u]=1, u V(G) Khi xác định cạnh đỉnh chắn khơng thuộc Steiner nhỏ cần tìm biến mảng gán giá trị Tính chất (Shortest Paths - SP) Cho đồ thị G tập terminal Y, đỉnh x Y x khơng nằm đường ngắn (Shortest Path) nối hai đỉnh u, v với u, v Y đỉnh x cạnh kề với đỉnh x không thuộc SMT cần tìm Đoạn mã giả cho tính chất minh họa sau (gọi thuật toán SP): Cho mảng chiều visit[u], đặt visit[u]=0, u V(G); Tìm ma trận khoảng cách (d) ma trận đường (p) cặp đỉnh u, vV(G) (sử dụng thuật toán Floyd [25]); for (u, v Y) Dựa vào ma trận đường (p), đánh dấu đỉnh thuộc đường ngắn nối u, v; tức visit[z]=1 với đỉnh z thuộc đường đó; for (u V(G)) if (u Y visit[u] = 0) vertex_select[u]=0; // nghĩa xác định đỉnh u không thuộc SMT cần tìm for (euv E(G)) if (vertex_select[u]=0 vertex_select[v]=0) 10 edge_select[euv]=0; // nghĩa xác định cạnh khơng thuộc SMT cần tìm Thuật tốn rút gọn đồ thị SP có độ phức tạp thời gian tính O(n3); độ phức tạp thời gian tính thuật tốn Floyd (dịng thứ 2) Hàng loạt tính chất rút gọn đồ thị khác bao hàm tính chất 1; chẳng hạn tính chất ―Cạnh kề với đỉnh treo khơng thuộc tập terminal Y đồ thị G không thuộc SMT cần tìm‖, ―Cạnh e=(u,v) kề với đỉnh treo u, mà u thuộc tập terminal Y v thuộc terminal Y‖, ―Nếu G có cạnh cầu e; G tách thành hai thành phần liên thơng theo cạnh cầu e thành phần liên thông khơng chứa đỉnh thuộc tập Phan Tấn Quốc 641 terminal Y tất đỉnh thuộc thành phần liên thơng khơng thuộc SMT cần tìm‖, ―Xét ba cạnh đồ thị G đôi chung đỉnh, cạnh có trọng số lớn tổng trọng số hai cạnh cịn lại cạnh khơng thuộc SMT cần tìm‖, ―Một đường (p) nối hai đỉnh u,v mà không qua đỉnh terminal tổng trọng số cạnh đường (p) lớn wuv đỉnh thuộc (p) khơng thuộc SMT cần tìm; ngược lại, tổng trọng số cạnh đường (p) nhỏ wuv cạnh (u,v) khơng thuộc SMT cần tìm‖,… Tính chất (Bridge Steiner-BS) Cho đồ thị G tập terminal Y Các đỉnh kề với cạnh cầu Steiner (định nghĩa trên) thuộc SMT cần tìm Đoạn mã giả cho tính chất minh họa sau (gọi thuật toán BS): for (euv E(G)) if (euv cạnh cầu Steiner) { if (u Y ) Y=Y u; if (v Y ) Y=Y v; } Thuật toán rút gọn đồ thị BS có độ phức tạp thời gian tính O(mn|Y|) Tính chất (Decomposition Graph-DG) Cho đồ thị G tập terminal Y G tách thành thành phần liên thơng theo cạnh cầu Steiner SMT cần tìm hợp thành cạnh cầu steiner steiner nhỏ tìm ứng với thành phần liên thông tương ứng Đoạn mã giả cho tính chất minh họa sau (gọi thuật tốn DG): Tìm cạnh cầu Steiner đồ thị G; giả sử e1,e2,…,ek; Phân rã G thành k+1 thành phần liên thông G1,G2,…,Gk+1 (mỗi thành phần liên thông Gi xác định SMT tương ứng; giả sử SMT1, SMT2,…, SMTk+1; SMT cần tìm đồ thị ⋃ ) ⋃ Thuật toán rút gọn đồ thị DG có độ phức tạp thời gian tính O(nm) Tiếp theo, báo đề xuất thuật tốn rút gọn đồ thị có tên SP-BS cho toán SMT; SP-BS sử dụng thuật toán SP BS tương ứng với tính chất tính chất B Thuật tốn rút gọn đồ thị SP-BS Input: Đồ thị G tập terminal Y; Output: Đồ thị sau rút gọn; 10 11 condition_loop=1; k=n_terminal; // n_terminal số đỉnh tập terminal while (condition_loop){ condition_loop=0; SP(); // cập nhật đồ thị G; cập nhật tập terminal BS(); // cập nhật đồ thị G; cập nhật tập terminal if (n_terminal>k){ k=n_terminal; condition_loop=1; } } C Thuật toán rút gọn đồ thị SP-DG Từ tính chất 3, chúng tơi đề xuất thuật tốn khác cho kết tương đương với thuật toán SP-BS trên; gọi thuật toán SP-DG; thuật toán SP-DG cho thực thuật toán SP trước DG Các thuật tốn SP-BS SP-DG tương đương theo nghĩa có hiệu số n-|Y| nhau; đây, hiệu số n-|Y| SPDG chọn số n-|Y| lớn số đồ thị thu sau phép tách Rõ ràng dù có n-|Y| nhau; đồ thị thu thuật toán SP-DG thuận lợi việc tìm kiếm SMT nhỏ tương ứng (điều thể qua thực nghiệm chúng tơi trình bày chi tiết phần tiếp theo); đặc biệt thuật toán tiếp cận theo hướng tìm lời giải RÚT GỌN ĐỒ THỊ CHO BÀI TOÁN CÂY STEINER NHỎ NHẤT 642 THỰC NGHIỆM VÀ ĐÁNH GIÁ Phần trình bày thực nghiệm thuật tốn rút gọn đồ thị số thuật tốn tìm Steiner nhỏ A Dữ liệu thực nghiệm Chúng sử dụng tổng cộng 18 liệu đồ thị thưa hệ thống liệu thực nghiệm chuẩn cho tốn Steiner: URL http://people.brunel.ac.uk/~mastjjb/jeb/orlib/steininfo.html [10] Thơng tin chi tiết 18 liệu trình bày bảng 1; cột ghi thông tin tên tập tin hệ thống liệu thực nghiệm chuẩn, số đỉnh, số cạnh số đỉnh thuộc tập terminal đồ thị (các đồ thị gọi đồ thị gốc, đồ thị steinc1, steind1, steine1 gọi đồ thị có kích thước lớn); trọng số cạnh số nguyên ngẫu nhiên phạm vi [1 10] Bảng Thông tin liệu thực nghiệm [10] Test steinb1.txt steinb2.txt steinb3.txt steinb4.txt steinb5.txt steinb6.txt steinb7.txt steinb8.txt steinb9.txt steinb10.txt steinb11.txt steinb12.txt steinb13.txt steinb14.txt steinb15.txt steinc1.txt steind1.txt steine1.txt n 50 50 50 50 50 50 75 75 75 75 75 75 100 100 100 500 1000 2500 Original problem m 63 63 63 100 100 100 94 94 94 150 150 150 125 125 125 625 1250 3125 |Y| 13 25 13 25 13 19 38 13 19 38 17 25 50 5 B Mơi trường thực nghiệm Các thuật tốn cài đặt ngôn ngữ C++ sử dụng môi trường DEV C++ 5.9.2, CPU(2) Intel(R) Xeon(R) E5- 2660 2.20GHz, RAM 8GB, hệ điều hành Windows 10, 64 bit C Kết thực nghiệm đánh giá Chất lượng thuật toán Kết thực nghiệm thuật toán rút gọn đồ thị SP, SP-BS, SP-DG 18 liệu ghi nhận chi tiết bảng 2; thông tin thuật toán ghi nhận ba cột n, m, |Y|, reduced ứng với số đỉnh đồ thị, số cạnh đồ thị, số đỉnh terminal đồ thị sau rút gọn tỉ lệ rút gọn thuật tốn Tỉ lệ tính theo cơng thức ; tử số thông tin đồ thị sau rút gọn, mẫu số thông tin ứng với đồ thị gốc Cột b thuật toán SP-DG số cạnh cầu Steiner sau phân rã đồ thị Dựa vào kết bảng 2, ta có số đánh giá sau: Thuật toán rút gọn đồ thị SP, đồ thị 50 đỉnh có hệ số n|Y| giảm xuống khơng 16%, đồ thị 75 đỉnh có hệ số n|Y| giảm xuống khơng 11%, đồ thị 100 đỉnh có hệ số n|Y| giảm xuống khơng 36% với đồ thị có kích thước lớn có hệ số n|Y| giảm xuống khơng 95% Thuật toán rút gọn đồ thị SP-BS cho kết tốt SP; đồ thị 50 đỉnh có hệ số n|Y| giảm xuống khơng 24%, đồ thị 75 đỉnh có hệ số n|Y| giảm xuống khơng 50%, đồ thị 100 đỉnh có hệ số n|Y| giảm xuống khơng 50% với đồ thị có kích thước lớn có hệ số n|Y| giảm xuống khơng 96% Thuật toán rút gọn đồ thị SP-DG cho kết tương đương với thuật toán SP-BS (đây lý chúng tơi xem hai thuật tốn đóng góp) Phan Tấn Quốc 643 Bảng Kết thực nghiệm thuật toán SP, SP-BS, SP-DG Test steinb1 steinb2 steinb3 steinb4 steinb5 steinb6 steinb7 steinb8 steinb9 steinb10 steinb11 steinb12 steinb13 steinb14 steinb15 steinc1 steind1 steine1 n 25 28 41 31 32 46 39 37 62 49 44 71 56 70 82 32 43 49 SP |Y| reduced 61% 13 59% 25 36% 46% 13 49% 25 16% 13 58% 19 68% 38 35% 13 42% 19 55% 38 11% 17 53% 25 40% 50 36% 95% 96% 98% n 25 28 41 31 32 46 39 37 62 49 44 71 55 70 82 32 43 49 m 30 34 52 57 56 92 47 47 81 86 71 142 71 93 107 36 48 53 SP-BS |Y| reduced 17 80% 18 73% 30 56% 10 49% 14 51% 27 24% 20 69% 21 71% 45 54% 16 47% 20 57% 40 16% 22 60% 35 53% 57 50% 10 96% 11 97% 98% n 16 21 27 30 31 43 30 31 46 46 43 68 47 56 66 27 37 46 m 21 27 38 56 55 89 38 41 65 83 70 139 63 79 91 31 42 50 SP-DG |Y| b 11 16 14 13 24 11 15 29 16 13 19 37 14 21 14 41 16 5 reduced 80% 73% 56% 49% 51% 24% 69% 71% 54% 47% 57% 16% 60% 53% 50% 96% 97% 98% Hình vẽ minh họa chất lượng thuật tốn Hình vẽ minh họa mức độ rút gọn đồ thị thuật tốn SP, SP-BS, SP-DG (dựa thơng tin cột reduced thuật toán bảng 2) Hình Minh họa mức độ rút gọn thuật toán SP, SP-BS, SP-DG KẾT LUẬN Bài báo đề xuất thuật toán rút gọn đồ thị cho toán SMT; đề xuất thực nghiệm số liệu đồ thị thưa hệ thống liệu thực nghiệm chuẩn Thuật tốn rút gọn đồ thị đề xuất có hiệu rút gọn lên đến 98% số đồ thị lớn Bài báo khơng nhằm mục đích đưa thuật toán rút gọn đồ thị tốt thuật toán rút gọn đồ thị biết (là vấn đề khó khăn); mà nhằm bổ sung thêm cách thức để rút gọn đồ thị; nhiều cách thức rút gọn khả rút gọn số cạnh số đỉnh cho toán SMT cao Thuật toán rút gọn đồ thị đề xuất với kết thực nghiệm báo thơng tin hữu ích cho tiếp cận giải giải gần toán SMT Trong thực tế, với tiếp cận giải gần toán SMT, cần vài thuật tốn rút gọn tốt đồ thị rút gọn đáng kể chất lượng thuật tốn nâng lên TÀI LIỆU THAM KHẢO [1] Ankit Anand, Shruti, Kunwar Ambarish Singh, ―An efficient approach for steiner tree problem by genetic algorithm‖, International Journal of Computer Science and Engineering (SSRG-IJCSE), vol.2, pp.233-237, 2015 [2] Bang Ye Wu, Kun-Mao Chao, ―Spanning trees and optimization problems‖, Chapman&Hall/CRC, pp.13-139, 2004 [3] Chin Lung Lu, Chuan Yi Tang, Richard Chia-Tung Lee, ―The full Steiner tree problem‖, Elsevier, pp.55-67, 2003 [4] Chopra, S., Gorres, E., and Rao, M R ―Solving a Steiner tree problem on a graph using branch and cut‖ ORSA Journal on Computing, vol 4, pp.320 – 335, 1992 [5] C C Ribeiro, M C Souza, ―Tabu Search for the Steiner Problem in Graphs‖, Networks, vol.36, pp.138-146, 2000 644 RÚT GỌN ĐỒ THỊ CHO BÀI TOÁN CÂY STEINER NHỎ NHẤT [6] Diego de Una, Graeme Gange, Peter Schachte, Peter J Stuckey, ―Steiner tree problems with side constraints using constraint programming‖, Proceedings of the Thirtieth AAAI Conference on Artificial Intelligence (www.aaai.org), 2016 [7] Ding-Zhu Du, J M.Smith, J.H Rubinstein, ―Advances in Steiner trees‖, pp.1-322, 2000 [8] Edmund Ihler, Gabriele Reich, Peter Widmayer, ―Class Steiner trees and VLSI-design‖, Elsevier, pp.173-194, 1999 [9] Gabriel Robins, Alexander Zelikovsky, ―Minimum Steiner Tree Construction‖, (Department of Computer Science, University of Virginia, Department of Computer Science, Georgia State University), pp.1-33, 2008 [10] J E Beasley, OR-Library: URL http://people.brunel.ac.uk/~mastjjb/jeb/orlib/steininfo.html [11] Jeffrey H Kingston, Nicholas Paul Sheppard, ―On reductions for the steiner problem in graphs‖, Basser Department of Computer Science the University of Sydney, Australia, pp.1-10, 2006 [12] Jaros law Byrka, Mateusz Lewandowski, Carsten Moldenhauer, ―Approximation algorithms for node-weighted prize-collecting Steiner tree problems on planar graphs‖, University of Wroc law, Poland, pp.1-23, 2016 [13] J E Beasley, ―An SST-Based Algorithm for the Steiner Problem in Graphs‖, Networks, vol.19, 1-16, l989 [14] Latha N R, ―A study on approximation algorithms for constructing rectilinear Steiner trees‖, IJCSIT, pp.765-769, 2015 [15] L Kou, G Markowsky, L Berman,‖ A Fast Algorithm for Steiner Trees‖,Acta Informatica,vol.15,pp.141-145, 1981 [16] Marcello Caleffi, Ian F Akyildiz, Luigi Paura, ―On the solution of the Steiner tree NP-Hard problem via physarum bionetwork‖, IEEE/ACM transactions on networking, vol 23, No 4, pp.1092-1106, 2015 [17] Matjaz Kovse, ―Vertex decomposition of Steiner wiener index and steiner betweenness centrality‖, University of Wroc law, Poland, 2016 [18] M R Garey R L Graham, D S Johnson, ―The complexity of computing steiner minimal trees‖, SIAM J APPL MATH, vol.32, No 4, pp.835-859, 1977 [19] M Hauptmann, M Karpinski, ―A compendium on Steiner tree problems‖, Department of Computer Science and Hausdorff Center for Mathematics University of Bonn, pp.1-50, 2015 [20] Nguyen Viet Huy, Nguyen Duc Nghia, ―Solving graphical Steiner tree problem using parallel genetic algorithm‖, RIVF, 2008 [21] Ondra Suchý, ―Exact algorithms for Steiner tree‖, Faculty of Information Technology, Czech Technical University in Prague, Prague, Czech Republic, 2014 [22] Phan Tấn Quốc, ―Proposing a new algorithm for solving the minimum routing cost spanning tree problem in sparse graphs‖, Tạp chí Khoa học Trường Đại học Cần Thơ, ISSN:1859-2333, Số chuyên đề Công nghệ thông tin, pp 61-68, 2015 [23] Stefan Hougardy, Jannik Silvanus, Jens Vygen, ―Dijkstra meets Steiner: a fast exact goal-oriented Steiner tree algorithm‖, Research Institute for Discrete Mathematics, University of Bonn, pp.1-59, 2015 [24] S E Dreyfus, R A Wagner, ―The Steiner Problem in Graphs‖, Networks, vol.1, pp.195-207, 1971 [25] Robert Sedgewick, Kevin Wayne, ―Algorithms‖, Fourth edition, Addsion-Wesley, pp.518-700, 2011 [26] SangWon Bae, Sunghee Choi, Chunseok Lee, Shin-ichi Tanigawa, ―Exact algorithms for the bottleneck Steiner tree problem‖, Springer-Verlag Berlin Heidelberg, 2009 [27] Thomas Bosman, ―A solution merging heuristic for the Steiner problem in graphs using tree decompositions‖, VU University Amsterdam, The Netherlands, pp.1-12, 2015 [28] Thorsten Koch, Alexander Martin,‖Solving Steiner tree problems in graphs to optimality‖, Germany, pp.1-31, 1996 [29] Tom Decroos, Patrick De Causmaecker, Bart Demoen, ―Solving euclidean Steiner tree problems with multi swarm optimization‖, ACM, GECCO Companion '15, pp.1379-1380, 2015 [30] Vũ Đình Hịa, ―Bài tốn Steiner‖, http://math.ac.vn [31] Xinhui Wang, ―Exact algorithms for the Steiner tree problem‖, doctoral thesis, ISSN 1381-3617, 2008 [32] Xiuzhen Cheng, Ding-Zhu Du, ―Steiner trees in industry‖, Kluwer Academic Publishers, vol.5, pp.193-216, 2004 ON GRAPH REDUCTIONS FOR THE STEINER MINIMAL TREE PROBLEM Phan Tan Quoc ABSTRACT—Steiner Minimal Tree (SMT) is a combinatorial optimization problem that has many important applications in science and engineering; the SMT problem is proved to be NP-hard and is currently being extensively research For the approach in solving the SMT problem - whether it is the exact or approximate algorithms - the graph reduction stage is very important; it is especially meaningful for the exact algorithms of the SMT problem Over the years, many graph reduction methods to the problem of SMT have been published; these are positive support for the resolution of SMT problems with the graph of larger size This paper proposes a graph reduction algorithm for SMT problem and the experimental results are useful information for the study of the exact algorithms and approximate algorithms solutions to the SMT problem ... thuật tốn rút gọn đồ thị tốt thuật toán rút gọn đồ thị biết (là vấn đề khó khăn); mà nhằm bổ sung thêm cách thức để rút gọn đồ thị; nhiều cách thức rút gọn khả rút gọn số cạnh số đỉnh cho toán SMT... thuật toán tiếp cận theo hướng tìm lời giải RÚT GỌN ĐỒ THỊ CHO BÀI TOÁN CÂY STEINER NHỎ NHẤT 642 THỰC NGHIỆM VÀ ĐÁNH GIÁ Phần trình bày thực nghiệm thuật toán rút gọn đồ thị số thuật tốn tìm Steiner. .. II THUẬT TỐN RÚT GỌN ĐỒ THỊ CHO BÀI TOÁN CÂY STEINER Trong phần này, trước hết chúng tơi đề xuất thuật tốn rút gọn đồ thị cho toán SMT dựa số tốn tính chất kinh điển lý thuyết đồ thị đng ngắn