Một số ứng dụng của bài toán

Một phần của tài liệu đồ án công nghệ thông tin Trình bày thuật toán di truyền giải bài toán Cây Steiner trên đồ thị. (Trang 28)

2. BÀI TOÁN CÂY STEINER

2.5.Một số ứng dụng của bài toán

2.5.1. Bài toán truyền thông đa hướng(Multicast routing)

Trên thế giới, việc đưa vào ứng dụng các hệ thống mạng quang học tốc độ cao đã mở ra một cánh cửa vào thế giới các dịch vụ băng thông rộng ví dụ như xem phim trực tuyến, hội nghị video trực tuyến, giao tiếp đa phương tiện.... Các loại truyền thông này ngòai các yêu cầu như tốc độ cao, dung lượng đường truyền rất

lớn còn có một yêu cầu quan trọng nữa là tính thời gian thực. Chính vì vậy, các thuật toán chọn đường trong mạng có một ý nghĩa sống còn đối với các dịch vụ này, trong bài toán truyền thông điệp đa hướng cũng vậy. Bài toán yêu cầu như sau.

Phát biểu: Cho một mạng máy tính được biểu diễn bởi một đồ thị trọng số vô hướng G=(V, E, f) một tập con T các đỉnh của V được gọi là một nhóm truyền thông và một điểm s được gọi là một máy nguồn. Bài toán yêu cầu tìm một topology nối tất cả các máy trong nhóm truyền thông T s sao cho tổng số các kênh nối(trong một số trường hợp có thể là tổng độ dài các kênh nối) cần sử dụng là nhỏ nhất mà vẫn thỏa mãn các rằng buộc của mạng như tốc độ đường truyền, dung lượng băng thông....

2.5.2. Bài toán kết nối nhóm(Group Steiner tree)

Phát biểu: Cho một đồ thị vô hướng G=(V, E) và tập các đỉnh T1,T2....Tn V. Bài toán yêu cầu tìm một đồ thị con G’ của G thỏa mãn hai điều kiện sau.

- Mỗi tập con Ti, i=1÷n phải có ít nhất một điểm trong G. - Độ dài của đồ thị G’ phải đạt cực tiểu.

2.5.3. Bài toán Steiner nhiều pha(Multiphase spanning network)

Hơi khác so với bài toán kết nối nhóm, bài toán Steiner nhiều pha yêu cầu cây Steiner phải chứa được tất cả các tập đỉnh T1, T2...Tn.

Phát biểu: Cho một đồ thị G=(V, E) và tập các đỉnh T1, T2....Tn V. Gọi S1,S2...Sn là các đồ thị con liên thông của T1, T2....Tn. Bài toán Steiner nhiều pha đặt ra yêu cầu tìm một đồ thị có giá cực tiểu và chứa tất cả các đồ thị liên thông Si, i=1÷n.

2.5.4. Bài toán mạng Steiner nhiều pha(Multiphase Steiner network) Phát biểu:Cho một đồ thị G=(V, E) và các tập con của V:X1, Y1, X2,

Y2...Xn,Yn với Xi Yi = Ø. Bài toán yêu cầu tìm một đồ thị con G’ của G thỏa mãn hai điểu kiện:

- Với mỗi i=1÷n, G’ chứa một cây Steiner Si của Xi. - Các điểm Steiner của Si chỉ được lấy từ Yi.

2.5.5. Bài toán giật giải(Prize collecting Steiner problem)

Đối với bài toán Steiner trên đồ thị(có hướng hoặc vô hướng), yêu cầu của bài toán là tìm được một cây Steiner có giá nhỏ nhất có chứa một tập điểm Terminal T biết trước. Tuy vậy trong một số bài toán thực tế, tập điểm terminal này chưa được biết trước trong quá trình tiến hành giải mới lần lượt tìm ra các điểm này. Bài toán có thể phát biểu một cách hình thức như sau.

Phát biểu: Cho một đồ thị G=(V, E), xuất phát từ một phương án nào đó, bài toán sẽ kết nạp một số đỉnh của G vào phương án này, với mỗi một điểm mới được kết nạp vào, một giá trị k=(v-độ dài của các cạnh vừa kết nạp vào phương án) sẽ được cộng vào hàm mục tiêu của phương án. Mục tiêu tối ưu của bài toán này là làm cực đại giá trị giá trị hàm mục tiêu của phương án cuối cùng. Trong công thức tính k ở trên, v là một hằng số được gắn với mỗi đỉnh trên đồ thị G.

Trong các tài liệu, bài toán này được ứng dụng trong lĩnh vực viễn thông. Tuy nhiên, trong thực tiễn bài toán ít khi được sử dụng và có rất ít tác giả nghiên cứu về dạng bài toán này.

2.5.6. Bài toán cây Steiner có ràng buộc (Steiner tree packing problem) Tác giả Năm Hệ số dư thừa Độ phức tạp

Takahashi, Matsuyama 1980 2.000 O(n2)

Zelikovsky 1993 1.834 O(n3)

Berman, Ramaiyer 1994 1.734 O(n6)

Zelikovsky 1995 1.694 O(nk), k

Promel, Steger 1997 1.667

O( ),

>0 Karpinski, Zelikovsky 1997 1.644 O(nk), k

Hougardy, Promel 1998 1.598 O(nk), k

Robbin, Zelikovsky 2000 1.550 O(nk), k

Bảng 1.1. Một số giải thuật gần đúng cho bài toán trên đồ thị.

Phát biểu:Cho một đồ thị trọng số có giới hạn G=(V, E, f, c) trong đó c là một hàm rằng buộc áp dụng cho mỗi cạnh của đồ thị c: E R+, và một bộ tập con các đỉnh của G: T1, T2...Tn E. Bài toán đặt ra là phải tìm n tập con các cạnh của E: S1, S2...S3 sao cho mỗi Ti Si là một cây Steiner và các cây Steiner này thỏa mãn hàm ràng buộc của G (ví dụ số cây Steiner sử dụng cạnh e không vượt quá giá trị ce).

Trên đây là một số dạng bài toán cây Steiner trên đồ thị, mỗi bài toán có ứng dụng riêng của nó. Trong thực tế, bài toán dạng tổng quát được sử dụng nhiều hơn cả và các nghiên cứu về nó có số lượng vượt trội so với các dạng bài toán khác. Các giải thuật giải bài toán dạng tổng quát hầu hết là các giải thuật xấp xỉ, một số khác là các giải thuật heuristic. Đối với các giải thuật xấp xỉ, một khái niệm hệ số dư thừa được định nghĩa. Hệ số dư thừa của một giải thuật xấp xỉ giải bài toán cây Steiner trên mạng là tỉ số giữa độ dài của cây Steiner tồi nhất tìm được bằng giải thuật này và độ dài của cây Steiner tối ưu.

Gọi độ dài của cây Steiner tìm được bằng giải thuật xấp xỉ là Lx và độ dài của cây Steiner tối ưu là Lo thì hệ số dư thừa được định nghĩa như sau. (adsbygoogle = window.adsbygoogle || []).push({});

Với định nghĩa về hệ số dư thừa này, nhiều công trình nghiên cứu đã đưa ra các phương pháp khác nhau nhằm tìm lời giải của bài toán trong đó vấn đề trung tâm của các nghiên cứu vẫn là tìm cách giảm hệ số dư thừa xuống càng nhỏ càng tốt. Bảng 1.1 liệt kê một số giải thuật được coi là thành công cùng với hệ số dư thừa của nó trong vòng hai mươi năm trở lại đây.

2.5.7. Thiết kế vi mạch VLSI

Trong bước thiết kế vật lý của các vi mạch VLSI, pha đi dây bao gồm việc xác định sơ đồ nối dây cho các điểm nối của từng khối hay từng cổng trên chip. Một

mạng trên chip là tập hợp các điểm cần phải nối với nhau, thường bao gồm một điểm nguồn và nhiều điểm đích. Trong việc đi dây, sơ đồ kết nối được đặc tả cho một số lượng lớn các mạng. Kết nối thường được thực hiện trên một mạng một lúc. Mỗi phương án kết nối cho một mạng đơn là một cây Steiner phủ các điểm nối. Nhiều yêu cầu tối ưu đặt ra cho việc nối mạng phụ thuộc vào chức năng của từng mạng.

Hình 1.20. Cây Steiner trên đồ thị lưới

Việc thiết kế VLSI, các đường nối chỉ là các đường ngang dọc trên bảng mạch. Bài toán tối ưu chiều dài dây nối được đưa về một biến thể của bài toán cây Steiner, đó là bài toán cây Steiner thẳng góc trên đồ thị lưới.

2.5.8. Thiết kế mạng viễn thông

Quy trình thiết kế mạng viễn thông đặc biệt phức tạp bởi cùng lúc phải xét các bài toán về thông lượng, truyền tải, tài nguyên, hiệu năng cho mạng. Nhấn mạnh về khả năng của một mạng viễn thông là khả năng duy trì kết nối liên tục của mạng, thực hiện các chức năng của nó đối mặt với các phá hủy và tắc nghẽn.

Thiết kế mạng viễn thông thường được chia thành các bài toán tối ưu nhỏ hơn như thiết kế cấu hình mạng, mô hình hóa và dự đoán lượng thông tin truyền tải… Xây dựng cấu hình mạng nhằm đảm bảo độ tin cậy. Ngoài việc phụ thuộc vào độ tin cậy của các thiết bị hoạt động trong mạng, tính tin cậy của mạng còn phụ thuộc vào cách mà các thiết bị đó nối với nhau. Việc đảm bảo tính liên thông và đồng thời tìm cách nối để tối ưu các hàm mục tiêu đề ra liên quan đến giải bài toán cây Steiner nhỏ nhất.

2.5.9. Bài toán phát sinh loài

Sự phát sinh loài được biểu diễn bởi một cây tiến hóa. Nghiên cứu xây dựng cây phát sinh loài là một trong những bài toán tính toán cơ bản trong sinh học. Chúng ta quan tâm ở đây tới sự phân loài được mô tả bởi các tính trạng mà chúng thể hiện ra từ tập các đặc tính. Dữ liệu trên được mô tả dưới dạng bảng nhị phân, phần tử (i, j) nhận giá trị 1 (hoặc 0) tương ứng với loài i có tính trạng j (hoặc không). Sự khác biệt giữa hai loài đo bằng khoảng cách Hamming giữa hai vector tính trạng.

Trong khi nghiên cứu sự tiến hóa trong sinh học, xây dựng cây tiến hóa sao cho sự khác biệt giữa các loài đạt giá trị nhỏ nhất là bài toán cây Steiner nhỏ nhất. Các điểm kết thúc là các vector tính trạng của loài, các nút trung gian bản thân cũng là các vector nhị phân, chúng nằm trên cạnh nối từ gốc (tổ tiên) đến lá (các loài). Trọng số của các cạnh đo bằng khoảng cách Hamming.

Một phần của tài liệu đồ án công nghệ thông tin Trình bày thuật toán di truyền giải bài toán Cây Steiner trên đồ thị. (Trang 28)